From 8babbc8f18fe06ec20e19630a1ec09e759c380e1 Mon Sep 17 00:00:00 2001 From: Coccinelle Date: Mon, 30 May 2011 13:26:57 +0200 Subject: [PATCH] coccinelle release 1.0.0-rc2 ** Language: - Addition of initializer list metavariables. Thanks to Michael Stefaniuc for noticing the need for them. - Allow multiple position variables per token - ++ can now be associated with - code - Allow /* */ comments as smpl comments, not only as + code - Add support for && (label addresses) - local idexpression metavariable no longer matches static local x ** Features: - Preserve spacing before // comments when not at the beginning of a line - Adjusted parsing of endif to put it after jump code - Improve warning message when using -use_cache - Allow - nest expressions - More helpful initial value for exported variables in python - Support - on expression nests ** Bugfix: - Corrected parsing of script strings delimited by a single quote. Thanks to Eugeniy Meshcheryakov for reporting the problem. - Improved indentation of added ifdefs. - Allow added comments and #ifdefs to precede other added code. Thanks to Jani Monoses for noticing the problem. - Corrected failure to due missing ocamlfind. Thanks to Derek M. Jones for reporting the problem. - Allow fake nodes to be - in the allminus case, to drop tokens related to a function definition or forward declaration but before the first code mentioned in the semantic patch. - Drop __init etc when deleting a whole function. - Cause appropriate newlines to be preserved when multiple matches (trees) contain adjacent modifications derived from the same SmPL code. - check_meta takes into account fresh identifier seed information. - Types for worth-trying optimization should not be followed by space - Improved pretty printing when the first parameter of a function is dropped --- Makefile.dev | 5 +- Makefile.release | 9 + changes.txt | 20 + cocci.ml | 8 +- configure | 3 +- demos/python_identifier.c | 8 + demos/python_identifier.cocci | 19 + docs/Coccilib.3cocci | 172 + docs/manual/cocci_syntax.tex | 61 +- docs/manual/macros.tex | 2 +- docs/manual/main_grammar.pdf | Bin 338933 -> 340542 bytes docs/manual/manual.pdf | Bin 443983 -> 445720 bytes docs/manual/options.pdf | Bin 137507 -> 137540 bytes docs/spatch.1.in | 6 +- engine/Makefile | 2 +- engine/asttoctl2.ml | 37 +- engine/cocci_vs_c.ml | 39 +- engine/postprocess_transinfo.ml | 20 +- engine/postprocess_transinfo.mli | 2 +- engine/sgrep.ml | 2 + engine/transformation_c.ml | 42 +- globals/config.ml.in | 2 +- ocaml/Makefile | 1 + ocaml/prepare_ocamlcocci.ml | 1 + ocaml/yes_prepare_ocamlcocci.ml | 4 +- parsing_c/ast_c.ml | 3 +- parsing_c/control_flow_c_build.ml | 15 +- parsing_c/parse_c.ml | 2 +- parsing_c/parsing_hacks.ml | 1 - parsing_c/type_annoter_c.ml | 9 +- parsing_c/unparse_c.ml | 112 +- parsing_c/unparse_cocci.ml | 15 +- parsing_c/unparse_hrule.ml | 6 +- parsing_cocci/adjust_pragmas.ml | 4 +- parsing_cocci/arity.ml | 6 +- parsing_cocci/ast0_cocci.ml | 19 +- parsing_cocci/ast0_cocci.mli | 7 +- parsing_cocci/ast0toast.ml | 63 +- parsing_cocci/ast_cocci.ml | 11 +- parsing_cocci/ast_cocci.mli | 9 +- parsing_cocci/check_meta.ml | 17 +- parsing_cocci/compute_lines.ml | 280 +- parsing_cocci/context_neg.ml | 14 +- parsing_cocci/data.ml | 2 +- parsing_cocci/data.mli | 2 +- parsing_cocci/disjdistr.ml | 5 +- parsing_cocci/free_vars.ml | 5 +- parsing_cocci/function_prototypes.ml | 10 +- parsing_cocci/get_constants2.ml | 22 +- parsing_cocci/index.ml | 2 +- parsing_cocci/insert_plus.ml | 37 +- parsing_cocci/iso_pattern.ml | 53 +- parsing_cocci/lexer_cocci.mll | 33 +- parsing_cocci/parse_aux.ml | 8 +- parsing_cocci/parse_cocci.ml | 18 +- parsing_cocci/parser_cocci_menhir.ml | 8108 +++++++++++++------------ parsing_cocci/parser_cocci_menhir.mli | 2 +- parsing_cocci/parser_cocci_menhir.mly | 60 +- parsing_cocci/pretty_print_cocci.ml | 12 +- parsing_cocci/simple_assignments.ml | 2 +- parsing_cocci/single_statement.ml | 35 +- parsing_cocci/type_infer.ml | 6 +- parsing_cocci/unify_ast.ml | 2 +- parsing_cocci/unitary_ast0.ml | 6 +- parsing_cocci/unparse_ast0.ml | 9 +- parsing_cocci/visitor_ast.ml | 4 +- parsing_cocci/visitor_ast0.ml | 6 +- popl09/pretty_print_popl.ml | 5 +- python/yes_pycocci.ml | 4 +- tests/SCORE_expected.sexp | 159 + tests/SCORE_expected.sexp.save | 162 + tests/SCORE_expected_orig.sexp | 142 +- tests/camltococci.c | 4 - tests/camltococci.cocci | 23 - tests/camltococci.res | 4 - tests/lid.c | 6 + tests/lid.cocci | 6 + tests/lid.res | 6 + tests/memory.c | 2 +- tests/pythontococci.c | 4 - tests/pythontococci.cocci | 25 - tests/pythontococci.res | 4 - tests/remove_call.c | 6 + tests/remove_call.cocci | 16 + tests/remove_call.res | 2 + tests/scope_problem.res | 6 - 86 files changed, 5689 insertions(+), 4404 deletions(-) create mode 100644 demos/python_identifier.c create mode 100644 demos/python_identifier.cocci create mode 100644 docs/Coccilib.3cocci create mode 120000 ocaml/prepare_ocamlcocci.ml create mode 100644 tests/SCORE_expected.sexp create mode 100644 tests/SCORE_expected.sexp.save delete mode 100644 tests/camltococci.c delete mode 100644 tests/camltococci.cocci delete mode 100644 tests/camltococci.res create mode 100644 tests/lid.c create mode 100644 tests/lid.cocci create mode 100644 tests/lid.res delete mode 100644 tests/pythontococci.c delete mode 100644 tests/pythontococci.cocci delete mode 100644 tests/pythontococci.res create mode 100644 tests/remove_call.c create mode 100644 tests/remove_call.cocci create mode 100644 tests/remove_call.res diff --git a/Makefile.dev b/Makefile.dev index 88c9bdf..62b1f23 100644 --- a/Makefile.dev +++ b/Makefile.dev @@ -55,7 +55,7 @@ diff_darcs: gitupdate: git cvsimport -d :ext:topps:/var/cvs/cocci coccinelle -UBUNTU=karmic lucid maverick +UBUNTU=karmic lucid maverick natty UBUNTURELEASE=$(UBUNTU:%=ubuntu-%) .PHONY:: ubuntu $(UBUNTURELEASE) @@ -79,6 +79,9 @@ ubuntu-maverick: debchange -c debian/changelog.maverick -D maverick -v $(VERSION)~1010npalix$(IDX) "New release $(VERSION)" ubuntu-natty: + debchange -c debian/changelog.natty -D natty -v $(VERSION)~1104npalix$(IDX) "New release $(VERSION)" + +ubuntu-oneiric: if [ ! -f debian/changelog.$(@:ubuntu-%=%) ] ; then \ debchange --create -c debian/changelog.$(@:ubuntu-%=%) -D UNRELEASED \ -v $(VERSION)~npalix$(IDX) "New release $(VERSION)" --package $(PRJNAME) ; \ diff --git a/Makefile.release b/Makefile.release index 15923b9..eec6b57 100644 --- a/Makefile.release +++ b/Makefile.release @@ -59,11 +59,19 @@ OCAMLVERSION=$(shell ocaml -version |perl -p -e 's/.*version (.*)/$$1/;') prerelease: cvs up -CdP + $(MAKE) fix-expected $(MAKE) distclean sed -i "s|^OCAMLCFLAGS=.*$$|OCAMLCFLAGS=|" Makefile @echo "\n\tEdit globals/config.ml.in" @echo "\tCommit with 'make release'\n" +fix-expected: + $(MAKE) distclean + ./configure --without-python + $(MAKE) world + yes | ./spatch.opt -testall + cp tests/SCORE_actual.sexp tests/SCORE_expected_orig.sexp + release: cvs ci -m "Release $(VERSION)" globals/config.ml.in $(MAKE) licensify @@ -212,6 +220,7 @@ packsrc: prepack $(MAKE) -C $(TMP)/$(PACKAGE)/debian lucid $(MAKE) -C $(TMP)/$(PACKAGE)/debian karmic $(MAKE) -C $(TMP)/$(PACKAGE)/debian maverick + $(MAKE) -C $(TMP)/$(PACKAGE)/debian natty $(MAKE) push rm -rf $(TMP)/$(PACKAGE)/ diff --git a/changes.txt b/changes.txt index 25b4ce4..84e71b5 100644 --- a/changes.txt +++ b/changes.txt @@ -19,9 +19,18 @@ - Addition of initializer list metavariables. Thanks to Michael Stefaniuc for noticing the need for them. - Allow multiple position variables per token +- ++ can now be associated with - code +- Allow /* */ comments as smpl comments, not only as + code +- Add support for && (label addresses) +- local idexpression metavariable no longer matches static local x ** Features: - Preserve spacing before // comments when not at the beginning of a line +- Adjusted parsing of endif to put it after jump code +- Improve warning message when using -use_cache +- Allow - nest expressions +- More helpful initial value for exported variables in python +- Support - on expression nests ** Bugfix: - Corrected parsing of script strings delimited by a single quote. Thanks @@ -29,6 +38,17 @@ - Improved indentation of added ifdefs. - Allow added comments and #ifdefs to precede other added code. Thanks to Jani Monoses for noticing the problem. +- Corrected failure to due missing ocamlfind. Thanks to Derek M. Jones for + reporting the problem. +- Allow fake nodes to be - in the allminus case, to drop tokens related to + a function definition or forward declaration but before the first code + mentioned in the semantic patch. +- Drop __init etc when deleting a whole function. +- Cause appropriate newlines to be preserved when multiple matches (trees) + contain adjacent modifications derived from the same SmPL code. +- check_meta takes into account fresh identifier seed information. +- Types for worth-trying optimization should not be followed by space +- Improved pretty printing when the first parameter of a function is dropped * 0.2.5 ** Language: diff --git a/cocci.ml b/cocci.ml index 5a86ffa..ff638fb 100644 --- a/cocci.ml +++ b/cocci.ml @@ -85,12 +85,12 @@ let sp_of_file2 file iso = begin Hashtbl.add _h_ocaml_init (file,iso) (); match Prepare_ocamlcocci.prepare file xs with - None -> res - | Some ocaml_script_file -> - (* compile file *) + 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); + then Prepare_ocamlcocci.clean_file ocaml_script_file); res end in Hashtbl.add _hparse (file,iso) diff --git a/configure b/configure index 7b9d0de..c53b7a0 100755 --- a/configure +++ b/configure @@ -394,7 +394,8 @@ if ($ocamlfind) { pr2 "Support for external ocaml library in ocaml scripting: yes (ocamlfind found)"; } else { -pr2 "Support for external ocaml library in ocaml scripting: no (ocamlfind may be required at runtime)"; +pr2 "Support for external ocaml library in ocaml scripting: no"; +pr2 "!!!!!!! WARNING !!!!!!! ocamlfind may be required at runtime"; } pr2 ""; diff --git a/demos/python_identifier.c b/demos/python_identifier.c new file mode 100644 index 0000000..b6b9efd --- /dev/null +++ b/demos/python_identifier.c @@ -0,0 +1,8 @@ +int main () { + one(12); + one_more(15); + another_one(20); + two(1,2); + two_more(3,4); + three(1,2,3); +} diff --git a/demos/python_identifier.cocci b/demos/python_identifier.cocci new file mode 100644 index 0000000..38b0b44 --- /dev/null +++ b/demos/python_identifier.cocci @@ -0,0 +1,19 @@ +@r@ +expression E; +identifier func; +@@ +func(E); + +@script:python s@ +func << r.func; +prefix_func; +@@ + +prefix_func = "one_argument_function_%s" % func + +@@ +expression E; +identifier r.func,s.prefix_func; +@@ +-func(E); ++prefix_func(E); diff --git a/docs/Coccilib.3cocci b/docs/Coccilib.3cocci new file mode 100644 index 0000000..f7733a7 --- /dev/null +++ b/docs/Coccilib.3cocci @@ -0,0 +1,172 @@ +.\" -*- nroff -*- +.\" Please adjust this date whenever revising the manpage. +.TH SPATCH 1 "may 18, 2011" + +.\" see http://www.fnal.gov/docs/products/ups/ReferenceManual/html/manpages.html +.\" see http://www.linuxjournal.com/article/1158 +.\" see http://www.schweikhardt.net/man_page_howto.html +.\" groff -Tascii -man ./Coccilib.3cocci | more +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.\" +.\" TeX users may be more comfortable with the \fB\fP and +.\" \fI\fP escape sequences to invode bold face and italics, +.\" respectively. Also \fR for roman. +.\" pad: src: deputy man page +.SH NAME +Coccilib \- Library of functions for use with Coccinelle OCaml script code +.SH MODULE +Module Coccilib +.SH DOCUMENTATION +.sp +Module +.BI "Coccilib" + : +.B sig end + +.B === +.B Positions +.B === +.PP +.I type pos += { + current_element : +.B string +; + file : +.B string +; + line : +.B int +; + col : +.B int +; + line_end : +.B int +; + col_end : +.B int +; + } + +.sp +A value of type +.B pos +describes a position in a source file\&. +.B current_element +is the name of the function containing the matched position; +.B file +is the name of the file containing the matched position; +.B line +is the number of the line containing the first character of the matched +position; +.B col +is the column containing the first character of the matched position; +.B line_end +is the number of the line containing the last character of the matched +position; +.B col_end +is the column containing the last character of the matched position\&. +.sp + +.B === +.B Abstract Syntax Tree +.B === +.PP +.I type param_type + = + | Pos +.B of +.B pos list + | Str +.B of +.B string + | Type +.B of +.B Ast_c.fullType + | Init +.B of +.B Ast_c.initialiser + | InitList +.B of +.B Ast_c.initialiser Ast_c.wrap2 list + | Int +.B of +.B int + | Param +.B of +.B Ast_c.parameterType + | ParamList +.B of +.B Ast_c.parameterType Ast_c.wrap2 list + | Expr +.B of +.B Ast_c.expression + | ExprList +.B of +.B Ast_c.argument Ast_c.wrap2 list + | Decl +.B of +.B Ast_c.declaration + | Field +.B of +.B Ast_c.field + | FieldList +.B of +.B Ast_c.field list + | Stmt +.B of +.B Ast_c.statement +.sp + +.B === +.B Match management functions +.B === + +.I val include_match +: +.B bool -> unit +.sp +If the argument is true, retain the environment with respect to which the +ocaml script code is being executed for use in subsequent rules. If +the argument is false, discard this environment. By default, the +environment is retained. +.sp + +.I val inc_match +: +.B bool ref +.sp +True if the environment with respect to which the +ocaml script code is being executed is to be retained for use in +subsequent rules, and false otherwise. +.sp + +.I val dir +: +.B unit -> string +.sp +Returns the directory on which spatch was launched. +.sp + +.SH REFERENCES +Y. Padioleau, J.L. Lawall, R.R Hansen, G. Muller +"Documenting and Automating Collateral Evolutions in Linux Device Driver" +.I EuroSys 2008, +Glasgow, Scotland (April 2008) pp. 247-260. +.SH AUTHOR +This manual page was written by Julia Lawall . +.SH REPORTING BUGS +Send a mail to +.SH COPYRIGHT +Copyright 2011, DIKU, University of Copenhagen and INRIA. diff --git a/docs/manual/cocci_syntax.tex b/docs/manual/cocci_syntax.tex index 93a114c..9c7e01d 100644 --- a/docs/manual/cocci_syntax.tex +++ b/docs/manual/cocci_syntax.tex @@ -46,7 +46,7 @@ the semantic patch does not check the validity of this code; any errors are first detected when the code is executed. Furthermore, \texttt{@} should not be use in this code. Spatch scans the script code for the next \texttt{@} and considers that to be the beginning of the next rule, even if -\texttt{@} occurs within e.g., a string or a comment. +\texttt{@} occurs within e.g., a comment. \texttt{virtual} keyword is used to declare virtual rules. Virtual rules may be subsequently used as a dependency for the rules in the @@ -204,6 +204,10 @@ well, where it represents a variable. It is possible to specify that an expression list or a parameter list metavariable should match a specific number of expressions or parameters. +It is possible to specify some information about the definition of a fresh +identifier. See the wiki. + + \begin{grammar} \RULE{\rt{ids}} \CASE{\NT{COMMA\_LIST}\mth{(}\NT{pmid}\mth{)}} @@ -276,6 +280,55 @@ rule that declares an identifier metavariable with the name {\tt alloc=kmalloc}. There should not be space around the {\tt =}. An example is in {\tt demos/vm.cocci} and {\tt demos/vm.c}. + +\paragraph*{Warning:} Each metavariable declaration causes the declared +metavariables to be immediately usable, without any inheritance +indication. Thus the following are correct: + +\begin{quote} +\begin{verbatim} +@@ +type r.T; +T x; +@@ + +[...] // some semantic patch code +\end{verbatim} +\end{quote} + +\begin{quote} +\begin{verbatim} +@@ +r.T x; +type r.T; +@@ + +[...] // some semantic patch code +\end{verbatim} +\end{quote} + +\noindent +But the following is not correct: + +\begin{quote} +\begin{verbatim} +@@ +type r.T; +r.T x; +@@ + +[...] // some semantic patch code +\end{verbatim} +\end{quote} + +This applies to position variables, type metavariables, identifier +metavariables that may be used in specifying a structure type, and +metavariables used in the initialization of a fresh identifier. In the +case of a structure type, any identifier metavariable indeed has to be +declared as an identifier metavariable in advance. The syntax does not +permit {\tt r.n} as the name of a structure or union type in such a +declaration. + \section{Metavariables for scripts} Metavariables for scripts can only be inherited from transformation rules. @@ -970,6 +1023,12 @@ in a concise way. \CASE{"\any{[\^{}"]}"} \end{grammar} +\section{Comments} + +A \verb+//+ or \verb+/* */+ comment that is annotated with + in the +leftmost column is considered to be added code. A \verb+//+ or +\verb+/* */+ comment wthout such an annotation is considered to be a +comment about the SmPL code, and thus is not matched in the C code. %%% Local Variables: %%% mode: LaTeX diff --git a/docs/manual/macros.tex b/docs/manual/macros.tex index eb48089..d3f7fc8 100644 --- a/docs/manual/macros.tex +++ b/docs/manual/macros.tex @@ -4,5 +4,5 @@ \newcommand{\cpp}{\texttt{cpp}\xspace} -\newcommand{\cocciversion}{1.0.0-rc1\xspace} +\newcommand{\cocciversion}{0.2.5\xspace} diff --git a/docs/manual/main_grammar.pdf b/docs/manual/main_grammar.pdf index 91ed9ec15d88b0440bb75bb8c2a2707180c191df..cf6ef04705d6ca8ff6166863aabca02668468c9d 100644 GIT binary patch delta 89753 zcma%jcOaJC|G(R&>`jDh!o9eS>=CyWWsk_r-YafVSy7zqO(`Uj6*7`+N!eK`8Ch8+ z^u4H_PtWsxKELnpuXA75^?JY0Iq!3>%j-Rktzr7c5A@|X3FwsFU0vK#Z7z7KPyy=RCY6pc-K9>fvJN4L%cy(jY|Pf}C=4zwu}UctgMqj0t%O z5TXbWM#u<|gnXcekO#U(f=TE)nUE7O5*Vn$Ul0lE45hA_N0F>Yu#3FCtW#s7;SxI#|7q2rjoWwA@#V1(c6BO@ON|{f^&9c4 zjUnw;-}aYU>%UV8O-A3;NO(~n*`C!wWFRzpxZhP^+b`?^(il?pNQnriv}D%oze z*m(8lg;|H}HL>6XoJw6y)q-OJvXgd%=KBxXJupIQ$P=w15p8Rd{h1Qs5XcqP-BdYf zXJs+}^{M1+QnSK3o52O&`x$DdI)_G1F!x!*9 z=~fW)q^Bq{Me;jQ74m68D+ zl)~3Z#C?=i$+5gxM{3SN=rE6AwF#;R1OwJ>nv!?cs38yN+Y& z=f1p@wSy0x{j_o?-XEUrucRroBaD2U3g!S+oZJI1?;Hh zR=Q1Kp`{~UPbP757%GhDZ8MC=rH)o2kn7>B@or{V`VN!n0j|BZeU;4ApD~xjr>Nm0 zOY9rlEb0j18RKutWd7*bP0}KTyCwIu&gM21N9gMh?(Z!-Qa>UhtI3w7UPTWvTtF8!8}Li)u#316&gFd4Gal4r*a{<}A2=Z_eVIvk&?0t4=<3X+ z=M~EGdC`NF_%LdRC50cWjJkS$$xBPAmfbU7%EfGL8=uS(ylgoyV41?TZ_3j6c3(WX zS8XO58Kt~#KX|RnjK|=0i=cNzj*aFA_X`g0m1Qd~8$EU8h98t)-)UqiA%PVjO~ddt z8(1FwunMgT5@^ER35jDkE@VbNcrkZ#`E$X7S@9LNN1JkEH}CIVuo^2aD{K9P9!}X7 z#n73HP%7qy=Z1qMsc)U<8ClH5F7DoNQg{|0aEUWYA-nhVc-$=h9o3|qh1M*e+iWMU zAAf>yvAF4r6m7ms-urZoMLIE~>cVE{XnD;Wx!&z#riL~B6}ZKiM$YRVwMuKYl}yJ9 zKQ-5;feWo%dX+O`ItGtBe z`tJ}JpIJ~ea?^TVdO!9FAr<#}r&ng(-BU5gL%kT4Worqkm{zB7* z6}o@*{VTT69(Yk94)1B|V<{T-3YI93O{KUYg1!vqsT5B3F6=4!rLv<$eE*$ zakf2OsmsVUpVmsOvuj9sckY3RsI{EnVmpPeEk4~R*@?YJ(*3v-?UTD}aV?vwjeac# z6f0i}QtTc4m?u~u*Yn}N zPWSKTm|W6*12*sKvI_d>1WjMuvrZ|(%91YRNs1HX%#T~VXgJHJ$~~vmr~Q7drgY^b zGEFNUZ6yDaV0mq6FiG@|xz~(P-`co$rKSxde_K#|a%lVkj?}gH6WO)-x98#dCp{;= zwm-^iU(pnPYrTA9?H$F4M@^Phzr>g`C9(~bmb<)OUB@tU;zPFP;^5{a!K%pOWexa1n0YZ;iq2=i*1}E#m}TT>^^NlkB9;%n0@u$b0iCc=kZo zIbB_0{#)a(#pW%Xu-ZAPqJ-;Zs`R!iqXM?H<@>%O`yut@L#jpM1+8zGJj2e7yFGh< zjYGgr2VaxAyoAZ!VaQIvrC$7+Yw=bU`&zM;glJ0=P7kMqN)h!TZKHJeH?y;9d6%Z8 zeD8q5N@n?HFf#v(6!p@|`G}W&*ycCE8pLl}XdPwe8w&=dr&)I8g6{THYzZEZ)H?`l z6#a4URU2cy^fyv7jd{^NR>ie`hs-DD#y1aq7${Hdqo*Qa+-Y0mc$@KK?yryWD-DY? z)ZLm?aH~4N&3G<7-rB0n5#vcMOHE@NGL-86#9ypB<{&4yaob|F#3^U0FhnBB2b(i< z%~MS&{ncHt9f8TEu+8(56s7FX^d{@dC95j6>e?%k(uU+H=vt`{mJ}HL>t5Z) zUQG4XeQl=8F~g)}R(@^ve5pPMK?EhA8$@GFhGp}uX#?u zEI>OQFA$;uz=56xYPrEznkWEcFaU38FM|vQEf7to2_zUb0Xw}W*gI;;Kpnk0xXq*q z!WhZGc?LBAc(LFkgB}p%(*jxyq#&Bn3pDXzff|zrxWJDEV@z5!s6Tj}3Ma$>0hb>) z4IKTC+bN#SFm7;@nF=35WHIy6BH;f(AiyBA$iJwgWf1|As3SRD7O6w=7#2Q!I3gv1 zAD`7s;?MvP-$Y76HaW7!;ROb|IONkuPo$s=sb3c;aZWfw{MQAM`b<1>$osQAxez{P)# z01p4zIUIgCeSJGbV2QN0Ucl}tOd*jHNa=6U4`0E5gl+{NCi-z)&Y#dYT*89P3S%uC=-?k zvZ7cZC87?#iE4o!5j7Aih6NUN zm@rcS3Kaz~ET#tP5SqY2To-sDH51`yfwUqP0Jt0IQPc!jggdZQ!U7_s3t&;kf(E22 z5J1!5!{N}*Kpr+4C?TK@ryz#53j(^lffAc60c=>ECc4yDB;gi|C<2`N&}EWyYP z{=Q|P^@snpv;N#af7>!Yx5=+P^S2F%;Y7euNBf5Wfsz925_I@dC@?)P2*f0raI-py zGcP11XY&MvY=jboPWs7a9qfo&CJH1}+e%g6$y9)Kx2@Dri71d#$x*IN?=aQg5Aj}q zA361aRYia{kJ(&{m=MX6#C%ricCM`loWq=WqcXnT3BeXx`;}mRl=VzO)H$-A<1-~j z@>1!JSq|4y*Lc#0ea-FH9h0TUws7C>sn81RX2z9>hSHMt$oAe!4u6RCRV!DbNmx_R zd-3$%-rKfVe6f{4?XJpn%2$Lh#eLIx0^cx@BElNs7|8n6DTd4|BHC zi7S>aueb!C(^zFh_&73gwYADzC07p2SFmuf3%PK|DDa%sy&oaOw21Cf$NS3a)mm`$FO(iaWRB0>W=uj9i-PCj}T z9as<^Soe;1zJ63ap#f{fKixv^jfd-Nj|d-V~F#Wi2zaLQFNgA47x(vfdBwTZJH@ibE{J?y9_#|!7-y`_hDO~59&?1zao zoBOPWlz#Y>1HJDFHCWr|0B@U|HA07<-3I>bOJYQUks4{_>((o6pGr<78Zmj`)?#QQ zPpLEO>y^l!f8pAKQAOy>7%^XtB#)5C3950j@|=-M-6a?Aq<$!J3okb8+LM|HhjQk2 zU(X)OM*8&(9}iE2_?d!;63g=|Wfx<3vV9*Wm+pR6CP|6=h}drk>kY0F5vrzS$k$Fd zpL4de*xu!}LMhWqV|dPkG(jFR7ToKy_MT_l`{N8n<*j$Mq^7;z8uk7U%u6?gV z3RtmJ5ll&4S-|5~e=gfihRHV%RJN`wC07;?C8nl3xU=$d+oxvD!$0Cn;u>A2&}8e) z1e5L#uhy3XBbW-*l)r0?@{59UyIF%?X69B(>(wp?im^fK7u7m6ByF7qpD*ATY6U!oADGj%5r5#h1HdBAkIMK#nVcKSh3)@-|rn0 zCmXx*r5{tWSfO#b-rkzbQhG;(Qtb9?CW-V5&H7$k9hn&OiwnM?!>|)rfQOy z<+>${PNVZC6M>oy_vv1Ib8UCxIq!0ZLu1dP_es3WF+C1FF2ArGmuB7Z$l!941nURK zPJd|F-lFCP>9Lu+*mqmvAFej_lbyo31h!l{i*Jy)Bp1x-Y}xa2;r80aQv2a&!^v*h zF9Yp@7X{0W<62^q?p@tkL|_+vK9e3BkJlf6X=d=KJL-l5eaZBd_o;PK#ZIq#PPFQ3 zUohi11+KJwW4<%bHmtFUQmPJUx+WSOk?`_f(K3cvLq3XAmrjpaz@f&Er+VK~2RAS1 z)g2!8#mOzQ-R^OD!419GSEnu!&ZjfkUG7Y@X-qY_xZIB^O+=WzWwg!};4^!(s3>VY z$YUUBX%hbR^QVO6POW$Xd8dW44Uv%wl>PKbI?VJEvE%H!YFFo`$}Gktw9xchJ{1XP zKfE8Yx@*&SMuLbc>Go;P@YtsP5I%!rIA@9EjAj>fS)S%fY{__uELyH#e<UY_*O$%nyLa&OKnRQyS^?A`<7CqhEFa7x5 zGcoJzo8I0_@A^lS`(6@~FkQ7qu(6SH>t3pK^4Ct6U5B?^(7SWGFvH|p;&j89Nkwtk zO{u|`Xn8Jqon_ZlH{}R380DR)=4x5oNKblDk8}=4)@3s`ukYjJGR~EEPskVz6J)!x zS)NJ!%EjJNN3du6IV$V8n*79Lb1Utdp>?@)rB~j4=e}p{K|qQLHJM1V={moGCpE4! zDWPJOju}?uOsk@(glt+sq@Qz9xLk0<-JF{dj=0O+ z&dWir8IK%FuO)n}C@6YAW-IjSw#iIoG_B0lxKPQRyHkN<`Z8+|p;+6U3%KLi^@Q(F z`BBtYT`7OA^Fv^+NS8vo`BKdn$0uJbTCwk$7y_s z-l2|&+TZ9MO7h?6-IG)DWcXYN@t-^aA^wwmB7PA*#4o~U0XCJ5!F5G7(4e9Pn3U82 zlbRMNQt|}FYFJ>WoC##qu|P}36ZEQMpOC6j!@$L}nxI#M3^=RFgY|kW*iusi5gJ%< zLtPEfYia@Jv+AHw6AOyZssRiZ3uH7PCWzGneNbzzg#{Ni)d7n(7JSiEPt?JJYgl#g z3~Cv*)If(W7TnkJ0;YOcV5^-07|&?|td1wxhgwqICQzrZ1?cqDK%0RUxTgo<&T9he zb6J4#f@X@IHjEHx>AN4XQDTE;P-UnIs3CxtktVo%-V1~nV}bRBCLm>k1bY?ApKTNpz4wq@Vn>%)NHi?!nz5J+G2sMjR$bG z(*)Z#&ESWfW}>Y+xMi;i5^T=`O$RLCvC{wsj+&sxP91!3)B@R#q(I+Z7UVf;fiZh` zP81(doV|gQI~HJFTEM=$ zCNOl>0JR=kV9C`Jw0dfR2X0Nk$V(ekx~l_vZ!Mti;SD%_Gy$P!3wQ^$R9>3EOyYQo zjxdZkQA7&d_3{FjcxV%!O9LD4#-oLI_VGMo<6-njAmBSki$3%n{v^Aol=aj2-1Knd zKb$ZG3Ih!NL_lfU@syBLFmnC>Uv_)s_xvKXM;!Lo@4wOBBTwmw+_E4f4tM|WA^jEB zN20;ZxB%{>3HH`I3EIZ*Mm{No`c%^5w_PMmct$Q#IbEcB4A(1>nlP=o8_#ix zit*cOk`YqdXna^cO^iHcIk8xa+XtHeNX#bbZ~~fAYyH*0vxuCZKY3$_-!8 zgq}YGLu$+u-g{8{t)=@`@AlS#8E2BgfC2*Ma=bGZ$0T;T^Jaz(Vo{@UZ^wTs#B-y} zy>W`};~nwvH+L5Wt-j^0PV*Vlc4yC-erS)pQu_*@m;VYrNe;XE)As>S2zW0ri?Yb6 zb_W1F4W5&Zqe!wsEx)T56U07|91Pou=Raw9s8VZDj!Ad_fq6ePZb2P1p_<~9=T4k_ z`MExK$UB_-MapY662Bi)y&HHw||uo!GvL&o=I??9zn0 zy&o*nk+o6miNwr2_xFlPqqRW|*4^}WkA%mDY&A}XCO*h{*x5y7&>|KalN~0T_)e4Q z^qF&p%W((m1*UQ)gL5P)jnoUul_6ic-C!*xyM_HY*WEP~S%M(3eOXr8g1Q#*`(c@- z*2;0!#?}2-A9dRjdA_-pZ!GX-aL%7UcKh^+w|fg*fQ7TcZ{}*4v4%Od*13R`;nQ7T z8(%*d%BNxRTWGs(iLfW5;%Ij-fBa#lj4aX4@M+5xowR*2I&tT*$Vf7A*W0q`I3a8E zPAS%XUfjSc8F4Vr_i(D7#;~>-?(d8?`#JTwEG21W8x@267BcnZ>O!YmmZ=KbPu?Bm z7N`p>+g|r?XZ{3N>lOO5f~eb7+eylLXg% z$8S&&% zRX2O4YU_ed^3_*Yq!|0Zq&hf_FTKsS&{Br^B2pJOiMOQ!jtX5|F|;9DDF~ z=G0!FxTci%xzBzH440cIIO$i)#_S9qX2+NhE`_}wG#(Wm;Jv4AWK5$NtYelR7(0Bw zGSBW(`Pc}ZrLVSScBU);a|Oiil%PCN-E9R6m5A5KIMN~g^Rn&yYV z6_utkTg>y%7JkUr$s6*2R!#L0zxmE3$xCSBtDJZH-7vMwH{A7XQqOkWl$CjtPR5*R z{-*AAmBmAER6&|y<;SGe4Fe;y_r=akI3kN1WTTAvQZc8(PU~Lor)?r{W;8gFY(9Cn<1jJr+ZZ>I znXLC{*!YuS&ZZY!^Sie%zYsddI+wKU>7s}_)}h=1Z}zsM2jk-l}~6Q^%q^Ld!Z z`fW!`Uk2%9;LB8BaCWNSA!Q^T*EZ8#r&)%*tqo2FGN)OGKlFF#G750{ zQsB3tbM;e^Nb~BAGR}*c75TMoX^#c6)ovYA2xsV0CTMr$up0TAwkU^ZNidqkRaC@J z`w)lI1!_yrA6~bN82V`Z{ATy`$A@#8tJROl(?^52;P{J8uF4}?vX2;i<~F+osAes6 z%w2Q4@ragL4aB%SOvh5qS}5yWi#D-lyS-d0l|AHZU3xn+g!8r**;Xw+3CzwJBVSIf zve6p}tab}^f6=!JVm-xt^ZtpNDQlnk0XIoQT-X_>XB1)i%CG876*#nDJ`Q@Te611Y zj>nosZ{)|@C&JRm;;&>VTV{+_@nH+1c*9&?Guhwybg|rv`_h1VvfiCUV(O=~BF6MI z1!8ZhE*3irxvbgho#2;7JK-TyOtf1(lT)8Px!UqR^Z4?mYC|R>peS1!OQ}P1M_F$6 z!!Ay~<-t_H=>}vb=F8_9_9TGG7!C=Juc(AsTEJMq)&u5%$2w#>6 zdSkFd&$h2GY!aFaaaCw1gxx_dutX19Y8=O<)w-N%-nD6H8hzzXDW-T*pf%4d-|*Nq z$KGqfWf&&k;gdHc9gGt;MQdJk`@~_Y0-nbNFQ7^d4OPcq*pLyB=&kZL98-YdU(+hg z62bL%zNcX0*1P6C-Rth@ezA^-nUx}QT(;o8^H{nYexb3%n-c{#O4>r?bnHE>y4hyLr5C4Z(v;4P-AGFR z9!ScT(cbxDZY@lrJuTesGSl(vk8cYX6XMUUZCUS7)!DGYtr`V~UR>ZZ&yQGtLT>J_ zq*62%^ER`+wP^inXAAj|`J0}Bd%lBPiMMbym1$vl_^`-w+(LtnPUEz(iPj42jmCr5 z;bfjCEQZ2L!@qUnzrDq3n)At@$V^z8EVSK2;bFS63$6MrI@e)gfCR;%v5Z#PeIlk$ z<3JV}%Q6{Mo3tT6!gCQ#@r<^vnMrg=j!jJ8>Kt0Xla;w8gKTj?DH*?35_O;S{Q4%2 zqvm<()VbFI<)1h5``b^rEv5vUh8=qWI|q|CoU&ybv^je+_rFw4RaPp!Vi~=N~H-EIHg}-+u z+}rau^4G{Bnlta+&Uq?be&$)|rz=v3dzw>8o4j%G?R390IGq9~T_=fV0XY-qHYY>& zE#QN`pJx+o02gL?u#q}_Yo2|7yZAI4o4ic|)#>o*{uxqf%|5>?Rk&>=C2L&hp@)Dk zfll!}jnB#Wll1&89FLGd{hNyboWj#tQ9q-~2-G1-)8|B>enxx|C<(wG!45@xd#)RS z+t*1!U4#>GyP*kOuc;q#?Atd<0P%GNkQ`|M(x6r_N(=Db&;aDo2B77JJjjfOqVka% zz&HjArX$Y+saP!Vj!Fh9Hw}P!v?3U}i3Rh~o}e~P6BNXx0BpP_)DIbmi>(DDw+?@k zf|Q$z;1l$lJ1!Xn-TrxxJYE4DOTdDpcu$ZGwdZan0nB4Jg^6lFF$oJKfd&|Y+HRl;?2{pf;EoRMp{Mkl zGakllCD2f0m@DN?EsTcX@S-VAm`>tXIm};yUFiP);r)LGe4+a?>B8V{IxP$h0@Fpn za0U(Zt0rBL4*h4%$*+z!(*JkN7*ZjgAx!&Eb`9Nj%@6?rX@~ksGK4|tou5Hv=)ppU z5Lif~WB9q2V#X$>oRSDmgp{}_MjQp!GY|bqC_lld|F=xUpJC-c>Gj`Y$A6D1{~3J# znY=h+-pmNhpPc_U^OiuQP_yF;;aHt-jlWzE4!th7i0AxFtTB_`<5I0^%w3Ax-|b0= zRhP4j&)(J4e_DUA+xPi+j_K$pX`QQ~QlkEm8`-02uR90#H6I=9#(ns-Q!~}D7yGzG z%l2`+QH_6zN*OKhbyVk~UrkWW!NI!;7ayMCiOJXRAIY6qWMeNq*|nHm-Ibh;yU^RL zI)QpLZ#l6S^u6ZlNEN@wZEZ}yp)JD1wURc?M%1!NO$+bYxpKC)%JDN6!z4R3^#^7>!^4a5aeSK zT40AKWSSylGE5$KNAhBtsPZ)Z1JP~h3SXVW78EzAEOlG*%(T5lsF^`$nz42?e2k!F)4b+ z;qMLih=PdZYK~WWw{f`#m2;3|IO%g#qdKQ-Nm;YEIlpQ&R{T$Y_$~ZY){-C6lE-RQsLtJS4k)RB2mFsJW z!AY`Q=P$)XKI)WAvaWp!q@~&VJkuN|c!JrQ3NL(C<~7Xq-jm!`ww%b>_?~TIh~k+GF<%%QEM zIerKe=XlYvB-lDp=?p2{Z)lgla#DMyl+o$V*4ipQbJf{qVHUiJ*7g}9ZlGX%JnC!R z6((BJYld|s@1BAZztdNTFNB4jh~}xF`-&Z7E_9L|Xyi$cd7)N7D^^r)&~*&=Jx`vx z0a0RXOLpakxgukf;hOqme&rZ6m(#r{?zMQb56*>U_I6icM3)6f?E}B$aNP{kR67>Q z>?X(L6~jXly=Qa3gHb0Tw2-3LsC>pe(o~&$F!u87sC0vHNeOG_v9%v}TUe6fV7)A7 zj4m3FiD}vLYwp2LRk+H%x#62|5=X@qO+TGLt-C>vqMv$|C;;QN_jD2C74qleLsPT& zY)|-ei9~nw;NcrFosZA7lPB~v<&m+qrBPr}OxKi)D07eS!%IbJx86u46Gy(-=u9Je z+7pbKEKu|Mv^96!;?kg^DxLZgQ;1RcR&~tN0k}}w5NCjRk>Xm?ICEGx8}6X;OpcE4 zESCGq$9-D?^}WJX)r%V^-J7c{Hz)cYiF}!9^^R2$`-nCn9*!WB`mS{ukQEVQx!SPi zY-}?hA9q|fz~v0~r%AG2`d~vA#4+Djmxz7qxO}$2_>-c_)HZ|PQk~t^Gk1(X=DE{< zcsLg^?9>~1k3}N3b_7wY3^5;eTg;+9p4gi_309-~bq}RIpE>Nc0m4wE23qKJ`y9y> zN0-~lhnTy1oqAq3{p}QR0cGu%sNS=;f`^Weef2EA@CDiw=HB)T^nWoow)$OyCOd>_ z-m08P=AwKO^Oov>%X#uZ+0MD$1+lWQvkCYK`A^R}^>DYmw_XiU#h%4I&Bc8cTT>Iv z2NcYdIv(P8tF}*<$9$6YHhp%^`ISTi_c-C%UcR}GY)N#V>|S@p>4;MJXTQqFcE*>* z;CZdZc^`8{89<%ved047nJ8l7Fgx_J!{f&#pPqK?G_+SN?Vf+Jyynx7^LW8Ed3!=f zdxGtviez)&ves)YCy_gC2gfZhy-}3D^h9`;S#~D4dmAvm+X#JsuD>?UFGQrpe&WuK z-F2f2Hf59AV|*ShloW%(>}h%fVYD_uaj7r9<~?$F9y}1y6te7tcRh0aes-`VgW*M2 zwjH1oEOlc{PhkneU@F#y9>Qs)myU;o$bELyP9spabPcqUn%q)02$Y z__A=$_6-dgeh|yr>_)Zk4{2|Xo*U=m=D$0r<`CY9j@EHZC2c=%9L7<)!XL}g$w%KN zK*?{_JF2@=K>x1O>D0W``Hmu!ESJ2`CqM5qi%Y!qvKQaZwaI;3DGw$C{Mu@UH*o#C+CTI+~pY(3Q#{ zLR+J;cgM+ePq|;A#>NHV@C`@O7bYcNWRv;UT}*Bt*=P6h#)9ty8iH1Cr)$;g>YoHQ zf`l2nD9^lAU5IKuFnX2t-1WSODmVJoO!mYlUd;!dtXr9V48l=Aia$M{IVW5AR!r@x z9jW&5@Q{xUbYCZSyEbFLYkJJ^U>lXJzR6S%uMZowo*cJy&LSnUy%Kze4@Y_`u1V)^ z7GOe-sBdBUGk1FJ&$sXM9Odc82;4qgIvc_vFD1{K|tv_4zn=Np7C+_0|Ely%8!uuL!Ux# zLP-0w9O)n*EWl_JJ95fmsDhZXJ!Tsn24@;r`^yL18Vi2Md(2P;g zln_XekWL4hifLK?(DfUDLW?3Hmujh)=k&ikMZh5gqB-4sU0f{4<>WYj9h^X5einc^ z{%e`e-^#rHmi+kB?fP3*szt8B!X-}1g*6uF0rr=f@!E5^JUw9Rmo4a)OD|LZ;Ja@`fj9q zo4g7ek{XZG9;~h*95E6tk7~G0vA-q5YSpi|WA+_(Fjr&|EwW!#-43TUnkjRYW|P`R zQEvC2IuQFxrc}&z;A0_gSTHfLS;(@}vf^bg`Sq5kU`wd`PEZSaDGK+5F+9mcEtO)V zG(cxa&`sZ`V_GeIC`5)`x?DqpGTnuYRZGDI1ydZ9co_K1)2>kR`BYxb9hNtCj9a0N zx&AM^8lp&Ds)mSkiv1f^Rzcu zvekK3IT9L^^-mj<&WHry0ta#)^M*Vgo6;G>S&nMWXsEpAB*A_jdAe)3PGsmf?(5mM$}Pqlm2Jx# zFn6Wq?@gBlSFG#53SM#B_A3%N+lufU3$H7^xC+2 z;;Z-f(902))DtQL!&@jq3Yng1Grd-avb1kKFYs;pX)ZnE|Ng=$qu*leu2@FjFh_rH z$%D?%wpqst@5$Y|7JLDx?M?2xw;o+ye@{cTwc1mDk_Zp)igEK<;xZM;pDg+4biMM% zNvmx}1O|DN&6C_Rd;MMmcPRnw*;ARa@Y@q%(E^Dd$%}z)8u@ng$14NUy7tEICzD7T z8CaUw7;CfbrpND_aei&(^T9s9DEu@v1J9D~*i|!eyBHG>Dr;dE+yyZXd?|x(13Ko( zZ%h_Ur}0^M#m=njl;)a?tRx6_rE%Y49mZ5VTu_?nCIs)f-z}h?kF^-+5L^(Bnra#H zTk~Y@o@=Pt}7~BxJ8HNaj0}igj<|x4WZuKpBZ;2z2>T6zPZ>U#2$q= zW?Vs&UaoKT^}D@et`MhFdqq6Fc;!`eSOtuYbE#_2*KSOcsz;Yr zGi~}Ww!SElxAJv081Js?ppIuB#uSg$Dlxw_n3@V`zL+RK!j^=4SS!OhmxZ-f8mIHw zXw%i`FiSfWLD0n z)gEu%nH^ml{<5_X?-v^VFAe7i`Y$k6%=QSUlcqL#K^@Up+em=A68>|rxOzKNYKo& zSqWWfs2}NxoH^%dKm6dGiRPVAJSoq7*x&MXlP@Lq)Ex8K&L7{tzUJXXR?~C1~m%F-dBYa2D~u}4hYW}v8j7eJ9woPYab}foySMHWX)3$(u77Y zThzEVdn|%BWbkn_*J)4kM(g$S!kGB-Qx1Bi`w1`Hr#Mp(S2@kD?jFSZ)H+YHX(wPV zhbE|e>h&|+f~MAx-IH!f9lv!Jo15K{g&FVK=v3LbX55yT{85HiLly7y>0J;dj~(XR zd2NE>*Jn;2I4ShC{}=H?YyMvbLP_1sG8YPOtq`WqO(Fq~`5t{!m0vJ(oVEu|7NOn>1{?mkisfFl1bj0E3 zEC6*k3)_E1B2j>Ph`|Ag{0A5P_udiEsaf$~djDXPNQgiGckBE$D!6!x^%#r+X!TNZ z{BuA^35e+*((nIR1d#Vpu>W`5FGJWLmHz*?mHA8UpBDMs$p2sK`j_-iD}nYh%Kv5a zzc7E=2GsVkGyVAj{)PHw0|My1KFn}1q~sF72$lXiQvsDC{g=}DztQl&owg9?L?Xn0 z@@w*a%45Hi83=^rQ5n&)sfqV^2TkZs*+n6-^CCKP9L;@?HHI`?huGY^t~|LQ5_Lk; z803=UT`IYZ+uJ^YAwCgx*S5W=OYQ+4CF{hQkSh~ssI%W`t$jH8YOQ0dY{Q}HhYXfa zP?I+ad<#;tjk&8&r%IZ5Q){lIv);+Vk{aF{bNQKYjY-yOOl-+FocxUTWUv9B08!!g zbtbWcc|rV1!S{(MRN&)xpN+;|7e%WS;a}z~5VS#MiStDJ+k8a%KuN4}l7M1rLbfK4J%y5#X8AR?_Akz9m+qxxs9tbiQf{gs zgbO~jQk@=dcI2e-lUOQ=V%z;jt8A?ZWgps*@x+v`CzsxmTbZpOmze#&%J$ z?~+&Q)`H{E4++~szGg*DH`kX?1`sBzAdaens+YEgRW= z?c=X%mB^Ogh$h$DJ6PY=2*)s3Vp(1qOS4|e`ue~poOUuF`*dpl`sBQ;*f%BiYYLhC z>lpd`);y1>P9CR_tr|)By|t9KrPawks#(fv(LgUHzO@^C!YgsZ8+IWbahI++1)=T- z#)yBqHC9sPZ?UpPfQvW6`;3V;3ey93IMqgG8B8297P+)(1H=;G+6smEwroLHs0;ad zI|3+vR9(6DQTgCU6&C?U$AISp=k%qK%@@t%3_-7xy02n0@4XV4=Vx29)8dPeb#RDq zE?Np6E^PP7I)6i&23cdx8y(4z>nx3NM&WbU`cXu4?l2FADmixzPsO@R# zTSZSVEH(5q*wQe(arIkudsOvQQ=!hr$f3&e>Bn1vAxkS2&n>ix`c;=hKM$>#PVEj0 zvlB?fSnDtPRmP{r6;!fWIb@S8)YI@kG^Fsk2cb-(Hx2Hp z`_RD~lrAP$%Zm^Q7_m^*)^kFIW63j%RoV=Fu$u+8mFYv z(90nEqJi<_()D(_gI}*br&$PxtB*anY2!;=@hFyHjUi$VbF6x3q?vi(-Nc+^4cpfe zVf7(X2Mc>iGlzhUC)o4OzC!o1&bEFVvvnuT7tiN8a~Z?raE99~aA9-I=j->eedA@3 zJERCA-**F9qP?#haArg!c;oNt`Nt=ONIdRg{axJ2TymcyQ%;m$>~&iwG3=dD==ny^ zN)=rAWsQ;c1>NM-^MUl<)dHGSTm{!B)p+L9FiS5yJsK0&*4mis4^=cYNtoNdGIw#U zp#&tF2Jac6y(N82m#fF5vI(l|bg9m?w}#8ROUgIH8C;r z<|=!=K-j)m%69}xe@--`VU76e!TVOC76W!)q3ch#9~jgpPjkigY2BkY4$O#AAKA33 z^BQE^w2T`ux*dvR@}&$#n@?nkCTCa-p6$N$QA?3-f_U@fd#5*O_^eaG*t_p<1bNqK zbhb<5<9;wc$z07dFPLMdW3?Aj{?XutHY~UF=Ba%pGRO0HL8vTrjH#RW+gG3ZvdcRi zTnYC-ys7shVO~tmRdJb^;PZ#iJG#i&^RQl!PfIt4&0>G_?G%epk{L67m1nU(RWJwM>u<2 zUy*;kgb;tcQ7nZEY?bw$<9h6(&=3*h-sp7d=`6~d=W1S&0ZhZd5^tG{i>4h=frxvn zig3kt!l51ipr}&|^A`~~7K2-Yj!31gk;id;6Os{2Df}xb@)KT-tYmD@Ft%d19E^KG6+gZxtEgl&;A?WLFTTiqo`lAlw!W zS{%4E7lltjwoVhBhejkEhs9ka|1K_Nyn8UJjBtn>4tg3yuFIBlE2wnzBeQ@?4R$s} zYs@cxn8ZbWWIT_xjs#z@lWu)fLH&SSS~p^;3||^11_t@-zQrnOH+OK)Fbf@*8;Dan zE<h1ZLmEEa28(W%X87J-MJhizO>w5NQVz$$7W_1W#|2X}c z&F-hs{(>w#_UPaY4>Gf{i5FkMlilCdby(4;=qpDrHnIGgW59fHPfA6uRuJ^9;T zg4`vbvB&l^jE=+{`8R*_l`v??SK`H?5J%ziKLhEQUjcHdUjcHdp8;}&)X(#)2*}?! zsxFfH6>yjO6>x{b(?9S3bfyqezXI-3KlLHSf9gX*f#gFR5+cXqL$$0{!!-xKtjP*B7CL{`a0C^670VTyDcMAPeVe_*i9IQz*@g*s} z1O^2?LjCUZNCePaVmj>iP#p|`WrItK9(DU0ik1|`K)H!S?T645J%5;BO8FHS9awru z36@{VgZO8pbidJ1L>>kGOPt?m0QC<9ODVx=!=p)4NJ8ESl==8MX>d`6mCuvIM!!kjWrj&}M^@G#8nm#dZKX&6@1ULkmGp^=~BVFcAZ} z$$uj4f#fTSl*VkB9Q2|bCg`AS)S(v%IgSW8lt_a7`9n(PD)V zQc$?&FQg>&%0ty`zmYw?axm24y9_3KptRL5eTO>>4TWxgqkic-Dn?{OqM?|{VV3O| z7zOPsaVQk^8~jrx457(}f{;k)JMtIu=zH>?&VQ)|S^Gz&eo(Ruic_5e?Bd6n4jp;S zuWZv{Dhw_Gc>vp&2YVpj>qzQ z1IN1`TlU@~J0p8ULXp|9N-32Q*&|ALBqXzX$}Jg%ghI(GM2dc8cZp$AB;^c8tADXFaW!@u?YWD1X`vBOoPPbIMmga zoV1wqPf^%9m465eJRjRwR$0589dto?XcKJhe_H$79A#MgQ$o*|fjtiG%>UM*s38Zv zg>bI@e-sJ2q9Xd`1E}b2XW{&(o$@N^p<1w$zk}tU)dI_pu#QJG!?xq!X23`yrv%eU zRL8%~z?!!*p}yna1yz92L0Org^M;MU`G)C_C-`6U6H#2PSx=)PekG`wN@rxIvM^62?E$cDU=<)0GJ>E+S) zKVgkhdG*C4e{|_znSu|YfC`I&Ss|VOHcJT>l2w$5W>t0mS^i&2U@lY8P$!Da{SOhW z-zbx`sJ;EC76lC$+0zuNB;t>y_#dodAK+ z`2QIg{m0Va|2mMUv@$OG&+zG$m%5O)?up*&1_PKEm6zRJZEciV6cIr?5rnv(fA?J% z69rC1krdz$p%PeiUQ`D8~yE>D=o+KW1|ttD<*l`O2i8t!J{S}D8{@c5+6o2 zkh^R9o(7KkzTzPUtW5WN6K=kO;FU9*33opj5=LIpqw$BxDG4=`DjeI*>6E8{OC$J@&RJ)KT#9hhusK2KUffC zM%)Nx1Ez$55nn>Upamgs)Rmw#WJWmr$(!(G$dn-XS)Z`)BOI{(Y)arAHYOO1c@y5k ze`Nd^;qr(vp=LaVuzM7awNBI#*gu&P?oIj-THt@c7axKHq*3`=NB9Z<4Ze93O2R@8Rf(w%?!g{Fz!f3`W&|zCvzi22mf^ehOa628by?_*I02G#0yEDt;GU%&i z$wCB?K^e$M$;J>w8Z});*5d%#B0w|^b;cp<(c7g66B(xAI)-JHEo1$dAjPtv5E&qI z+z8Q6!DJ6$gaZh~9i>R%Xo<`6`2UvW|7Ukw84&YFulnE7F)MrMpM8%QDMM`LaAoO+ zo#ThL4vU{o+7MyMt$VvKHQLcGzJ ztU%MDN2pL1X2cmi%m$3dm;&s2CDfJ$w47!K8fY;^SvWvn1S=@W!XP{+BoksobWvqa z!~!j5L$uIwPLR`LM+{Ir7fFN~ZDU8YQBH2q0x76bM-D^>jV43ru-8g-k^|94!w!+N z5NeKUprM=ybfqpj!a~JnbR!pHa7hc~uwb(qSw*xFRKn4gFNciLL)=L6uYm{^Icmi4Fw~Y0TCJKA>dA))qa6$g1F@$7A&U=@ z`KwC+y&vdkjR5olK!o@KSzJaAV2GL^iIc()ZP`3j>BNdPYU0g=KVH`DK zl9-GTAYRLeqY#MY2$Ql&1B7+8z0iX2E<|+F~X48Wh6`(G}o^qWmAD6 zOUuZ23{e*$ab(va5-h6+F380R=%{oY+>wRlnZ6DYLrY@dWEFY1$1atthe%m9>Dz2yu5ebVU)W zUpKMA>cQ&qL6vwD+dsyKvJPqFEP|TYA(F^`v_c-)gD#ptcdL;_T+#gs(3cpuLSG7& zgMQ5gm!6?(Hz3=H*Po%O8=yBtD*??$9`Qg0l>s6O^C%#CXs0rC(Cu2Fs!#zs`~?-@ zR_TGNql$n^sRGKc1j*K_{mP?92^%}qAQ?o)d7!H5AR?v$(6l;;^k53^XuyxJDuSZh zHUea&hM1vU8zIHG8d&9~3A9jk&i|W zG?(fEmstF1ZP4PQ2i%CwFoel&`IV874wSqOL%jkKa0hR3^WJ9rP1 zvlJ-5333Ug+W~YavIm;F3{j&srZBGV-U+$FJt*EN%Pvp?HBXJQZii|$Is|CSc3|{k z(C!`Zn0yWcG`s`m5?OnIGIl}%M(rV=gP+LJgS!wn^r!_41#lA`9DYnRCxR%eIrP9A zBsywpj!3a7uMVq#l`r(HISgy@_h29Zq#lsfV=X2`W&uJyVWeRaBj^BO^@xGdgE7JF z;r|KVw?H;xnx`!gap-LdpAZg$d?Ceumo2XJzW;Zu?H?hvfA|^y4zHC)o#PPtvPMgU znHHxGD~{M{TUAmh_)0H8RZZjHUO<_T9da01Cr?`YR$acDM|JsX9@XWmd0=@HojwSU z6GImx%+Ma?QsF_ zF?ZGB4*L*N)Nj`)C&avOu@ zFi6KAAflFwzEB&@7%Jcg{zzN^K!tu_GyieK67@a?PD#OWl0Isb%paT=mlJ@-_=B)m z;4g+)01Pqr10gL`F*Vv707?T+LfMF@*Kt5;g8=<;9Ew#J1fx~e3B(0+pDfT5fiU25 zgaE{F60~H8K&{oD1oawtP;VIog`UC#4b1gKZ-)Z(JQ#{_^b|mcLZH0-mf-!2)$5_t zA@KP1q!AW^mxl%#iHE#oMG-o5QzqoE7Ydcsv9@(t0N#^uP}g)M*<{y8X$!;P`2LFP%pz6loSpg7&bhaM*wNhS$Iu57eS6PL?W)( zMMvo4NFX;vLy3dVAnquN0;CiLkVFz#Jr)InSa}lY$v6vgCYJ%)7Yz_qGC*uGAa^|u zMh>`y9|jRN6=KU@u?V0Fz35pC^zIKNDU>P}Sr0=B<{z&T(+3VJB}Z}wuym(m5$V6Y zC5-Vf7Tm9c@i6$15LT2W4&j8%S9w;L?4~%7O4OnmOa3F=1_CQ_BWzWf#^Vu9%t+}3aES_I;Q_;|(OTF4`7ZRw zfc3|l%^#l3%AxEJe`n>35ouV&qMD>}8pJC=$y8O8A)rYLzt_gI%YZ55W#LZTW1&x8 zRWr$t4S!|DahZT2QQ9ch0z3qQE*+<3Z}>RBqY? z4};_1KZ$ft&O6Qz53{$3oQ}=%QGOu6OyerPEt*M`n>$V-(|5yHsp-Y4{d1fjdPCDX zhOg^HDjrN^)yCsP%$xUU(f1dv)A;#wtRgIXyPn43ZcAms+cgZ@bS`z$Jo_X}QuLy~ z@NDSsV`nnZ5!Iqm)MG35zL&bY%+C$l&1qTe3V(FQ6Wkwa1LUpC9F<+^aZZY<&M zjQtIor0L?&%Lc4z_gWiT6M3KDf1Kc{+Z|(6oS*S3Dn@m~)r4b<9R%49lzdn7EZ(1DtRL(wJ(Di^Uk?N-eGkQ z{k|WKdEc&E7^kV__Y9xKWE4AQ;v}E)v_joBq;qq$#!SN9@sDCuH80lmtj`JYXyTJS z8^!u~#Q5{K{jBF3%`?x3&Wu(b{sacL972Z>qRM_wKh>^{!pdbl%5qFU1WxYueGkx!d@?VM4VtiOucX zdxl%`X9oB69-OGF;H<9R{Il`lS`kzKTtn+8ta8EGmAqx+w#f?|BAg8OSd6ysljg`7 zyqvwCHRosR?q^)ahurU)i_rV+L_O~$Z*$pmhfI;?26foo4`E{Mp+(oOQ>Ch8CEhyv z%rrEdf=cUZH%kH_xiaOtZ735d-EB8CY*c;1q4KiT_7WFOedURE*X^S(6f{pAOxAgNoPFx8 zJtr(>xft7SLFoj%qRd{}agLEm2K1}5YmVK=nTeEmT*gTxd{%VO{HFdH|42k=@*qXq z4h=8;vld+*$`<3d`gdhU`yCP3v7@_3;ncnoUz(HhYsP2DCTDeM1lC;nV9&`~(dFsr z6ByVZd(4^Tc7|%LqePoTl+Vi#DldJvnaAbzG|inHZCO+ZR@d3lp{lXJ*qaHiYMtIpd$-SX7C)XQ@52?g>*{#`eCypoZs$uy zlqM{@jwL4D8>*1hEa2%OWKR=#txNIv#{$(M7VSy2>1U#^+ifxUYIeK+wE%LZ%4L~N9kOCV8A|&ZRS!ZhrM~TTkhaJ zbIOjV${hG%d;IQ>*G!iO)YISXMlV*FbxgUos#r79-MZ^${?h+P)cUU)(;h)ZU)Fto z(iFlwBgc-*{hWV1WFqZxO6n8du_uFrTG zjc|g|l$9#Q){vU_8~xuuzo-*?+4^eRX>}@FuB^%WOAjK{@LZnnV#{)uqz}cZwY>Z2 zcfTCp*immXUXWeq!L|D(-$}_<+GswVH)U(WUuuL-1~VL-u84LMdv^T&6Z3O&3AEGi zUIzD91zQ9?y&AcW@T@4~`E>KheyJiBdRq2JuiaGFtJaV2v^-#zS;W)CCvtMAxu~wO ze;1!i)i~d-D0fr8#i82aW^bC3s2BAKi)7}9P1V`{UUpN}Al-hcN(u}4!`aqQ`ybA> zWFn%67%rdiR9!yd34sN~w|dwaUH(rBI8j{=P*GhDP*GhDP=VM8qTGHoJ{jEb!c=g> zM^Ny>c3%Nc$R`QBHjWhV_~6gJDbVvngUoy~UFlam({Iff0;DcpcL3~j! z2vxvTQKK#?plZWaK)8lw)t4s$U8(Tob z&RFWAr>}y7&zZoWzXl3IvOu{08d$}6{Z}4`GQjnHavektrodanw+v(xYLg9Coz4WS zK4pWPS{8Vz**8cc)aa`$FkB-C(0$jzg?pX@N?EeORXvak$?~%y%gJ2es@(uj^kyFT zj8`Sd(Wx8ocA|L`)P?7O0gV{MnG1?-Z;?!)LT~3{)?%n;9%gO+FUCS1FgOYzpU9h# zA_s%OT543_7BG$!LS{L)z$cz9M9k66`Cwl3ZJ;&e!_SsG@N=*LvTVhmuLV#+PDNno zy+SBBtk)6?PK_Gh237C^V}`chMm*qS114y~9mD{;%Lo-Jg5(OBp!{AD;(`UPpl)}8 zbm0@Ql?7a^~u&Y6sIDkd$y1#BeQh;a{d1bV_6cHreI(qPri2pwh z2K?bcuiWGN!_WT11OH>0f#h`)j|`Bh$*W@*?4w#0$OYsY`mzFPz%!#IKMEQq&MPyY zzgAEbcW1Oov^CX-6lZU>?%BUJG_u}hIO^+ULR9~4xd3r;N%CwlOT|S?+WsgvMr0!iBoe3WKv>E^MF`UOwGJzA6TlemmYW)!Ua>$&2K=C}^ zAu-`f?ORs+PqJ)RIDCQO8eyWBQUSZ_0YQM{_^qd)uSL&D~!|Q!!5@?+i zp>AQjV@dzQv#6fzT$Z8O$Cw?Qa$>;N+j~4=vi;JwUN}{8H+WH<-LO)RBI2>RBU}|1>CiEJSL(jx z5f@9=2rjb(uZ0)QQ>no^o4ET0WhjsMgd5E9==eG#tWWuNg^M&r=|%9Xl%keoZ#M=Tdh7%zs=>VA8YXavmyOv zma`1^i`^^=3X7mqS8NRc#YNljEzj)v-hoy)s!wP-xOzn=d@|Sc~Io*;X zXW6>OC@J$|;}-wvjd$zXdbfm1QvW^etHH8CxiAOxAgm*=ob}b@u~U0u;%cxQkFowc zc&|ph*m}i?q9%`>1g4MCdYB+Ip8iLWd;)}k6$B@YQ2d+l*9ealhp6gX z9n_ZWGomd-g3wbSxUL`^zz8`c!r7-#heIT|{wY``+CWT6{tW2$4Mc-UM#AN;7H4iA)*p^MlK*(a=W39&aX@!FuLk>{yJ0usC^_nvJ)Hx8xK5 zEP;`{q>jsy%6BfFk=q@Ul_P;S>rGEl=%C#-ylV$-P2v{Z07djdmtN~`BPq{F|I#F; zlTtb<^je=c;wYQWe7Y6YcExZ|={A98aJnh{@VjCFVoY%( z^vw4?=`T-S(cw-vybw@l_j@)Wm4#SCK(DJhm0sMVCyKpqbziAL?YJZywU0J zW%b<$$L<-YRz{0vysb9BlXc)yL}1}WqPUn8xe31SUjF>8`Q7`IF9%IfL{%I(sd_YJ zy-jaJ6tnReM@xg4tnCf7SN#?4^yY1`Qsnf~RiIZ*+W34h>RvIUhh}kf zrqx%jK`}QmgX`6?r}h=jZVy!2LLH@!3X4!4o2-zeqb5wUM%sF4ut}EZD}Lp=C?=_I zE#*oGx_3N4nOarw-p=&m-jLRSw-;0^D;8p=UVo84fIre|k@UTUYtN`;#K{9!M{!4e zD9QL2b!Z-xj-S_Fqbb?2@A=EaUjB(rJGBH|YuD^g5J?ZXoWh|wTYFiJk(Y65t@_NZ zBZZFxbL=acHisOYeEh6QCWi6U-JhoFjePNh@Aq^fi`aG+UANJqAbY_~ZzD*yn3SQY zoxbVVBc&4mUi>SmlRkMH^X~r0IvZxj#e>T_@NGU^<3;p+&11LTd4xxE$C!sjZOAux z(8%_|^U4OkhzFkT=d7}jEr%taGC0b89lpAgqQY(V<>Q8(U-Vku)Cf->Z=?}+uw0uV z#z(IDkkaF8T*>nXNqcfxgSTgW)F@01c%pB%V<0|9fd;Q9{26~%+fSIUMf5sVfZ&P9 zNL(^AeofX-Qyua2Ls2)^Yt-_QKehOZqaVEZAe_mcY1>!SNXx!TJUh(nYP3h}mLi^X zmi?#MUu`)tYEYdbJZ)j33&*iMNqA+FP1e=r zTd$q5H@rS)%#(LC2QMLWHi}H-iI}{^aIZkWV#O(yZ=!je5-ya_>|o7U$M;da;lVn( z6CY!oPMlVecu8BemN`LbYB~VNo0;A2XlXgQ;a1rFg6l8|0qX4-F4le4{O@D zIG*vkm)x<>>-3MjTxn#>fj-a6Ps1K=%?@1*p?jAZ&YF~`&MQ)hRQW#S{Wdu$+@X}u z{;2=iOpe#jwzE_VNF;A*@s`$m?VDz2uV=X=jN4h;nLe^x)Y^EsMBeXt zT{!0PaYMw8qXF+a`~zRS2STb;tHP_(4m5A^ zxBpg))Cv!1pSd9LYOzpZu3_Z+F#dVpz|22<3>9V4MxGkn;H)2ZWWl9`i?8lu@#Fs2{ryV*Q{*C&!{4GD=yd1Y_(@K%ka{ z=b%!aw}Z_bZ~i0Dbo|q1qOd^+s7iQ4tYaXsq2V21;Pc-ERwe|B1AJgf*WQAp8}ugE5%if~0%bf0AZEU|k(ak4Z*jk{Zix_6Z<36^Ot7bv$16 z|Ke_7ErIx%!j-#Hq#&5(_gh$igZEo94G7l89FhDk*qqnXLPxp~Df~6Vv1#i1a$lZo zZ!{_OX{vgzU__5Vo0r6WmL2=F3`#{p?@!F_2uQHX-t)9M_l39p^=+nES8%@7uC=2c zJH*I2EV}OvF6lpLyy5)htnH2vrFkx8zk`p~iC{%_ z`~l&DJYkCt-`lCQraa9u7s&Y17FCZQTb%pxzHcgq){SyYwz2O)O+V?$sif?6sq(LU zopvE7g95*Q_VV(cd$NmSZaP@c4*vwZ`k6aZ7 zz3mp|BS**&iv}qBrYXb-9o?fLE9hvllfr^&0V)nx*L|`z zTh-B_H{YDjV5`~?PQT9Sd87ffFui zGsW@zKc^l0tOj`xk5Ka#XVv3;#m!}dk9i1fR8)}8^+BFlQu)i=tBe)5Q4izO+BnN* z*!Se#Z3@o;{7!vOQwMqT79B3v>(2+y_%j849^HFJn#%TvkPn|=vtLcFJ(;2oN7tQn zr?V86a;;S9S!stxtI`?jx{GdyE8HE8ydF*0C>bHPP1`6u_M0hn7X=}u!ggN@niI`_ zG_0}kj+m2MzN~OdVbS%-TQ*0}-!EZ(m?TI}5RDsa^>xH&h^}8}da3laV?4Eqi*>e< z!jT&%d>F$dmCh?G*If?MVLF;s<9BC|m}s)0)3iqoPwTQgE1Zn(pX|+LsPrKvwz2X`AA}?l1T1$2-Q4O2 zTXaE$a?J1j+K23i8n^l8+q@Ixct(A7U6D(ves*0xBZp4w0K=}dja_^7@9wrfMjzC4 z^?IZ4`>%LeXX_ugSy$Q+PNp>EVc|D$un@2?z-{us_?r^yN z>SjbCcd@1Wy$Fxk>$Q0GW4j~A632@74V7{f-s8>r6#e1Gu}ixWPt*#m|4?>-yV`L2 z=SJxdTaL|VwCy^X6VKRoXUlhl6d zl4hFx?ib(5M=w-oBv#QLEqm?~7~*?o%)E{_AJI?3UkfbZe(Ddt_B{_cZ>8JKeUjv# zbuqhjb!nSfT+=B30oGgV^s;AK@QYTbUf9l@9J%rAb7HmSL$M3BrF(By?jskp{-L0$ zn6$nxAwNJ|w=p_hwKN1k>m;W$6G1Vab?p=4)!o8WH8;4E}HVL$J;xnj} z^^5!D^*XN{ot|F$srj;T_C1Sz9^F&QF^=)ElFu&}y3P=;ozWx|*7EPROWmDl{>^tR zdOUbX>+K0SHhF8Cno;3ocKOoE(4JlaucdwJz0zpSPpv-J>nRahJJClz0y$OO8$O;A zzj03XYiP+~PN6OHbvIi+EE^FJDt{Sj_i*ueOLJ?daYo(kBh9uiS$$P>gq)@Rx}r5@=-B1@s>3aXC+_nzP3|W zGbsIbl-`y%x08KO-CS(Vnmxi6`Zmi}M_WSq`Ad6LYW#Izs>0%J1|G=eX8747buK3t=zdL(Zj~-^r=sK zRYF7zZb$lQ^;})Fs2XFFHwh6f^`Np9Vmdh@%5bxveRDx;`-KWhJ;}p7AC2s(QIBG$ zv>zK1amr@@a5Zrns>{A69BEwbYr-M4|FNP)T*qGNXlP)k{)Aaq9}9rHK1u$l`yj%K zsG_C=FzMeU!KdIKnmT}Rpd%{?ZwJ5?k{BXN6D7C?f#A4;V2u$ne-mWT4@2N5siH*b z=E1-BDKI05Or|05Y3x4!C%qjbq>>2UAHkehjL@}$&@cpU7S}MW(?C6864W1oV7-E1 zfDs743DW4R-!Lm$i!td(ekV^H2K^=@L<@-Ov@t>yiEy3^*3yE8Aw?aDkUjhl=N)@s z9bm{bCb)T&s7h!Asx@$wn9Y6+E+fGYxj|$82-Md%5}^ZQj?6E+XP{~q9PvUWMiI`x z*X%IvD6)R_hla7*j2i{RR_z^O^ahYe(eJREf?<@Oz)3znuyPg2_W#wb`(xYVe}+S^ zaQ;x^DTDzvYecBaK7K;D$&sEiWD@Bl<9=SU==^sFP*>C-wtseYCF043l`Fb%Loc35 z{P(L?&=ev78*bRb?c*t^HScElsrU|00XL1XkkHxh(405_MwO=E=>|_D%;@V@5ca~* z`@hkA44wInj$)|t%r9Yy>Aznf;09NsB8O?nHGc+jC8F0bbaWYILwl#OE;Rd#%R2*H z2Mj#~x0IoK0A(TGKd_?zf?^``(hS(pI}0`t(Pj+g`|%59oCVb8H)@KZiNDda7}~Oo zvY}6A!3xH?U)hrV04q!YMKn;kAJ9yqNU$pgKPJIB0JEyBT06#`(BKbfNt=Iy9bO&q zx}-7(s)GOpT?giXb&mvJnFC$Zm{<)rjtw21gDjQi0loGHYG3>(pq}$!5TI;0xaB#P^w)1;hz&$juRNLL>aBQS{z1 z+oALCyAQpSH%fg;m?`YV^>761$nQqHUgqK#7rr)+=NZ3eYYc@8s5TyRmT&#m&%L8W ztRE+JOOy~H9Otg)WqGv zF7G;6R-tUOwPTl)*OgwoelfSZ6P(-HU!DWtiy6n)4J-Xd^1}gUp(<+tmk0*tn&e;POh!HHK;`v zD1?-nWpDjVd7D_{X~5pUG-o2;G-TllbsfD!M!Wy3z6Ov_Zy&?e;wh_|J|_R%RXw z2gu_`56B4J{7lDT%qE^Ul$Wu;+_FlotrJx)Aamh3N+YdUwPmF5WTQGk_G|RX^WD}y zjqgp@$=>M|A$-2`ynR>Kk^FZ4u$P<;7Uk zV$&7cSJRywCg&@pEoq{(52uvjAACP_uGhrhu$|E{pMzaxwxYU~jUX_+Y1dal{)1PZ z?6P~NU&ZzMk=~1G-X!~ahb^)vDA#UNqEAy!@C)Qy`!e0?gw3<^LO2uHfM2>>U9c9z||qFc_?u#sVQ=JR?3&e@y=uj z_5^v}RtVkZIu%uv{V=xYc$m=0#WS_D6IFBU5B9bt2(}hFtNJisb+xx^ao+g4=Ivb1 z1Ik<9pXYDYuiBDQTANlj5*CD$jkOyK(@uVHgU?Mib59{JnL+wpqGMqGyKqZ-z^A?jVP>i4-_yQrZQK`wHWFE5Hvd zRC1v7*p?>|g{4VO)aW;=OM&A=&rm|Xz-2>2F!b><%8K3xlm#xL`C~av9b7L=@iYZw zt4#$-uPFkmLX$ z(W_LDc7*y@Mm-oRPJ?5Ch!$#U9Bdkr;QQ^cW}8lfV+HyQ26vO-YHFM`%1eu52Kqb( z?;*iNx6qUZlwBebh+g1Xj1a?zBOV%5S5?QnKUTCJsH-;;G3F!3 z4Z5FQ+?(ha((ik~)cK$f^S5Ug?F(~EYkD$6Xz3Ju z+50x0`NAvvG&Xx~3m&EoI>Ob1-YK+cj$gIbHmS4RzAa1Gk#kS|Bh97@%>h( zaDJuFH4>-vAM!bF-6%}8x*^9e1a)x@Bx|Or&unwd7K$Yy0K1!_3Ee2A7huJ zID&+%CG8*6_RO^gi5(tc=l=Gb%)&h1^5)j{{b3tw8pS9R$H>F)yPmpkdE;1rf76s> zbUUu$W>Kx#Wg&5|4nnu7U4i&y^C^ruy_8WgLTntjyY zcR80;GR(a>BAR7(RAPR8+&yy-Lk0O-Pqt6l56?Yg@UF_PrL$ts$vh;Y!9tVAO;3@r zWe?ebhc~Sh9=~LW;yrF=MzFfAud6{}~Db@pDxH7lp zS$#Ug{Gn{hNvBuJH>f{UZkUTvWpDE}KX1dDc{$pE&Rv4fJXEs1ITpWYTEdFU$kO8h&9nIbe>V;KDHxC5HiHU47*^rh>RVrp^h5 zhWwH}%n2zgeqjoa5q7kg6K+19`9Qf(6T*l@UWXxh%VLX$2=IVXXm!`>`OVr(d$ z7d#UP?Ofe}h&n2G!M-1SIN}u-*s~epg?hFUCADD@K0u8pLZS zR(3jN(uYm6;U*zam@0~sKnKOZfl)!*MRDSPMJ{P5tDuZxIC1oVICw=Ws38VlA;G6G z_zelJnSmDgQVd!ky97~iMhqIdg#=NvvN*uAhscSJ52n!@2&;pwFnR$-UlnYH(Z9?h z?1^wg&uTvj<4HRdgIuhw4pQo-%QwYFmNn^tA&m8P4@hD`$o zrYv;KywATb1(-+&viCSOz_-JmxBCaXi4KG***{Obc;Q>L>jyV7A>K2)#x1nV6=)xI zvuaGw7t_twR_H1#oW4?WEUDXvD`Jgs?)1>fY;W5SmZG7eS$lj-ZFEn4XMQbha1qCF zN3B+mS|`10_SIS|om`=>Ec{l1lOMYX(G<9y>^9c3gX(+F5KJms!Vg=aojYrzn<#5? ztuu$(HnUeQ1u|xbSoB+}PwXsvBZUhkCZ*sFvF^ zD!&2856i>Y*Pqa#E!b!YX^Bx7$2WlM{*Vmb0^H@GE0=A6*B>I9hoRqpqaOifS{2}+ zfl0EXVjEx(bC-wr1!BTO8=!;d{zlU>KAXfA|#_jx#Hep;2#a~=n1+Z^*!^aGQn|u^N^4xF9(+XhFbH!h|R6|0PM(Gzi zkD&&?Q4K{vPya^!0cBo&*~qf>cNK9wiORq1nFI{g{*B5i0UGohJ&K|C0mZ>{NL0ef zptH+Js}l5d6%`l_fy1HG+Q#gR*TT6_luyOamUy zUw#Xz4d`e<(sLk9LPIe0*wq>Qg<;bi~vsKCUx7=87G4s`BKKwsTsfW8N#ukPtUM>j#ku->{nc(iYVcJ`VU z$NT>{Bcl}hI7aN&7cvE9(o*pqZQNl*yNqo!ZU9F?rp}(;SvIeWTaS>>^hIQ$HHkPj zoD%5{H!k?h3pR565!4Pe;w^5!$2t{#oFJqi?t<`cg{c%qNw^SS9fvC91g&>$KBu*P_VS z%6#|YLIiQ}9d?BhX!QbtxN`Qt97P3r=p#hwr9fO8FHRL+Trg<_#ig+mV-Z zLm zJ% zTj2$R^m5^i(<1H4mbTA8`|$*Dzs5N(7+?KG9vE$T|!Z6TqQp$lgjt%F>X@$$Y~J~R&R2i zFqzM8`t-Uw9-)-4$c1Q?Ddq7>WJ%@a<$X`rtn;59kLPe25?XUTxrmaTo_?%a6n}Y5 zZ1>A zPzfb}#WC#cOuy4lwWw5{^66eKGWXO_%QY67+d`){bF8t~+{YSIZS0$|6onTXAeSds z?<9+p)$R`UsMq;fZCSkLgyqDY4 z8~T}lOk2iH+fVQz+gOUu_WF2^X`z~J*801?;QPog^M)-pj5&O{M)~G)$e!dk+?q>P z&As;%a?T>C(Ox{ zxi=>7Axllst_^y;cvEvJk9E>6Pp!DD%zvq?YuxiD{_yQJ8c4p`$or(E%|1M*wSBJG zys1@~SCKX^&Gug-UXOojmNK?v@e$`YU!i*u-$d6&MZJYpbDwKKD9tOjc-?n+hVSQD zbbi2o$09yqV2L7nX*czv-L;vegl_!D;cB=3rQU`4iEDMK`T2wN?%I@nf=B53KAcl1 zrU*(=T4PgVM-_LsX=(7Vv;Cp5#U-D)09X3H&97*?Y_7~#Y^QaYea#}g?=ItBt`Y7f z;bJeAGB2`Z$-SYmO-OcRyWqmyK74_bE6%UD^fpDvxoT`Vml?sU^D)!IAiMhJQo=_&ymSwK zt%#GW+mWvwZ*oHE+|9Jb$I`>9TkBuM#|x4#RsGnUxA=0ZSBa7QJ`(pnk@Iuxi7*+9 z7JO)4wF6`9+0pNQ3c7UUU7Q`c90NbB-X5FFj&%3A#9L`e(bBQQt6HVvrC?X}xUt0q z{jozf7JlMnFMYmL8RgvnwzK2uJ`HF5G>+?gG&4TMd23+W%V!=sNAD`-O}NKNNqu6k z(qT0%E>aKCuDVj9^kl^pyc9gL{Q4#lR1qy zJ2HGd_f=MJa$#O&Md^7HbH-P3Y^C?4S*&~tHm2mB_X>6U{OO9snwv3ZBI_dp&11&y zCmda)8_6)y`_Rl=zDU7xi_zWrTOJv7YM=BNH{&uz!e!2T+sE-w_t`s{B+E<|DttXe zz`s{B?)u5#Rz0GP`^drYeq%(d@wYwqCk63(s$mDDT4g>g1Q~IOS@+%_j@`8VJ#TVy zo$QrICH=Z5?r1wGC()iiO(}c)5i92om0R5V@3=f(aLk#ES6_16bmdBc&!|@&OFRE~ zV|ZNyu0Ek^%Atw(Zn~fAM9}exm{aQCGZXq|eIr_mly8K4_CH-$<1@5oVPE|b1?@0J z&8>K`pSzCA-R*T-!~f!?Gfg0aV%#eWTlyZmz>eERHDxkSzfoD3`);=|Pk8X+b%4Eb ztNH1)!9DCU9Ir0;FofKsEdQzb?RwdV8R@N|lhORyPVJxA`8KmUY@P2c%kccb?DqBW z47+GW?vl&+$Jlq{OZSvSY^N>?*!c$P(MiV}cp2brUbX05(4Szl_LNm^3mgsJySusS zPT|IL674?I+q<{2p%T##Z1)@Y_I1Uc-rFn--^B{(^9+2U#kJEdyT$va6wWQd{Ug`X z*OamM-|G33#;^E)H?uvx+rX_YQtAwOW$&<)#%X8WY905v*MkARqX!q%T3!fK{=Aqj zqUxfrb_`!;Opm%AdG5Eqd`3ie!2ji~diDdy@9J)qrhH{^OtL_^z?Mg2lU=s_zV34$ ziV_1))7$6LQD4|$vd8v=?3Y>coSXa;yS(b9D3RjR?aEQDHa!{9$_EqQ4+e}La>uhJ9e?tg+jhs~XxjoUYdw*PT(Tde$J>>Qt?wC`hN^69@FpZ(UdVWuHKtnV z8XrNf8H!60cGURct~7J&OM}##be@D}Ui%F{&Fr>T+W*YhtMN>-W0P~;M8?KyS=l1i zZI!b^PC*;kRq-ylXKy9){^-toGxOu-b`OPmjpLTQFK9W2_CL+}shS>NG013L@SJYH zkJuSL?Yuy`Y8$hd#sbaC?(jyf{Uw8`$9wDPAH6Bno7!PLN0DZCHp5Qt=8G1EUBNON z)=n@6-%x$KnX`;-pA6|U9mlIBjD&Dky)j?5CkR}sx?MxN(330-86n)0_uVOy|FB3@6jt7P~lgBjfoeDSfTR zql}9qjy82qAB=JoG2pumI5$?4Z65mRYI~x8=quZGY5j7}yPwD`pNhCrGgXe1%O^A~ zJnlFm&q(|HumEA&r%U&0Ps=^;uay^jENzbUN9+~)5FR8bkViQ>@R)3%=&^E3om5TT zBg){eZ80Lus$?JK_Xu1&7A$jh&{JO0yUI@^bcPm5;n`P$~JCF=ZumyY|9qH~qCOU$WgEo_pZ^ z^lUBN=~lZ_PG6O(d5_Q7=5SHz?%_~)T&72$Zq?>cpWnStz1!shS6gApBfM)8^Meg% zdU?HdH!7Ot2P8by_|#+Max&IK{@|#JhDOuwXac9k<4z~3tsizY(Z^0zu?^FNtKEo#NV#KlnY^VaF?n@2&oO_|qov)22%* zeRSF5wg$WNGISqDe9IZ+J?bwQ5v$_kTt0A;reo?!&etcs3_g!HM~Pf|K_8N_;ePj1 z!B0q@{d3VX{lNveByYl6&yd0B`}f){w5@j>VXo-*erW3dUPwQFI8KvWTK|<_Pva$y zgD2zDu-yP4@_dg!4 zJ<84|WoNv+@G?qel!T0sk&u;{)etYEWJTsRLWE?GGE#{UWi(Kfq#}w$kp}&q_rCP` zzTcnk_wnnGUiY5!JkLGOIoCZm$xbk5>V~KAT0w5;oet)#EMM-mj|>k)q>8f3Xg|j9 zw#eV!%`skTeR0DF_2#7u2Lumm9CBn3h~;vO?zKrUACUhzmo0y*&SFRYX9-<~I`ziK zJcgl{g%S<6#TC^h1%8k<+bVL7de*(T=V%UJHu+4NM~6-jy~<(q zv*KM|vd8}9tg)83y(b=M9_4jb_5M~CpDR+A)tXvYqhIAvz#Tc>m-Zqcr0<7@R_v(R z;-CYWd`aI$BPBHZMz;@qCNJ|)-T>MAiNgo??8MYyK23a>zH4C zOX+gA%}zU7Gw$U0;o!=tHl?1KyUj!f`A?38{OyTkKFyrDdu0BHXB?Iem_EBledtY3 zj6?hI@Y@MiVMhNIqqSN4oPvh|=hYJIHIufkN@)0(>>2sU^LndN#raH^Ll;xObJB0o z_NdTpiemt-B!ERw{H%o(eEiJwY~D>yx`(dlZf^@jZ2S_w^DQM>~)f~8`;Xc zA7)v~epC*5EnAb=_v5GNI@5u! z%$8N@z1`cq4syo8PTASU8?2rOj6>7EJeGA)2du3n*Du|# znt82O!~H^Nr@_G;Y9c$0v?5$-uTA=gZTq;(aK*N-E^$qMqGv*a)x@Dr;E3+QdmrQ1 z9&md%I(QlLP_vd7FD+bfl@{PNTisVxK)tc3hQP6;;2Co>k!(I*9DglHgrL5E;8T8t z|4dukhrZrK=538t3STs)%R8?~i1Cp2@AmN;bL}U)!oXl^NY1 zVeMhC!~HvN)luG{LW8dKIlhbY+D6|6gFb0ko4avyKKXRv@%vDJZ52g>>uU_bZ(Z1a z#6?N#2ul}jvHq1sP9g1*9!Og`mK&G!Wr^>0b7$Sb>@uRwt;GSMNQ>&<>>_EJR&Ttl z9Yy)ZM6P8v4K^s(O~+0a?dTc4DKaK|YVt?D__p&TxR;^&7+qg-MeZL zOcs%h(bHL>5_rTX6hqCvjW1`bYu#Fw-Y)7XXRoA_Yp?rGyE>6ewC>)|Ihy_9#T4~N zChwo#RQ8{DySaRuGr#oNJ@KW@io){+w2_B-X@k7wOX~=geeZkYBsp3S7k+Ng5k6%R z^{|B`TDN(*nWxLJTDa-9N}boXYM=WO3h92gt&`VGbffntMRgm_B$O}5INxn?Er_=X zW12s4?t|gIA+lt3cDXXreWM)DPxHy#S?LkeGQ&=X)|Sem=d6Nnl--y!)7i1< z>E5(YZ28pu&T7(kWUfh?>V;jVl_y432DJ&_v%F@Ewmi{)&q?%MU6U#7*yj>@T=mNC z{kg`AQN-8XbiFN)1|&GOeug|Qk2r9+jYf-Fi2hhabW7@_RJr1Z8M1#(Y0C@uuf<-} zKUP1o=!K<4L~BkaZt`c}YZ=cOgQ1vkY!$;#XtN94J3YIkuq8o!W{i|){Wrxw-Vlsg~Y?SH9kv@eKo zNXuz|b?&#x*Hkz2n8PauYF0hU_pH=h{yjCKRrmeFz1N=2E-z%XeVqFFsAKEcxK(JG zhS-X$Ecs{-zdZii`F)6Leu;L4@nV3G+2aDjo`s&M&rhNRPx2kNsn@+v_Wt_Xat3u+ zrakvNr3+g;$vbAnO*LZSg#ZKr(n zbbD3V^Y=^a1Ff}RBsWAYmDKfJ9z5#uDaY)Q;kLY2)~CrFt2B&0iM?!Y#j|g(_;=j= z(Uvx`*`(l-z_+r}N9W%jSV_Fgwt6tjdh*@l=`GCOeR+j>@zw=L1%*{n{$ptlq$#I( zSHFsvYQY)Y_7NO$+BKo)MOil|`xTP)ooX!;xGLltJ$O$PKH0A*mv^Joa(?z`SGGpwpQ4cMp>isg1$M_8=4{`m^&f~@6%%}XnY{JK z+$CRwTs^0JN0QS7NlnKx_RRMVg<&~XCo}Sxg@)oriD<&_#pMJu$_wB7+hj!%02)$0Y;_teNjXQp;dmOdf*9TSU)D7=< z4rJRkY<}ftp_bOQ+C6{g-N7GT+&YUp(<)LJp74Hdv!8pDw1+3NDeB2dSL5)s*Au1W z%)@PeUaua~x*QSSCaQY>$Tgj932bEw`o9fYOAwoP(`9+o3w%kfB~^TK+NHu=TUu;X zJDOZ|bPB2S*hhl&<|l0tms*#t<(BVAZt>6d(|yZ-+d+KskkGd!;Wt{08C?GUjrPLYT%Ws-)?MCy z_TB0ct<#S!26-EeeXbMou2}cT|6oSB&yJ^7TCI86AMo=@<2 zYLa6&yz+GpwtxB5i|sSgc-0+cce1W{QD3b1z#G}KbLc`wPxn-F(pdo!{ru+IZztdX z7;@kC$k3#kQ_zB{iu&VGOS3s|Q?@tas&af zW2EqRYwsK4Mq*Cvzpu*anJY@8FLH|fCy6&Oh{549*T1Fja>lPQ?wq z=K{|Z5sYXPEF~P7Uvn)f%DNdK)e#v}iKMFr=l1VBh1%|PyJ?~`&3Q|ttclgNf1&32 zr9Fnv8#*?>eY(w4Mb1Sj&oEMFd&|&Dx3|Vlqi1I=2CA%PKX4zT-8&c^UAuRo6p={Q z$bDW*R_bRj{atb@Yt=ffrlfjr%@|Ee(}^DL3F+PECc~MHLWWe9TnfG}b1N#=TW@^G zdFRG>%|23O(3k$lFY=RRZ`KkS23#V)kn6}3A4AltqK0HQJNl$ciP9Bc_e!N@%O5fx zeN|M=G;DM*Be?zGgXmbY5og_weSdN%(iN_V-y0!Qp;taID;R&!4YmFy)o|EMZKz$c z|K+lC(T;7zg(DiLxu1;-}o`+l`m7u#lrite>7q8>)C-x`TZ~H zkEw5;uiW^3=(RS}u49FD_$`v=hNFV9+bUoRt(G8W_^9c{1p1@txcGxSM9k`28)E9Kf^xx_n&K=au?je zRq&)fa^um4jh^IZC7hcU3Z&=-_|$+VG;~(5iRP zE)^Fy^QUr$%8I@{*wyipHQDe$ljT(j*{dr7YO`5i)fvZ)9^W7{o6r^$cdMJEHawFO zsVgLWmaJpt5TTa+@_qkcx8%>|O6$-X6N4CYJ*3EUr%iuP_7(@)B$fyLCf2!jaC(S< z-1TiTGy86iJhWMTMldbcW!U;c&wqDgYZ6WAkJ4zn2L1E%>{6Y76uTRjcN*3!{W%_R zz+j_&S;EtiSIu@S_sKm7PvQcXd{#sv$I!za)K)wK5w|KxM+A#UUl}DNI{9R_@~R^@ z@A_IE4*%VCQM>!i%?;&eSHlxkGaVbEOkQ8fJ#++uD&!GujaYFIRH z(r@h15lsaD@uxx{}lyx9{eqM%Xia$GmOnJATIC$CVT5jt2Ct6;^4ALodEx&}6>! zez{=u28(yf=F+E;SI4EyTDLv$bNuqui?%S{G~?;p=Jzg+Ha{t@}Y&W?2l72TITz9*OMioCnV7A`-# z5&R+fqhADu#qw0g7eOU z!yJDCwJJA9(A7nXlt*mk@0k3yMr}24>Dvv-!Gvke5ZTy7Dw`-hE3_@ z4VIj{)f>0A^dZB`r-!Zx*Sc}^T-K?UvWwoMCZtCFgM+H=2o=j`au z^Y@eUfy`t3HRk78oiz?mU3B}xAwlrEg19?*YxVrrGV*$K*6WMRgHMBxh6E1$JX+85 zC?L{ds0{w@=(P@aFH^#4&C-yQU5zI#+imZi`_%NywC-?qjLk?u>FxYobOhcVE>w;> zv{dB#GHe&Fewyo|D*r_AlJ(KuI<{#`I_v3N>!Qn*TTf|3FmU^vtx5TKe1^^J@*+1Y zecLVl$O<%oZ6s}^VCRav!4AiOpI$T5*O7-VnuSdde>R(k$Zx-IeTtszv_#0btcYNY z32W^~s?9U$64#Mlxr@AGW(CIDW$eaEH5zAs(2zOxdqN}mt(nDtemtN@IH*}!==rqR zA%27RQK<${ims_q%?rXq(;JMs#dc zec9<5MNP~(8LJ>PXuYkcj$^`rRc=kp%(>*qji!y?bvL1%dwxF5xbb|jk08d%GvOR~{^c5<>Id{c>!ZiW#Yw-|-;I?F1KtjO$o( z>eFBve%)PUKlZuY_OQXTr)+03kWJYJE=Roiz*wz2YMtZ?;Sl@=He z`s#m6N6=im+9dvo%9v5wt% z&C{Qbt3F@JqN@J>%rlT7d_<^-olmnZGwINLLDtJrk9L7u8KgbtG(lO-DqeR)lN0|; zi-+~cDxqGZ5;^3H^;_NtCq@RIu}KU_q=ns=%{rATGadp9rJ1*)zLsV!B0nv+wf~tl z4KLO%uvg#Vu60VYU|UPC(QCHh`T9Z8FF()5OwEdSt$J%d+D&89bjiRxIN_val;(l3 zJ8|)ba=){qW}odjs=2vP*78iOlX0EG#f>6t9nHGd$G$v&=1d-r*K;c_`Krfnu)1|+ zzOMVsG1;>n!{d2rnl%a%2Tzp_g`cl$n-%USX>Pgit{T=mIU9Iyw*!lZl7RQ~k2{SE znPXEUri&63_Ox!u=ecc0N|I53WINJ2?$JEoEmNp>$6(BpQ}~x$nmCf30s;(%$F&1aTw`4y(Z1sn^!@K0WT?j4iX!nZxc6 zY)n7&gvw2ve41~1rq)CEYexn1jKkuqdf^>cyFWeV^GT7=)Mp)A3p&+{ zAMV}mUhH@HkS?I{tL|e^f-AZ36PI$;q%9ZUk1f+@ckJY_K3p%C!E$cu;mM~?A=#PL zKBd|vmT#Jym}BWuc^8+-js7V&t!;x%g^V5=mkXt`?6;vG;@j|LM0rQsnYKN24e*JT z;#|hJyIU15E`*vE#s%KJGjp6_a4F$NgxCZA?eCYP^9}Pf8W8R*Uw(^IN7$7#_G;!U z4MrS)*v%OGAa~wND0R_d{76U6PrA)2JOa-{eKT!C^g3>haISTCvZs^zOC4-R=xeOW-_3sc$nk4v{@o|kkth7{Db)A?^|8;e}6^74(68b-)*MKwen+9&?Cyo zKHC^|6c6*%^Jpf?F=X2^D1XTJ@HbE6xf65juA5Qo+j+YthdkwP=I1k_>VI?u%M_b0 z`@7w|ZIfDZeNP+z*?SwjmdW1}a-SYN{A1_Ox*d$ot1TVYMJ|)Jq@3Ulj=E=M?21DE zJg;~Aa>C51QDR5TotaT7_G@N4(PQoGgzPI06S8KnGKyF%Ee06hXMKLy_i8ZW2UC7U z^YDoqM`QH1u0-2cDqC~YBt*S$%h=!%bL7)A4>Vet=9A#Bt?icVsU0^+8RTm*0_Ue5 zG^Thu$?HeN`X@3n51eZE_O!CvGx`2*|Cw}pEq3qd+V}aa$|lnxi|W5GZT_}#e@^Bx z{u%vV8J`*H#e<1=Z%dz(J^iS?G&5we@upS+Q~sbemCQ+mEPhtJh5Xf#Tk>RNkCTJn zm5~{cKC@~~K@Znz+dpzWP>t|?K zscpv1=cGt|9{WIE=i}1tfdy;BAGfyc+LA4ELFxx#>3bG+NXgoKjo~fr6SY+3TZMbb zQsZa7vnILaWWA}M+pcr&f%nVf#utr6_n7$(rIzktkaf7wO84cySo+gng-$0UPa6kI z9(*UqKf>VTR&8g-&m=257@504JhPU(a`oEJ-AU65d)wAnzIToI?VQfOMss}OJ3+MO zp=fm6&(wuGvyJbrX{?z2I`b_2ZlV3TDw57y@?JH8v$-_A{UTA{GRJT9YYtYFf4Lso zof-dnTf#Y>C!aKe{qk3YGq{Yq4F#XRahyEwc8HfXklspJ65?9kJ~?#j_maut_YaQd|e@SDsS-pv)qRPVun_yU(9I^4F0$;pP>}StK9RX zewp(oIVm~gYfu`>9xoEr?s#l);+Ldg#Z-Zjghtg|e`cm#TaurqaedP_M#iF&8lSe9 zfs8GtUHhK4^K$LKd8ki(E|Z_*hC+^!hxMTQRmMuwlua`qK5#MI962#|N?dy*=lho5 zhkO3ior><35AM}XQA;n3cz<;;=^`DiLEfvjE>{n-F-=;G?I-ualu&;~JEKiY3^q=- zJvL5qnmlfkpJI$}WW6WUOf8q(_;|Qp{_+iUn)vfsO(m;j!iR8~$YZU70lNE#_a)k& zM248n9owzNEg79t{q9ZG4=yY=$oXg;`?}-MA*HuD_IuF+wc@9BQN4qMc0sXk1Z+@b z%d<$ONb-ppwc7MFCR^6A4V!JQ-58u?DyvRx&OOg2y4^bVdVPWUyGBi+{KI3HwZHCp zkZiNLOe0wM%RqDNQml!|9UXby9B*;c{_M{}@2Un*dGHyHEpZPjoz2a$d|5?!0N)hi zT#Gg`^&m8*K49eHqqk~&$8t+&@75zi&-HgQ7Tl4#MxJh|_j~S^urrg7inf1?W8&kw z$HGB*0RsIy)W!AU^!amWZW;<5g+s<=y7S}GixMKE%ew69wlJs98dXIN57B9V_es!o zR6WO}!7+9xY_2~2*x@@RER39sQ#9XFA00aHb+f`-*k(+p;O39)$v49%a*BQ#`F?!V z*y*W|(s*VoIbvb|P+a_NzWrND*}e^4JgJ%S?ScBLf3|+}wz1BiE4_qMm7c-ozBysn zOU)H@?tGur9N0*_A-r$fK_RWu?PWYWzxyw-u(lgK9a+*R>23O@`nf{4_+TZA+k|fU zlV;MLuPstp&E~YmCbu@qel>DE_6e;xRqrXTke2t&z&U&enTEry^!4kqtrN@NB<1rt zOTULSjO}9ee3iU1H$&S|Z{bnh5a2(bEL+Jc=NKL_eQ}l8RKy-pxch?$g9Ld~=aQh= z{q}t7C%#+*-*a9HQ~7pC%gYxeY(9VH38c z!9es+>~mJ7=4rC%Xw}1t$}L4U98C7Bu4Vc^%QICYdS=6O@9mq9D^6%)iS&?Ldeyk_ zTJD*cyJFa>y!3ff2U_bN0babuw`$KPvOj;A?qfX~bR~{7`Fpa zrNXxi-R34%)XS|yjob7-mS%mG?%wXj@zInmXK=(^=|lGRXckNQMPjr2PL>Cir@PZe zSJ4vI2F@g2hOPo~LZSK-uQ|lX&^k2X>aTa)l}@zv%o}=j7mj=>`*lkp;oayB&Cx4* z-)C9gq=%JlQ$SRT+E%3X-$V-0A?HbTTU=wJsCKE`Q@7f3^w1|;HoJJMrbEfb<_^kr z<74q5!J5;gU_M7AWeobLZ?Z+Wq7hO{J^V)XDct+oshC z2W}4)-8ZsvD4V}kD8@26acboNooS1CeBq~C)5U2b3G&nRUU_EM{P#09*U2&-XFm~m zH)6ucwn1Z70`k*1?h{(h%pC$O47~5^!(J%|omHwN-br;%VOXiUZ&jB`t!%}W zFI<0CdBjHh#|7R^ELjITo@TBjBS`48k`>;pk>y{OhdY)csaDR|oOj@Ac1hzDh~2%Z zAbRX1ecA=4?uLn5hHvl9qRB=xufHfgoi1S$oPVR>pPy0vDgL$=StKje>(2`jW%HZq zKQm&kXCvZTW5(H6W>nAJZ4Ph|GwvWAD_`+vzEtXYH)Z?pxYH8?{a>AT67Fq!9-2~L zWLVW6$YLkHrDf;U^1Shw0pdW6flZZwZPK)46{9fA_g_&xznlW58r!O}`91u93$-1z z=!!LyQ7}eH)5gzuNWtXKC9Q44Z6|+jDp23End@Ah%ibg|#bY0ZrVrMI>3$rTv1xGT z>B5f=P&;)?egU9b6Tm? z33E@X2Hk&5^4Pk)@Lftiay~O6y09X(tHxjht=P9d=hm}`=bAC~0dnq2iGXs|+op48 z+{Fiu+>X|gd@&r?IDHo{G0uqV8)>8Q)s|C^FIN$dtgl zfz;-~83Nawqdj58KK{;6a=2UQ(PgRY4}4cMZa&eF4NLHf(Wwve;6Kd$&_UX&dQWR( zb*9oC70-qTrgtues&z3~_P&t`CnH}bs;^qYQ>BpvZKD46g`dy9M%nNUB>e8pFXnZr znLc@+kIjC(h8U6)naOD?X;Svq>_VpL=b7QtUbd@oXVEha*4Mo(ykp4b%}utxdQrcp zfBN21-Y0SVclYZ~i=OWsLOzcitvj5#e(fd|7%VRg{ouFLer>o>rc+VSrvBS?pTX#X ztqim+w0YMHMxMH#Z1K%t__(6HPq%Vn^mUr(NIY)?GwcYLn>u8y$>QLBpo5R3YcSWg3?=5te>5a<;K}<-U_X zKeO#cWZd)U9MK9Rp`K%-q9cp?k*SgMF7$Sx5A;J_9Dc+eyK5BObCV$0Oa66WVuyE3 z^}e$ueQUMv+Kn`Iv)^9HsCY>}y~lsh-`~@+E=;1hqfy26WBa}RqYE{iqgJH%zX~^} zq#S-DK{8%M1V<8#FWle}jrlw`?;YYsoH>?KTuaQVi0!L*;%Yem;X}P>Avzkqrz&$x zxJ}ypukCAR=OhyaeR;3wbT}@PPm@evRqp<}gXKqZZblT{#rqj<5O@S`4%fA920;Ob zHa(LXPvO4LKeos#EAASaz^2r z;PJ}k#`7E6C*DYkJB|o94Su*Knr*2QT%*U#qoJ#b&-S+w2tpk#Yr=|68U4C3pmG2yE@o@FSfd|*p?XQkL z7K;CUjoGrKZL5p8veZS|HpzMqajUST2Geoo9p+PKUf<)CJe|dPg(qh$ zuD4ycTfs+LMoA(Dl^l?te)P^vsQ7mz`SqAaL#o2jOqudbS~>gA_oeP$(d0(!uN#K^ zIQ!GsU-2oZkGQgGtj-6hpYiL_%8?kYJo`q{k) zNd{9?j5$A8r}h_Uj4WO=u8&z!xVOZmVSkP!mz{U$cH!{$Ar*^1n&B8&RXd~Zbt3lGxx5XDsUb^Q{3nbQ zKkCj@uK8~%iRRi}A0%PFf9T!-U5++~#~-rwr6-~$dpw);V>11QS^Q0t1>#sop2dHE zc>d${35Cklot@($7dhAm$1bZLby1G2^5EHKGJ6X>*4LC|M}N@oUizBYL>4D)e)|0b z0A>k>b_MwDcQ*yyhE$@o0j90o(1h<=~&EIYwB~eY-N2mHfZFf6*MzgB& zC3(y)O+;xdvSAyqe++}l#Oh3HN1H+}ULnVqys%jodaHLnjb3Vy3yIkDeLemn>Z z_KM1l+EuGm`U;gWBdncw&3v}+Y=ZN+^G260a^Xx?>o(%It$cOQ=cu~ul@r-GZ=Jnx z^r(~SjXbmS43gzLb*(K@&OP8bpIfRoa?Mj}-cz0TMhkhd-2!yQ}xKO;qbH z^|alVqqdK;FfOd!zWO6k$Ya!N>9fV9tBI<)`oH@;>e~HOw|EMii0ALSRb~9Bxc7#f zS9X&oS!J?7v;57nvm&iy^zml(+v8b$G0Q_S-sE9fwRE?LZ|_K4QS(UYoW5w@$N*!r z`m>NaE>WjG(xVSwH#y}EDONse-Iy#_7^oM<u?XePe|2<|3H`B-&2Df)cx!n1+p=`@8?vIiF0}FyQ z^S5FIx&=O`wzisGN?q9A`ckVfz%J?A5lcaLsUbDkep-4g&GO)j(9Ih0Be(l)zE8P- z*Ypn)LbpHBDtcrU_j3OQFaJyJ#`mx1GJ7RE?c5zddC*-#e}Ki+IFF0#x08bY@V=ZJ zo-zH6SqtQkRP)L%4ZPd0PCcwm`WLvRDob5I6vkruBuU#Xo_F7%>UrUQB$jo-RIA!cLPJKq z^j$zl!idZ+fh$)!WgJcpQ*#DqyDsQ7#Hz$+r)29m+#fP!v$iwcX=l=UBx_MGF3F+u zca(LmN6)!6@^Z%SRCS|!VVBPvcG7f&WQ4d$~u%&lI0Q=Vxw-eWi-ZmVX(_`07p zsa-Aq^bTLEucS(gdYAZ@hnubsWy@1>58b(2a9D2OYR!yhj8*5Ew{Npwsgv{!rK_LwA_jR9My+@q;#53X#e9?X5_sD?MNY=Ped#3Dxn;D2E&a=V zt6tLYH?PArEB7o?Z`Hj>#}#HUTFuteeUml$CsiY(`zwXAi@Vldc(HoTKk?W-aqyYA zSr^U7_ZuGaGwwWOduA1BY0eLlwF#Ds56=Bm_|f$?PG^t6rY%?X?}opVY|jysyDa|d zx>^mNj_vK+>W!tQ{g=-gNcz%rS4)sDov%8vl>F)BcrE8G`8`JOzqu~Tsk@FQHEby^ zMh?flSKTpL?*6q&D^@@H@Pe{*#CcmOPi+}%je*Z9`^;!HER&v-e{|k>o>$6qu2YuR zjKCU(L+YLVA4MZ~*&K1<2y98T zo}Bt=&AjJ}SWo7=KZClNhliY?3h2EPq}ltM{Sh1nZ(er?|$9M#iO^^f|-ik zfA<=(Sgx)~2=8U*dd}(pz$fZi+_tf-PiSDYx``^sR%flQu3EzG%qC^S(H6JmhN~tW zwZHh;`$qS2xPO{ZFOyc1esx_a*O&d*UWcp)pO&uaqxX!n&e*rK|DF*fkGw`!1G>#} zWS5Fk$+Sf(B20RA4W8MyS3h*-9qxPr`ydBA#?R6J34f(1oZQ(iH^a#vBzvJIxi*e(ebyqSX^LP$>XA{(64HbH$9Pf*&yHSg&?C8 z<8{N`w)Ro#Hm}rF86*-DjLAkarwm+LBjQ~Kiyt~{h;iN5%J{t{nOmUzs`k-QuHlxK z4k}t929t)SUsW~dvvJTxSqjH5BWYe?P8&BHWP)&>T_q$ z=Fj{(ldo|z)ltjBe3jSc;`=B874C`X{DJ+^1)o%lyIYpY>BunC%3LX#{Kx+eU7upt zrj4-@w$Yk{cZ{k#2Wy7alvn$Anm8z`JU{i+#{JcaHxf;KNc#SFnlBhvfv-zwxU5kV0)_t3zegxK-2AjPrj|$4E ze^zVN$0Yv5Nz$bC<#7Fx9bG;QrtYui0JYLim;$Mz8d z`ShKaWEW38W)SNVS^5%|zO^ypX5^aEHs64v-}~PV+`O=l`JDI1qQ2(`-c(vq+qryY z8HoLSy^8Bd>G*fYh0bSnVrywrcDK&H5-1vrqqnl@r2=zurn`cF<;znGs4gN>fW^h1QPJWYOYB_@M<(2tVbmSpSza>iXzu z4}=vp4xqe;%HQ}x45_8!CjIvrE=r1|^|x2+#F2ib)Y_jEI*pZw5K(}qyi@+qcVmg9 z#(!#x{r`s(%;}#oh&WKa9w7sQfoAWwcfu&ZL94bl1UO97f>P zVIunDFd~P#*dgq2-0Fk_qKqE50pjr9?-4`@Eww>d;k9Tq`Y0k!8T;A>(S+Aw`E3yy zI{ds@Gjz2X&S%xS3GYece8k!UAMlQEISzu$kgCMD4zXs7Xkzd5YT6;PwD=3Rsd+=| zeTjC69<>?~9kN5@{vM5}=i}^q%)`e`6yErTFIw6lI;gchA_M$I*&}iilvj-v{sr~l zZyzhc_t|d3aUeKzbVpz?yv=(Ak=wd{`r`k0@PBFTA0EJiK0borU!{M01d-*!kD_Jz zHz(+cBf#%52Skn<4!2ElKxE(@bjmpae~F?`ZIOK_*HJ`~nnXnPk0NrLv7-;*B!RyW zxa3$<>Rdlx>h>lkl+6iYL}eWjR!zzq%L;}b#{#hPb1^7U0)Em2{1S0Qq6AeON|Zox zCsAc3TxsYO3zaB#3MKMC_zeGrPnm?vBua#Hi!j7Q%G=bUs_O()Nw_Sc>tE)y|Ho_D za7Gw*0u1;6pw{{qYWQjzjuJj*Lit_)E-xHdjNijqi1;rY!-V~!n)1~AsmAGa|KXSC z@8^9eqQhxH6nM(}?4UAboacY?1i^+Mv&4=1I3e7!6b6U{%E0wQ%|zGFrTO=`RMX#_ zXqyv+LxMBHs;#8_Pf7oIAcciTpqGm%MJ-GUyG1EqC1z4M=;-g_6DUggXfZnHgs8~@ zH|rjA(BCB(bc^xNq@eHN9{_;so_W9#zdsb@G-;^eu5}Jz3_u7xF81V|INz3Mz5QV!q<9IQK0apg#K~? zzA{`81(AQs0%u;~vf$(?45N&$hz7*0t}9{%84O(9u6oT2x7i zVqhsf>w{*}qLeS~nu$so>zP}?2z81JOPL(B_=`nZJ);-dgC0H(vgMpWxcE(AoC?Je zMWqhzHrs84QzODb30ICIYFz8znwE0(cf$za>O-{(sFdJiu|!nF6H%rnD5DmhhzWYr zA9!!{L=<`OvwDCJXLm;*H;_8qhu|>NK{cl$zDhz zb{@n=Z)6ZH2t>HqoC8n$xnPjE{He*Gh+IU!0ycK14r&6SW^AXUEen<$aa}r49`yuq( z@H6s&IhRu&0f89TN|b~E4HzN(bI4|>d_EPCgGh0I4Au|m!3UX9_7jK-cKFS{6Nniq zaSD)DpFkK%M8Y~Nu0cK?#{iTPU!qdjy^kxfMWjS3-s0!)8;CclqF+uxty4v}2OtV` zFiw?3LLL1PbClsUpziTUw!8msSo=IT*~X89hbtW64tAw zb|7Mbh!UVcB7sOAI(Hgeq9G8m6vHdFD8S;@`g`Z&>=kqjjH^siN4Ez7KSb0c2sz5L z?&=;s9)TW?ULI!vL{&)@9S=gt=#w)D7sI-~)zCA+2uW_;r@X-1f*jp2XIangQeFXp zUZ8BKvGUuMfDS__$I+A9dNxFEjUj>Cx=FdQZQ|V zw1|O$ZtYJao9R@fMb+VpTKGs{L>>GTyQWoxYj6QTP7joo6qS_FC+)~q^yz8H6(_>r zKTrqM=Q9W$V01hKLx3G+B7TYP!kSg^Ym6VLQ5Y&t;1|0gt{eQHS^_00tE*u&gwUEZ zhzM#&rqEy%1{R6yb@*S319pipsoaR!2E$GVj1uAeLv5@fB^lwMSCYrAjP8!3sDTkp z2th+Vh}j-3G#Mw@dv+<2SX~ORAhuJ<1B(;XA31?0_5_*23$v+ z!>)leTrZqOcu=`8L=5#k3&zrlfd3pq5jq+*f+BkREbw1jj&N>MQk2KNh7!^LCI(%Y z-$2r24F!0NDg(3uEtoih^@K2l+fd0!WD5fA@P!gG!YibRF|VdXnXCMZc}00;v<9q0 zhdG@R5naWw5=t;#C}Lczp*0nN^gtLQiEfSpUHIKcXwiAh&8oxTsxBVkq*s(z$3~+C z32=k!5SU4hLO5xZ7e+?tu+xsNfFPIyMBuO( zVP$2!5dp^nGbe&y5isk(nKqb8Gr|!DioDyx5eak!aAExz0D9swtVynfBM2=fH4#%g zCj)e1ii3j@fiLtnJ{;I(gmz4MaN?0^Bm{;MMp^|`3CO+qLV31;b!MnnM;{7#Lij1k<7 z-VX;?3ylQ)fRcw60#i*DCxs}3IOxSFSUf$B1Wi+w!8&Fk5`=BKfQT_dFUAR^%H2_z z$tXU9&DqGiwP?!tP!m_hae#9LlkTZDx3$Do3qA z9i#~o9GQw;gL*GrMEDVm89b5DDgh=H^vy+tj~+`7Bv@+WVgd#_R1pk-eoBV_{4P@L z#)DNA5~LFxGXxe%MG3p+f-QvpM6e@>sC^02r$Qn^O9Q=_2}DrgMDVlW6p#|=VQPUC z17e_|i6GFSBrpRB^KfX!Gzd2sE0i=uLz0Kd0!WEdh75$W$Cv~NyHbHOqa=hL6mTyI zq=STV2@?b}3&dty5(II65(omsxaqK}15-6TGS#t?0o=g^Ll9ljWv8ax- z2q)BHyr|=rQ=!DL-zDI;0Nj^G9pbJa33RW9-i9Ca-X%O&;C6U>3G8qs9T8y!RG5xn zV(OR-Qvyo)Z9}n|3G~5yjw#TLkyA$RWkG~t#GqLz?{A3(x5v^?cQVKupMi+dLD>V0 zsA3*o8Zjv#4a%n=n}L&wbQq?HGmJ(60F5Fzyl5JjBQXWE1hu0J#H~vK_QFt*R1x=m zH4@664)Z4*?}=zo!=_XOK`7K(9;z#ReIm5x_3EJ;H&QiFSq0W?%jj9C)emIYeH3ntuPf&zZbAHm)j8+e4nh6v6oV3I(c zv!MDZ;VuD5EEo8jPXjZULV|*!m_I@~gQ0woWMtt7<<405dYD1sXhPCKdluOc828c< zdj9n_!9Q{&0k3r+32qy_*s0?QivfDT7a;-SY!fhr!41wfR2J+80twS9V5UVqGr-yP zau9Jk%m*P=Dr6u$m||f93R4O6O$LM!(BQ#x17uH3p-?ig3YF62tm^r%P7K4Prw*~i960D;GjcI zFdGTv0?JF72m>e$FmllmurUOD3>^XEj^dn9rwK&#P8JX&U~Ex*6E(>KY1!bUnEu*qk`ELRXG7|NHYHqc^m7(43<~0=SH?7?ysk(< zBZ>ab10F?lph5!%Ob$9_j3<~+gT|mtD`Ogi2+sobVr-!cSV@1AjWA$o4-*Kh06@vF z3!(=QNuZzep#ngGN2@bH7|f_pQ*cPkrb;M#Cg_!vfr0})&H?FgRpJ#K2;tKc=F5O) z6__YlZLJ8}^LEYhI`i$@w2C+V0nB=K<%3iNR5Tyq$9)bcV5lfn6~5vI;m$~aJ4}g`*hFjcAXktm?l+hRC~L05 zj0|8f>JX(EO5C<2TtEisfg}f`!P4BQZ$3f`qc34}6;Y!CgcpVqFm519!3l-Yo_vVL zYenEOY*!$TF@ES&u@s<=9!-IXFjQ%{21X%KfS9nj&I5yC#39oGaW1S9sKbO0u*suc zS0H(37b9W-s*Z-`A-o6_U}f}k0Z5D?rKByWz_|ZHhyz*-L>1L8#Jn0qtd6p0gP#-? zKxRxTLB!~xA0vXk!4f0f!0e_FoEM8FG&vdJVpNmIofg=nx=P75>YxGa8dtMA#beS7 zL4Bduz#;?~0NlWI2cHM|6(R_h>68>HnFVMl!$j^XOotV(A_%&%2-!@p3@l&(m>XdP zLCe@Jtb+v6*sF*X>RJlv=J8cnc!INXqw`nsBu@o7n~n(K48$g20)y@<0%8z8*kDuO zkcya5j0m6(Md0PTu-QAHphshhz!|NsBO*)$66W5p$W=z46hT^rsTpv9t`$MN5=!vd z2hO?@9wSf+mC*hYgr5P+c}j|Zb4^e&M2k)taCoa2VFH(!D5fY1Kyafo!a$rWN~S?K zmH>Xt8yN5cjDg|Nj#psp4v*#IC4g3<9MDz+Jh(QNi}7;YS_~EkYl7IYaOBLm2Dui` zjDpt?2EPBUWo0$=?lsscfy3sp z{qcX!$nhnFva&k*WGe+>ZZ9kiwlR*BVR;E5bX2nQ^UfN3IZp7vwyxPa8 z26ZflmEe(bsN(-yE_`i6gxLwX9P(maIl?UhswDm&8w~)72|>WZUJ#uw2a9~Efe2E( zgfOFW72t=|WZ(u;H$Xuc7*`;hH?MDe{zDgd)`mlMAtuCBFy#}K{uj|1t;Cn3=Z|97Gbts_X!FdNU!!c z^e8PLGYS8^%71WyPmt8sH(@C-STVxCweuestmG15|EeCS1lB=bF}sCuJK@m49N}LA z;B&zBhk+D!v4RYVXI-uMC=h_4@=u~*Gs54Ub{qm&hZByg>p?iddWbOk7KGas?*S2% z|2i(-01_yZ){`UN00I!#ANf%@z+9U0SPavkzoR$YuRm6V`#^UKUxNT&eGf0#uvUWd z3v#NUt3Z&^Z{651Te*o?r#|-D4yVUJS;ua^ILM)QZz8sEA(J{BBtt`h4Ib!mL^s_; zY*H`kodsBB^j8D2h)&!=xaIwP{DUwOguj6c&j8$TW|aOuknneLqdbCu*@t2i;=uPe zRQwh&@_&7yQkv8PVjWJdhNX3UF}_^zikO!Ca02`&dcM z$N_4iD*C1yF=Sfr#MV|8_aG<)TMz~z%AOv@_5T8ZaVh?Uy52$z(Z?+amk0*;7d?c~ zzn)<#sj8s`Soy{wf?40M)H?@?W@!sPJ8cM;$M!s_P;A@1fxJf1~uD9r(Ng7S(6(B7)p_{r(qb=timT z1DAKMA`A+F{*FEYuD<@>j+k#?uC!h!DG&Bk{sujEd(6c(^~rBJ8dcb2`F$5r-L(GP z<)pg{j8ujdUv(>@AO(Lm0Y0g$jwAY~*8YnY%6^VYmK%ruw|TL>Zp>p&-9w})PrqR8 z)`}3Z&z@rx=zy9ktQGNVKP+wu=&O5(I`uJW94G48i)=#qJFp#!^#`-)ws!bi6WU&6 z2l~7X(M0p`&h_V~=oPHf#UI<_#U6NU>BL5^&m>Us`_MVmj%cB!&`wWrQ&F@OYgP$^ z2{UZBZ$evPa~S;{g|MO9yI@7R{(uDC-T_bz6|e*H?LJJ!>$?C0<*y(_(ORreKMs*W z6FNXzwFlTHJSFd=DxDPUo6)rnDA+IXK8k;$x3IpTE-0k1ufTz(b;97w-PkggVh?mz z*Ixiwcygkn`S71h4*;w`=|MX&0Gz9YE||?O;(e6)3~KNI`hY85)B~m!=+*~7BK;u@ zR#|85BL)D1^P=ew;AyqmBdl+owd!u@JN5_^Y|{-jZ{!iewP`)?D=DozF-rRoCRFdc z5kCa8J?hnq2r^Orm_kVjO#k1OWXJ!);P1yG{sTxU(rD>JporV`S60E_AW1-c&S z`yV0vtWa#%D=A!Hdt2h@uZPGEDNKO>9=N`l4S*EI!i6eUU{7JQiu(u`*Sd2-JB0*X zz{0B+IU|ER|6hE%F7QMd2vZ*U|Km?MpoxGM_afq3aRN*VCPDB-)W-#Y|MN#0#*pFh z!Aj_CFCzJW{3(|b%#oz}kn?gX%J5uJg{Z6|t4NSkRFsrvQZVv8rt28!A}Xb;L4Z!h z|A3$)eMk;As|xN%6nT}gzu3Y4iTa2#VZQ`*MHLm;cj-qocrfX)fB)$Fe}$b*>pjU; z#|ioWK?aNrBZ&_P6D13AVc&jkG$YI;K^H;dPC`Ht1(6U?7w($802f)vZ{&?%VzSTySPHbADA_Ri{p!hwnL6x5w4_*&n}~evt%yIr#DCjsy9< zAHSP_VYpSoJO0`--+!pTj<|pRE6(@-)L*-?elIQhvc9)(|AfCz-Gl_hUmJqzzyHa* zIeIpT`DGu{`hEl)v&zJVeGpP|I z=);d+%?Zwjj8^j(yGtq0b?!F;ohlxyfA*o;84x6 zf4R0>wj!;d&D}|Yw+@`dJUJYuTeaIH{9q)AP+5}82Z1}PVku}tN;)5$DhP~rb9u2> z8iPC;zHX|S<9U;qaAYfjh|YagTm@}xJjhlk6YaKe?@C)aipf?^R(TbdhRry>P#|+T z3DK^#b{wTYTIy%Y4ZUbMh{G=2`<8GBn%olFVU4Z>L!(yWN<(J)3jEI#q#e{J?V;hu zX-ZbpYz#GuU@sMto_ov28UF}I(15GHsMkd2pkiv^Wk2cAc~gb)829TqZ%IwsYU z&8dvlXO|5fxqf!(WNdG^92(=P`<{m2hMvoX<0Dpm^ktA1XVC42l-Z_jz@O9?&+0;B z4=EEDBf*QRKJz;8ZAjOXzEm!$-BMV|wJ+tK`d$m5zN+DnwzO$mDofOEslu4+Ajqr+ z0ea7^YrEl4LF>c8Zg7cY%Qyluk!{bJ%z^vf69moDWO{z=_u6-D+M$&i0hE#vZ-+5; z5Pd0_xqcAZqSM@t7T|U)0p8B=Q;ned%&w79a*%P(mEi0z=E8Jy-wAf@-&^nT4OyZg zBoo1$CYgTpX2ud__q`=^S7^djJ~;Kst#va}YPc*qc1wGSth3rE1UB*gnTnAp} z0!}Zq4#x`3zVZL5#mT~?x^D=SvU9_YiyQ=Zy#nO(AlST7PUEc`PL_Z7VLCvhYiCTr zn67sDT{a8dtI5pvb-JbCl=B2{x3wE`b@)zmHsn_|+q!ge?hLKhexgze5sG%x7Lh?b zI1RHlc`N=uiDa6R)g2j_U@JH||K=bFb#k!lCs}Vo`!i?m=dS~8Rp)^-k%IsNq`-B< zI3LI9ahke;VutKH;)aX%6{}1FebDI7{}tn??~apnP={ZoIZfo2b1Zn9%)L>lE;%N_ z_F(waICc#JnjfUdGc{~CEqmwZuA(wR>*BoKGB7A7FMKjKhY!lyj;N8`8FaHnV!j0A zn@|$or(4Syt(0jup@`EscKA!$RxULp3%gQG$*l%`pR{RI0MSiPlX4hGh{8xZN+8Al z*rAUns1SDsOSMe+N1wV`<%{pmaJPvtYWM>b@X7_7)?k}YN>hV8Q zK8QUkM^pbC3toHdVCsMYSR{@U%FCe;7p1g1(ifFmy$mum-p-*}%0<}tf6S)ft(+kk zh9`3yBU@G&!#W+&}i|p>>HR<*y8QR9bP%89N5Kg9rmo zeQL*n0MqR1aOSczk>hjL_YcB+x&J+Tmy_uMD)M{%K?Xc%B=g-)1j zDf5w#NGm2D&9jBq?-k=@J_mj*WW{?E5p$?PFvO;H<^o=DiUe4k(3{dFHSV|1A~90x zlWMF0I? zh`AT2G)Xhg#U7VEeO!n>I+$;L5G^iEfECSs90t7HnDhV^c3lW30HQ7RfSpn2t%m2! z1<=G+;3oQ7(F`V8Q3A9{J}xM-HW!+}0s3lJ2TqJv%uNCHyJp z7^F>VnLL@eFmX|Te*4G&!j?%E(Zt#<@I*13s*!BRHGV}iRC!d@+;xor0gp94Z5f(H zgA}5XOk<5cK)u7Q32AcQ3_96MZW>$P^hDn|>mCy<8qTw6K9E>>_eHo9uYs$QW7J%x z9GUbBomRoTCbI~y;V$=~mJVA6-YH)XnnGnByHWH3Ej4>H4P0@^$-u0Tg%x%G$^;O7 zUpv$8md+EQ?u$L18>tL}XL;Ha9{!lNjN8wOL?<2;lB5&wNIsTE&@EXg3oE;HY}0Pb zCT?y?Kya#cJgHDRIzK=J7OY8gi}~cytn-Q^7m`kAsvENN3(a2kGBq66v^|+Z2lPF74eesfxRou74#;sR zi$jn&+gcqVfd*m0TFCHpr1{>q|5QpgQkmpDq;3I}JP5w)$vAG7hTNHqEzzTeaQYLf z7J@b8CNwb4fSl`va zf^rfI(HmOvqtXEm66a?aRx2xLaVfr zqW`1scQ-Xw^_J(D9Rz4-(fllFm6#_bdfRKR7ulwafA`3qa$JR=p;+M$1w+?C8cKLmOd6(=W{60w zd4hHK7^OhHun;B3y37>wgZ4pE>QlJ=7ljZfY*gUqhL28?;@t30&USD zK(Z}Pc#NrzD-O!VQ6hP$r9+Mj)Jrj;{60efwxrcT!#qpffT@bBDB}#M*Fuoe$U;+U z9h#6sWDplS*oyp0&rzWvWlH47xOYSUJf(yHA#mKEp=l06(kAzvL{moS^zFoK}iguHZ=X&EpxI1$RL?2va!l_M2v<6k79B3Klgt?1W z@^SSOFcdP^FY2#LAL%IK6=&2=JKM6l%ks2?cSoCsnBZJ7@PlN5h(Y@fu9GH(f{%34 z8Dq%=5oLsAEi?#dhz4PdJf2jj`fLL>9K!X`dbF}EP~21tF8)8I|NhSGRab*Wc`}6A z$*oxxGN>|L48R;*YNEIO=SCUDzxp8Va?r>Do_xH!n??z(bU@4f#1vp?;&j`rqXx!A zWN5(zCs{l4htmDn92r|^nSy37AE9hTst-V;h^G+nu{xabr?ft3Z=e5DVdmHXEfQ6n z;zWQfi(V*Z?kaB}%b|cKcZnwkDvG$CT!;!IDutuDBeZ$Y$O6dB@M^N0bZDm(-(NhK zfzP3pz?wWPxFK1UfGqm3fGcNBHcuIR{;saxVfi$7mrn6n-420OUlVHy?*tUzA3kslP1fs6VxFV{Y#FGp4P?ePUXDX#!w-*B|JxM!V_JIb-kt-(c zt4XhjqS#N=C3(j}imkxB9)!2Ia$qW=G{(axxTs2sdMtK01scToA;-3pr(1rc&I)Gz zG?|C0#3|6J$0-mO;Gp)H^q)9Ge%-X~9hZw8z*Xh?Yp|;WdDkG^R!a*6_Lm4aj;XB@ zv@F)5-S(8wW~!d566{VZreM^Qp*SKYO~GQKjtrtCN6{|k_51JxBG|S*sLD0kF-o-K z=7hEmnzoLVd(SJ1AEI({?qpGA04Xs~cntsE-glK-<l6(j6h5l6`Cw+ z2Yis5030lX3QY#Jqj>hZV4^chwPaDD$)Zx9A_NDT3@U(!3~I$g+N`=olF=FRF7x{0 z3Pc&x)u21~|3FkahT)KD&@JU$F7}`(L zRN?|P#9BTT{#t6Uo8(mt5pr3=N-1wz09b6ngza7l=&)8tC}5i0KFX-uS;C6*t(8#G zsuiQ0#Th&VZ4)X|-vdzI7ji%ebp=E#VR2dsaGC}tSLX=|A_pMYo-I3@sJEZ{%KP_O z6-h%yuLUbk;a!9UP4>=$so>P_VMK$GLs_qv?Q8da}YwBQ-Xoyq7#KvS@bz4CsO zw-m!s{o(>Si995vGG`rka#p$fAPp~0PQ5LW+cZ$RZJJ;O49TH;j^obV7@6|AFXKVL zxHQQ2BW>4%LpiHfOrRQDyw=@6;bUyOG%#L(1+K0|HxII1c$LY7N-ke&`uH14qsE!Wrb8#(78J5RCQ#jQ{C0~p&Y3v) zIKH=X<5%t)zw+lj=7jl!_I`Q%;Kc-~7K(wv9Lt@&Vlvc|C@TQXs-MiMgp0Rn%q?AL zA>eLyhnHyhfyqErBu06qk0OaANk3I*qE(Set{6kEb}Qkq_LJg3Nig-FxjM?cByiC7 z*z<_>@v~1Wz8fHD+m>7~8P+B}|KfrtRqpn#N;&4Fp``=O{kF@aJ$Fn7h)rP7Kt?** z#XTmk7{i^ifLkoPQTI0Ucn~0S_j6jl?!Rad9%N2gsN4M8wzK|Y zpT>%WV={mS+7gbtFvsOsWBevgxJ_(EAgj>PCi1PH1|rH)ef zYe`VBpV!5a*RI0JBtnjT=S?(lgJ?&}^aN&aQq4;)0D0LC2RZ~3Dc|2?10Z^+%z|JK zv$)gHn5jlN>==m{WM)4@j&R!8lx#;RaG4b*&Y&s(1vagVEztIrJQqT-a)$Z9 z(7Z+&lc{pVHQ7&K3`xK(O+RH>fuHLc=w_jbeIBdHB{*(?S#UC7*n#5eL?qP z>*_(1r=#-l{~(^6!n=nG+zjrUALK1aeX#DotKExj!XAg>>bQjXxN`n9MBvwYIifIa zPX>QplR=k-o(CIN2nubx+qT*NU0OFhT>Fj=*6Ju#5UZ)z)MW4p)sEBj9OLf)0j3`X zRnN)HTxCnP;*)4H=-}rEH$wyv&+9?i7i|_grE69m_bZ^!Yx1e_gNFeVyxE=en-*dcDp$&vWj&5tikCmb>v}ppT3R*zFT0L&zdP zJsBGiA?E_)WFpW#5*#3B0~g3efhxH$BSID>A)u^GM1`FPji-SCJ5vT|K zdk+>4u=}I{Y~Rip%pW~yaBUxUXEvw@`$rEBz$lKBVikZIIR~&Mr37_k^rZ4g5KAEl zPEc@yT5>u-PfkZFj|HD7P~Z*)2bqOD4oFjSu)`Gu-~y0H0*4RN$muzFIQg9wK%(HF z;*JF2_DKuRk!se^K^sIO*K75-6b&5;{vtL(`@{D9d_5| zetetfz4WD|9T}c?>kLvqfYRu0-iYvoO>0r>YxdLL*mGR5w3bi%{68)gxwBS&5J_e& zBs!)nrvp`w8k75S*Qf{|zGCn=OYu$O z5{9FzjKIJ3A=W_c3y)>ebB9~}o{ldawC|e{vWlwsvr7~i{X^;oD(`kL@Z9$p*uHwr zdkOZWq@&}a!TX%k4oBe%jMr~yvhxPDwxXkL#?K)aimFDEs@Oua^-x!e3KCypx2|g+ zI=)qiyi>+vRNmqeWkQiK^gYjW>s;|6&6Mk>9E>gz^5SLB9Vj|1u{p(9X*m4iRWj`E zZL`GT&!onO%g1i@6=9U9%ir}C%hR^LPR-;D8*4^7dDm96cEz=k@EbWC?l!yMeMdO- zuoYJfPM~G7U+H0YdCvub_`!U#$bsn8|xf)jaSt zi^T(;;y!{)9*J1!gKzT}FPL~zn#n(XUZJW@eZ8J@dFV>nL~+1@S&c)tNMj*Hul}0g{8?oqUscwcak+w!1R4h zLTA6)zl5GN%GDYg(b89^M`@pkPKq@NP|Qx{ja=X`BzS0@7%$tFq>BQeJN7cOUX|At#S8;z8I9X>pqrNv?4@N zca>O_U#g8UcY2q<>c?7pOg2|wpVW8Sg*F`h+}zxhfsw4a$CfxlZ!t;`c=E6q(02vDW^>YWtRNF9}C>+FLtlq2z{(kMAS7I_8@5BM>jjasJIz zTNM49py0Pep`O80TQG09*yVozt2RZAQZ|J|S-adTcuPBGa|` zFQwDdnJZ1HGw&+P>M#3H=`ZS+@ZtPkeT9*-5SYt;5NtyHT}qVA^BZU>uInGca!7=n z-?*c%b=`AVe2dflOJUHmw7Yw{-R8Y(>pg=G?LqDAHw27ecWj+X4eMlB9q8q0r++Bm zt!;va1ypS_Z1B}nO$r=wqAI;H?>#ieUKwvp*u9=SLZK*Gh4RO>KF zQ{mU*y?CxxFzsYPt5ie>%QoK|8aOGXYMgKHs(g-R$#sl>W02gVgLkAoY?Z~+Tj+c> zD0s*36KdAfeRFUI&F8-753N_8;BPP?YZ+0*E!e|W*E5Xg4QXYx^-fK(|`5qJRs3O%aZ+NX*(o%J; z6g-K_d6X$!S)6qVcTP4y@znBr^1l18Tq}~xF2f1N-LG`$ieiq}t%P5(k2M^hr?q&t zRK2PxNS)29E$*cuROY+QNh#ibpw!1bkZUW%h~o{~r2EyI)317~mP!n16qXFmU(MNa zWPje~AGXqc_H3fz(#-5x>)Q#NNzHneQ!St8EE3dOHL(08d?7IhY8%Vt&2i$79yS`e z%{{P~CJ5tCrl(G^S$t>Ppu7{L97U4n`$Y4W@|PghxwCiYd#G4#YH~xS&v`yvu^#Nl zN_xU(nm^pjnOhL5iJs?J%Bq^lNm$iP>e?#Sej;a^;~Nllq`2p%34l z4WneZ~)gt-T87EEzHx$8Jq92LK|jJot&i9{(6M* z$5jmhUpZaDWYuX;lhN`o{`0af(Tu!V&$UVYJ_k&Ni=}7@(ik5Li?~n~WKt!2#O_@K zLw+GGI)L!pJgmqcmi7ICsO8wRXl(Ag&-$LlLc(3ij=oO|LtD&`owqvQ`=r@i0J~KP zi~A@Mu1C-ndPsk<{)^G|tfM#X8uYGq%h5y|XC4`(noyDLn|Qid@z$;(8?VbsllblE zvBN0>fhXwMz@SwOoz@T1A-k}+rS$<47p>ufucOR`1VMECY~$J3($1$k9!k&Z_*VLB zXqu&tj$M2JB3S$Ti#6YlD~rc5SgjS?*?hQoLAk&WpKTWtU~nYsm3rF#)71|*M7Ces zb(=(bKEMSm=?2d|`(WAQ^Z8TvagS5k&SyoN=T)d%AAU27xkA2fxvKGGnTshD_AbK# zf&HMV0a&!=gjykhV~QnuN5k+So|OtPGrNFG3{0TjMghEF#uGnZgy{k+7G1E#$O-CM z!a+Tg2}of*3PPCmff$i|_&JmBKcW7rYmAB#^zz(Ssw^cW_@ zj6m#2_51HQV%JxgAZX_}KnfX)A2~#s5c2;f0j!+TjQ?hc1IC=v#8Y*S(TT zpa!}Qlcoj^QYzrMgf2v*4W^(rOj;X+N$LR>nWKP7N)P1A=zv>NxM>GaZLez!BMC4V#vLj} ztR(Q-y9~rikwRz35XfclOJAVFNBmN&-<9VNec98IpUU%x_TdDO&{MplJe)}M&cXg8 z?@!kVfs>afUKN9hgFtz90x&=-y_T0B&Xs6AeNo6vIU`7MYtE|njFFJTOCL80g>ceq zaUVVTPmr+iStZVYU1bl-x!}9~C1&srm!>#VE=Q)J7CA~dl|$#q)toba%A8i@-|k%! zb52fF$@l?Va*NI~dVYu8@#6fO;%pxMd#$J=dO=JbQ=(;+-z5!sXC?`o#zL1;#X3d( z`Bg5FJ7$e(;nj}cRy=qjHHK>W)G1kxOUU1)Ca6Rikqc8|8RZ7Cn+K zZp(9%?ImD?nWf_$DG!n#@ljjRJj-Z~h`L32)(pufC_(f--`yywVJvO0@@mo%=x7Vl zE4_^2d&`m>&(Eiwt4iAzZJlHQx=}|G>rnhkt_&UFhe53#2man${;F+!oUDD0F zFI)4ntwAu&E-;N!;6&VM@CpdX6>GFIC`%FZ=KUJLyn5;UW zWZ8GEZRr~+c5b=y&Rd*mY@epFx{yd9#y*C^<%!oS>!wDBo}kW)SVE|hBOlAeV4Zd} z@5RaQYBptb{(M$r!#~i`gZ-ImYpr*9zjuDdYcVJ=jh!^8XB=(irs>r;@*viWh_WOrpEj=Xi8HgeI>EF4T%NLLRw2TQ7Wm8tG+Q_ zY$&HEz;^jU$JxG=hpVB42fi$a{a6aG%!@B7)F(2Se72|(O3v*7%X|O+^I|q9o%H7<7P1T&*dHhrBps_TIw!mksPO7s-N~@U zFq#Uo%`pgW`2;b$vcM z9XQhwHz3T*%vbVy`tfRWPe<>=JMM-kGPXeb`P1&sLr?NslSMOe&w8rO3*CnkB+MN& zhEbQz<^v|v9xF_q92mRuxux1eI#CLQG^}x?e09wRU!9|-=R>Kjm?+J;h}9Ltw!&Ki z5kmT^b~){yGumz&Pcpg)CT!RC!A5(Z(Hj=|*lE$_vSn*EQ*~kFieD#-jD{px*v@nb zmjX!(G@D(Hcma3sq?)|lM^Ti#wME4D>2ay|;5rXwXivAz_{qBt4(;_77_xiKv|Y{7 z?lpa(&WB_qrA+G!@v&}w)39y!?4bsUie;L!1?x;o!e_4ka8+U@7+IqPF7ZmZ%?t@9 zH{9q$IZxMkTNA5WT*s{urmp1bG8sx7JW$5 zTGZ&L6nBiNwlwfsiL9V~=RNNZ!xxFD4UFE?+=fyTN?i?G3%(M9lfIH;reR{|y;8bI zTkg>v7BUhooo|-IoZd&9CklsZYu%kCQMrygEf(2r7%1Iu-dpNlYiKIPzgnm5%n?FL z&hxZn0*^2&3J%M#5}V^XEv{etMor-QeY$(1pQeTOJ&iZS^SzEkzs!G7*4vCcd_5>8 zz`ig-`F!oI?D)vDE;enhqu<`ieyl%5eXz|z%cLpcrD>L6)iY;ikpNQeEsxoWyWjk7 z2MnF`Yz{Q;qo^6pR4ym0G0aY2)Ys3)!Os1k5GfLk z26w{*S$Ds}f0)@wH0rMgTak!hRgwx7DZLeqva-O>NGk$G4CjIjWyT{~KpTk%H=!1W z(gRp^Z}1qU3l`KfL5mt53}|?RlSlAXshSKhFm(hE=8tND0(Cry&^ijPXy5^}_EDgt zsRwRrYk^xw@jzbZD8Opr!3!NN(4wUW(Nh6?T@`Rj8xLl5wZM$FE(pbIgHRn^z@VoM z7<3^k?-&&*)>9@LAA=bHd3{fS#^b@95fxa|2cQYB2i_WZ19LsS-QO||AAqmWb2Ytpq!0g!G_!}ks_n+C7Dw z7(94++6$D~=z>W5dhpN|53Za!3jFNwfZst2gr45Hrvi^0)PRD$F3@n)0!Pk3>vGft zy-@4u54$a?64B<}_=1+`() zL=y!#NQJ-!G!rSL zs>1=&fG&|1a0edH|NpQ?cb$}<2I#KM`Sbb@Gj-Rk`Du*G|L$b{6Q{@iG)4)dT<@>E zZ(jarlY2OowB)6w&J|`dgOB-Mj0g8sdRA2Ah?hM-A;fCkH^8>GnuS8ux}2Rmmx*<@ zxz^Zy9W@?0-18<>)0}Yr2zwTx?%d+&10ieYJaxXZGLPeWx=cqGBu~djMU<8W6!S-h zn3oS)Z}F;*a-`@8ktD!^SEe745w6?zYFy-f(KcuEbbD;Q#$3hnC;>k}0dJnx3?F@7o=nQ9oZ`F9mzzSx?@t*^c~gkMrROLb zR`}v%33b7w@ksyNw=plPQcadKt~!xh=|(5Kxi)>aX^+bHOs0wPF|jRtGI*F{t;g7X zgf{O~zBhyuB*jj~xNKP83a!wPV%Mlj1eeoERFXd!v3FvOQab!szB#3a)V}CQR1R(E zIq$mhW!MGwtZi~V1@m&$ok`k+u=L{7IVEsW1GzBKdX6XX#?_u78|4cwOf3tZ%!lUW zDvii_ePQ(j@-Otl74$aPh7MYp7mHOvGyw#?mnU77oJU2Sxjpwt{xZg<&BRGGs{ zNb}i=AKf?cA&Fn}_ymfy&MXHbFcnz|R|Vk|^e+{<1q{j7)N4wsvfr1Sy%IQeY@cC2 zcbVC|a-iY$>oGBNZX^ZY?&At>nYKcN>pM05873|6Foa~)G?hY*U5_aU1e-g42YxwPb~69OgWp+5V-G-!D$5D zPO?25y&-2@A7Nr4&*u2vzIv1Mxxcmig(cs&<@6^rWrj;Xe!dmv_asU&a8tPDrd_(h z0B?mUA^M_F#CpbU1zp8x)CKtQr4^-pZj;6HRy_GNeKl9^qE~3UN4m)+#m|KRNGP4Ny;>RLIwSqqe(rwDjP9(p}x4G#+V$lrV+6;N0`p*tONrl zY6(4~Y0u(Yhgx(xQycWnvZh-{_g`W=w&h$pbhpV{HW&Fog>&q4@C}QS&Mp!4Bk$jh z;Ncm~eC@n;?@OHBCW*4kH}KM3AEZ>JE_{mN&PiT&4i(Igd#nBaEgM~=xprAsLmN{6 zo6w;E_(gcotncB_xV|LT*@uKA(hQv<3|TB2W=aaCz)jheaOqsXg!M>VHN#uY?AJzm z$tMvFsdK*bu2qWW$9uF-!_-z@i#XnLay>m7+x)OfI=2*`9`@qCfZH_<+NW1lNSu!k zJg4v!y*w<0kLRv$6*~^RY9+>6E$VH3u52tKtXktDwAm8AS5Cfu@+Co~kpAW*&L~KVVl}V#Rs~~FmVSDpS#8OE zPrch>IfdkHSRGQ!&WBFoYy?-4?(<)2mq;e!atXe}@`=}S=u?WyuelZO(?B~mM9OEx z70t*tc5(*X+L8&Z_YI_bB(o58aP_TYzym+&$3ko-9OCtT)ooa*`*f z?>3M|r&D~|qb;S$_F?Kgb)u}n&imX%OE74OBIkM~%LqL9l?G8^Icu@*w;OL<=Vie+XCMBUEt zH66U(xWARhoU7XXk*z>{RLF4=xa~@BOoxqIocoKA?b&-8WyiZTs_aTgXRbUGH&aNS zZ1j306JlH8AN6Kj*xyUXj8M%xs!qfT9&;ABE59-RDZmHa;C+u{knGk$lPd1!=L-{n zf`>J#xhkiwEoW(MaYf@=vO&Brtzqn&UIuQh&s`LL;ukhaTFCCWstY%9928z^a1>_s zVeV2qdUJLw`-%Jg3VkzRyOs3yf z%G)Gzn`QT44(b-44n`-mDxC}z#ax<}6IN60E zuRx&csE*uH%*s%6g#?YmpJ5af$4pT5Q@sm}VYEvR3*Wnq zZS6Ph0*gYPiz8`2P~SMCU-~CvFR!KHLUZVwJaZZgX%);FZjOqz&Qt84+DC1``Q0XY zXw)2oDE_eZK^b{9(|yQ>u#UXVSJa5qH_)0Z5Uy7@!^!wP*}fomMOL}WD#Sl~nZe7s zyt@49irw|Cm`M@_Gc7&BxH!><1mI-VP8t=4>MD9<|k! z^UMzQe78JH_fqY<-i7V!k(G(272Jhz|Mt`G-o6|CqNQLisrJLav&ZqZ-HN>>Y&*o? zE7dUbQR|D8fVbelzT=^OGd?!Q9~FvanueT66YObUBN3&2mHBo~s5BO%}GVayu z;@Tt;c{#!^PWAKz2a!4LDX+ECn*2MvG@rk?aZpwYW-tDagz{&)!g&Rd*gYd0iQS9N zBe8qYc_emk9N@xo0ev}Tpc&!46A;%;j?^L+*T86rnT#-1pdU>M(j!%f5r?2qxn49C zkd9IX8{xX3ItmY}BXj{iS{odV#Dh=Ky5Mc3DG0f!0$ii?0aZ*&a0!SQ27L9~98zT!C0UO}W=KzEx zJP%RYP%j)xmcl6rpx_F!5Z1Cg12J43#=avV zDHgK>Pw?OnvN#BE`9-UMlSM*N{a?f!;D;n53`tygM9NHLh=M6{<76>#ga87kAd7~O z8>E7~EJ_}dcV{vH6W?VHQ~@0^feWS#`NLGK|B#|^SlJ!*`iE441u6e;fCH_1#qp!V0o|`h<=9VM>8-E+#^4a4HlLyLAZ~yqXTr6+nTqUWI zROILX#A>uqJpQBulC7fic>j$zf!zQ;7!NvW%4)w^WnxMe9yMkO}=e!Fjy!#>(u;>l6)k9{2?$xPJ3BEHFs zDLN4iTb+xsRL>fs1it%`kLs8bW>(Sq-?$Eo?E?z1-O|qhp#H zGA^SozE-CGKJfuIAoPYzF>k_^YV{-LuKDiGmp>sMc+8gdNhWpIxy>4kW;V&Os52d? zF)?&~Q#cjYxf1{ z&g1<(^qYIN)l%iAJX^7s8##z(4(FQ#hh_%(>ej04RS%18*-|Q(tDds5`t(dctVr_m zS2;E@Y9Gpo$kc6&v;=GFyjZV7C(;*Z^YTS5U3M(i-S1grcne+2&FbM6T3EW`jgJ>a zJ%YW^r8AH#V5kO*4}Ji%n1gj|@Qv6@bM>h_~!VbAo6 z+CgpXy4Cr2o@e#44kotNmCtdtRf!93%B|IRDd;>-pqsNBM@5LMx~qPh47VN8Amda1 zxUw=Qwh|c~_=YNU)AOtL6GFHZ#)a&TSF*;}1yhRc@M}+lIRa#Ko5fM*^vNsfB@oGt zo#qv*WPHnF<6E}*w=U(3;dFEr5<=g_wg&}2-A{FhJ$mKYiuA=BiZz;X&)@Udy!pCl zN75hZOEn>z_crFsU4)Q9??PTtY0=|~^Vqa~@0^7yM|4VR;Ow*VVZ^AfUPozDW$Q1Sj-15K z3Vt;Ueyg(I!s*$_m>z~xUoaXwz%yDtKz40&P$+~eS*OnWVWs;a|1y@DuG>$!-KrL5 znLbE0zDI_xy?*rkl=!fw9y{Sd`A32Syt|SY@B9Sz}3D^Yh-cv8=u3 zEM0j5h7$G?51!b%&SJd&dcN0?z|3@9P;b)vIc zGO`{`{=|jn!ger8x}-+d`CA2zIeJ7*7$3<;6%@{)wV zWfEYJ;|@CZi8RTf$!UW!=QD5PtaJdQo?t}={q4k*_fdep@JTdp8@&`E>c*u0zybMG zT-39hDT^Pl4bQC-E{8qDR4iRoy8zuGnr+H8rMt89F`~03-pVS zZBrqa0WZI=5c0W$Sm32PeX+K5yOA8-S3IVL;{p-qEPP*HzY@$)0+K$PzVD`uV=NFo z{hU?zgt5U1uVSUywpIr`j8Ryp9J2jQd%(20bk5^P>HQC5VAs5&xjuw-)bbhHJyO*3 zgSoVzFOfzg@pI?&bhDdVo$~Gx+g5WfJ@$wzHU6zYKRb;k!t>pyhruP zxmg+6U_`^MPY0>4aEl&&d|!u^l@}S)LuGnG{hs;7FwR&VL{#~dl=ygsXN4xN?&$&t zkz=^_n6sk8>HIqr2>1B<3|E1i;ya?CT5F(h^ppQ{+h_L|d14va*hx4C1h)w~1hbk7 z@j2|uFr7CxyzW=ptSSS~9+(-m|2 z2o1F}R^KQkzRp}X=7@pxnQ46;D#i%;wl3J!VEtK|%d(8)`vdP+oOu1w=Tgz5TFul) zrQruZlIfca=2tFh@*UB7Z(@>gWq+dO%fpWk*|kpw+iU&sS68E4S-Holc|tx!Y|G3Y z+Q2wn6@N5B*cae(uZW>Ejn(OUZJ1Kx3;-F$fA1U^T#{16H2jDmRt{& zx9wMoOoe;mNO%NZe2PvPG18WpkgO-%wNmG|Pcy1RMA;cfVogeWuKHn(TUt4$|SDol0(DUsc51h})+vX%fDqH-&pV)!LZrCv*CTEv$F- znj`Myt(Wdos|yoajCv;6OE~#90p(;02L&oJ; zp>Pe|&YO#c*E3BHzW42rD6c(o_(01|)?okBWB9=wvd-K2fhn}Y(K7gBxcO;f zWe%D;kKA9BVuzI6lZJL~GE?uox z&s!Rf4to&JpIW|MeGa``KroNPqwFdlZ5iNJnS%IzS0@j}TYBGf-N91j47|O6{TC!xaT4#l2w7K$i-%-tZ<*``_^DFABsJrS$goSUNpKr_03GNU0{IY7D zesa4BzpO+zP{`Iie)R{<<1i;nQgRmoHq^mP>eTI556PE>h&iGD)N*Ei)P{@Sbub~} z#!pr0*mGE2xKpslPLE9fILNRy=|j*VZe)}_&2HO*TV;PfapGS>5MaUjpY*?7>;KO%guKEIn!Il}2muBQICmX59DL8AJAapf75Ou5Q|_nt zgvQ`x5k!O_DKlu!XJ*@rRqS>mQSy+hC=Yp;3dE-ZFjnAIz|8fxew@548i4{C1;T{C zb<0DZImE`p-_7lJEE@^=Vt;yHzf1OOax4mRb&-D=z2klT?z`=b=H1D&+*#PK;TWjy z2>o+%@V=gtu;Zcrbt064EJook6Dj=eV*St2NO@T-K9jeoGcpH0T!^@NcX>~uvmyn z5W@m4J*Tt$pS&<=Sqzj^``-)vw_E(z^`Vinm_5H3JZPfh`S&a+EEFw)0vNyc0q8XU z_qu*j{j+*06ntkh|E&f8D8VoKpZmZJCR_dwu0QvI8RWm9=lh=$?(PGC-D8%5|6eEd zYwq7xPJ5dULe%%~rVF3_dtN63ie~ISyZ@Ct{CigMA5nro0t0{K4#Od4=)K(Gj(hYp z|AYsi00kohsRUv4)JO2Xnvt+-lWSmer}@Yw!(;=MeE$yyD1*$tb5))mK`aI>Q9|Xy zsoxzJTLQ!PNkl}<3coMpU-vr5bYfO^W%$AVp)XAVjB?xC(g9BiRw^4?gAY%f5r$BU zz6WtpGE7_`O)PHNaY1(d!S<^V%n2TZ^lkc<$3@b9F*jF(-#hcj zrdPkwv{4$0FRQr_cg6&}m3h!}HMKd{>Jxh)nZxR_)!=TTrZrtg=qV)UsM#a6%S7BM zG>zgE+HQ zdESRw{YnNW8c&*^vreN`!?wLV;*g|a8!7I5%pY<4;-ZQll*8NEKfx!E@}??JU$!U?Hm93Gdrn5 zCb>_m_OrFqP2!A&9DQ}ShMEhdhtO>#smZh)?+#eke!qD$tumjJ@iINy!OHY}tP-9m z&GM2dhXQ$xv9ofY*kwgjXtai(q=yK{%ZC*Ygps-0-_^Ax;g?4RmOECbJU>Zm@{|tN zt+N{&Ub;>Cg>Xh7l)nvEp9IjHoRcDPHxI0q-fYWHW_H!p`hNHpck|_&-v`K-lXQn- z(|RxIqR-H^lIz%y#tgEZ}0c@#^$rTdfyC{PW}s z-i;q;UF~baH1(9{r~7FRCNiE;5;1kC!_?|2wXUV{Ib9$GAg2gZC_G!enuMKuvrh7D zR8ZInQdROL#CM)!X{5AWC*ShZ&R=RhbySMArQ7pJkSJ4frNqpAnf!186Ow#AMVVB7 z`+=7nhhh)t76`K*e4K_II%R%NUPsx6QsNSWGp;kc>+=cR^E2sJ>dvi=)y!@CY_0Qq z_P2Ob;?0GW2nU&;tAhRm%~KBD{JzXxrz@skX0UNy8o&RY>HO-9waS<8@grX9?`jY?AK? zmz+Ci{H^$yFD$-Ci+JspaPDN!?T_~qe=JPlKl-NIbiY<|OI~t1vzF!KEp&e~Do8Pu zS;&M_yT2W8ZqQpeZF3}o`R(iZZ~N4}6MBblEqO7Ih!Pv~s|+6EO%X<%->O2at5qsi zNdvN9y)k*BOi56AOF3?~y!L(KfJ1-axZA7T2S!&bSu#jAY$QA7#MqZ@Ej}#VK*dez zuks`^xy{|3xU%NNKrelaD=ORA^3F}F`F;v`k@#}y>MXfS!n_t0b&6EEn$o`9!u}^Q z*P87tN}Df!o0OzwORl^-N_vsRNm%F+xwNuf_{-b-X_wP-2<3+f!H8Ho|F0nzbtYKA zrxwJ4l=3v~>p^#yW(&Dio}&BAY`3HuaJd5Q!e?oV@7*eIdzWR0)rvCJ?BpPAW1O~f%(9suN3>1&(QiosD z;7--K)2Z6W`-LQ=>AI3!wzT`*@F$~T1vNhB%^Pe61qaS%zQ+#EcFm71U%k^esV7l$ zaCx;~^gI~@D}nha3Y~#-$HiAsCzaMpKSuCw*R>G!?Q=DHs9rbZp8uGBGni-JTax#O zhuX^qQb@{5ILfK+)M(l^E;oAl-fJ+b&7hWsaUD3HzxbWW_`Ew@P_ks;gCa%vC?&U# z!3g!u+x7Sk5=jA9HxBvSt7gI-Z)tBn#6|m%AJ(5KHJu`uHc5#ct8@+E;*}$@SeUf? z67)7lm3W<)mOoaOpJlZ;6#aUHjneU=Ap5DIyaAaGTIv?4JoB{6olNxg3#hhcy#$NP zp6PY_ML1YWmox%`$5NtNd!Qog%rlW= z!a41l?KhcA5D99}lQNNT$iUrbO}smy;ve&dd+Afg-SS(#vXe}kTo1p1vbdrN3TKBq z86sU8iLk90uXjA@X}!)M{?TfIukIHu+`xTB?6y|>kwNuGqKybqbi3Z#c5pQ2_@a)l zaCDpWmE@p%5;goQ{s@8W*no|)76}a@Es1u0SzB>>g4(6GpH0k8(+VZHx5R7QoTM}X zhio@L=zp7} z1rHys!Q1{w4qCeA+cEu=qQr1vka2!=W_F{WvXD)B_-lut6ThQ&;FaXk!di8ly3i=M ziVZB?Rx*hHxy zwNFnIe%3ajcB`z61yDcBn@~SXn@~SdQPfXV6!jAoMeU)Y0x0AjaDqbaL7ph&9^{Ea z?m?a?1;!Y^y0NWZcW{)X<<17+EYDA%I0I$RdeJgte;V_{KH8eE{lYO`41;zy&qJQ=h<$`hJ|2E zXkou5gNDdM#X&|5GJvwC%r?TR~`+yUO0h& z*g-HM8i)KvFW4*&WICa>?O>yjB)_KHnH_Zdvq4Ma1YbMxz^#dz%D=enpqdaQ`-^aId30TRyeK$Y7KcR&U?4*tYEaM#VCAs_SU7Zx z-GOg+NXdzV2`~|`*vtaHb>aDt5GabnVFWOcF^`3Ca1<5^Ee5*B;h@EXh9hhsq00&2 z@6!^uZo*W#u(Ar!4q~tv$ZbJGQ^27^h6Y1BuuEHSt_1qZS)lquMQ(@@1`_5UQUz$! z38VBg?437{*san1Ni`OD7O^_wP;9g3>In;!043}(7sCx^jVd8QE0fV zJfxx+$oz*x6YshM7?c1815HNkJ`btZU^tAK$Yw*%vWw_~?0O0|3=%>z(f>L3-O*T3 zf!sX_2ms!}_JLa)HS0fwKQ-Vt!kjiGh!84<)8#|`JpNy7f1dw;sP~RUs)C+)UzqG-nf{ti#7y^}dr1*#Qr^5e-ba!!}pn@JqTdF`x{~Oz% zTK^mEj@FZ+Aat7(N>6}9V8_6r!`p?mF|u%|FckwKwhGX{eW;1Df|Aa|(DHVZ;OC!F zv7({Ff_!}eq&!wu9?FJ*LItu|Vz)m`9OAf>Ho%91FmWt&yyzWugiZu{;Xqh9P5`Zd zl7*@`y*ngf$epYL9xP5)K|x*s!u@3xu+ZV6AeVLL9#U%*Q2+rw=m}kpFv#nMG7pry zp{aioq9KN8=q2+fA>gT^Bl2p&RCpoDFwhGF1qCvY@_QKoXegio;q|geBvB9n`(4|^ zdYHheosnTs-o{`L1>3J-5IGhH9m{`)f!No|APpjhiXD~t_Rb69`*R)?q-hw)Mg48S zZ%-984=HN5Hj)w7lHh0=!3HRirx*>Ah3|iL(n>OM7!wxZhQf>ckc#j{!Y33^7!vi z3kurgKVkuY9SwzeWEG&I%74c(P|%y|kI_PZAC5xF?$pNaiMiGLzs1Brp&caj(faR+ z{+06Z*Ll#;BZXGL{AKj-Wt`Av+Wt8l0sU1Ew40EE%gRHg#{WI}zcL>F94!y!#z46t ze~bo)#yNMQA%9RJp>P)l(&@cvfa*Q|Ux5v$UxAI^OP~LUOZ=~Lfj{b_|4fVcy*?U> zLP0^2y|{*0KRq#%5=Kdm!N3J}OIZn{$MrpXRT-Xam``^zF2gsT6kAIQtLABikg{~uj)SBSF>R<|X?#uA@Kfke1l8S(KFM-a zZ>Wy$&r5Murw=uC`QY`-Lvsjy`=p*t4Y)efdf*x4DoZ?}>P-()FCfxX}&SVrVT z1!{V(s*t|K1fO}ll%(?^(C)$m?{G=SMFB;}29DmmZ{Kp~A5xU9e_pV^GzRnp^S^yd zTDuI)46wL4)_6&dH;DCeaqp3R=fdKA7%E5CPs+H;dvd^r++s2H=S#*;L_Ixv(J3+7 z{Lx8ooFet{E@i1E*t@akhgff^yAfco#cp~FZ_x}mrfg}Dp*s9j&{m=`v+eJy{n-L& z$30ZDNBbNHJ{CNgX#RZD?T$$93q;b|!B0w?w2W7228{;K9sI#QVDuwx`UNp5lh3@W z|KOu-Yq!^-6%&jz_qJ$z;s}kuito~Lq`a!ip2(bA=qWW9 z`-=bd#^E(Oa%cbizgW5os2xj}6$O3%{%z?h0Iyt8O7xyp3QqO&k}9C~g6cQ>nYed@ zwm(D92o$B2>U&z~Z}uOuvh}*G;tJ zAY}!r@0tEs`#(eBI9WIv1Ki#p{9|{2c4MJ0D$ytzTIS>TOdS8sTL7{FAh^cc45C>5 z9~AOX#^WxS0MH-)DgzdZwj+^fVEf_VU#Ea9e8@1_fTk$>@OL3lSjZ*{e+5xYefU!g z{#geSEsMf{g?G$A;^Uv^^$!JPXQ1IIko1umIDKUJ+g|PX186i3BKfPFJC;A1xS$3h zSA!q_Dg|c8_CkT{eF9*M^8oj+FVpXNbw#RgU$g~MaA9n^L(|W-0s~@;IV*=PFT)^pBJ(ayS_i` z0s@!xfa{zlz%1*5%{e`wwSos=-V2bg;(@_}A7KBk3uqTJ!0Yc&H77LJ#$p{9T{8i+ zORnJNx(R57TKNq=j;PTxSY;Qr;iOW<# zZ0#xZ|1(g<=QkQ!qLhT7U=fN^f`GJyO8;h`bGUExey;1izVAPgGi!1a zCQI$QCHFVbBvyJoa`P zP(GL)4|0WHu|Sx8t5Q<90Ja_vIs~2!%tbQro9ECWJVd09kBsB+A*STw+mw48A?m*t zrvA~q1vLM@Qsf`uTSWL*Ac_b#@gX7Vzm}U2zB~aW2uI^VR7kciBft|Mo5vpnAXgm( zV4PX}FGm2L{uj`|>Vyy@%tNp*0UF^r;5fyEkRS>??Nt7BaMK8czc;1x_pLVjZz=g> zW9$Cc?2n_MU_cITwZXg}qFVby!#{(*e;32RU6Z1x;W!}_2cDFSe9bK)h=m9mhRY}* z6(*U(i68&lmrH@|x5%s&Q2);x40=@X2Fw5F4d#%-O*Tp4CYz*ilTA{%$tEf6WE1Q| z30-Hv?a7zI?a7zI?a7C|o$)!~CI(0Wj;DgoBfGZ2xE9s|19IHJ75;n((t(HAAd ze1RI$!wf-nVL}=(ya&%De3u6Dfj6ljUD$*cP+&BF5E~kUk;b+u< z=S>X}!^h~MW5^ioB>avZSSO){PQfk=kQUrV3wXa7AWirz9i#_GGXmZsVv30gP*L>2 zUJ(;?0%l8z^}A#9T)t3 z@De*D1V1|rVRnKe3=s~%c+T@L!xJ$6^I8DKVub(KFbgp-%>mw!i#W$ToWPnTA$WIy z#1Vl1yt06w#|cufaA31KiU127ILrkAj009&5D(mk11Vf!3XYZ&Yq$piJvcyg1gMd5 zVI`_ZfJ7Gu0s#15Ij%%f)N^6|&mdqG2aX&CK$VPzAP;0`GK}IHUpFhk{q_tp?DrkpPoGXM9h= zvl7q+_+$fUFhpLdzy*@fdALptyovv zV6FmaQ#@qBA4NsbByh_CX}2PD5gwKUQcRg{D?#q?CHXyXrTa5y6d`AnlSm)~_!d zsR0C_>WJV&TEHdKF#um^0ec@13R8a$+MxbCH37u@LhIU~#!<&XMS%J{4>ueK0%skN zB2WuZpy~)=d|l`k=8`g)N*!39)&;-%18`>(;Wa(r z{E-e2JU9jU!YR5S(h=JrfZg<=6xi@2;A7Mb4IpQjLT?X}oraFXxd_ZS4GdeK0u;uh z?HNcFX4VJRr_TVvu09alGX(WtX8@>0BT&Q2MvzN#o~|yuU<7K4>1Kv)xDf`mDfFLv z)eyb`;KPBu|0>2K3?>uMG688P0wQsM&OmfxQ9;~L@9sY!?!>D_+yjIAD8m| z(Rln3z950g-d>!2b53|*siKC=9AYJbUp(GxKfo#gc;)|SKV+r;_c#F#6NC6`V0*|8 z;=(PG$>0{rWN?dQGPp%D83{3%*%3MpZdAN^1~N+x2EWymBX|PM4WW}56zl}4!QTOb ziJc*DINu0RFPyD|iSR5bCiT-~~DZ>Vi9X&SYGG zo{$H409Fxd(gX0yT>+Kv3Hib9Zr~xe_X5(R?l|8^&x1$#D?sqzdBD%`0MzXZK-a<( zP=?;XI)fKTMd1T^CogZFggbqJTEcn23ik!ni3>PGT7IAqgx-Mv-VY?otpP7k;zjT{ z2m1gX$0hJ~$om45RS30;P+FG(73BvgASH&!E<-Btv5TN2ZvK!q+;2e7e z75>?g5Yy{5%Nw*a|?L zUj>Qk`&M1@sdq zVY~>)3sy3P$l+}!koH*wcw++*h#dTb{URYRNE{gf!9r0OQk_m0o`?deDH=e>1CETs znb80t*K)#UF`&lyBLPJf3n)zU{4y5UzZ(VefsO-|VKk7+#sep$F@Rc#2YRhBpj?GF zfHXK3@XjSbUNnE7m6MT`#x@>QJYdv>Ai6|IkOnNn{1Npbf}4rpopMfu7-%KIO4$Dr z3&2_2I4cM z4A8~D`QMll$(IJ;!<&g%rI4E-g4!jW|8y?w;)AC+y52_ zqevcu+6R~GxL_j(FrwN&i29>R`XiqCBL>>vSp5+x?H^HL8$RsxMn^4#nJp*A1M`#E z$?`tSS%c4}w7WgFc1f{c&x{QJ!i&%w(&W9btZ{hhH)6SSwm>wb2dtou%B&Jn;P94o? zb@6M`hn@#fZUKF}Ow&#YHiBPk4>Ek^H)Q zv0PX2E47@Z8uYW|j>RX*+mMaXi8reqy(;nbw&mM|@lRVD+{|%&lkY6;rR>FD39?)0 z-gancLp#tD=Y5a;eBlB6M&ZHRvejy}8Zn9TGNqNYm5@SB)|Pl&P%4>;*fX`L-2ayIO(D{TQHmJRx=^YY?%}#TBJXcsCan52 zeg3Ml#m@JlM?PV3aYZriiDUi8%Wo(uv^e@kA4PLs=9Y9fm}netUiJB9qgS^pU5vJU zN-!dybC#g*S3z3-(L*{~M{Q%2%kD;toy_DW`C8-b&L6GEr_}B&wbBvA=x{H$EB)5f zsD4AeV7G%b#mAF^7%rVTm%pBO-6x`7@u1gS4;e?nTSoFTH3BWw!zrd`C>@+~%BS9x z6foNPqFwmC$Y(V4;Qm*?a`Q85rY@kjy*G$j;;6fdFCHzKWzsulr{G_^U|2sSbHps# z>Qwba0UPP+a?A45gS3rnCK8dRA2%NAoeQPdSQa+@_2X(%C7uL%4e|Bl+3QChk2-b0 z#0tVEgmngP-8pcORHXKJ-AVM89MhZ0H@c>+mZp8^K-uGSS%T@^hF42h&BEyla!&eR z3fuVQSN(1LiT=gD3x~Jc>2sQ^f1Fv+_ROy%OVeq*;$9j~V>z1SaFYLE$+&(rak<&<<{wYJ!oA z^^7#=K~bmovza-S6vt4~Uw$q5-g2kbNSOX3K^t)&9wWb%)P4~i{+gm)GjsSt&-yue<*zO>bRHgaIEeQAK7SF+`S$)$5$#h z*(+G%bvr`}(z= zxYVgBz2uSb47%v?1m5%J@9aDv182drp`W&{B~-j?HMf3BT|uHYv!$pbGxp;5&nvfE zcXpSqY;cBEUU}X#@;eiC3LSlOuJfq$+4^0r&Tr1$FS9+=w5Kc|^_kX~=;qz{0UxFe zTkp6w9pK_CW0L-iv|uKFC+73ZqeB;ivg!D*>eZ}E#Fq9QA(}dxK2c@;G%xm;j-o&3 z=YT^$4XbP$p010saf&gBvXLJWDrx+(nf+mB*rjgGb86od6f9T^v0%oPwEta60w>zR zO45I)k6{}}5Eh2sh14Mq++48?Zmt-t?jX@6hs@qwG0YbSnZctuAoOv|0Nwt49O!~q zGeE?2FCKK&KyVO_&jeA0^$h^&vp@tvpRgzRoCO378KA3n&ISR+1BBwt0fC}iCKyD0 z&jI#cA=K4e5THb50ZKLx@R+j!)s+XLqk(LYA~+wUNX-G1(mg=&=K@MJ4`c|h04Pr& z@J0cMEd29;U#^?3*)uEZi> z3cnOk+QmScicp`5fg|xUkOPkrAgwP0dE|Mx=P0-wWWEl8L=~Vm^-2K+GD!qyRRF;- z0{JR|z`JZu&{zqa3zh?@`w0B0N2t+9z|qMHK>1dIy7^LpEh-T#Uk&_vR)T17Z1%zgq2I8_A-C|?7{!vWQRH&+8`LtxVi24>D6={UbESg}Zt)VtSbv9LK+^FP zgiAB~R72}QOvYFbF~K7Q;O+(_HHKwc59XH@8~?Qlxcteb(o`6g=k*XDt&IHtaIjtv zVkuTaoGIC7z@2XLzgB)c1MZ@qL5#^WI8zu-`!g^({?|Mqk`*9Sf+S&)=MZo5RO;8t_ z+#-FkcBuNLaW}F& z^W!(t%L7gpEWQ3BZeJ@*vzc@h!U^oX7^Tt=td>FJffu4ai;O-|9lhzIc5lttK$+sV zr%0c=2uBRbatOMF8&$Bu|E4M*Q_bR`tBZ>aa;E7Q&Q-d7w~SF~jAoYIe*I~x7k z>`*xSnm1YPK-$tB=?k4wN5;_yX+DRGALS1F^za;d=RTa+HT6byBxk+DTJ>s@!H;Ok z_D>FsMQzt`)^iXr2%eFHaHF|ZI0J`MomH-ZlWAPD)01WexsQG>-C>ozb0Hv9}Hxw!$+ z!6j`F9nIfc8jy5AN&`=}K@2pQsph|YP_=_rWVjJKghkX(A&jrB7&kwpQ8aL7I~e4K zw?W7?KppM>ojpSm;dg+6=nhs#y#p9fY{%#aBm4j?tv(3y(cJ;ETHTJZz6KO&F!NA< zvpYe1 znueu^5V{{rvvdI+>Q0Ok3xqbn(lA2DW9dGG?!wYEuK-Qlh0#BQ(Ar%XUkR^(%?K?0 z8lhicX_D9f9nB+Ebpr5V)mNCbk*|TBpjQ~1tq5I*rBU60{)MI0xBi8$J%I0lr7IA+2um*@IuqR(`$BI3&DDdU-QPe$ zUQ%VffdC0k#vt4)Ph_Koq37qkiIGg9S3q=ZEFqLiT9#?CDlcMu$x9clKvK47R6_~ulLvl*!TkfkqF8-NL+Yi5ZU0y%dpuN(YjH>vSbRaO)e)kF0 znu%dodTypLPpb_Hl?xtaeL{%(%9w(n{Th$qI@z3~MqRLE?nnCd;uLaLfi~7o<`KH{9Bqtw8BL{=)k>OV0TLwVExGfur|^@v7nu)Zq06g1 z8*Sor`o-FzjxnAJj_bAWIp3SNC@_W=o(qQqZ%^GdCB38xT7spEOi>Sa$!ox)lxoqTe) zD}K`Q>O)o1wT!q&dc_5NgcsSCKZ-D?UpOUw&LYly>E)fTVPDI9a*urR{H}fQMWy%wG}9U_Pp~jys)FuV z7DM6Fkh>YpYEi1Eua}nw-J@(u826fV5tmauDan_WC~X%~)^YPqy`Fv?+tsnx=}|YL zHV86;`m4Ag_ab!aL&@?j!` z);q(L{U+<_Sej-1g=zF{WqA{}zE4-*Yc}(ckwb>%f!A7CU5*cBDwtl7)o6=9&ad7I zn;sc)iv3a3&5)omQX}(H;C%?EIIUxp1ViA((}mZqWwu=GoeBeT-8@IBf}VW~r;;cp zct=fvNEPCAi&sA6B2J zbnF<^9j$uceJ~G4@*A;MlN44v3e*IDU}&VTuB`^KV)T*qS4XodZD@>|c}^dfZRfPO zVGvW+OfsFTbSdA~;CjDMp_2q-=#jk8_&1#2UxeLPIQCY1NpZrBm{0?X8P}fX{t!Ap zFYmy9Mp(n4_h$|HrCu6zs%C5G&2j2GG^-aVebR=S?gmo##U)FHO_aYnYME09?uxFk zk9@Xryy{u=-DH=D;fUytv@4s6p*PML%}NLe{AMs!w>Dci9#2Ggu0Nc@zjM5XQ~C6q z?(5+Lm66)-KDa-j4Qx29@?;wNYI;1ynqEgq|C|W8a<56QINwV$#tz+^_eT0=h0lT6 z+(*Z1t-5E0Yn!k3^`?YyiZ0dYIX0i;GEzgU5-y%;IjConapTZ%$Z*~0jlkc_NwaDF zv35Tuf{bgoXIjH{4!j^gJIFa>HGBB#mf`zq?O&oLqW8x{(OKE5`p21qHbwoiIDc*a zIB-W^wf7Sj|Do5ukFtI(&!V%1BKR#nG#DjTsX8}qU%95DSTDCdbO&Gg)U)||YujYL z1eY6Jv#)oYORZgY8LRw7>}+3eC;U!Ye!D1lyxQdI;x+A#)q1|tzQtepgP8_Yq{oI9 zrUx$9tiUb2j};d^>J`oFSsr^|&Xw?09;zB*Q;Q-R1XlzPdH5d@Z5+1YXt6aA{mxlm z88~)ejLJ9rm=2}u?f_%(w~JR+RX;{g%wggNWDN~_zXF{sW>>q0K%-_?GJ!}mNO8*wx6+D z`3T6sfl&l}!U47+;FsYG)~_W3jBx-4;P2gBvcPaJqSS*^Iy4Lb=@2$~E(a*B-7u&o z?IEn+xMAQb90y(k@Snv6#3I26(AvRiX&^vx7@HoAfXp5+O~B$$g4u)t&bA?8FUS9k zA@(Hu2eSKiNHWO&ai7Irm?00_B?C83qhLvvLmAE;1$PhX6%8G3X7ty8A+z^ zyOv+^IiGn!)9kBTT*u4H_@{qa?|xsX?4l*LQ0S9C|8O-r=AzNL1^-j#L-R%9P4=;h zHCv4@{nx4HLnK#~?-!lmC0os~Fm5`WeOOtM z)hc7h$2ioqD#=bSO|vEX!TTpUjjc5037G+%Jr~WN9UXqjLt!*>$ksveQlwS(){*Eu zmLHefyo}B13Cc9@eljmR)vWS9MMIt)UKoS;tQ#d7+B}$J9#EF`41J-=PS&iA$qEc2 zByMF`Ga!pKPL{4Hw3}>7!y}on^1n5l0zOvd@5F{5?;y&gojV&fVE=NwVatx}#lhAS z3$Bw&4)p516~2}#U8y-F_lb|geqSMR^wfw(s^z`rGkSp>O?*W;4qQg*5|0*5`3aBY zvG|4N*;lP>z8zP2#o?lPWFbMXJCk{MOY`-OM@`;=t71Ic^!K%G?oKI}I&?GyGXU=3@w1QrqRZ2Nw2F3h7$&?OsW; z=f6JWGM=SRUFv!G)UJr@g@mqM=S>4@&T%E0mdnjYr$h$mr?`vlBkqnadw9k$o%J~R za<#;>h|>cU_58f1*d$T&Q5^@xHLElwe(&EmJ(7*(nS>XIK)3;LwQI|bjd1cXg zPIX7}xOkmH2|f^f_#pGO{{dH+ZTA)d1Cd2UCh5h7U&nawEWMn{n=amdkJFVYoj_tnvd~cY%^1yec@9IB8sKd`0_~r|dWkL$%qE!*H zrShf6`O=t~*^UW55f%K#F#q12%3t~AcpsYCm^1NvTZptQbw%pKiD-32>pPsaT%PNn ztvphHMIDzw6-ImB^}6ZiGaE)gC0%#yc2v(3(|24de_IyQS!N2N0=0PZIa`t>Ki$jr^ zK6)s{uHH#;KDDm2&0~RZ=IPhpZq`n>ow6#Tx_+0MwTs@`Zs_UyeVVP&^-}NQ;_+jb z=BS>x_gAvs_xm{2bIR^jEO|i(U*2f$r@?&6pRTL{DY7X8Hq$Z3-Y(ZocvBA>XOT;M z3~~vwy(V+wq)S-0hp(OL@T`~6=BIhC;2I|zbjyXA#W<<|#= z{qAOse6dqBTlzfthz)#Vu18mGaM<=&wCb)!YU^vd5G&5CHvr^=U>5gur4e#_TCHk3QpRixY?=R*xiv+V%@Q#8m(KSmN!Rg&IMh;b1q6Y9wqLaRF zSEJD;Ig$h0HXCjd_1{EIykqWFl=cfO(l`Z_Z2AM)W!9kQ4`gUJ0t`>Vj5PJYKYrE{ep30_j6f6S}~?t1sv zva855p`R%=ek__PZY)uHWYxbNGj#?%`$m|nKCmx5Go?WAHd9k#u3Ubp>|({&mI)(~ zQYV2$$+w4yv{MTNLVYXO9)-6!GUtdL;@%LT6>yDOq@h3KO3Y&FC*s|geV2AO9(6kX zHtEZb@W}PRIf*u9%W}zfG-Jt!`sw(5G2*(o9!8H{a?kre-;_ye9egir`Sug#D_R)~ znIG1jcE{<@6h`QMuzJX_+|f!(aPE7mi8NzvnaQ}UJ-)|@jt}HBs(qjJp{faO``OD) z1gJ__|7(SS&5v%F<~T1UL3Rk7~5g~8AF2W zdCyEkJly}Cf5II2*dK<-i(}`XTtOrUOd_%65!h=4L<;~Ad`9A59!hWJfw1%&GGvlQaK6Cx1->aMX)PJ4tz<bkV*+c)AU~nB&Q~VNkR0Qn#FoSyJ-vA>DmUZY57CIyF^gl2kfj9nv zqX>NY4`kZ}BL@5ph#H&L5 z(iX_5%qDmSq~Jh=_QTScVM^x~FjRqMtRTX9EG@PTXn`$EBCl=m5IJvQtQRA6KA>Tr z&tQ18z73L(;vg+7y93;^ZSP6_c7POojUK05u>;C`XB(*;B<(yR?fVDv?}DM+Un5YY zS`k&}U7%{PvzIatsKW68f)aJ_f(*UfK{A&@f&vfwE{4=b3DAH$4E|_C!0((A4pf4% zD$Rg=iY0eYg7EKMj6FL_@H6T|D8>|N6kpm_XNQj)YP?*M&^gZr2Rh36-;vcboLZUKo~^NoP~o^!a-epqS9SMVpqsx* zfp@Hv+AC|xOa&>%nZO_M4+g1yLTOEJ=^Pt3>=OGy_Y7anONTekb-p&Ea4cZ$RY4$W zWQkb1$lOd?zEUOagQns)l| z%Z0LAvm$-7mu|QI{LCd(VdY`%na)#EFV-hnpT$j1#l#rLhI&~!cxS~Vv{m<`M!hh8 zoz=Sem6nfv8F2;OzCm{-%LLE$cU|yzdlX%k|9VuWv9a~!N9U2M2oV|XGa1b>ld28O zi3dOMJ+qlX3zQp2ag6cwOJa1{OFTZp24J53mGZr9UaKbQ#oAT{N>Dmpww`3{}L?|e2 z@@&H;rzZ{ta+Y~NMhBQl4JKKyH;r_JGN|uFhkgA>6q2ca(MZXl{jm{k-Px1LOSQ_c z*f%oUpR#{Kzq(s;_lx~AV%EOr=4z&&n1pWg=^1yM9Iy8-x^khoO4QAY=)F)cwW;Hk zsQ1mkQhj*NPSE}0swL^T{EtH2=vP%VuKyRD9pYkiooIL)HEgv7Wr5 z?pIG@WkSsEle~(|_}gc`hh#LRFzjCNaO^R@@cwyr_tbd0DZJ_|8bnWit8%XJ#e0!{1ls=(AKymLJ{9 z%zC(`Kq~nhg{K5BWVNVhS~XwO%U-aFBo8_)vsI+c8T?xFZBlh&mcep7MY>?zHC|EI zka5E~Qt;gsw7Imt;QgV?4Ayjm)Ry(<4j-Q}*_QZp<7pOGBGHenE#q5V{SWKKmlbza zM!cR5;764m`6Ybe@XWd05b=d<=9T`7AJVU#ovtl&FZg8QeR3q8(uTH%Z)y5QPN%|{>VM#?zvrin_%RZ+CV2I6F}rG^?K{s2F13O7 zhWqa>=7m09s}CkO|DJX>CiY5{oL7YMg%1Sl_?C=~g9O1+!3OdlEww6bWC`s<4w~$S zHXFsMG`tWiW_y7ya|n-u%o_Q_E6<9yXh*C?Zw%Em1b69{U&7b)iVWpdTBD()3K~=T zVLsniv^vA4ur@fD+CxULNi=IQ<*~GTq%HGHqO#$aGsaAzgN5;(;jQ5*yV|RQN?OUy zs`W2vn)Y>=Cd(x=q+l0>w*&TUvx!Aru=*276E(em)Im z%jDou3DgnT5ki5ZGmsu0_NEI5jlq}poB=l9~u%& z?u2@<&{u-a9!vKibSIW3B?B}8DMtSU87MO5DD7WGjsODq8Y#wU3qsdpX)xg@ z0RP6)b~~V(0~3A>urwJ)5zP02FLRTjXh2S%kOMCjWEd|i2tALb#V7zRK#t*iA+!sY zE~Wr8iFxFhv{MK@f}t^yo-8FOAu9z&2KqX|TApOq?H)PRHkl~MO zO!sEhs1M-GN<-+UE^nR8G2ssX?+FY z3JVumS=riaD?hd;F8=ITsd?fMesuK?Z<~4hZNgU4(=RUsvOc)(lBV=VLoxwh$n(_% zjk`!s;B|lY3nj0tTyH6j;kR1;%=9{{fAWh(%8cAY!!!3|QcsHnW@w?AZe6pvxAk5* zabcDuPmK>TY*-buiAsGKWJYs4bBsI-kxTd-YM5JVWr9bnVY6Ol{lQ(>UH!V??ksIJ zo5qWC8f~I#e1;%> zN}|+^A-F5tOsRePrhDIpUF&bJ=S*+?yI8a3a!3{0kKIVU$Y;$;E!G&YR#<@ErlYumgsq#_^9Fm7^eL^=$=VmK(^8_?ds}!EXaY`0#x<^#7HPDBfnJn32M6QGt@o6)gk=KZlu+`p-aEnK{GHAY~;6ewpsgYFO6m29?^wbF( zO&M#H(GRonp8o8np2rJ#Vy|+8YwpmZ7EzSTQadO2bxd#~1?VqI7*JqW$$tiL@|cyX z|4uTx=NVfy7KLDFtxZr0*C@`;pS-|3iPf>!V6HM$Qi&hzoD5gXIc7C{2 z*p;DAi0rSmD>-?rjGhVf5F4O(Lq0LQ$20;=>c6+h>Q6#k4LAA6i`gj2nrL&A(0 z`0H%Qp1L+O=+H!&P?R_Wv~UDahdluY4=E_7qiR7|MSH9{X3*MC?jg(u86_6r;y;A~ zOF}H5m$79=QDJQ5BPe4Jfju%{QD_gbu>wTTg447Fhz4`0YkzkJvI7Ib-_tEfHb1a} zJoT_(i-B3dI>H9}Gg4MuG4$Ag{KOuLVFS)0_D~ywnpknJQHKHA-b1Pgl4rxot|I92 z9;yTAzoT=InV*M&vn4j1Ye{y1gb(A8H-g*&0`;BJ1OkjEc2Ktu_QW$l{J$y^Gcr`* z07c?p$7KdAgweqM2+Mkp1(w4E;JbTh7(oMjh=mh$jTRIrihmZi{_S-C*n0WL4$FV1 zNd(~p4itG!Gbd`45bPDpVE}u@FgJ+(F%2RwiQK2pO(YL)NCPt@;2wMs&`Dvh(}#&T zK@bOkIX{XQJ}HF498{MFjGO!@9vaN2-uM07h@cB2KurB5z!N}H{58f#QYZlde4HP= zi(>F40Z;+gury}Ep-lkPbuB-LS;XK)0Z`L_z1fHXAwlp12?$_x+z{FUOW#N694tL9 z2n>G_z&PO$LJ6QisrSxP{_hbw_6Q|5c)@(EaIZXj!3((054mIJ%T4(YO$PwJF$PtiEVii)c2$iLl1!w!pZr zn`crto}}^(hPZ&}G(#_rx6NqV?4933@lx>-*1rP}5BGFWnlRsU_C3OLFfy9ld40FO zfbMzhc}b_)fJ4q6^(r#dzRhXk&L?#{1KS?^Jb{vKyx{xA&;Erm!fqjkHRzfp;nlGr zj=Oi7y9X8Y&dbMZgd`aUttfwxEAtVcR--n2DF69kj@m}_G~E$hDC#4NojQKb8?UR= z5dt~JRDm%G0?NNv=5^XoP+_c);Fd3I>5I;SAvcZ6;#Z!0c5TjhqsAp?R%WtEhSAT7 zj2iiU$QBH1Zi}Eo@R%sydoAs2{&C|Hd1*Q9f~V@Qi6n$?jPU>J5fJ`Oz=uosUIoDDkpz!c zx&-PF3II|m0PrQT-~<3Pm=9R~m5B&M>l)AkIkh7J!;oGn@R--{V;qtOjr_VKifT_o zUm9r0Nd3!*1sZ=(fXU;`bs)+W`;_ryfVug73^f_h3h^UzR+uETa4^Df`iDUS*U6w5 z|8vR_sQ^s>@(WQP2I@$mIb}g{SY)ukMi$hMxeO+wNu;2;ERzM9NdXK*^&^n}uiB=Q z1F0xwu}X$=C?Qx62a*s;v@F(m4+7e7fJ`3s--C!q4t0S5R+YmhiAF#$4z$Yy%g^Mn zZtxWV*uVh|1jxx_B_Rm7i~|h_sK$XU1yIx_dC)2XKZ=R~h$vve6$E(VKpg^#ao{%s zrg5NB8T{P3N+@QSUlHpJ!-+vSuKPJJ5zd4C93o}FncUCOLO9$?`|Lz0gCE*K30rhv z8LV{t-4;v3&0w4e`>CP8S%bgZW1LV;1(@Mb#ylPv?Q00bb|2%J3UHmRjCBpx6X@V= z737h?ad=cgrLn4D#hhxupT8enb05;1sn1keh zy-yeik3fOor2YCo5YC(Z95Hp^l2Q$uEh}}DFszRQ=?J)i1A_>7jRQ;?0FbI<)0k_3 zOzEg&GX-m)1i=Se_wN4qzxB=n%;I8ytRU?5E8^gyBg~FgzhfvnNT#Om7-|BA9~P4J zxu!u2B>>?!_(WvEAwR*Z)uE0ePp%K4W5k*Iqhkj=%spQJ^z3pPC^me+#ohJvMgm2J zg~)a;xab5Z6p;Nmf#QQBG*FaSnUD^OkLIsV7h}T(5&YF|Vgz}J;ID=gBNze#_#(~? zqb}(68Fj$B1AH3lg7Cr!2W}uB0S8_ppc4o1P6B|hi%p|)5?E8!#b!DX0atLK8Uc@S zU=c|ZjnvcL?x6qU&jhMLN(zqFLrtQjq+#z^_yiYe+71P2+Q4%Tp(qu5c9WR037$^e3-YLd>P&O#{g z)fk||R6}TuVnTtF?kM6KURzW=JNP&-4J^is&kT=VL)Fq@!?S%``NhSMrq>olThok2 z^|7F&!4+?cc!KbYbW|1{_A|?WXv=_@4$+RyK)JGkHA{^0;isq%wAhi=zlQ|G#bm&t z07RFm9%af3rj#(c=>w=jTI3hsf1m*9N+G&*HJ%?)e22j$Nm%9PpQv71WPI_LGPq&` zG5q`&>NzV)Mi#65fEKTk4tu-QpIOEgFq95&hZ_Yx+6(frLnnhAQu@=ZEUs*YN_hPG zaN#c$S+c$vA*S|fwqx-OQ3wAiBkV(q2WIYU!SCUJ1FwgEuXH~5@YerF>A?0tB*TI- z5;7#B*jH471Kf`*Ex8B5qrOLSh)YRF*^w($PJOp$eoEL~cx!UtYbUdf!> z$w#7NZltBK=Qxg^n_Rd*IgvBb`k?6^adicB^<^DZVPUIv=zR_rUhRWMR7vbPdnnYj-)cwiR^}^E5g)L?gHmOFs)f`(iY3r8RS^oaZ9aVdDurJ;n)R&CVNg4L@YNCEQE4Bh! zA(C(Vn%leQ$63ye6IS?2U&0SwJurb^;UiV!U-O%^DeBAn?-$g1%JkXkDcGMTo)geN z&mrq)#^ORXdZZ*ayjRux`omM|=x>*+)=%SQ2&oDQXS^QT75IK(Nc#?@@XOxzcjO09 zS3-BXoCwkQ<{xY2Kc`8MZM%Z_ zyX9{;ceNK9{Z?&7e(Wv=@BDgexbX9*?tKb&yro1oyx-;$_Y*=AmGMp=*m~^xg>6Ta z!H9?@XmJ<*(0JAZZ#UHRb?5NckxP#_J|w1I^{w8>iAYIXW7lAjf@6f+MS6S`K7_T#;k|JwXh@R~79e>yPH9M-YB|1hv5W1T7u{IFWW6khn_g}=L zVwWx1MJF#Ws(J1z2;RMJ<@M~q2K%L|N88rh=&hYgXo;;Fv0Dj~`t;}zWeI% zeuw|}Nw0;4nGN-&5qLL$W>;xfc||RU;VrA3*QZV^j@L4RvMk1lXT>DAb5-AV5Xw_8 zSoIg4S>`V6FOn4#bdM_UnkW#-sB??lEgcH_-nxFtAmJMNA!SF_eObH!8_fv=^?_Z2 z;N+*tQFdt6@U}uS`AuWRo?rH7>{xUY(@i|k{<!R@DprLnH!>UP*XWzc17B_b=q_7}ZO?EaM3BD>xEa1B}N-?HLDadeAxtdk` zQZS2GwF$fPsyHJJzj56&2AB7>iByVa8=gAeVHOAA_i+^#J=cUPHt+8;X4nc{UnJ9& z?QmI>2p~iEkvVUd=ofH&p>uoYXfze8I4pJQoTI5qqXy^5Q_A^o{dYdO(mQez#!uf+ z^CcOo)z|1wU{YQ9IH0)v6)r_xyFa+7J^N&7n7CF_X7-i&r_HlW3bLksdg+TA;fsQ~ zzh5UOj%vo)PSG;9@-? zNvmN;}ojwSo8Jja67C2xfySD#ig`S{e<*D&ZiP7V;ijH8wMjBu#xQu zntXJPdCU_=oB!sOOtX4J%t`mFVEE=avoMk8IYIV`;^&XN>h6y= z{>gk-arW6gm!`pS+I9Yi4=ouhm^MpUJ}2iiQRG5XeCy}cRX-8Q5YVM$zIn}?*8QXZ z`lN`%@DJ3x`7aZF%#7iG z8n0g(@Tpkj;(3lH`5yGy*>5?xNAjNOC4SmGj}{Wkx0Q7>^+$wspKsU~*8LRZuDJAB zs%W-^K0MPWM)aUX%PW(i<03LwLgxDhHuIYnKM%3A7PL->% z{$Z$NYahM+8U29FhgZ~Jl8pLytTTN*-Smj0V`co(lkuK!E0!Cg#btsSf-#!+8(2}3th!L#WI`6Ex9;mv(o9&|LhOZGPcUz{nunxA&W(z)>*~ueP zc<*rek$@&r?ljvHlL^~5u7+|lgwZ`^0vya^T6{BLb9OFD;eU-{34r(yl$$vtdB0zO8w zwx76nBGw+?^+K}b4na_PbK5SAO5W{yKeYipN7%I{Rde zOh^;+*~7(`tUU+PyPS+B`^9CM1%q*8ZpdAN7`l4l@2J|1pBiG)i##BGW`?BBF=7qm*0G7Q*q9cJR)KqZR{*c+DZCQ zqVs06TBlmi-u4$(9S&(DnrN-Y(#CWjgCJkcEs0IG zkLYYOR}b&|4SoXst=UKE+;s*%2R?s)oHlQsGxUy=58tI1V?VspdAvXS`KxQecs!7blne+m-3$D5zlfxPgT_tE&4=3SDLAAJX3aetbQFNKeEAh2^wOsjTeIf`GLn3lagEq$7T+gZuQzL9=-ZQc0kLW*RqcFmRX}xg``pd z-x&wOWP=9+Nf(uV#Z73|W*JR>y$^?NdkfzFe)-qNDIy}#vqp{Rg$R*}(G>uDCm#t2}03X|2y5P1$iI4bzK`ia0w_QGO+FGqx)}7<@+Ec7k!p6lK z$|U5!3(}7yx;VLiM;jGoqE>v1670LP&%7#RA=RJL=oY#oA+44X$)GmETjX?(hwa@2 zYwBi}LD%tMZt~6V%N+a(RQ0lPl7y}6>!eRv30Su1hR4Mt(Ho!M6P_;*wC!+tr`VMpnNETBn-=0F>3MHf>vcj{ zW2GcEqTDNz#afuHPVshwHNoxhGlnZMQj<3|8hIaeU$EYMQWN3JS3;b4ZiBlULkk*;q(-SSi@9*S5S=TEYN@T6dW`&jp4w|_ch2@@&2`%O9 zSTn?b?cdb68I(*VYn$)vALn|LzE8cUGPhHZxH(KnFYT!HqXpM#+7C`o7(39o3{79~~$% z&Fh^A+~~ceTU{)b&73&c#8%st9$MEUmLeiq<#@KyD=9JQ{x!CQe)`&a+80pZgFcJavOl&Bpc&$%8s}uIudt ztnK{j(Jv&utcK3B^q_y44aP`>-MDx+weGY`WAFH}-7ohq1gFH7u)3al`@&%RL(7qh zJp6F2509G9#mZ4PZBoQ`Evh$D>D<2*t0i!UPFblqzu5kBq1%Sil1-SOy)x~|ha+Y` z%&U`KAG$owP+rny`KHoC2ktGt;&7E_$RyyynMc)xy^mNN_@8mfokAB|2AHZ$Pcsi> zZR>N*I~X@x|NKp$a)O)gR{0`PIMtU1X^$VCFtF=> z(7ajn=)mne%p}2a$`j6S&=#XJ-#(ZgNZ~47ymYD1{(Qjingf1BB$ z$KM)C>>Mav`mgIUJAYt|G*mmJDVhFI>vC;6M-cu&l_yG*K7Rgj?(4i>&)0K5pRecZoY%S0tLJ^K<=*1YU|5QdPTrSM=JQ zpQ;IhO`#*P%RWAzMQawbyCuxm8y?lXaQFJ~grJb(!JlF)myWx3?`4iow%>kpf!S$c ztmT)_xN4`@`u6?7x>}VrCJ9$+1Zu6F<1^y6<=)dgabMd{j=DuD@>r_5a;{Bbp4SPr z81d#`^{L2$duw-nI=rv&aG1p9P1>=mpIeL<3f9ELx9i0Oxu_p5xbv`iS}cMdO#zcB;DsXnnCH||;T+Y=FZ_KJWHye~QAO>ZZL89{WZrn; zcbdp)Uf0@@$Ft7#5k4FhGB)$-o>%7dp>Nscu<`J>0eX);6#ghhMm=)KlyF@`*!}zC ze4uiJ?r&0wu#d$rhXdX%q9i_@zgHC#I-d(vI#(?DlBqI3(QJ*rjmp!0--{W?TpD&T zy#^QdAI|u&QLyO2cbPHr?a?Jq`!8HuK6}3LtHF&)=Cdwu)r>8?)vkEtc3 z7w8u3Jf!yE>$|s}U2miBNe^$RvI+J%qkrd$1phmv@%;{cTK;~yBBjjZ%O&MksD0U( z|K@@vjX7}f(z zk{RT3?~D)rsn;vHe0J2nP2$URE6OLFh5VwvR*PZT~~ z+~-Mke*E@c#mLeI8)}59)tPM~?!Q%c#N`W<TkHDv$LUw4d~ zXVs}c+WlMNGHq+Jyxuo{I%~(}v?Bb5w^^7&ahvI1;-ek%B}Yo5WOE$`w|hU{NcfWe zXKBuw#HMosVhW-uSGrG$oOtPey}i;`ZJpJaO!Qj~GnozgIn2^bhbj>b5!C^&4x>j$Jg zI~wG!1d4sF3|YTM;z9TP#H%Mhj@K4zmy20s848s!UBbQYN?qM@*=IfJ$_D)nSta+& z&+E-A``i-Mv9D8H$dhS}66g!JJRC}2zFjJ9^K$hTJDY+5y}1@uE&Gm9`m2rzO>pI! zrO=2@u1#BbIujCxBP8;^%@rEhd0B10tnz!)M)h}3XFqV1GCcWqwnWetxvdUW zmXmMuo?XyUNfR%&`F&x<4TB?xs>k_WKQ%J{(qCqC`bo`avo=X5)x*D626HcXspaR< z6*p#Py0oBsPQfXm+jc$0O7#c)g~T_?E%_e)tzGQyliRVO`osPqNur-zrG`DzjqWY~ z^G)lM_C3SQq?GEx02Xoh;sJVgSrg8EUWcCLZ9hMYxz{>AlqR_lvi9raXtj;#3nO4?p` z;IOD;-{7qxKBayl?K#hi>$9YduL?6y+?n-}>GIuCk2rF0Qt;F2`z4ESS8Wb`-Qs55 zKQC_2t^=heX0+*Ya}zk$1a-mvq=hms>ULc+?lvNo}O z7sW?i7V2xN%iLU0e3hXW=UO&3GmIQn#vutT^=lPZ{dX6HUIU;&SxJQOx3Sg zd(28bGR>*T-_`852;#Be@)7Qk!Mm3RvI0y8tlz1>e5lc}C+sQFFwGwI>kGLrQd?&{ z$H#J%J0jZL|9xRg`P=q(yR>zqMczXxzbcq^b`2t3w|&&V@R{$l^;z8Xd14U}xhqAv zm+gFJ{a#DC9Vu(eYOE!mz2CllgZc6c=T7vE;E{fo1b5#_){c}~KlCy(K)-F`(3_3R z^0jX=dt=jgi6*Muez}_Y^@DA|xrWh*g!CiZH;x;JdbmBk;&6xeV(n>#&($wI_C&i2 z+g?f3?Y-10w(;U?dA|E^HGiyb;S}A@m-UhOBu4ji_R^4^D@9A8Ethh*v zNt|2@kHEp#`-30dJkPza;O;VJ^3LYBw;tw?k={>mGb8+qZjRV?JYIT};U<14^{=Jw z_dOMtKZQQ-rKn1H{&*oQR$V@-aP_3zi9(Z*Q&#UDV(^Ebru41J4_ zdKGHo&{@1SFn9ge4JR#b?j9*?;*l9VTM~YA)4}oUy25*(F_^`cY39cIdr##jR5vVD zZ{?}@{fCRNYEn+Htkdp=2z|B3=G;`M`Ep<3(dVsR!2|^$s@~H*4#in{DcH!M9|d zYRQAZ6@Th}^Tc(neat+TuySsh?C#8!xhHzhEGRx8JsWvQHJMc@_aj1cPoGHOci+PV zNn_nF-`Bacw9j(h2pd zIoYeAs`S+`$W^{R!{xi#g>~09AJOH@dv)pY*2@m0z(pIqUVICUcGUdKeC^Jid}q&r zqjwvPlRv%8TUof~z$z!ZY^~&;ou5>jjH{`d{b@3>{krFiHCIKwP?dHc-5S5KKKlAC z$@c1BCdSW7@06J}P*+5TjjDZAcu@N&cNy=u*X2sh>$VV&Mw|_OZob%fq($?%avDZ9C~`k4dE zYz{Vjl+g+@H52QpP!FAB_jGvuRqviysY;K4`GJF5`nk@vjNGFhW+=aWBsYA6&%Lej z=+k+1t}VAp1TM+u|g&It=W;GCGA2P+v|5dNk9MfWtzrN=&H5k#2?Y(I+i)n z`c(~gOP?_cR0H^O{+E!-v!Dy6|_}_vYhNh z)LNW!3qI<-&Dfg6bbh+1_=a8Tknh7I)fD=C)B0o^(YdGef)0ML$=azCO%b7d3SZxbS4hHQDbDp#%E zS?h;hsiihEvVzgzO}-ep&P#fsa^FYO%UssRVapO^lKMYQ)=}eY)=XBm+x`0asO(K* zxA+%_llGDU28P)~+PYyEZ-+e(F7MgAQHJ)oZE%C!MTuLQ-=t5EDNnjmMp{apqECGq z$R6l_lJtSgt|H@;YLWOKm#gXyE15;SRW{+0MM;U-OOu&dk47)aI{o#QtE?}-RsF(r zHQ}J5-N1%!YeV(EwWe+hlWgCpa%oglpzlxJs@T#KBJAU>(!s2IZrki2DPy=Mov^Ul zLo40##|ex2*TzR3dM|{%Zae3dv;S?(*;}t=f2htEo1ll z!FkW1K5M~i#^#f+`lG|1H|p1kSJXdTxP$(EH{Iw#Sz~8ayRC5i@%jsJ1pcuvb9mmp z{pykWod1cs<%-oY2@%BRk}B&vyDlE=nFv{RUig{v`>Wkyj0&c1%8E52SB3)hoj%Z$ z96nrMwVqeCdb&gB%WELX2dK5nkXaQx$E z`};E`z~$UU3I2-fuXwJy-Z|3i}XD8ehy;q|mf8AnVoxPjw^92d{+8-=?9>;gt zN&Bd%ZhPVPTPR7L+H{bIv0d-R6)B->t(S+YYINnzmQ@SZU;2GZRoEEWN69pHb?&spDPp_Yb4Ws!SbBP$=+J&FaB|rbf#|awn7c>;r>H@ z6ECYQ7Zsd7BQ3n&>7kvW`skkdlKRRzvPaJtiEMk;bbg`Z;%cH%?5-i9Qx1m4P1ZT} z!nJ8DwJaCg9QUlK42vW)XuXFFHob4@R$nesx_JE99Qzejx58ZuvZ8;C37t$R=O54a zw|?sz5p!Z|aFYAZwc$m&KFkw+nM>P;;smXud0*e(u<~VHAf;zfoX;P3GxQ;;$1>(> z|BF7eB?du>jP@u?&GLzp#{``E=QrGIpA+S<$z$mLTf6Il>UUSq9{5_9bn@?gFGFPS zGnq4TD7kUV!TT>y+dX*Vr6gIGO})`IE9zT#XkYYZUGyzs<#3FI7ooArl6h(tb0VXM zN4n+7X0b`0d5hE1y_BzfEUj>DJ8khu`;Y1IHr4c1$1i=ZwiZYoJ-F>dU*XTU9}bq^ zlwJ``d+dLGS9SCIG2!@#y^F8i=!}%`F|4fc))lmi5qkQ^)?#aLWaQy{J^JO|K8Dn0PJq{qSq;N6}hw zrr5Z9k@=Bt{^%>_M2+%LutU_*8>F_4xpE2@ejk3kar^znbW86*ufm6o$+yJbmtBwC zE7xcFmdi0*(_+&T+j~By74egk@80=1UX@t;q~T9yYDfFYSb=I{)sE^5-@h(TA|I{N z?N?Jz@J>1w$dLG+96EX0Pd|9klGe4qygL_vVd@Ea{s`yW;4J?ms$11l<6yV9^fLja zrbWb*W4E7;zMFGq&4*O~qlHHvP`L7?qw5+wOZ5cHLVr{gx-f3)$lQ!OuPqp3+2d5a z<{395WzP~J#jHIl?big#60M&fxa?$Yz5fxl)ZAm1^N$11g6d9q939ThwR)S$qxDI7 z;q@cSe=_-c>(n26mxu3Mb5`PIWbR=BSejFEW+h%)@jGU2jLE@2NSNdLuV*ddCN2?G z1&x!nAJW1|55zrXv)*zUttD>Nl0JAfoe}tfU!$gd{h|hfAzb@?5kg2|DxM;+D*TT16Rch<&L2w7@r zX_7yB<~0>9bdf)cToi0xHQt-kT1Pyt@MMT_azS-+w#trM%vuAZ{>fcY0UFin@0`VR z&c4mL{AZ2Yqne*@I?pW~UKx7&snNbHt^132(eHPjYvaDHze;V{odhu-?=NL*L^e=r z+sIB`sk;Y`oL)a6w*6sQR9wBT{F2*NG9$BUt{F2GrEH#E?w z{`>em8S=W9v|SQUwfStWsC~-WdFT9SZJusRzG*^3Uc5q5o571`yaG$PWHWiq>o-3Q zG`Mu%XhAWRNmJ!5(B|JidEmvH>qR|F?x|*eRC!l}_$^u~t#jJu)s^i`P41A`fiTrn zHOt}MozhjZLxK+wH#TNJQFk+bRJK9a5%K)+o^GC~!)3t}sHnS5JL{7-bE(1P zf$UhdZ8v_2l@(>>e4(AU+dfBcTZoRwh6Qc=N4Mxl247e)dGWXNz(Nt5jbZ6LNp|v# zb;?;5Z(p6vRclpAU*45B+c;*oRNcpUOp_yBzJ^u&n>Ojrma4q=Zrj(LPkV$3azabP zOG{fb<->(HZR`2+^X20K{hAdXHjnn3jIcYWL_!9YlM*h5YX^dCqhe5-Z+Xkjr4!!mYJA5jmUtpx8en+zWPjbEW zCthZm`iH%)dV>ev5$$sjJ?2KmS3j9rZZ(*)3Xz=%S)ow9!pMuC& zCaY`{cGS<$*rH}$a#KUWLQHqJqDpyD)8boy+EW&rhGgAot~#Yznr}PuHG9rIg_v1w zrBBTLJx;jhj6bV9E347{cwOCIWce2@^Okh;a_1#aR*?(44rI(Zn)fK=LX+LPl*Xdh~?~W;tdRc&H^!K}3`z}5zhU#zhUFB`eh9eVm~uW_#PoOiY{bRvZ`4{Nh2%-6Tl8(i2^=h9@RgAZs+FW`Uu+x3j~i_kKwA;DhR>b@I+f zWpuy1P?P@JaZERdx3IiINArEx-MSyX$@|YTzGaCYolrL%*Nj5?_WU_&5_J|n5?4R? z(&NnfkmpGrT5jKNZpiR%e6X|V)xL?XVSLR zI(~bwz2wc!H*|()x7__J_6v&c`WN>-xmxmZpnQ8#*5!D&vWk$G6|oX&Pv?43O%uo} zqiWIgSJsX$Tb2npq#7(%dyyQpJoRHGUF*ut*ny%)GJ`@dnwWScdSkeG6hgKYF66OsJD#QiPp2dhp#`{HS7`hrtOME!`3i)qlJsk z1#b#%5~1GOs=B{O=JU?;i(4L~-MD#9I$JX4e(r$!;k!MW?IJ4irIlHV<}OTYlh1W# z^*aeU5rlo;5zkGVcbzsq#Fw1+dQRK(FG{UJ0x#6I?Q{1PuE-D9G1^%m%}gA5^bG={yA?4S7cVVuJGBo zS*JSs+B+lV8{eHqR6;zTM|~>!zWvAG)@K>P%b(V|*)HmRR9SRD)bRLzE1N|(j8s-; zzmaRICznwQt}Cyb*g7m&623j>NhEWeOKHhz>7naXp_FGD4(pjR%(7E+Ya&+h7(7zh z5#qJ2`51rkw=9X|JL6WNE8BF4H7Tkp4w3`yJa*T|6ZtRXZEMPR4BEXxXHYj)_C%t` z-rvUl1%5_9N()MUn04l;Ev>tpZRK3^Jj$#;=h^QB4_jL+ZeH&O*PPbhmCgrqI+>zO z-wK(m^t2Uovocq{%M;ePW#mM8l4=%HXtc+=;OmW+SDFq_dS8qj?&*D%HoU&S;ldk} z%FWM=lNI+9vN^6ck^p$tl&HJdh{;sHJJj;$i}l#>!ZZSts2dCH{^ z@qtYBw5q?~8yXc3JqpUHRgRLoS{eG8Tzf%66Y#iMq)9w_SR|bt?O_ zW3X^Q^~6o?7teyM?`@EpXJ{)W@Ot~^OHM;OllEta?uwjD-|4r&v%;r(W$vS2u)85# zlNGYY_MKJi@aD$BlFzE7eFxR^Hd@}>JAVJ6!I608&p|Qwn=9g1qxy=kO41*vR2j9C z?78-@GtYjD_?c22R-voTIqKxCQI_A-F&bVKn>FdXZ%Nl|g|DL8tFOJ;*tzFdz}&;e z_Jl93f0kbP>zMmD#Kb|P^03f5+q2IT`zdYmZ|6nYs+p6iZsic9nli6(BZ9Tob+vleI=Kw ztXNjeVyW!$iokU`(ji>2REvOY?>~JzB-ivj5%1yGi`b%mWv5zG1;3U&`emK!&5p|K z7hC(A6z}`no^ox{a{DQ=X6Uu?t<&pN7O%IMZ)TZF-q^+bb}>7|<)cjOjig^^4u9Bg z=wF@vi>tv}6bxHoO;iI6stH^Al=gLQ&MlyB9p~{4Lj8Z| zZDqu-dv$BX{9x|T8ATO_&=+^n`-vIau2(MXL5xIFEoX1K zq|!0pFSTU?F%g{51_g+mA@`tY+EsrH+-sk zm-!)s=E9sch90KFUN=unEJ{i%9e(|^TPBE^YSgLu%XY}&)k|jL-5#Mi)h$P2c~;u~ zco~$rW=_Mxu51D7g|b@?j<4ngcWu7&@YosGek1x5OS^GtJN4HRN9ymiS}TVC$Upt0 zXw&HAo$QlU*&Y`<-rv*Z`E*F*`r~_@^DfRqZhGDGIZOMYyzSt2PXVirm2Y2P6*60` zcy-mRr?MY@my4U~GOH$~nBMC}cn?U#%@z#M*?jfTlP0+zwpW+E=FxhTwf@_>W$#{X z6SeYwKzTj>tE559{p|jXg>zT&Sc?{|D{^14{Ex8hYB9s?kOsMrYexRYdB~a3R?EM? z?)uPezj10=pqS^Xq>cMc1wMU!vCgjIb!}cu*rmaoMHUxtUea3>H`za?_`8N_g`|aE zY?~B!$*~FM`x{Z#LQ$9L6)7M5qP|w!Jd7(~y>meBNTcPG6$9K{?(2HNAdjk?ZuRD`&f zFw+eu-G@vXcE`G1t0>U(ND`tQx)z{!=3|$GMRs@gy|Jwk5{vddNvo4AaDVuG_e7=@ z)76S1bit``#fd8~^uK!BCA*ZI2)d=uwJF^3-A^B1MUkQfOwk7h2M=me2$`T7IGFxU8V&X1UgSzq?|k+g3~NO^6Q(ecpIr)uqMii=1{J@zKqJ zUE78dUYYNxO7Q`un+np4otu`456#~-F`3xMOtPY>MJQc97))3YMWT*KYUK+L$ur7R zI{dWm{!$6Q>dq%?{!vlBCs4cXYFaNTCvr8d`PAac{GrGPwxav%mI*wOxHNBr=B?<% z%EKD;k=#9dx6gHL5>0)OEhh6|(D>0q6R`kQ%3wmo%Vw<~M<12GCZ|}Rxp-{+4MlE5 zv?+<1{BhIu{P4{}(kqQbG_>i~1vv+F+LT z>2pR*+8+7HpXI(8zSH0g_ml0xwr;Hgfh)gzllzyREg3&=H0Rd&i2IMLdyG_$N=ER? zc=N0cDb_zeF{&Y#N4zB;>Qwh;VJf$}!?y9|gG=j}fi#lr@eQY)IwK77w6qQcMP7_> zJ)3N$s$*oueDApUOV*PGBR851O7^>)-oD1DV;wx~NEOq3kg2Ar7ap~mtGnimNz>B{ z_s*24@U8FZamufK^UCPv0e@1zfy|}1~f4t@5F3l=YX(_&UnfH3leZK!S^v&9M^!Bqdm6e{$Mr7!AcgIqG zYK8^M+7D=22F8wEu@@ixV?r`HyZT$^_p!OjLGnGFKoHdd7`4Mqk*dP%Z5u2s@A>i;(7&SNhH`dA~ zU9Pog`Ir#tS)aAW>_sW{Rg{eumyOTj%s;ljE*M6Zw$xqQeC^YEY3&=!6==N!eZQHn zNAuj3=bdz~oDd&)ubgZAVy|cS_O(xnp8MUj7k6`V5~;W+z3#r53G+tj9-$+xn-(3s z=UcbVbi+!*kb&*nGV|0u0k3qt4(4y&_2kR)hkN6mMm5*vIw&fZP8>cZFmgcHWm{oN z^Pu}c_ASAZ+V4XfdEc+{86ylY{}^W*XSX-^+wvEpoj-qCJax&>AghnsFQI1kn&_uk zI#!B)4bD25Kqb+m?ly`25@4>j4Ee3mi59*pkvA?XZ1AaiDW7(>C9&~fWQ!#4Z0EAq zTDj-pNRf=Q{VPuYPG9=;`05Wj+k@lQY~_7ueCoVwV9CVDYqyr-ANNapt0La^4F9;4 z!OvwFGp8e}arYs~Ph^P`>m<~hBa=UEh;updX0{Webai3Nd4pr87XA2P`|K&xew`#e zLnBn7&homHsznMd-_`!{1+(n-`PqKsTTFj%UR0`bD`v>%?ru}Jbg$=qlgoaNqm65!Z9(VesUWN~{p+N*JWmSm8{$HyELwFf%NYq-`TOmQ50`(g4wiit zW&U?`s8zvdpPM70KzXZc)5Y<%wcx^In@p(vy6UfOfbkNUKv#?)ITva4K~ z%Y=38-ibEsoheswU?k z!Nr;tiv1F~q;0oz)VmIKJaD@IbLo%Pm((m0G5Lq}x4aC$*9&_2mtOcHKq|``YLmG` ziQXejyYeAu#q+2Jm2AzOVUi+Sodk7G>DVyGA~X88P(??jS_GFC=c(|0;~yQIxR6$H z$SR(9k;eKGA&HNhHJF3vv~y&)<@kT-nv8Dfc}o^5+?%}WqgK|dKOc;P_goC!WR*i- z^XSrh+uBg~L_h1dLH85q9$hQrq_c|BJHANcl-K9iQLWKRp}&sSyi8g+DOk|Wt>b=f z*r12`YNW{{*XNew%I}kF^;{?3%vqZwxc*7})n`jm?DG|*YgBRwN*1y9FP& z&K`YwS|dgIXRqqs2Q;H^-Hlh1N*MDF4IU2Cb9z@B8huvm7*Zj6HR`bwviQwq(TTnr zL8~7A$#dzDiE}%=zj9H{2j0~eBDU3<+iGuqdo@g*xm+oJ>+qFNzl7|C&J#UI?Mp<} z`Lp5Ry3EH!IW19N$-@%|i+xX-FKP?g8rJc>r)m6B{C3IYHPrPcFDLKp*QRDURvwk!J=#;o;EihkJ~sa1c)TiT>=a)GwmFXcI~G)JdG}>tg`0kxhvWLRb9bJl=-3am$C??R6R^1|pBndj zwbW?Zuem;k)i;;KZAob6SysA8L9g(La=Es2)3#MF7StT&$y?3q+`Vsin@ivUapMe= z(wxVA2J|>Zn`O0Y1oL*CTk==oXu`Q(>|JHCjP5N9@%J%#Z8zDP8g4*$4{%qa3)B!< zbmepI$p7P2QQFk2qA#CwGgfoaSg(rKTBstGv&E)9Mn3(ORoc|MqKnm$4gwdA^)hU& z!d66aHtQ?QGv63Roy}&8)Vez$N?aMbr*PB|^tuzEb7>o*$VH){Pq!f&ykz`Pl#INi zaDu2FH=J*a^{{Y46tLHAy_}F`qWB>w(_s?{I@o)vVpv~&c+Ymi30Vqn3Zn@w2s{wF z9Z`TcP7iKJmWq~$F_lG90P zaY2>>j^AL&64tA|oI|F+k_%ty`$wBB8s-XvNf?20=yg|Q{*(}BLO?Uz5Tj{A7e`;X zAlR`J_HKyA670=#cx#;l%^7nNr_K4u4OxaM1LBS>T|${U)c5~C9Nnu2Z~Wqti+4wK zFx|N14wA$9!8SLlz8zVFrh6dLdQ<03S$et!DsIKU z_f{mq_YE;7FX)$M9X^afvYY{lgr9)DPLa$yc36?jdYxI3iXYSfpFpMIM8T&}ar_*o zaRSaBGFN{FWcVrSL;KkS+e3b-Lp^ML2y4`;E@g z;F5;Z0|YU6;-nd%;8-1e2%M&Y|Ht0n$1bL0L(s_>-6n$ZYA*V22Qo(<$5)X&HQUqy zk&0923OS-To^wm1nmd8L-d@ODE&>rfwiBW8(r^_(=XxTvWdt4iltS19xQ8gRG*(c1 zwP!$JkRppO@T#>l{saBH6Olq)JQ2-#Q-Z|DzO&uN0!U>Gh#|v;8@Ith~ zrsjJio8aG0*1sF9f6_j9V<78a8|$BnFR~GOM)@N4@UNToPt^~RhcDsn3j@R7?1vCG zPaU|ZW^8S5XJV_aNTsvHt!C`!s%aPG91x_gNFd;dE2^1nvRMaR@N?1EDXLkS*x6$v zSgNIFZDaor3JDH1km*8Jp^N8wQki~d{Q!;BH-nZ z&_t&UK+QQ|2R09`CTK&!Yyx~3m4OcX!x=aP2CA?du|{oU5m7W|H=-j>V=1PZ>rQ9i z9qxhd7{){*+PoWKh_Mt-&DGC05SocBVPvd)N8lsFkyapp4CePFZZe#f@H7BBS>g_AfhWi#TC3c5NpS^A3a5%t-X+pAMy+gadUU|1_D7_wgn+{ zIJg-NLe|64rNXBG*V(~{Hhe&yf!)(K32_bp3h~p}@PYmS^B7Voo536KVEL7c)1-Ma^|=6A)V z4W}%0h9f7?ia=ohzCFkWr72AX=L;jIT&0?)ud8>k8wi^O$A10TgXjrPX^p3^XU4rv zOEMzH)X{?x2>(ANfc79yXK&9vFosGXpv4gg6a5eblNdxId_1_oP%GcrL^xDp3Y0gf zX0Y=POrzi&mPkaLiwJ757ZKql=%_2gK@-?DAAtbZpt`-02pQcF0sznN1=G=vLU_>| zk%%ZS3GP$iqnME}kPO!})-?|WuIcCv93B;}87LtdgGW*T z5jq8#k3feGfDs1JngQ2SPF~GBFvuGe2V%UICJ~UvKVJmeGou|ar?bx2V7mciz#*)F zf+(66jqsrND&PvAzcL!;-y8OivaV(X(P2zQn3=$VJO;~=vH_={^O=Ywx{?WiF^c(! zKqUjT$O)R^K(|Au|4jza`O)J{@IYRB5OJKB{6wIVpaWszITI1%A~MiX3CA;32u zfypBLBtRd2fLiWFB&G1v@7X8^+(?XR6YbfHD59z$RcsD8Fc_flfEXY>!=TFneq{QT z8Bb>*FdvK!lROV#1)kwl49HarrU&KtM}|5&Hwq|7-v`kRYfeW*Y_&iSh*KXs$GGMj z?Bn7dpruLB0?de0Uq7FD12lv<^*QvJHvmuI0?aIqfa2inlSLUZAg0e#^9rERF$f=e zFBK8x*U`dt6uz#p4-rA&7ZG*dk4SMr1{VSU`3RU+f{Wg}AGDQ#sU;DUzAWk=iy)|G zETW8dN3+Ngz=l)N<1vU752zS6HPFVZgAoUeO9Lrhk41R7bf%zTz#s|6A!9nu(rZ~% zazC;Jy~IQ$Fdhk@+x7#l8L@~M0_>%swxaggg`GcN=QT` zu>RPL00(%DUWrHeAfkX;$fASsh#I;r29&Nd0pa1I!8y_Zgqx^ELiff2){Y5yUqS*9 zi-92FAoz${7~kMjZGZ6AAF$fr9 zR9xl={Gy`!5)o-$3@2D@*d!uiJQyN078A>pfQf2xh!Qps6D5tsM3NT9LkbxiAj*S# zM;56h%n|@yY%AX2)is z;`XUiggiiRp=<^ho)iZEF0#sbAbRGCs zV+z>l=`;}Tf>aP1oP&f34ekSr0bN{Y)~13?9wi})2(**Yk7*#{id10VKnfzk3tXmy zwE`ef1d|b}xDVL-7ocG)C7dBtoCpRWo`x8rjRycRDozRmLre_KO9Q>S4Of_z0SC^5 zD7(_YPB3MMt{@@61vg`w76H{v1$H^MAPZ4FU^iNx4CdjRK4p{$^dO*4hrnb38vu3+ zx?F*~U{cS)qTydhDk8y6)1si|Q4n7CCW9}5;k>BqApn$p5U`_RyrmN`?8Pumr4!&( zdTcO+-gJPBA%xB@#T*VDQyDt=>+Kn!OIV=_h!O%_2q^Oi<}@*sAfVuV zF%FYarwl}#2UHj?ai0R6!Cv4O?k&0w1L7o>RKH;W12Nk5GjMWnC?H?xTzLo)hqH)J z9R5c(=BY5`h!{rTOn^}W@C(BgA`$NU-edqgmo$K1b>F7F|z2*On|9(2w*a>NI|EtP+?%o1V1o!fYBI|;1*y4 zQ7jU}4cv+P9mPEXZYd1R2;c^;%%w+xYW2g2q9OywbZUh>99u>l-OEJ!C@4PPc{Ql;3q=ZgNdo=4H%%OgF&KCt=4Bu zhX+FXR4IV%4n`{toqY~wS&@bCNl&fMrlkTf3r06&VX5HXBeQ_Kc}G~YW134tF*5iF zI4bZ1P~nFkm|Djc$n0Ll5Su^1TfGdPPyqK)OCpc#T#4S01=$lML0nN(+(|wVJ zE7tq$DaC?s@nA#H&pF^476FqX<`GbxY;cK0oRN_DV)VjbUeq!dz}!0u)~j<2f;*su z(F`LXqQVIDS}r&vtQAmV#YXsnNsbj8u^)M$pYxA_2PCo3BOC+eyNDu60;~|o0IqZ$ z0~`sc)hTe9J}h1W!Qfa^K}PAv5Ck(K_;?ns8576Avi4SiqgOf(96Xi90tf@+9Dl84tjLESStm+k_QO^h81KZ7(|?dc!Da20pLYHx58?D z@+6S9;TWQf69b_X5J9j}=wK0!HK;oSa!4EkMgRdP0La1Ei6xOBIN%44X3r_GQgh%X zgl>#+WL!BQ=Hs$Fh2=Qb`FL)H>9Gt2GatsZHPgRD91=;ne9(szSZ4wY_RV~Nt#<+{ z$Ka*%5g8m`3QH#;YNI|dfCobs+5kA}cN)eL(ZK@XC1#im+7zJj(;ytJJYeI=GYBs? z15#|P6EEg58B>PM3e^lOO%cW7HpW|)nWNj!09@QA@raJG3aa3kIp>`LWmGr`$_OJc zOd#*TAaj9IYMp^2BNYq4>@cqb(HEPHienGGv3SCO$cXhu{R%)fv1b6k%mPrz1*bsj z{%v4uSbvZ?493ubADH3cAs>F=hDXJm7WM<~0NNN1R2B|cro@2E5Em0bTgXk-qN5|H z5FOO-90nVAhvK+4LPk-9E$+bo7l3D=X%R6!N3Z7qa@yyBdWhFBfdJgVW&j_DLj^c0 z=<9qSA8ugNfd{yH4#=)7M8tV93PE?~7eegEqz-li*U~r#Q2jzY^x|Ng3qd^hPeZOs z)53L{S2VfF8;P6Newzv~Ulf1@x1kqr*yoHy1(1-vm4b zpkzP=QY$Kh@MS6T7*b*kx8g5{O2PBqcIq`LTMHQ=~Kzu$s#c8 zO~oLix&qh`plhLhMTivS0-)$H02YMBz^txfkR&E=xB)DLbu$62EWy1Gh5%O8QYe8u z3HQ0iC7?ZL&H~6}tnG9u#wgGd=!v->K_bL-96IiTM9_hfDIdTMfgHV8j7UO6$MHog zqrmTe&I2gArNGS0a{zR2DPRx&6B8T*Qxm|3j$tE;rDE^{Jr9_HXeUZQDj!P`-v1*i zf)mB!^OPC^NFG$X45CD0A))~50Kk?6kHA432M2^*<2=qQLwIGT)hPZMISJzl391Iy z%MfWm4gQIupP(~~AHwAjEA|#4ih?8vju?t0$m_~su?%`}z8te^yb(M-_5cslq2 zJ;1j@BRWtH&|v*6hjLW_v``S3Ac@G51(|@_Q~;?*%8`X~_!5QmuP{3;4}cpwD4`NE z`HBkQ_m?zeA*@6&xj?b&B(~W7PyuScs{~Qx2A_vAD-cNpXeZ-*fF?3(bsq9z=6Qri zY^ty~13VSo3->V@kYV8fDWnYAeICr-sT7ozjOAEl9q@*gh@|vXxo+BU+<}rotE?-* zTXK~m3zeY>_(CRfrZjK|Lz~EA@1;s$$l5Z{j6ao7S^lrQ@=rVzOq^s0(DGG)|GHB^ zIKFHmL!x4XHFc*V3wiPN5@gDl#zD>x^`a_Z2elkgu*FwTD_O#>};szuhL zH>yD7cWV)$ty8MT>H;*=rZ&^2<_2HG`gSMK!0H3aPN&WQjQMT+`!N6OgJl<>t9$EU z7UN4`6=$juF;{#%;6?mb`DZm?!G$`VK5R(_+hbEZ8+a$co%pZfjW>X#h^&pHDZBu6 zA}9_%<;W#4sDulMmVMkxLHXvWn>lYC*Eq~vDU~E1jVagN1 z{=yC%Gr~VJ{T~z>{peN1N$Ot-85`*9?1LkVb2Wo-hK8LIUU?O9L~Ck6@9uXXy4(av zfrG9gYefE$9_a2Gdp3mADRMeZGyT^8z?3EO9Y#y#AQA&`{@2gfZI}-FFYsNBgcL zbE&M2f7p^{X)s){qzo6VjWoDmc^0@}1x&a=rMsX+cDV`BLx0~u=JK+jpteoOG9K^~ z;KE@GO&YaphD@Qb@xKnj&B!tY>wtxXsVx}T6(hS99mtV0WAYvWC@c#&>F zG%%>}HDtW1G}r=Bb$2t|Iq~n#R1$U)Tgt;yeJ(l&TgisU+YiEt4pxbJZm8d}n#G>R@pzkr0ZOCFSP|fM0&1?f8XFCw3 zdC+&tC&L91+XUZ^O1A@~Z=Ebiu%^N}^0W))sE0f7opC&r5(rb9g>V6-%35Rvy8j-+ zK$#tgnCL%sA^cMp0%#|`!>-y5eJnbWx$}(OVW$`7XXy{x(g_-o*^Njp#uZ*r+d3Hb z^nBf+%l{sTumX>W522#>x)D`gR{TVLx?rf}ePoXS8KOFkh;4G_-bbXT{k(b~$;FB% zTOS}g5=2aQu|Gv$MM3O8>_O?kay9<}wsQ{Q75n?|9-RTX%$ElUO^U=|U{Bky-NruT zW%v-GOOhzqz9aixNN5jZcPUiNGTH9Zpztw--6hf(U_NYjsZg9CK7zYc3ig!@w!0Kq zHpM(b7!t6~;kXGd6Ya)^5(!wfj%_F$-H$5wu%_iChzL6g0X+yqoQ8>yZ72c0jso}W zV2hA*qz?8>+VlZ%&A_BIvkjI%Y=8*_tW@Ou3=v^s`+@A;vFwGd4UBbW8yGJGOR=W+ zBSNJPTMA8Y(*bs2Uvy<_BVvyp!5{N~k|&TrYdJVeqhpUIun)$f16v!3ePZ}v0%+OH zet;ltrf8WM7y=0kQ)~dqSQ0k9jX);Su`er4Zv%kT|7$GvFwgXUFb4(8pQg7F$aFG= z$u=|wF#Z2%8e6EoYev6#!i{+Ry^4;pFgDyE}D=1^y7 zBeAPEv{A69x3Ite;6aMQAv#!F%p@4&KOjA`5o;q7ITVRP;?#Evg`Ep97JukyCNdN{ zyK(90P<2QICOg&)Dz-wKIhX;vjvQ?aj($)Y;phixI`%Zq40y2C$37~Cw=t)Dq7H;u zb`yg(Dwg-N4W_f39rR;R*eo2ZP6taGXO4v=kqsFpbOb}@=t#kyY+xJA$yNv_@Kr#z zencH22QuIm|55ypU>zz277V!kO;Z{I4GT~+Cf1?iv5&2dNMh3uFis8*LK^{lfNAr!xcEsGLRsA()LB(2o;A2n!tUhCrpx^oN)hK{qm+sG*HRs^I1b z9Bza_BeOeB=tsepz%vPzmB$7CcfKI}axtRdz6b@DsAj)uvgigoS zuxw))*tgTMzyG{AfdO{U-jM;TYmPQDR*}H|{->V=1_fK-v9)n}aRP&ZJ=is^A3E?H z;bC%2LewF1cyS`;o@We(giwcuJtR2|AlAkyI(P<>BfA0jI_1-*DIq-1$etU5ABJZs z*e3xDIVL6oA2|AvI4p-q1b;KVAEtyvNOn0UArUx~3%nPH$0m}<9Fd<$qH%b8B8iUG z*Jg4H0yUFe;fQ3sPR7=e%ArU^$PhRvhM+uyI*d5*R2-rM_cav({!>CC1q_rOLkedm zM})M718FL!0u!nK2e+tXHckWoiQtGiD1orWK?&6PIK)IFak83*KfODXgYX2?Oznqx zX$%6HJ(Yk5^f{@c0~6Uf1Nd=p3xX7fjOlc&WHS>P*kk_3!T+Ta@H{4`>=+y&1qz6; zc;f&Fl(4lyg229jfOQ6my$$$JrC~24%)k%=5qn-k1gFOyL?K|2vD!7;SPGe4;qbJc zqaTEH_EdsEqG1(MHh{1|;b`N~4+yMe_Mi-HoNgI{?06el~=pgZM%S>wMPiUc)Sb_M|-IUF%Omkqm`0G5eW#AdJrmOdOS zED|i9+1UgsD~A_@6&AIzo)(7|fXzkZAaR!pyNW zB1do_(a1BiAk0U@rW{9FN1#H$VVjshhHnzGwLu!hUa`=Dw`;KC`AlROoLL=-K_xTU zsKZh?tZY7gFtl-KBuql#Fb_zeIo6p}3cL$36CRBHpO*aRqe-xV{m*m!Pn`fByQ?J8 zAP-^(2v)=)WAJwD90WsP>j(TNK_!EY3(y9&S@uaF-{nA%PRC02)42s>ffDvMaANGp zK)%D^@X;g^SUUS)9axyNx52|N9JUH?EO8(WZk7YVY0Jm|`DkE2iG48S;@H~}GpK_p z*b_-uuyHPq$*?KNjx-tacs5QmA?|^7vrj^zuxl{nF+j@9exQ~*9BCC)12}v%8SImT z{h&xhb{|a!W#Gh`J~O!oevmQspNR~7A(hi)p^anJ1xeL^Iy1H0gTau8asUJm&(TKW z2qI*_hC_5@GDkiKO&p<=35^`94>ITsCv`N)%-M7S-fiK~4;qETeM7gIUJv6S6w-h= z%>VtD@ROkm%E5kkC4_@I*x}@un2v7<&V)zjTrxpapQcAlyZ{UaM(4<}VGEig{e^PT z%yJz@34=2yBLf{Agn)%{AkAdJV@qso1=qt7uPKnyvFidwhb@=@G88CIuulS+GY40} zaB!|-{Quv2i-LVlmmL{MJ=hhK@_$rlKtfwU>i$@5Y66?Oa}h5`)a64aCkx}>P=G`md;RM8O6aZ z5`hzG5=UuBhXPiN>j%*PANxt1o{$1b8RsM%6;ue(1opK&RN4P!IseT8)#e%A5$8YT z_M9xF!}5xag%mnx?T|u;1dF2|1>1kc{{ABl%#O1kgUL}X#nL(sioxtS6p4X9>@sr_ zcr1Z)EN5MZ0#auoI4%F9LXm_WYpBR_$P;o*4i5(}E^}x)pu*vTVJ$h+FJSx!i)Bx_ zppA2-0Sjdgw+zK$4u?b~5;^h!Dz-bqCKC9ZGnL6MV=4qyjy6~^v9lG*jvR_fC6PI~ z0A)XRxkGgM7vBHN{~*KXP&g`xm|gDJGMnACg8Fjg0kGZ1p+{7Xa=#X^pTfE90h~Fs z8unG-am25%X5ka;kxh(n08yxH?g8U8_>7svF=4|R>d5TW!6pKS*QGMRfw4_Yg{Ss8+aUIE^n-`^INHF* zMK~JaF)rb8FbodoOM{(4c7>tGYhh;zQ*840bl-Zg^A zlI6@M!=#qLfwQ@cmADHofr}!5h^OY8o|%51kq9=}Iy2MV)z$U$R#ksM{JE=l>_xYb zIvBK*Y9*LgMStX)?DC+IrP=^lOasl&O(3CYWzM_W>Kj;DzD#C1<+#w0WHmIM+#6Wv zGQsU&+-_t^G{{+}>VBpKuzwC$20%nKG+0l2;@yBq;6DWw-eWw;WZ@lkBf$ib%t63v z6%b@rlx+OyynyYqPEg=CjAeJkm5#o8DhzEa&*hn&;3xxjO2N@(>dM2#Xp>GcQ}bsjUIilq;dZxaqf*3k5AE zw+5sk2PP9MSByU6&`|JyAOuJ`#)BZ8SWV#Lu%nL%&qlmK1qg69Q;q>@86YCM2( ziN+*wxOoad$BPpxBbcGKWV+gCqJB%r48^Y!LT)xwpbRvwV>|-HYCG{TO9+eqt5l=X zb?g9B1$tBQ;mL4;k=Rd9P3i@DQ}^)Ty#Lgx9vmH1dg=v|Cl*#rrB-)$ih!n5g*4+Z z0XXI{0j1ME;X$Rq4FpLk>CErI|6w*U#sESx(^&t?erndle#(EepU^ZgCPy$4v`x`0 z`DlXIE>JE0m*->ULqwaJ5a3RcD&}35awHihSzt$2t+z}D{C!e%06ds*3AL0I_Vg@- zc24C3O?b{+hv|1IPM*KF^Z%;CQV#+y1s4iM%-9?nL03-DAQ;a@wG{lXV$am+(3*$3 z$_F$cv>fD09ieD*6WU(0@~%uY%cV{zBpssagrHp$KZdp|oP6vjG=S!u47WmRjEd+V z&#nF+Wl`tE;-JmVPW?)7t38NHIe2&UWKb3TWGH#Xmuj$~;Gs?b}k7E{+=Z+8J;SW+i1V3r8STJR6F&Sb&Y{|p^ zZ2NvtnNI*|!E}8*gQ$-L8Yr;_#=mN`#sA~MQEcVlSkk%OHw+QnqQ1C&a5;(uSc-(J zKs%MxH*|kwU5 zZ3=bMGo+u30`d8KJIzixS$b$Z2+ETKU(qI-X!6j&? z478vr$x}3MmSY>9yNrp{LsZQeG<7%>E&U&8pgmeKxP@uWLEAKY)!)X+<%0sz5m{;h z@`Ic`Z4(iO1}4eYk5SDGx06|oee)oS_IdY`7%?<>tqBS#=Q#>CQ?nC%NiRXOz!mJN zK@OBDnI>rh@cl;HH2Yn+R&^exCaxyL%t;k3Aq8kuALayIGe6O7gaL^MDaKA87Y&35 z6wgs`pFS?n(dLxT5pQZcxmajS%?@~;0Wlw(ubAx>4aQcJA*~>RqgwfZwnY<7v!h=V z`e9(zKNrpWNsJsJ2G5OBx+fgpFs#oLiRjJFEM@_kq?#5Td3UEOj0{#olYd-A{V5C3 z%0GVHv9<88TnTM|PappI%j#Ik$%BkZJ44f90d1CcrddGR8Je6yEa{@0ccucOR0f>} z(#}}99f~j)r9h$dJDG;wRYwyv(gcmG%~U}2-VO6_ zA@s_0L}9d-+bJQLqixzXgshVR@Xdw1ph<))hdx0QE4Tn3lOd*lF2N>B*KwXTC#UG} z$h?DN>!#RiVgL&-lJt}YvA+bitl$$`;)&p1o4+(Os5CLeOdLT|_7|FvFA5se@>M;H zGVEAaIr3oN>K&{;cqznl_2vZ^&RF)8MQ9%QL@SKm#YcJ2Hcd>9NPaTKl$+2latBQ^ zOC7yHDSF&i(4om9v}hAR6Q8O6%6*3>w*~Z1ZVPd1sP_6EV5?S47o=&!Ej2M(L~aXa zOO_RybP(+X@?oIKhdERJ(}a4}#8ehY2SJk#;$7(=XwpH|0jzzeGJn-UkL{e0;Jf#e zq_ti~ji;ic^+kq|wxApY;ALx6TV;W`J=1YKr~>FhZ9MSJN(yIHN~+ouQc1y>4H0je zxcZSKgambMpSD>WmS8GbE5W4gd6Cx2EXwl)(X7T_iGAV_EAt7B2s)*jpzeU?(?n3m zf@e#(nRKE$tr*b7H2bO4rpV54WrN&BBx|>wk8~U>QHBGWG8{$oev)m`imT!vIYZHa z7BUU)usMS-LX?2wxjrGlYJ zFOc-#qYd-^6P~DLr)ZfOho-KIqRC)UJS2m40rE@^UY;jgELfNp3x`TgPlQh-Y-5i} zPfLKg=h0j^Ev3Aye`7zYI+X>vP&v62H7LfoU?Wnvpb5U9461|1ivM&d;cezhQ2r7w zLd#UkRSccFf&yJ>LTEZU)Ll*TxDVR5m>`E%6EwI?N0;0+JcGT!m0wG4kAL&`cK#nk z`D?Uqt@u_`!O)ubvTYrQL|lNanlv-)wh8{%6#^C{egjJE=h8e6a&Qq3lGzP1k6}=V zwBqyRK~%TJ1RWAEKMNdl)`{R+6pcX*!m^Of|06Dv8YL%|sdnOjG=0hfFsV4Ri#OM; zBi!sKi2nyy6?H=sct^Cqx=q^$Rg%y5jH^+_;R#Zk%iS3zkUJefbBXp2??o%dd(nz1 zkV~UeY2tpxEcmv0SF8VbaoI8tUgh0FQ}U8V5FyRbEQI{jUo2!|kX>N9`1sJ|Fi?;w z?-ny8n@>}E4nmQp>ItEhEX?+2$Nm9WKewbx9Yk|_0)wi61Df>$IiFRFHvbPdQK1tB zRdThV$v2=*%^Hp>2~FBJGn^(`n!P#u7T~5`tr(C;4#<^G#S~0H@6wJl|5r5% zQI!rrQ!*yp`XS{*C!cJ7b>5{4=5DE-qq6valp9FWL7|kgv*pe3^NE^q%ppO}X^W2i;W&JDr0na+$jIF^Vlpj!DV%CKeo|cF_G!>#l z1IpV?u=rmsuxX>A=~_Z)D#d^%1O#M`QmNe_^BB0sadLR>3KFXaRa(u1f^|9Vr#v~O z0n&Oxqc17PpjGA})SLfTIH4q%V#ExwcrLD9Dh^_>!pq@s9&nYS+l~wHzfN(tCo{XK zy$}0dk$_o<6YS>_+ntpsA37kWNkK&^TT>CyYo)T0w@3?%CygRX5u>=R0my4OQ{i}~F`#i@Mtrb}?Q)x{8Z8G#>hru&zL?jpe8#1sfJb5H zQ15E9KYw_xnkoLYwUjMU4K$LIIZrU8JPV|s6Nunll27?A2U+hDmrxB@I%PXYU}34N zx#&wJnb3645VV7x;Zhqh5{$@e#3RfFMs#- z4?p}^H(j#_^&8rM;)jRpzpQ`$@B3HZ{(iWsk)o6! zN=O)3h`e*{a{H+F^Ss~p{vrE2XU_D@nRCv}<&$*YoIKuZ^V>k^wr%_vNdYabt-irN zAzu5oViXkw6a)|?p%)SqWXfL+P0n{uEOLlnip<7=tjlra~k6E4Ru&xlMv2 z4u<$ddPf9?1WW#>bPz@_04_1GP$*%+X+|ONoPi7IP>B%TWoYOC-*yHR9;`8nfXeNX zAZk0~HvF&F*n>OFya2^0DUAE0A$Y}KHHL=-g&YhG2n-Jb){LUyjOKPA!N>wmG13EF zMjp_~$PJd6wgL|g8t|SG4RRQz06&vtmL|=w<|!k!i-I^N32YXC`4V z$ixE_wAg=1swjebCLv(PjFicZQUUbLy5K#77^R{d2GFpGgM4Nk5X2%0s9Bg`pV(P; zgGCl@q)o)DvNY5H&B_jHSTunNt0-V*WdiZ6^gx1D7=+Ps0S^=%*w4xe3q8Ur0DiDa zfcvbB6c{WRg2JX~NpbA&BY?%={}};e-vgn)#u|$Oo^+%dv*l^1xBq8~u~-Fg46O>- z*to%p1|yh8v!E2gDq4V4xhxx-z<(yu#6&mf#d@ zA9d8mlI!7-CiS2j^O5zo9VuUrh&{i{cF7=6%tVl)2WRUebTR)K5BnY76FMTa42m{G z_cdqoB#IP{$6qZtxvZ7?YTn9JOJs-V2czdV@$8WQX;nI8(^OiSp z%vy$hfd{GSDGU0?D!o7XMKmPXExemOvo|-0+Nb9-Qt}=t-k!kF|4e?^YBKupKbbJN-CC1w7@oqEdIF zzmGJ97*j%x2Fuw@99U&!#{X=KvI0>MjS^*njUlJ$1P6yigbTQWyL=;pSUkCEEFM{_ zwgOl@NeccVOU+im9em?=0s{PWV10)!I4@vI!kIhu0bbAyVsr2W{#pyrfi`|a;46e+ zORy$n2i^-9g0sS=kfsGGg2n(RVhXMa(E%YLeejHg%|VDLIo(3o2y7R#1#g5cKsEe5 zAz}th#m#`61U(ReGSlMrpacFMl_2vx#LNJd#hG=CR97?FT zN!t)v3d$H@tRO}dzf8RyFgPJzJss8D2Gz*)j7E0NX(1rAPV7$urY z1+R+iWJ!XHdq}}f( zH+v>;Gk8Ffv9Y{)?(VY#O z2$_48R5ZO%%Nkk8(eOH17teyjVpcf31kUUw-t83;wh(#vCSzLYTTIad9@92dg1*Co z^;z-nf)NxR6K6Z_%BNLkcu&+^Y|hR!7zoHxO?blerqKH0%L~V4&z^KlkSL^@_52VA z_yW1>y}9KGBGOMnGesC^@)U0ORd=H24@Ko=XoplhEKj}q>1GCH*rezAn=idgzBa1V zDsq0Wkg%ZlNKv?f!P7=Q>QxdCD#?n#1JjSq6=^=)RmTRNl-cdfC@_i+$u#pj8>q~YyhoY=1m9x57 zJ?p>`kJ>R#N3TWo5nmTb8(i{=@k^u2Un2RH1O#O5{5psqvLpXKfuxFTYAi;3fmljQ@;tv_^@(!>w#VEWkF zG&SUY%k~ICz3kgVnZNf8nRiZofdjx!6V1 z2)QJ;Tu1e^u^ML1R0ivgJs<8#a)~UKocoLx%;LBC(SLh?-3hlFy}iIKGi1YdMi9Hh zG}~b!@lw-!LkS-GMnQ?h9b1ZZwmj-M&2-eN{b(6Qx(%V{(sM=Bm!Ec+_&ncRXoXg* z!Jj!zR~;7ZUtfHYY%DtOD+bc3`d>E23YMI|V{i9%M3U!iR1vCI^F)ETGcL|C?Vzcioq(Dt>-;VW;7Do2D{o*g)}B~9T|T)V8OhQ0s2h(h}IT+^~44scZlz-UxK4*n(^D*Hx9QT#S`Xz#18I z;FYm*s!DhPjFO_90z8uNDi}FcEWqgOq*9f`U_hFhE281hctuq?EDov@jH;Z9qLKg} zuRvsSr{IQ$B;ZhC0jlbV3a4eqcADG+r8DL6@{+BGOTqHfEC z$12HTR54IH;pE^y(5$)>>{8_gVH$S8LXDmVqavq*Qw45nvS3b?1+Zw^fkic1T4?DY zrGqudPgP?9*EH=xhB_@RMin*|HalNk7D%YG0vjz;FfL5TrlhPa2S*jFpd_cHq#~fC zq9TVSvRs0VLF}aa>TF;hO2T6ZjaQOWgeDFaHeU%RprnkK!x44Lpdezqxofb4v|V-# zN;o-1JRAa~aUe`nE=!XYNNL-0Dk);*loX)iRe+sUR25KC!pbQss1V<8pg5p~C5(T)Q5ni&;7q_Vg2O1Fr~>OJzSrLDx|I$)h}S2r z8zx01WjPg$3Y=S5BV3w$b&)o11;MN|48JWrRd~GFGAb%6!-XV(#bRMk6~TtCEJ)X7 z1xFQGfwi77Ee4N;>jMkU>&XHcJytNTz(9--q|k!XM$d?aYY@%?G87m*4ruAif?gi0Y$hbR27JKiYYiqvl^(+3TVvCkyXo%Q-&=?RySOQig0z~ z-~vz}hGoId$+B(R@t;QH;OzZz*uqU276di+tvt*&uJ8IH(XfSI2?&-v+PR{7jgBGaSl3~P8(=$ z!dG^ua_bSMtHN>}jj7Lt&N8uFigGs~RFCg&ka=KI^nvYefC4&QrX08|+VeiTec@HB zLYMAzW97r?J$a9JM5?ErG~BnlK3I=loPxMYv*8rETT1vwwn*MRj!r^tC*=m+)JsDl zne^{=j>fX1bEQL#G)g;PIBkiyCLDQ`mB}b07?VYX^D}X~Aaq{hp%_;DaHrHwTFsB{ zcV&*=PjoHvl1YD=UsF-#JyP+)rtxs)n~CCrS6~;z4Aq+llDs3vc8x)zFKca*{Rj4{ zzrEblz2?N}7b|nKZ((`VmN2xoe(jm#fNSy4T?5ChttsH_m#r^ndjmOor*cX(bVO@p z(vK(Y6%Y#2-)%4ZK$q_W^{ejosOWtIQNx8yyC2hA**#Hnp17mYK4Urhl5Tubq%MF< zxFYnk{QK{Ay9DzsM0;rDQ*kO>;;CHCosyRxpZQ{_GjIe&=q_~_>mT?)pbd-~YJV&o zlD%uf>Of2Lx^K*gEBlm~``w9SYfaX6n7Z>nx^xJxL*G?DhrYj~R=%qEV}hd;$cCLV zIXJXGCw6<+o(zMbMe+nH zKOYtsJw*NC(peDkQ(v;H1KVcV^>dGmanZJA;|!~;rT1<Q>Qk^Vy zJiW9sW>ZB$T;8U#5bIsM`p|@HLV`C|EADjE*o7KhX1TA5&KutDa~*efTwV%cIVQK4 z3pdnki|0K#z2TRqo^MTY7ZiSPb-{*Dt2{Va(XMkZus1o&nzMF&aJG?aU|ezar#ZKO?v6I_-9!Xc z4fsttq|a{{u@h{!y0t`GpC9aAf9+GbJ-RpLf+|DX(Q7`519l#*hfET!HX#ra^Gcab( z0LDaifmt(C;=vFKZeV7f37RcfQL4b^rXb+AW~70}I}X-wtRTvU!~9Fpr~-Ejad5+m z8EIp-g?N@T!#_EmScnsMU!rFC-{w9n4u>I`6o|P`vi-?!V73z@u~3|n9vrrONPN~y zAqcxpvKId6I!2k)bG=j{K1mUAKJ|(fDmVH#M6Z(kQDGkCuRyP7VL5t zMv;78sQJmtm+bTYqltg_dZ6Qk!~P=%k2V~3(>1>8%3gQcnGFR}-P|c)e`ekEfuRd4 z&~g_7he^MTAkRe#(u|;Q^LMK&nbvjX0bcIB|E;%R*o%?4HIZT~=yJV7#2ls|d(}7` z$qoBsypeH%OHB-i!yqmH&0fQiPLJsb{4T0k=HEEEv#f^7`&+74u`|LceYKOe@r zPWMtOV#gsAE6Jfn&$_EXGy*a^7UnCdGM+&%-kd}`m$RVM_kT*y|nJ3Yp$A=4`{aB#vCm(5G zO+px7X^=re!4UP3P!&Y9{)n7SEE=r&asoYnqy|wxDUd)yUJ$jA(0Pc~NN5xy)c{29 zeFhrH_;Z0n0Z18+{?gzE2?2;cl2BqG8ch3hvu=jOe(w~LgoX_b4n&GVsJ#K4p!ye8 z5WofIe^DlXMjC zKfCU~Y)-OTN{(a%mdkW?+QGM}p;^DVQ&j%FQ&h-1<=0BR9l3)7THT0BEr9KTkl$OF z1yRetH%A3vO3~nR1UJx%VupGOp;}8hK}-}9eMP9yNN#ZZSK5_GPVgxT(P*A!Qb6Gl zB2`o-34#u>B2`#NNr9?Eq}nndoF&7aC}|)T&5Q`p9+GDLR~v9Z|By7eK$b{^a4Z^W z%b9XE@azy5;E5q+#pIy@V>AbFh#^&_5-ka`$S@MZCuCR)A;V#kz%qm;WGE9O4N?x1 zN(qGU-eIJ8!D=+nuHwv!Mf!jc@l~8a^B2_!sl&ghki%Tyb}Z6wM6w!EtG}qZ!(6PG z-$THNHYN*-#d3j=IMR67#7co`GCUP44d&xW%|Z6xI200(Cy{h<(!hrd4dSH#wdddf zK5IpTb8%dN?-Y5-K~`Iw6#8F>59I%dlLEVsY$u(KkW`JA0!>NGlsJf^;-!eH7pZ@x z)xk8zNRqPre?2dL3z<aGeT) zl_VC3cDV}z=M*$V%E{7zn8FHCWHMBaBvcD|=v0Kak}QqJ{T1?qz8#QDkp`zp5(iRb zz~fY;%u0wD(hxKYktqp@rOJR567qrQJ_%h+l?Ie2kX zq9zi`gXk*>Jx`MX_;jQmj*~JVoP_L8N`q@8lnK!y2|b2LDg%+*mM#T+GmsiFzG&c@ z&IvA(sO2$skeAL5#z_>S+y~P+(a_2JWB(#8+DMl|EB$38A$*MtDbPw@B?uXvAq^~u z&^Ay4H!`GH5xeX+MSw`W&yb?PDk5=m*Z+%Jg87h0=^r)&;#86&Eb@kA`(ab+PiyP9 z;Hn~?3q4q;e6&kOOsaE(=5^5M3srq#Wsg^;t<3gxx}ep&Ty2p9jUWa;1SA0)S?&6v)X# z%1S(h1{t}WV30&*mcyeNQmpw%+9xPwMM9W7DUeP=!Flj#&PU3qf{3;NL9-C)laOfs zzc#fZY=u|8G-xFWoX?j6-wTk!MO1w7mzAKs@z^E1^h|Kq)-}^kWf;g)ZZEfsk{RU>^zTTLRJ}T5hrjtk5sEsBn5~h z6a!J?6_T<*GTbbZLaYA05F!5~!vA|ALO!D7^v-jETbG$BAQ^OC8VHnv^VjUNDdIciRU1{0pi3#G!Tp8 z0G~JUVi`A3tY9JWrOG)$Xay_8Y``DlD(OYySHTHHjrJx1tuz4NICi{xB*`k88cOKgWa3h9OCRvoLb2R`l`q^+=rN{8safD zpseBo=9^d>;?zwX5App?+*rj8sII{Bq5PLB?!T=Eq(v}Av6>qkxq_UHd#nGwyj4{| z0c0bt)bIKRvPY_=(73;xCPm2SxFQ84YskwDl6F_1*k8vhB6jAAG;l8^xm3SycF2d( zrtYZv1u1tG zN?4N+a(WpwbAk*K71AsPdPt}mBHC6&7SS$0nz?{MD^inK%fAdkq@&&~P$Q58EQQ%1D;IDP{UzXD5BKzI^fzk82H*N1|z+4vtc&tK$c$MssiHQELp_G(~0%(-j zF9l`!U?(w?hf)Y+JwU^!5~*Ec;OPTahK0IE!Ily=i$;L!j!`)D~|Fu^U zK5{mR_izH|J{Af{+VntM2X_8{Ds-~hKyqy;Vf4OkqUQn)g(?n)ngrQNXUCrdrMl_V z{ImVE`*$GHh*Kln$3ndGgF+aj^g|U}fd+AXJfN$enS>i4rWzpQ&wV`1e`z1M*I))* zKNpA_AZHGR`1U5g0`cl5p6`eIk#q(1oAM%O7axG0?;tt5&j1go9wgUSJira+Ht`tb ziw%+aJcHcKe-AdP9gc%M;KHU57~}$@L-727?RzrF4Y-HNm|=(;IFc|MFdgCoU=t?~ zak2azAw!zS4(>rI=I2P&YydUP4J?cEG2rI}i>7@*q9VL}~7ecWy z5~LWF`P=?ef(2`j%76=Gi6an>kzwx5EF6Qmqj<2=A}f*IIcVFOy@aNIX>EW|w%q;{2#!*QP^!PgKPlA+K99QR3513V_A z(Mo?SIAq+R$Oc(t6hh5cBx#;WX%I_>&XaK5Uy(}AhR}bC1P35IPll|oWWaMWw1zNr zp1j+U;eI8J{^#M@KLH-vVll394iZ~6e?7tM+P zt%4Eu@SHfnzhkC=ka=DlOfHee7)ddi7X!hw+yA$!{Ox3+z^jnlCGci`5)PZ^CqZ@< zWS9J*Eb+>luF|HmBra7@b0f|_UYQ(O4}8Z;d|yW)LAzS_OI$nijs*6*TrVl8r za#JDg&FT{d&sUJJ%*F>{VDjOAht2V-q_8=Ndf$gq{ZG^!PjXNG93541)Euuut}A4N z6g7thkfP@AKEUmRh4l$hsQ%BVV#I0`iV+<9I0gs9^OF$zUk5uZ4IbHWd)D@K)k;8U(52l;m^(Q^{8WcWtuzlF<*4=z$O61U%^pryjX`*xzB8I>e~>*1;C z+wZmZzPglNKO(eRB%qyTA~teQPNAKrTacH*C-vsJbNW{$EJ8NoE1eBS4pzm|=*UH- z$_%X;B<1&ujs944f3QIqZ;SoGRmRJnrs&Y^M;P_l2MkkFd|F3_^9j`ak7s-bI-|<6 z6eMnLj1#QHy)tKV@1kG%adHX~378#UE7m?ydY(_JUFb=C;*+n-R$=lQuw<)NurF)Qt5XjC)x>(f`^k%P*$pqLGi;0qk_MS2 zCDRVG_B596UkN;UVFQ}+<~Qf8s9s!uw{TE9#*Y1ypG?>NPXcBv0Ytm$Tne!}99A`3WIcqkwWUwpj5RII9RmG}peW~~x-W{`yOUui0h4}s6)M{RPrlV zEi?f;q&&lvm`oQ&Lhgu)bJ__k$Wb`1edM`Udm~AJj!kP(rupK;z{`_0dFMN=JH6Jr6?(b*FWzVq5{WeYQN!PlHZjMo8)Gom1!Y`suj~nr;~DGu zTsbV1>Hloo_JrL2EnH`4t|joOBpkQk>=2Vb9?56+IQ1IcPyL64iH)z6I&Nw*XLnqr zjVL_fQUFX|e1s5qQwnU4gGbcsfr@fx= zI_cXib3n&^Rg{nu_8~&9I*QLvF~*F+D4(mu_4pcL==RZ8&+is){@>(hqQ^tFvF9vT z6TYQfS0J9;NM_!f=ULDbb@}IAZmQ}08|e9v%wFyf;W@{p-wAP{>u&8+e7N>#ef!r3 z=b}Zm_A(6@nuq&uNvlw%{7f*rJ`zy4^P&9AQ;!|TzGv$ia7mtsjaAe$S`E2(?%hQt zC%F+>x4^36hV=79x4kc#=uR}NQe57uyY;a{DWO!yuPn{{fe?*$+HB-q^)>AuCq`}r zO{YkRmZxpq)t{_BC!nlqx>OUqaG;v^AWF<2;OPmgiE|gW-!ou~JIKNJu6en1&DF*6 z(9@fFX{`c@q3ycY@Ok%+hK+n29F(Ve{I+7F-eN5M$>;}@TlcOlJx|J7bD?@{uzG~) zf@#PA4S_+E!S5PX({9epFgmW$!7YyaHRpRWOmDA7L}k;p7{5Bua7OL2a2msr@Ey1F zCM8^G@1Hx}za^Q5FO`3&mL<)s@(tbkbQ*uSd4;O>W50d-r;PEGEQ~S(KHQ<>cW1R? z=dAbeta(PKd!B0Gr8(00KJAJC|C0Nx?xfbfQ%g~igpTv^d3vu)!QEr$+ei2Ms_{L$o9F3$`^;T4uao#%nQaRF z(Yaqal5^h^j$gR*Qre!EXJhjG(ga<@s~g6GxXSFMC#QvzOP+pLRr15OAA7o6>CT9JEC0bv6A^!u zP!A(}#lp_EBU_FeTo?>)J#~ywq*N-mc=pqw!JI&>iJ1ste+Jvl99pF-Tw2Rnt7-EW z5A!jkcPPa-t#O&%uoa)OE)QKoH?>vY*l;fQ`Fy2eMUkm~eb@eKH^qh@9S(dm!(DR{ zsRjjXU#9D)!oC~L9w?AuE(_m#FI01?@fBxzSUZiG^nlOe_chku5vfOSzNFk>% z)9^+3yk-06;fmKM56xUTY3u2-MyoKjrT?aT?Bn+t))fU*_5vOgqskZ7Y~y+CbZ9{TI+T{ z*>*d8B}lL0UUA#f#5$+oyWnu-qmuB5gT9_YTZykOQS*|n@_zqL}zGuq1=g&C{SYXNr@1+wGl>)phWRPLin5?Dv8KUg)%3$Q=;gI+9=ck z;uVDaib9zYBd8%dO@T5Y($kO;9Z`l7Wl9udgQ<5YQ8vUDHb}Zrq3nqE?2z}J3Kd6O zV28YRYDmU&K;%G!GDDM|Dg0*W!B>Syw1PN5gCZN>L^@g&jII-TX;EUt>`Dq|N+?3K zr$xySTUt;|Bq|G1e>3J^&Ppn{1@3NUqA02M;4!a!c3AY7`MScvR}VB6G0P%J1c zc=bt$P5JM4CMsAA@s$utikKsSBKfNbW2Z1=9D=zhAmJ*Ek|y2|LBU%<3^7L-CHZ%( z8OhO)2%WE>V4_4QW)alCVuT3a0^$D^Rzvt{BB*~y^^t@wn1KR*c!hFiCo1@&s4f3l zZvQ*B`o{|W<0|owB~H41BrR8N75HfRKlcoqpJHKDad_lYEMk`^ijVL{R+_>f+dH!M z^_*~^!aKsm`-j;FMy^i@g!PH{yq=5x(!{jWg!^=jVf3dp>E_GvgwOMjLXMu&WurNw zpq77%&d=Bw&wBhqLe{eppNOSLKrK%s4FB`s=dS#ToPcMzG_G^)=IGY=wYp+@=Y0PZ z=Sg**d+*ew`e(6b3}HrF2!dzYi-j%49r*PUDa>~~vPwEyFKJ1aEg{0XlWwc3^4Yy> z(KeIpDtr2|6@JrTi+7G%_d-OTnD6PcRFoP%{FsqoOvULEen$52vI8iiqw>$bt-LL> zT9(r)I--RuskNXty>^+E;CU+cxsAv@+thm+g>IuItM4xI*}W3=PHG`kVeYKF_FjJJ z70#%`!WgrkvG0<5ipZBk6f>aON%VMUkC71bDFL&p!ywg4kTLbrx4vWf`bXb)QjRk*cYgRezi?q# zZMN)V{KeMu@my){-(65lmV_OA3E-|2pGHzgSf)Dq(3rM>(2V!2Ou}idchjqj7egxE z3zj>2O}I*=sPi#KHCLXR_hB5FTT54WuuKpi3e5b%j-sMBWjw_B?$VjeI|kZ$KEOg> z(g+*PT&Ho|VQHv9wh+q&zZmp+A(y9`svI-7%1=zHj5sS4WUH_#wBh9*tMf zEF?U}RROW{s}X0QDDo*#Nu z6dNm*TPSkqwd$Q+ZV|GS!?)Mo`1&(O(e25l{mITLP4+x|s!x5CpHkGX&J-s)4*H^p z{kl6SniamvU2pBIxUAjklk7G2S}yW--2i3JF^lqhX3ko1Cd~KlcvgHfS&Cv)2$RRM zcFd!07N6B^PiCsET~c}Nq)O1{>%L;RC6?*uZJy=kp=h?t#gz=ZpEo5$y_=cY9{sodzrxG=dMuq&>1o$dOOVv$-m1v%DDmRv`MNNr^@WAUr7BvP<8b zQ7eg`?&p2MtY&Ghdq?g_EEP%_5EMS2XQE-6p)xu=x8)^eHx2Rl$&027<9btxmdrD^ zG|MuruiG3Jd4C9F72E2RFrQG<>ckZ~`}AA;$KxG4^}pJ)yF56&*o4s+8{B)aGWPbu z^(UHN48+qF;-9FC6|J@FeaWTVO<4C*Gr4~}_DY`n>K@+47}l9{a~1wJV?4(=rS&M6 z2Yq>lyYI4cl(v|g^9GrZWV2*gNo0@D4PbAC+t*#}mg&4|;lR6-sP^sXM~rjtuw%HA zg@9V~UOi&__~nkv6^~T7Of;$X6y3d`VC{FyPXxPeX*nx-u=8lb2b16=ao_6%g-dzX zsZaERsAlsxeZ3w`d9^-ZxaJp-WgnI+S52RAF(=r(ie~Y+1NzCkXkWUEV6U8oRb@Ee zR}&+`IsZG^m+_Qc_ZgnuP;xqBQob!k5K-gB~IRvy#9V`K-v7( zF>#;V4QVCzOiP?Vs*L1;#YsW7al+btOvR%n8%Oriu0a32&%9W_xGTK&*(GUlI?^tB z#Dvv1cZNl_Ppx)WZAp!+`o(EJTQ+@@b9?p?6pjwtql=taLj93%xtmAqcY}n%%bUM%W#eb>u}F4NkeI}y~C{EP1Kc@A8*f4eSIJz zbfvxDyf!sSAVSe4KX|yl+nW>ZcGzIVv$4oP;=N^6i)hu>2RS%jw{>*ZbZ^|&{*ZuB z>Gs5|cAV^&p}JBY+~YDs|DK_|(H{hShhIk4S?`7UeeKs5JE{!5luLx1BNNV>%UnOF zvrwj%y->B}s5UNInR!}$Z^^)y;4P?!@>kYu&2uGo3iuCqHzhsK7PE9>MDVtJ# zR2I`#Z?$d7;iQOV*{z%Xcd;6C(aBNX6-Twgn@fu7k4fz7tXho>A_hNnp%;GWOE9uA zxbfKjlpwA{5`E8)0=*u!G#B-D&NS!_Zam$|*72qH%77R%=XKe4F5f&(6n?kqMH6}K z6PoVr&0VYwn7@&ZGda5_rtu;+u~xBm9hcsZs%P4Gh?iTQ07uGLvSEXqB4s7vXOj%|7l$+k>B95sQmLh z=pVEHR+B6W1!LpzJ0#>$k_zcNaO9V4Q6it-koly*^B-S(!H+y&?V&IuvMWG?tU?iG zK`d8*=9Rht#!PLDfNE6f{ zdanX`nHn(lm?}h;nh>$8L9|;7Iv!WmP+G(V1Zk_I_7Tf>LA0)p0>o3=D0|{-4cJ~Y z9f*oGQMZVWy0E+wEm-orE-dAx25h9(E+|r}2TAQ~C@SLTU8r1Qtv)12HDHIQv|*u! z2GIB_Fn=K&QahJBVNlsEGHiP))=Q zgzUA34a%~I1*F)(l0_UK@2o8xk_iXM6S0F0pLK-jrXBnf=LG+l+9Olu3|l&iAidoX z1v|iIJl_o~mvTfk6VJJjQ|XE7PH@hPU136(6Rb$Z4Hkdg8CJCF28%kq8)cTg2g-`M zz~-IZ0~4oQV50S2aw0wPvnzB$Ts)x2F*hi(Q7k zO{i#yE5Q_M#CC7gTjEe9V&5x~p0Yzv;;&a*FoC$_gObT|<{;VX7XLqN_20j%_~Sj` zzuZi+XPKLfV%)ZAp<}Ul4A7~OB8;7WiDxA|+51Y%fyS%mYw=Y!)QbhBWDciMz3roV zXc?c}{R>_uH6qJ?VYfHd{Z!7%bPogvJz@2d2_3O#DmKFc|ZPj~6 zn^Rv4d74Oc-1{DU=bV=(o1D<&-4frtTHJrk&%E^e7QEj7h?jl4NrP7(XZr(YLd)UR zyp;PtSW7#K-mDRR{P=k27GdK(Q7Q92We+o>eVEa=A*MK5_3kO-NX0Ipi9H`!w5C&e zR$eh`Nhcn?capt4m+H>h38OjglLid>#f<}X)18AW=5o7dlc#YTGqv2$cJFbN7?s=2 z*7N>nnf{yM6gPP%jTK8;_tF!si?@>qdem&eDUI8E?_fPl*eo&>@EWJlVn1g4KHOr8 zX==Md#D4f>`)xe9J3fbgVlA{;_n!F0<#!XAE1>o1A;BN|oDuF4e(zKON}Iv+!L zlJL$U-gOq=qG6#E*Q2F1p&CBGlsk2&O#R)*de;-J%j+*^`j6iW`>{4TTPJo>{#ir` z^#hJir+z*W1uQbn;l)Rfd!%0SVPs$W*l56gmGMDl&UAu)QQ4=-qZsz<&MRei_#?Hbeeb4g=#-H0k!z>I zoqIq5O)X>ID$wJ0d4T^Ymfy2NK1Kf0*WD)UJog-RuibUh|MoDje|EyM@c`55hYBlu z2y#vdKgN$GVHjInCUnyB16`lx4COap>HnU2B=2}q(P#Lf;@9l5{A0l@cCRm6oEN2B zIC|@ZN;2aC{@12-F4}G0Eobz%-DWh)7hk-jSCv3*E9*#EYk91t=ElPvM^9+XojUa4 zwbsYMhOF$D8fLDxTYIk^3fnHiW{$C+*L)YgLdd2EHc!?DW@WEGdWeg~jm*D0Q&X;! zN&noyd_Ju3X3UAEjt5msq3@zPJD&0$Xvor;YS~S3*Fh%bg})8CX=~ zseI7<_wE}xmak^%$!P4n@vz$25dFcSj55hdPbl{*#SYu=b7@tU-Swh*w9Ph`x6AS# z8@yjcSeYAmJ@a_v_^HN>Az7&lCd{8xKz4Ruf5*ViLr#OQ`A+z%7mZ^2S+}Q4vVMKT z{3grbx_(9XF^cl|iHcZBE`d_p_)jk9bc9kQ75Ny0JG+g!Gq-nlYCZX^sKjy%c)KXS zI1;kJw-`{$z8Jr-=5?r2HY{?V_{+DJ=X|_6y(tMbQ$;tIB~zdHVCPsAihM=XZc>cq zEWJ~#y6{TD^QEqSvJKsH0~b15_uj3jy_1t@wiqVSfWV;s^Ey3w!gu15>ZWM`2m~wgQ;oHyM z?;E0YWPHT*y+*c@<^)UX@O0V8yEWnMHk)Pa`XJbwI;U(ki}D%0=E6Q&YJT0hp2>-z zB>#p`PK7<6Ta@!m!mwz%4`=jj^GB|WnRUL8p$~N}kzhF&$QJ0G&@a)*A8_D=5hrf| z6~BU3%noH2TCStk*oxje@|1Hb&nmj9avIY2SDvmTj8_*fGGxz(Z!37@VA9RT?_fe( z#+-JEE9~GpMo+)sPJDVxoyj>;?yCviDGf^~e%9Xb2uJuHY3|zZ+|IV(m*?%wP;O!n z*gU#YbmqNCS`AWtc+9BagK;+^CXs!Pnb%^%%tk+9o}@*q!=8*w##wn zdD*=9dG7Ff7z1y<(fjr{E0jT}>Zr0S_A0R5*R5&K8s%!$d*0S}?q$li@9`M%VAl4_ zE(QE9lb_K71oJ`152~ZAAa`XITVbw+kci1KVF!bbPV#v zG|-yU78`C8yBijdsP(-H;E zUKOFA4B5AG=xI#uFm}dlq{dTl475uZZ;P9mdRO=H#yo+x($GYM)@a2yp|SqV*YHSg0WAxQkxsdStrn+!U%o+o@@KbSsaEnUSbv)kT<}@edix4B z%M0RhBaz8lgo#ET^LZJCnSD2Z-XBc9GWU`8Z5Ph&Bdx{SwfkJLMoq!N0g5}M9vx=8 zx0k~pEYHDp-KH_G-}?IVikx!{12Lv6;-44^gu&8`jH_I4p9&eHcAP4?q_6PeL+AH< z1XPG=w%&j7ev}dGigaf{+@6f0M=n3uRFpTbIR5j$9YHV2hf@6CUJy|>43#BBdLjmW zA0_1B74l1tx~q`B3_)n<@PwguzzY(-NYq|p)In4Lu`v>wl2YN&(zS|$&O~Q8G-&%$ zpjQ-f5Js-;BVgnjejI5^9FKsOrF}F+!3UwI5E}^-m}4MG9R-cll^E!BT#SOw$=YEk zCw&N&P0Waeh$PGw4GRs5gJe-Ov_&@%IgAe z6sGRD3VEc?uq2>%p_GVW3$Xh0(I^_?#RSxTqW+0y^n*#k#C8AIoye_&x#vW-X z_)+6uZzhpqi_&1^e>4S!MsHg0&bwXUZHoX_RY6XLctHfkMxl(na{j-C<9|2g|A@K& z5sm-jT8aE0K9FtvxZK}td^~(pjr@mbk9gcqkKTMg*5<|kWsAI3iHK>fU3-Qnr(_mh zd+8A)Lt*xzDlexOrY{Pvwzc941Xr)SotLL~X)BO8s5pTu$ZZLTY)f+_#In5qxR%d3 zybKOFr07bwG&Z>U?mO3QtRHr>aim78x^35XC*E_03!eS~VZ%#b7SEXuGew45xe_9+ zo|O7dRxYa9ZNFM`q~%+ac+_0X`W|sKqrFg?glo`Qwi7;b9KhY9yvMHY%LKk|M#tT%@L^qF^G=%0)YSt@l(&Y&lo6a3wHFx}j#5VJ3D53;hx8+ez-K3PT?aztr#8N zAV?NAW<|yt`HN~Usr4_<-mUDMqewYfWl;%MnarvkM)J4RyuQfC^ZIty+;_}tPh2H4 zPmHyrT1Ea99nY{9=~$NwPLm(A6K|HjAQn=FTeqW%qd8Q6Mw$6r_)?i1uJb&G+~ zXJhtNqn-KiS_izQ3V$9CQ`6DiSAR-4N4bS!IRky=z$o_61*YOxfiW`raW^tq^w+E$ zt0V&)4AIFq=2*V$u!|oY>?&q5KCNm*e_8d;I@_r&=MtG*eRfY}j*Ru>@o@yz5lX@r zgb3XC?>&xK^@yixTYf=_VsIb%l(5u}I#xDDPggt^o<=d->R5>Lu0??`!9{oo?r_sE_~Q_ zc$KLA?t$(FCTuTnYn04SCn~LJu?z#p*Ng?#iIy>^311C+#8*;TV_a0eGNIB<;q`|8 zmus2PNfM6*6g2qu=J4xMBtGry`ZmO8QMX9n97ORcQmQs$E5VYNQfXLtG5lh~gRBVq zDOCb{RL^Yhky$1xCiDF^K4HNPM>WpWOrG|!N)q8sF3Hf(dviwF@PV@VUdvYk*L`%m zy^16^*gNRTg<3-C2w!r~*!ko>xahBTV$avR&0>`2AGD&-j~&YGr4F8ZjO%r(TB!+^ zlM0n}mr>4AtK<4ewObhIaKvobmcWgOSsH-SV_%<2o^1;(LX-r5in0r*9`w69w z%09a-^8LkHJWgFVgK5GV0)O1gqB?Ri#nj&A)EHB%=0K;MbEv+qpLfCcD(r<_%|olt zk2`l=6XA6kn)KxRJ^!j@P2PaE^92ko6aSZnvPoPgX*zmpT^xD2&Cl}6x`^akvt3dth-3HPH6tc@+pf>>X?Xc5 zP={4btetqd7EWk?ZvF7y`13vYv@39jqO2LHs`s2T`*tlMpO@A4!J*81S`kd*sVVhW z*{W_<{vXo5JRa&UYP^}T@4IXf+1FtVqq4L}2%$(3vQ>6T5>t|j5{Yk8BrUS0EJaGn zlFFK73&~a?rN#c9@670lr|0u~-_Oq<{cTG+}p>elp`pZws$}W;(GdqS)HP6}X)`;jZ5<9JAe2DF5ikp!2aOb3CdFDvxBWP5%H_w`@oAOu%>bYFVnOo{!rn*k_kk4WsGvY+frYi__lY4T)N2(oy%)J@3S-0 zjkG(W)!@HRX&E!qsb>rh7m6iZc8nK~%GyMiYG@l6vFvpx9-BM)@sjV8m3w@`_p~_$ zeYsttGTmz>9iF~QzF%AY$u;{2*Bo-Yr`peQ?8`3U;0?sRoLy(QEIs(#>``G&rIqAK zoX2{fj^;ZOgxNT;A33Lan$%xKspVA;-`(viY<>9k)h37Ir#{-h8o7B;lk2k8(cZ*a zcJ703&)nC|KXCn5Ubm)jmw(_R^eOt0FA4Mv&RU*2Lqs3)683|=WIm#DSZ zd)!vZxc=z7u7|%=d+!t+{mbrZk*2bBuy6diMjip}f9slQ({#-&|8>nIp-nZn0sm>7r^lNN7_uk+ zwZV*@IvAYOCV>$-KL(5-(sdlO9HULS1`;KK%{S1PTc8FbG%8w9@;|6o^Fxx5XbcDP zXbVPHjG(3kHt#@cr|~DKg9Sd2$p1+3B@(tsjm}sTF#-YD!~SrASQ8R!fyKl>h?VIv zs)(;313mKM1cno7y#kvmusWwFtfi&`*6kz+VA)O!Y7f?$R8SK+zzTV+iWQ>N0y$;@ zd#Q(!7$)A|bR;k+2-kGK=_sYyc?Q_d2E$&>{3M2vmjGr1wLy1VorD@A1Y)8lqOVS4 z3h&?I#4yGpU{6m)8@411#2VT}6}UzChnT{-GzlI)ku;FTGOQ%>JPN~YMb!+EP^E2# zP|Jf_V7$XS(9?6#qcg%11t#r36Kbogfa(e~6dqo;;gPgU(4IqgDsrtwg3wEj~V`+&+J*qw>E#}YN+W+$H z)F0NK(3a)G@zLS6U|WdVyIl_ZG{TqJu#GG3?Q8v|XclfEEyu@vNZ;2-IrHw0F)xW^ z&%W!`r@wY5jcbQIcQ_ox7pw3Z(Oz+GFr;eFw;_f1jm3g%&g`~#IPzm%vXRHlg1E+h z6=T;6EOqyd(_eT^sMjSq?>&S+HC$aeM99itW#+d8tt9?Wofkgsp8^Os^j z-_vMkEOT}x3ldUl_rkiWtoum&kkhEgi;w(+cP}r?2`C!Qx|Zw1bVqfU1iopV`b6uf z#}TvjZQdhRGh6nQ@@$?7*?VsG{sSg*V9VP$XOlhdoXYPXSDHIo9_TY~E(mSxP~MW4 z6=r@|WNo8}QqBDfS0A^AlsR7dPCj){AiRI`x{LfnIfsnf<-MH=MuUgL6TQ}o3O8)t z%yHh6S=d_N(;8z?Nz4v@;O8o-RnaX~e1W++SiN@E#b7j|e=kw;PK%xUnmKh}y>ANY zC4JjAC`I3~dz~xY(4&MmX^BXxAna-Q3OA}yd)mzXJbBZzyzADi!t34!1pC6Y>jHdS*W^4nf7U3ur84@1X= zL^oY)r%v`QLf5){cAQpvB+S9}O-14$Vf)!nrBC{F))@+J-_o;reH$^f_09e}#ryD@ zdCcE!CqjG^c!FmFJ5J7?lr$=0Ru^k0d-Y54H^14xyh)&I5ce+P=udK`W#{qIU-CzC ze;&LoXY`cE&);B&U{A<~t#3bP&A`Uj*AEt$(KlPxOZA$O zw>4j0Cq_OZ`PtjUvf)lnXI?R8*)nkfweuB<+*%xM`-1IO-tMhN%1*GEvGo~V4o75< z$mbb-JWAJzHFJ?D-8Qgwl?lJK>~kLe3Emfz*PoQ~W(RS8#dSnQbaSv;y9@mq9T#Q_ zd(85RN5fZI(2Bo&pYuvzjhm)K=24aV6$0e`_bX%76I2epHzQrSkV~%+yY=f!o-u@_ zw({CJ(?oN+V2cN}acklsa9$ook}dyraZ4CAf;D`>qLcZXedCYp6OO(-7G|_3~Y- zJ^eNex5jbe2|P2~GT+a3s+bGxzM|Ib>@8vU!VR5zDpIOp~UE;0pc4TwI939=1Frzev% z3HL(%2_ZL+$S_o1*Hgc}`t#m|2qgXEN1}|O@uThvrLTrW-JxnRR{A#mP0HUxmABP3 zDebflQaEUFM6&H#jKwyqluA_#*-QqDWmc~uv`vJXO0-4yuL<3DKH`XlaP8i~nq=e3 z>a^8GxEzEZKK(WdG+MWVNZQBNN*WdG)A&ua=keCgtEx zBu)6sC(#`@T22bZkGRXe#=bdoiA6Xdaud#4bp<(uUJ3! z_*sm@`{$K?p`WI1USSUM7HHbz#=k}6;^Tm2JBHM*lJw06uTJNDb@5Kv)Hto0e``DG zM;D{f$=t9XWT)xa;ZKjpqCY%2bkdjn!|~xs+!Lk#+s;$3*Uvq$#jcQJ_O&>E_pQ+F z3!A?+UZ9)II4_}>5V0vSBE;*6&+^*fVyg+O*cUY#j_f%x7u%ELlK2gUmHBrWAAa(KjjIwu8Q_ zM`mZ)w|n+Q#x&e?$Bc(>Pq%Qrx$TvcrR=mu*2AM`HsJM- z%h6+}#*by~7u@}>=y-XT= zHN1MYdK#RHWOZ{fkyS7JlG`joZ_nfFbal4r@s5*g4PHB~ulHE1eCTOovV)nM?a-^S zH7S$s5dsrI2gY`n@WdZ{{^9G{_^w}UjptsR%oOTugd?a)n)Y#$ZXIjn|)=69M9iM+juVZ(x1XfT7xPoln3 z|I>;C$cv~IhgA#m;y>!1B#JSlKTdf`NUSh!6~X`_0*(a66*<{J92vZaVV8!3VhEsq zzfq9{j5?~QgJ7je1VK)dM3qYr?*fdF*ng60f+6Dg{3u>BX{ni%zq2N2sDORne~CP# zrN*@Wo*HCOcu@V9)C7c7gkk;fVuB%T_4p^3c=wW)T5kM%Mj(xAYy|#Z-RFG_yh=Y_c83dmNxc3bYKt}d^aqW7fBjR z-oh^`)$i0G{^RioCKStyB$Z&;h5s`f4Funf6_6(_H9_`wwqWm*E0kZ6v{Y#QJ2f8c zKqF45%=+>nhGWIjGH8G$asu2*{m~@DkN?sn|IqzMlTZ{o{;T1Cr~ao&WMQMS=yGIH z@qZ_vHVqP4hT#$XvnziSP+J3;1OlPI68vren2cca##Y#Xc0)q*3qlj87hP*C60{d- z%cx0^KsN_8-`clSk}2{5xv6Lx0++B?!t1xDQ4?DX(*lxA#%l z;qy@b+pB~568>^dTd)et&g5jy{+ih3E95I-$zyM(5NyFsC)~C6R;l?rd_j}HgeWVQnO*Ns z?JCS!w#`Rto@cN|rPmiHB=D{m+#JpWX8azK*(MDwgo845yE5K4NE>rS8cnFgaS2EG zuX^(Bfz@PTk8M`V!5vzq18Ui(k}}S`t#6~V7=>*k5?(P{#+RSIw@lC~V$WR5v5wEI zXYH49TX75{#!}{um%|mXEg#Z)`9I2U9J4uQGx7NQh0QuRcI*dDH#X_pqWQQFmVp?9 z@G)}h%9G3u%P`+lp0353PrQ-4#Cj&ZJL1OI6a4Calh1E;<=mC#cc-?_WjtlY=7$8?h|hXr6rk5RjN~h z3Z_;PcCnH9>5)XE3$Y*4OiDAYe~kCzo(7zIv~33=INzpvTT17yZr&D{#@$blb!RIts=;h87jQ^VW48)cS> zY`Xoq>EP&rSSPua4t>3j*N-)Gv<&hJf55XJzJHW&&-RZ&$12ITnz*!2%f2vUZA&ou zUoE22byRbUGxyf3%#Kz&ntrVLWuA6@Meh3Ml~1oQU)<;=(O#3`*^gyPGr)u}vpvs$ zSf3J67#n8#FvpsmxrawCAnA_cr>fBjTLt|-kI%#~yplw(@Cet_(|%jK)$a^Nf11G( zW=&cP-udrK>d4+}P2P6Zu~qVvnp(5eq5j9*opWYO;@|NYHif6)ZvHbMHdZi4p((+{UE<6A?)IbXX?x^ z_TF~Gd~n3RhrN8DPPZ-Lljz%o+|SR;xYd$a>OBL?*>R;SCGKaPV_esGOYN|4*a2o9 zzvm}SY=z!->ewBhbdL|H`#|TxbKo@hda<|8vo-fQ`m^=bU8T{h76UUT80$dgPWd&W#p#<^aC%IiUV1`o!=-@EVt*%?CA5GAx-c6Z_}^L+=nGSsN7o<7-RbHXwz~0R)j4wcgm`Ar zh{%kCd5=hZ@AB_lbNdS06}M#U&sva8#{Mv;@Kv; zwpThb^Q-Ib=AR5Z+a6$g@#5_-ecx({Z5P>Zre7?rb$-JW{U&(!#UtCom(}TAkGwxi zz1U!OepB%_X3>2<2GMWZvb?+l8fq_+gH3n7&JBCB8xMrx}QMK z=Z~CeUa$D&T(17!FpUOxpNqEyR`6spJPXPE^`k>2K4eRP;(N@N99E;DJ`KkZIiqLe zpZh-dygApioDIXvkX*V`^L^ZSUdZt)&)>V&tWA_4>R35e3zXc^6W&#}#;=6t<)@^Q+L!{L`@Eb231 zV@K^s<6EWEtgv~^!GkI|ukAGfaa_pxYoF?_rG#KAT8CAsEo z-vr6hBIa?u6;^wDXG8;h8n3)O<{*}OylBOfwVbXBR*ds)6K{(WVOPvGWPbHrL;6pX z47GVa4MzIWJEJ-8w4Q#6ky`$-wXp2<@shdM_limjo9^8W-agc3wcEA0SRw0k;Ao0& zP}9H#XR}^^r{c!#HFF_xylqKOMb@hA5$;beY~NI{dm^{`lE)>5plZe1VD&(`)Muv} zz55DwwFmW<^;V6%}J?Kx>Mi641c=Ymv33O>$|zp8L9R{`r*xGc59}!hVkt; zk;a=KF~(Wb6g5ax7dwkKL?o)oCGx_K=(m10oP^U($Y~CENHhmLBsJ;@IZ2KBY>7nm z_9H=3qbduNX#NC9G=Bmlsy_jUr}86##~k#8okaCg0RMp>Rs!A%-NNi6fa4fSq$b5y zk_3tNMv6pxBZaz5LF4~C_ti#x_hLfELJ!ns8VRPE){rizd9C0i1}WkuU;C zPX>k`s|_ZHj>8c*P&4t7K(vSRfAIUKLIlHLTHx9Sk33Pu3L=xRd&8)qO3cQHeIbw% z7icM)y+27~3o(2MHyyk=@`4il<_V|msI~t;cz*GLEyVt0FdC$5%8qc|#^~^B6MzVP zg-9?b*4n20(Ud0 z&H;rgI|r^b{CuDnICKAC1ZVBq1Pv<5LUw+8vBs#52@^Z&Zb=gab`9|0LqwE_7;yxM z=n#uCj5N}q#=wBwip8=cqF10wUdJ(d0&o$b4c9nC=mH`PA`Nh_L(nE7TeYB^=khRa z$WHXG1HF_GfSUyp+-(rm(N=)F4ow&app@!f7RoLMY;+UxaA`pG;zOm5xecxQ?k!nP*Nh?%VF4} zLlKe4goka={!G6q7X|^960;V&9QmS!m8A}YyC}IuHik(6bq7V^ywLxDaHb5%%~?Q- zmVpEOK@q{70&OrNj^L$@nmK(oEpzq-63Qf?Qc$W5R<=x#vBE!?P=`O2gp!YP4lN&c zxPJmwQMfA7R8hktWjYv9q_7CH26>u8YYjfQOu~Z|es#!B3vR|ViQsyQIxi`?ZOetp zR$q)^;M7E08s5i&3q81YA|ZKeq0AH-RNG&SsI5YRRSeu#f%haW2@MT(XbZr>4HY=4 zK)orU<0gNF2HKb~4;KjGdJkMF0lt{f4bgstVUN#I(iOo&(ZC}X*wBXA0J>}Hc(}BK z1rbsqv7e#C7DlobY6!qo7|2LqgyA>%QfR=X zmnN*V|IPqXzzDVEUEocCA*u#ybiXP8Rl}#uy%xhR`XBjAXu{QN{IM)v89X}a{@;a=SOxu*SdQVOoPYf-ZvwOo z0X_c$H(pB(iY{&fnAz&E91zf@NfSOXXkkm9Vz@*Xlc9ddU{PK~HU(rNi^$Z~!A%;B ztv{LRJX=bI*Md(R`f?LyI0;70JS_jg&oJCev!qeMfQ9crtz`er3?`=<0U7@S-?S;9 z`VVF>LDgX8g=+F4t1B^_i_8DJWZ*ImuR&#Yxbi=lfxkGIPE=;4z)W~iWBg_Ya}ms$ zyuvOEm<;gN1j+H5jhN?Y2MztA-kpT3a6= zTHGQFMBoq)kIq3Py9UGa_sVF%(YK}sr83CKf93|?RXo^vMB7&B`O;om$PJx!AYV{s z+kT+>Yr#>!iC}|>!YcE>SmCwdlb}IkH4IdLtsWkAwHLp2A1@+P3kQ{dYkKhI2TO+2 zV_qe^+ET+pf2D`zjX*@=*kN3&%wpL8wHDFpibtI`Qjejrq<@}(lmB`Oy6CL)zmz-| z9hEMADE_DV=OW(_e^?y_*W9WW{z&IhtOORu1?m^DxVsiZqz7ZCaQm_xuePB2{f{~X zUXA7&!r|cS$TDW zwnh0{$V#pY6Nr%802=JVTtU{hLu~y!OeHdnLfzeV$~>?}63jE`a3vFjdI$cTg~c50H0!H-!EA0Cbi;pr64x0EOl1rLt#4UJZbLv&4JI z*LDyzn7dGjQf=WOXtvQlNLx1qDY8F6iW9@|^ROR&L_UIA`r!de9eok@K?o}S1S;6o zgOK3hXK2dfLl6d~Wkk3}paEA8FEFkj0mT$2keaEnPNSfcQuuKJ9Uletk%)2lm^PGQ zrI6S$fKYR|NL4t7gAoJ)7*QmoeGH>SG3@$>EJ2A7`T{x^Pa!$Hli7j7*sl~g35C~D z;WiWwr@}(x0DoY|a)Zwc#C9B`j7VpIwJ$V}i)fU@Z5q~!VmE1o0$(vod`q=CDEV)v z#4K5WDKUv(G0IeXV83VZqT7l^2A2MOBeZDN{`Z5SKUaXobDQESjxw|Un8An}JC>su z{41PeMC93F)8)_uLs!oi$0eXfafh|Yx&vNK3u%nR%5g3D8C)>#fIOMTL|M?b>QGPW zUL64H$p8S<tk7Y&-=&)-MK_=i*ONZTr7pU?Y*=Mwq?<<4ipO&!?OKuNdaC6`3&8Q8k7D%E(eQN zfW>RWKNB4sJS`Fe{`<1Z%NTwP`g=WCI?cK4n--+EFM- z1-k`7)B%EIrii5mK){(1$x+1`AfHi`!rnj)s&$+IB;VDbxN9}3DVUH%Ja!}UT@&(^ zR)>;C69J+$*nm1TtgjZJS2VB|h>A9~XiSJ60gCoX8(2Yu(Ic-3*u6*?3HU*SF(I*< zSQkV`2T*7=6XX{PQ5vj`2o3gbHLSx=wXpk;q%{z6NE>?q(O3(R771EobS)!1a@l^$fNum(Esv_3%nYoO*E4FC#T3t=C&LJDnNSTjQ`0jkx7 z-siMJx#$7smsY@KxjwXHv^7AlQOI~3#Ksvwn|@jkJ2{FFp|uWHOA=zT4we+YEG#z; z+`S`_>)-_S#5{(RGAq%LXX~(vd=xvFe=eqI3~oIvjJE@5D<2xN4np`SHZqse9$OD9 zpI9JmwxhJ=5c01D3yqjxk6jDpTDt*O1J(7g8h}HVoz#!w|N1rY;&~1yJk(F9s^MQ` z0QC8TB3KB;AHwk!i)_S-vY3&4b4;{pJ^UnPVd{suX96mJ)b4 z2%`uW0MI`A>NHbN5JLOJ!+{xcek+VHmXp+_ffHfa4qc{d2|fK}J9HU9Oh}z24DV1I zK<%v1d2S1_g4QrzexlGD6e`>SP{KCo-vf34ZQYLbqkKErY@qYUb^^~D8-bLWe#F)hP@P>c@IE^N$;2)o zzU>6iJ$oS5bp}r5sjy7=I{--&yv|3Ic0+{Q9)N~WXlf5gDcO!#eI(ii2J(tMz**l3 zrjn>D%FhWVc&jUr#5zMo_q#!EVtZg9&!A8~3Y~L@SW_2ZVCn%WT3xVU2nmHeT%pRa zb1|V7SHTU|H|2dm{MZe<1{vH3xjozqO=#f`2i&3ifghzs-@C&Kq2sxLrg*@5^y)W? z2iNpSlovIv4`S#I5T!N9`(V1h^M?9rpsc_FG)%tz(83J9fS&S%3Hj6)VuidQEYuIe zD9PS=K~;(VKz!aCYeG9nN928=Vge#C8_Q7}tdD#k^%O6Noan6uveg&s2b7dM2@XG~ zBz`BPf9?khJH=K~xIaL~L68|`0n-hDe!?As9KQ!ZMA;!A&OHE7P%uF5fdGN4VpC-0 zL4ZCUhOqX7&{@|*0J;za>_K(j7%@8pkjrU+;8lk&^5ZnbJ`D!Cs3-_Kav0JYMnjlp z2!yqx&=?B64g)91;4WGKCIvd^7tMWbZRGY5nEQNWR5n9~kASpfJGZdDK&)ISR*4V2 z`ubNo4~Rjmsp&FM_yQFkqNG@&;{a0=c!dGgYbuoo3X9!XSe+m?BMhs|i%z|z1sp;n zQ2Bdlgd7=!xAvP0s}}I^fDm4EMrdJ%$XH#dvFuT-Ts(Il)fkog zUymskuU3nsl0RKt|GE8HB=7vW$@xcxT^Z@Vjb&SS(uD^_6mCAOJh{bgzfbe_<#Tm; zOh(o}qRi`O!`sc+5>B7?V*Bc3d0V0R{uY_{*7=H&&(3v!+JEG7pG=~?W2*nhhoN;L zk4cC8HJ-%p7VnLz-+l93jDtK8Ut^>o+x&?+&ezTP8k52KxaS9mq@R+h&STvjg=GBf z$Pm8``(gRmG|_VZiotqwGK;WCvxLgtjR8M?b_CJKc{f!tJk$7&Ml*&O88GD1z&)YNS z<#xRcaZe4m2gjCe{h*>{!Ln6<#?1SU^05*6M5Zea5{x0oa(FBFox^n!oX6c2=~sSe zU|t_-%{R!wET>)aQC^?@Q144OmUSYlSd9BWe|-?DRJBu7M_qX+{E}CTUH?l_oDD$R}J6mlV?9cin5pIM|!^$&4lK*{_3Aa>gwj})4}euZ{tpB8(e<#tp2C+CY8-+4YAJG+`WgHw#co` zG+Qx@bkxwVN^AHemf+*_(QvXR##&g22> zEd33-%Wa?c{owBVZ;l_hE*P^@`uyclPur_W?w7uAN%c-{y}jJd$;)7`PNP2KjF*9O zIw8B~sA)KRQr%hlP1y$3k%@BwZ{ln-Z<6Vo_%~FX`k6R&=s{Hc#Jgnrrc0l*9%iZB z4~ZHmr|VXn44jPOV*0sadhW=e=dX;ghBx^wZ^GTV_Ik<|R|NLh4qV*)IN0Uk4r{X( zffPy5JN#&dpY}+zR}{9ZDUUihl5gUwCcM{pS2SX(*TZvvTP1Pr^zzOt+Mk^V?QJsl zlCKk!h`!FYmA`z9uy34KV?5R3$Ff@YLS$|gZT_C-dZA~x6Mzk z7mbM(xcv0ehKFQjJ>3;`b;HBHXI?g+Oc!M%pZrx~RqXH66?3({m#bQ8Rctf2nweqE z$#a`}`g$BAI_Fv*#39S$euS4eIG$~^)JB5W26I00x#$(h*A;vvwEIju?|Z+!PNbD> zH-*n6PSU+F^uxt3!*z4H%6fCHDn07xvFqDr)icc>lEf{Jm9^fJGZPe7yVl$dIU?OTPqpP!Rh}NeGzgjR%rh^pl0BYb(Iz6js^FclkXI_b zu>ABHh0P@n&$QMG-u~&*5+Hgp`swVg9S!&1sDTi$>GsEXC9@dqL}9=7!#A2PIE$a? zv!BY zny?J6V;IF>yAq|urRZ|lbAvtB<0?zLkxq6Gj9Yrq z*1MsFZyM-=PhH9xtPU%er@-%_+*5++sw8u z&brEh+)0icKJroIV~&GtmW{69yZ2TEVGW?9GF{bLwvC z0XNI)hmQo3k<_zDr~RwwTTZ(|2c}Nm%(+^l$yBe*UeW!4p?7-M@wRz>vYXa1&Ds}d z1jCfZnr>9~v`zPSXz>pzg-6Cezgzn9(U!rW{)Cp6a*KSWR|jug`)(rTp_VtWwJpi5 zE-rMy#`Pppxyh;7jZ-I$tEWxX=dO*AAyW6^;>H8S&^qM#s% z*PuR)S+tqfP@||Q{7urAXS+?VL@Wru7Orp^^p= zYtUZp06bh8n?$ zbVh;vwdNd1M3mU1XplpHodcms`V5HJ#jyarKZ8Ap1jT`DnspWgS?2Q#X?0^jJghno zX(3ByWI6_7cf>>N$#WoteU68Sb+I6Fhh2a$Y#cy32>?+tdL9SGc$EMo+s=c`>6i!^ zamRx^EsOv};g=H+{BjW3ZR%Zs%IIBONZWV;@}0g2X-_18>=~0pjbK6~5`j+g5};X$ zAo3Mn0umPlq*bG28cE_s;7NZO!lN&Oe2-j)%nXwtTe&L`){a6YDCB(!7#pX+KA1Tf zcy^_LB%P29B4c1GY&w#mwzii+)@Hg2w7r+1forY;ZO9b}vrB`#=u;qUG!0^*woFJ$ z3S^sk4N&=1;It+kvW1<;X5}`Z`BbGgW#adlzPtRO~0y-RlAkcM2BGa*kAiGh-Z%R_}>(Ieq^VI}txej%jISS`O zE9l^iUOxg3Ts&_;IlXRSsV|z!*TZgd{swj<7RE4l9>y4ny@@pfBtBmrIt5K2cMH2| zsrOPCiKt^WDSox3$}A8=MDE}Ei{yz${JI5#?poM6P`2!7h;{}lQZF&9L}79$11rzB z^g50bQR8dr_ueU+^ zg=^AGI9)gsh2f;5Q0&hH3O1<)G&2)e!D-!MaT?8V7zlZnyr7_PkjnxNZ4!Uf)&mXc zbXnke3q`qp=QxlBa``)`7e(?1@9#9_X*@j4QA3;x;i|VMgL34^LNOQnclYs&MDIV( z5EmUaE;?MG3gVQ-2F@KRH;L#;gA$@sh-ELX$j16Jzy{ARlU@LEEW@%3P!9zbFM)XK zqeS`Nrw#w;Y2h^}mZJaMhQNa*R9RdK;V*y#UOdIgGxD_z%Lkqy&)Uf#W)-yE2}-!9 z0FGCT%V=90G$f?}E6ca^Rvog@MA{1Ah_|c^dS4UaErbsBctnBC0LJ3cOIYFc3mcn1 z&QU?#`#%-I7j1dqbpjq9;!vCC%wuRCa2U9T5y`)U;ia6m3TjYwVHUTJI<<9}7Fq`> zd5jgus#6+45>b8xr{sVzK7sMF?(o82a2T75P@<)+Gxnua>$gwf|}16G$!N~6{&)le{DQ9 zpq!W|5b>|!4-so10vWDY=r#xmdIAhLyrP!qE{c4jAtNXvQ%8-Fs{o|y5v+&1U>I1^ zPN!52X>Cs%r;9pl(Fleov(QJBE9a$3{nQIPYVWnyLGOL9z;-YrTUY+>J*s=0#k~jb z6;|?Mq?z#WDiF;bp|6MDBM_+e4(>o5z|I?P72@9j6@cJpub}2;_0VvD%%jL@8lqDN z$TJ!eSO@i-tEZ;9gCg2A2A@zQn}*2L12RBEoB-jY+|4bTPLR)KO3c!mBn^mZt%n|3 zdYFJl@H7DDoW_M7f)G4b-LpVdj#A0Kqf$))f+c7ynpul`V9^9x)NPBF zq(A$HqZ@i(*$>B9T;7N+Wrfw*DVw(X@DV9O(Bd9SB;w>47kXz+H&z@{fWuKKrK!1CfdkOSCkS&-ZnI0ouF3mEi^=EHwCIkjh~(;<5lro+nj z*k3Hj)*jk)5YYI`O|k~%CRz4(bGMH|bJMOhCB|S0r(A0yI{`#*>o`ZzQjS3@0Af4} z<$pZ}H3Q@Xig13RBIPJzOhcwo0|OZC4_kn z1~=+wwzzs6tIM+R_=Z4ztiO0*lc>&y|5A|@UlV*5ub%`90{46 zf$=s0p#W>lVx^G>bI=(B;^L*pmr zp{!c$R4hRS2W6o#g79ghp-CcsQ1rkNH&E0>uZcg45FlDVYng( zM3NJbA{t`PiIYZVMRB}n48jR{d=|#>phy!+mJ3xzFS9Kcq@%@a_ARVwO$_l)+n+fwma6Xgp%j2LrTBO~i0Ad`p$LDcnwoK@E1S zqNXVq0|w`4$P^k=MME@KK;4!~UTB`aD3|#s zzJtQK#Dysbl%IeF+?-SA1Z))0gBXxN7fF_jT5Qn-p+3Mw7Zqh_gY&Yu9xRbSePRh# zwoqn^+m5&(U@o*?ogq$`vPULBI z3wB&CxK;5hEd=Q)8#T&;jkNmW*o*O-aD5yI-Vi4xKz)9;xMuK79Tnc?|Kv<_hy+Dh zdOwC*Oha=*m~5c$;W{4#Np4r@M)hK58=O8n2s+@NQ&NyXJ;_^~6$lV$R&syMigM!j zr&t1ZFu=bgvf35L`DaGNVm(*f2n(|I0IZmyne;4(BP^1j9rf=<(_Ywf6R4K)&_?@R zHHy)^#raY9+*oZwyx&J*TE!4`^eus=A1)Sy)C2?A=8tp1ASNL={$k4mxNP)QT(2S> zKVor>o)eKeh)XVh7>WzQ6q61?5)84pHW(LS9#IO##jQr?C3Nye z?>#;)d%fKy@C2$-B8%#J4<~;Mf1f=85_nCT%=2f#LFAb_h>OR91aK}0w|gU%W}zld z8rmo;+9YyUlnn2>RL0B97SCFA0zN$MlA2*?jr@Pbn?X-_i%4SkRC-kB}B6x zmx{0{L*Q&Z&Rq>w50bO9(%nLI{DHEIl@5fz=yC{T zQ=*$kn4dx*L7A>h6#3Oor-FzZ)7?R&I_VUOCynV=%OFm|^h$`MA6*B+B1$h`?BY)+ zXNK79rB^DxUruL?R_1Ye(+V@k^@aj2gWAmrb@tYcw=fyfXY*h$Xf39zSuJFHNeFxW72B~l9Qq1J^Utm= z|Ju!XH0^9*T$|nvQUjS>$>Y0h2q)@!EYfYax4z)|t0Q^}c1M*P-qpT*()&rwabTHR zerxf;nUBZP*~?$HH#9vT5?{94e@`+QbGNW~^6s6frcnC$Vn5#lY6V*N0_l#pCI|}5 zYME`a3auvluf7<18$+zxooGmmG@HLLq1t70Q8g$1QBonUoO|f~FLSaAPNKZ#<&!s- z-QN|#;>pgCd*mm+{%ZG#ljd{<%R;W6epD7G-SDJW@ukgYa>=*UKLcmlb_;i+O@-O&{@oN=bO%VZ~98cRn9BZ%@;RJ&l`@C`-jM- z&*t-fPCkwl2)tWxp{00A_$Ya7d3o#k#$tveBSJ?BJ*gY}T)xlyH5RMiJ1{#RFqQWv zvz(mHUyx6j%F|)qG@F;mWSe}XvBIeSmrq*K@r)$a2BUW`8yol>vwg^uEqUbUs&>m_nkB&9R;zmaWo z=hZLF3u8CA+H|OT&fnt`5=oyA{3Uzl>eaKX|{P}2^U%tlSIdRK5 zMXqLYitB{f$g5q;F6|D~P$$o3P0dfv3~ru&9KoGWEWl5>dtMOzo^$q*%m|rzZmWn+ zTL+nYChx`kw(sQ2^P1oEud+69c?UkPij^&2BfYjIpFtzUW1a22ypzmFV10ZLS9gnKg>=%~`LGUi-3NDuMHKKnkbM@Nwm9 zh?BoP!I04($Fy(D+;jQhnZ`a`W%_Qnid;kx>Z@hnH+CR0?2@tO)RoGQnJ0HDCT-x?8(}iY zIw|Qyf9qrV13UccQv=72Z9Eb?b&+t*vIg0WUwba@Yz)_vbVg2J4bd~6Y?`s>mH0K4 zFQmz=^+>ChI1s@lZK;xtPxpTK((`mP{i8w#2hY1cM;P`__mKVH+IOm zFT=3qnnE%Aef%aC@l)TriT551XS&6_dFf=|t9I+?nS=iIc4*VW89&4M>qOIc4|USaNa zkZk-RMCnyMsWNrc?Y)xD;2j+iynLcY>b>^&xvy}Vb8GMe-#D)sR%ow@o9I{IDLHHx zaPTqDSenC%!?W`Z0RslBt6X$07l=re|JV^^{v}7nR=mu6?NJZ1$A+#-;$fF();>Z3 zr=Coo@j*101lhi}-Von?GTD;xW7zVbb82s8$Tnwo+~DtO=~g5-`0P?^mhW8?QyACr z@UHOo!##D3TsgxALa(LfZ%)3tajE$v>3HKnIA3yMlX!;s`Wq)x4>(kOU0o-NAgLu) zbAIe6C)`bnuQmxk&0nABl^-P7SjL59sl33Q;yF`K^iT22Ta6% zSM@x-eAVVi?k_+PYPae zmUDRw2&C^0H$3Q=7g~LYNjRvhzvY0Yxodyz%LW;nJ1=@~?9>05WTR0!8eIPB?BlxT zxxy)}y3$}1y_@M4^e@*HmtQ$5_i?0TN?inYm%&iFxbDNu* znym^?-+aSNmbN6wsIqn63tT4>Ftbl~vtpED(7rUQOH&$~vG$Dn72mH@FbR#~yIMZ= zu=og_U2lxa`F^qdOLg}$cZVM%+>VdDCRBE$e#G%8k}!TNXeO}aN_e#%vhkpO+~v^x z$(HuAwnUH5=S?RjiKlRcO%Zct>l{ALUY3k;E#n-UDaj`Lf7TCX+|28p#dx+phO_V6 z+M+d1A%T%!wKirjejAgmx$6E#Lc-(4W~UX&pKceo`mR`Ys!ft%*UyEpxtK=s!Yh08+4Bt*p|Hjh1i&IulkW=LK>@wvd+Zxf!UB1B=Io`J%C_4}+ zDYQ|tbj-ZBRH2@Hmm_UW)lZh2${z~c*6(t&)-;~EtLeN(=u1&&oXf>iTL|Y@GF?wh zejxsZu%r9kU9cSAQC(f+KHZr>hj^GeJzaBZHSU)r$N5vIOcjFmTFZ~6?&ow|XH%x= zG4eI=ZHlM?N&C2Nv)%`(`&VMOB`N8x=yw!b^HsX8ayBV$Y5yG#2Othdm!d7JDQDj2QRQ%F1TeXyECGuENr{o2KH8k!s$&#(y5GO`I4`-Xtn#+ORpa-{Yp!uU+~fg5evrzpTG| z>PaEX*$N8=+nz7)a(aEqZo%mZ%pVQ4)G8i!$5bTyiE7@kYZp(!1rS4cn|}z|Up27a z7vOK_^Wj#W|EYUh&Yzaqy-Mg>=+~M3!p1dW2Ii^azwGH>`uWfOx^KBgqG-1n4+d}f z1AqPpgVYwu^Qz$tcD|kotG!n@-*=#E`eNLk+`!y|P=&YUVp1P{Ok29bN;{7Y-ukG-mg;;!?r`<{ znFFci0o{SYvoFtyX9T|E=PJ7}`||m6+gm0=VXw7w#?p6)M5r6@$CONkV&*vm9&zju z9a?@teba%HqWH_B4ZjB8&Y7o^#{)iXqdQWX9~f`h*YeA!n1%UflKdd%03VdV3rBQ_I-c z<9#uzow+V$#EjUnOBTCigt@gVr3EXmk;ZmJkUzR~D~;QPH zvQ?654Nq6*E>2uOsqE(oqvbnEHqJ~!(Ok}vHFh!Eo~wKuOHwYu+dR5FBE5m>P6?rz zYjbdl_*t`+QCIJt_3c+aFDo8NH$&cL9$%r}sC7`$>g@5urIzam{brfhwsA667E9fl z=hkXGnR>K;W0%ymYpxOkuN_5V=aM$o7=|e`DEkI-@g9qAyiy@NP;)8iq@;1b>w4+S zOzFdy;`W-xC3QWHF&Y1|r$(mTUp29O$-mbZye@wP_&fd#_$9lom(c9<1A))8<%KmaiF-?AcXlW3Wt~BuEZrSoy)7(A+tY z6S6;AFZ%MDZVS=fZJ#35(!^|93dC>z@U|fA`*hKvpvA~JWbn0XsZ`y{vChd5d6y}= z@wDCPzUvFeo+x%c61ko9%w6%gpsU+iasZ>pwMP$Lby$g-t5-C?2%1nhx0PQ=cYK}W z<)OlFI=QlEhKs~^v*0o~LxU0;+O~Hpg-zIUri?vVk@SLfeZ>B2a*08AF5lvE=S`Hk zAt~R_T4C!bm~D81IJ8A}{jq&P{7qWxqJuN6AO3vb#QaFFK0ajNhgQd-^PHE$w_Eh@U2kKJ@L=j8Q&yu^zpTTu)}H51|G@M;HD)e)8YzrCdmzuUNuyRy zf?S+SpI*&URa7GFWah#-`LlNQ*Gq9}$8getuL}d@bbgR#UpHM&Os>LTp9>{(_XVG} zj-RbKKk1j9<_*}Vr)z+XVFD4F?3v@q*#Z72Odpmio z={VQ0iGO42*Fh!~Esd;8=7*#&d)zq~)82TfT33o3M=zJe!aaG#^=OWIyo;4r!ge2? zPky=naval~o&hEmyZu=&`l?DlXANO}72YRvzk}{g%F`9yR+&=aRdj>G@iTPS zTL*_f)|DNQI4Cp_O+L`gWnIDRXe@7C?$ot9@J8>ecU8I@VuwmDWkoudZb`)3BDm3( zInSx{>0}udlguZj`Z+PDl1(o#wEv9K-=x3u%a_O_Qpyj84UHUM$rwF6fBA6I&8*ws zj~Hy&6Lax7@5|z#{aBI87o1;jx|0Q8Xh<3-jc|B8MrsS5uKIZ1-@(|EfB2+3CQqEww+lz0&;E zl6~yZ;fI&_R(9V>YnKmmnJLj~NXKY9CpFQV#(ZO)e>2~h@oK0I6AwC*L` zvSh(p@g>fh^X=U*Vf2Ql;qal;z8udUHFqce4_)6KP}BcDu5oT#dvDrl-rHW1D72N5wveVu z2;Bx!Nt8NPvx%Pbq&^v&&p9GuAHAOZ^pJpVOH5PN*=%VK-rFcFg4FWzA!}v&ZCh_;f`-QB@(Y%k{rKQ?7%GRApCM2`AMyYGW?t=STP9nxb>nRO zDE&u)>A%iR=bk(idR^)JXd_+R9C1{DuY1wtp@fs7`enNq zr6q6E*$;^qe#$(%ocl=P#8-jS-$Ho91=US{$?V`>>6tk%yM^D1m?zL@mzSosUWRdt z@g60>iRZ>XE<_i7!-|duwfBwR9?_3X0bK}TZ-e@qvCbrSPh-SZ&cHZc0SmrbRP=SK6h-ZSdoIT}t7q<943Ngv+iY|S- z^Y}GW9<~rRp^*ExYTchW)ZWrLvafA~spH7k+nhEBW;=R+CEFKn|M2u-UF+=cR>^Xy zuEsMvHVy=AI-{wwv$?q7^mf{xs}#BR_i<9^lW1sclecp#`C zPSzK>krhz=W5@KRud2_-g+yD@K8%KS_u!k$o_@^zqL`a-$YQ2$+YOvr!=^CgWe?HsXk2fl*Ux%mc5mvvXfgDPge#V3cmiODTm8Yw)*@bcJy5Oac4KtIzRAQ z>b}-!t&U1_=Wl+SO;=OfoVeeF1`8I{s2rzGXJtv=8JOqFvB>5u^;LR>=h;`*T^r9t zH@Um>AVp_X(r@iw*nOt-YWM+uy23E+v+J+V99JcDdUf+(zhTT)TU`M8kP^0qXdnhw z7f%<;KAHcl-f`>*SFh&qk==BLMP9@UJXY~f-|n;XD!P*<*S0T?Ma5lglTpGX-*)`7 zlo7w%Pk(Oi=BQj(FrDe2Grc8|*R}gWrQYT(r!#;2a;8macv8;yfX)1gXo(wrtm@#Y zElUic@6%e+itjvKOj{Y>KHa!g{nopg;}T+T2&qiEK~jEH`6lw4Y*_1kU-1z2&7h>xbyNli83eSDwR@LvNq}B9?Y>xK0OT>4L z%qrDKIS8LW^fM~9Y-7>(LfIMF&#zsi<%BB|`f0wd`n*fd*eo~F6UAQa%fb=v%5Co2 zKk4$5L;tna)4;+Bk&KTr-#Pe=`#aCpxX0{da!*dk*z4SOl&3}Dahl;|yL$a~T|NUw zqM5@^!)ED@kyC7(b-Vk;#3z0|_UdPwX?y*4d^pN%6O;1OBPldfq3bKS(*ESE!@?PWDSKQsyU7hl!TGm|)mn`j%B|b^CW-(EH zw%8HZ7;#ploAvi)UgI$i)v4C~gN_bkN$3~i=mqU}N%BfOLVCdgXTO#ol-C}wSG{y4 zCF0z-O3Z22rc@lukh?__gt$^m-gQ&scU_VcNpRx6KNnOvVwv>i@!VP%g?eBs;tZL`Nh ztipTZ`AC%u)`!GRVyDVi6P}i4O~h(?dWXnfr1p1nkzVdT?s(cqo#hDM?bc&wx87T< zukrG>4!`1O-v6uC-SfI!%#4dA$3ow>Ge;Jj9bd9e8pOPleZpos{g5{6!K6Ihg^KlN z6SU7=37>YX5BlLKA{p^zS%v3yeeg-<>T=rI+@%A=%7JYa8?{+hysJ5Wesz*KYjF2N zZGxVJPcD}!+fRPuqao9~6{ZEHQ~WhMKJ%1a?bxDI(>l0(KUZ*MIo|c>ixbo#6BAeK zpW0O2+vX;!VhJHEZ2b2(vfOY8IfG5H5*&9?INDaR*=u6awTeXn!E5qEbx z9vHF_4aCb5iyZHHX+^qzY`juAXnkjRPtV?q zizm+y#TK1OP?{Vx#ytw#Uw$g8tv0}6qEX%LqKrFwN7XuQ;3od(z?KVJzbBe$N=PbP zwag4BM9@h(iZk!da7;R};26w!?#5S7?{u6m2Yvd9pbe*psWX|!jLyU;h<42{mMt3D zZq?bkm-A~=*U3`-=}ZZHko@rrA7VKJGqYxQUPX$GcI+4?1{^-MDqc~x%GWLQ?RoW~ z!S4R)xe~T=70c}{cZE`Su`;uKYaTdrh2C!?-aef9!C1lleMy|Z6ufMn&nAScvDyoA zl`4gD?eCGv5SDax@zW35BSnf?T-V7l44iu)Kd|$v0-@{f^*z((H) z?Cm;cnSIgq`kTbr?j|v6t_Zs zgZoRoL8U1#^8?jcvFwj2sMD>OS7-By`FlKDl+Pva*<?@XXYDQ!TkywIJFHE22S42 z6sSKDao#F@zW74!4P#f6p#&iK>2r=zL40 z{@814Kb*j1e_uBt{YHC~p_)5S0JqaI=YabcYp%rxT({pH;%T^O?T{R~PxnyWOS*$D ztV>2B1w9A!QgQ6&^3HD`R9eVVhX$1_Fa!%d3M4e@GwFHR8h6ff=;q#Wh{>C9$j@)m{2Y4e zcvtLvkSBv*bUSZu$4Sw~Pv@`dW~8zcvoi{R)UXVe6x!*1`Q;{FpQBt@%dEYW_T)s3 zs_x_ND{uJ@2&eGul($!FAo@4v#QN_po1?Nin5ee=!E5U0LBqg(=U&PDvddp?Op<2q z$lA;`J1Qk~(K9+HaPbE3@DA1MsPjuVE6H7{`T?N_Ox@gsEgpt!`6?Lv;D+G7`Ht-| z5}6GXbc$ZBrq69!vv(cc+GZAMa`DicAJU(u%g6Qw=It52c>l(rVf!Oll46Z`R*3P&L&*C;lit#=b*s zK7q=jVqKH`v5@0>!*_;V2SP7#rANrC921$ZpAb@a7UZ<4Pw36+mz|C6#SeCQzwvj> zpO>y(5pj|oDinX?{;be>{+k8y`pcpruWo_7xKk0Vtb~1APqL@J$kgt7|?1MKG;vSvIzP9hH2UF^7kuF31z zP#_%9W~=h#H}CZV^;Kz~hu?AdWByv6hfBZdM{(J^-5y``2q}*2J6!2tBzo#DZJ~Ee z`o8nubqtJZo2x?jGMMGRT^8nM+C;PzW2}sv7WZnhVk4eaNpVyTh?O{gR4p*H>g~cY z-v42%sK22h#KrZ88Zi8`qC?}HzK|Y zuuP3JI`=*6SJ0i@#7%q_thQ=f%yjp1|8$GkL#4`-`D(*~Z1&Me&DA!GYQ@q;M=OFw zlHH>TyUkKP%fbg3d$Tv~vv^S8w8`$v_kBjx!sj}YxWD8yLhkbeL1Hy&!%6R7C?*rq zo>cBEHj88F+Rn(ne<jkBFqUebo6@ow0YDcKbD(v{!mpp88Hdy~6UFf2T?Ag$6%)&my`# zNl|_VRR>om55G_J7V0&S;i^e<*!~K)_+97Gl^<8%uE?7<+OIs--8A&1efinT;Lu^Q z{6(UM{9EUX*7SwEM9uUkL;KntB3)Q`;#AxZENmI|SPHx+)*g{4)F~|c&ETBa}I!VSrMg#lFro|>U$s~55NM`O-kY`HNJOuW;1(8PP==OclvIJvmPc^Ca8Hs~ot z8s1P!{5A4hd8$qGX-B~nx6$KOpZp+X)^XFrME!OjtwJV?RsWdbx$@9mEtk|~hRz>U zoygPv;8G=V^MGFFfTipki`T&{?07@PoBNA(Rg;=cicI6#c5La$*52eXEB#Q=ene4k zakEepk!ZVD^zEhVDWM5s>l3fc6$d>~6py7>IeVa6nMLmDMCaF2jv97%lv(QvSRIQK z?#jEDP94^bSNp)4trOXvBGORU#ToB*eWrRVzC!lYvliMhz2(&KkUkBY;;n4!;u3cB znpa=j${c@5S=6XV@D@tDof>ASZokirHjQrl1{QH|WeKJIL{@#9h zQ}e3_(J}_%O;ZXB)n&=XcrI=JNBigb7S&$AT8?dWbG%?3e)Rr)+3qWkZDKPb&x~i$ z=1+(nI5T5DwvQ&~NL%^VDmg~JHz9|JGKVGe7|v$rM{?9HC)!8<7G$+8xRE?mw7>Js z`<^KKXSWlG{UyG}FCN4Ool_GYytt_8T^Jkbrkq;i6~0bj?5&n9*AuDVtXyI0-T_(1 zYLhxFHD@k-xo>3reZQs4#;3bk&gaLazz>n^%T3E)%k^&)FTKGy`p)t2kMUcPD^i96 z9#y|B&Pp~Zu6$1>Jf5YU+fEROVsJV`g=^WNBCff^!r}>We%r53KdLc3UHayP3w2S= z+wYtczdTasX!0X$^Kw0b`rCP{7QJ1z-zrX+UC|5W=&62cBhIdbx8f_GN{CSNw{m%s zvi&7>rtpiMTyiOk7QM`R%Q%1Lj0-F?e5)RO_hvgU4iNn4GElXbH58D0Qagm;iCxxi&+AOHN;^absYr|r9#qwvdt+zD+}JmYUwsFR-*ICt-^JXUL? z`texq^*sV|sn2BWqG}f!e{N?N7<}zDYw=`ia1&>GYN;SKt0_@Ka^;ZL(q)gVF7$-PEay|`6od`9f`6+W_TdwC&p+tcS?;$J-3 zE28uBg-6&aG=#>q1!o|kHuN*Y$kBHx4Aah zywH*dC%B|uLEE#GwEy$vEL}Q-o>0`~br%0wV$8y2|K)0dlS`qWeQ zMn7!GuvOzTQko{v%v-(@?Ilo9*>4!62h*Kxj^ z9S6eNPjLoZU*$+*J@zF0*po)56)!Dj;U)z=CCM1kbFE#Y88VNozMqy5mAN=|OwWif zGiCmB>BpU4a%@bqXqo~Hvy@}a5o0!WN$yYr#Mp=+jIH%&*i|hlfkO`dzH>veQ7m6+83%)>{j>kqM*lMGClGviRy(Tz4~RH z(l;%AufF-Fu(GCETg_c~tQ(peS8IctSZCnCXU4K=<$MK6tBEQ)`Hr^(> zzh>jkQ-{Ltx}M$DXsQhLvX3xVG&vjIF1=b<^JZ_~bmN=Endn>HxD_AU>pC_JIPJpX zrju5YUaOzY>JP6wo5G*L;*_4iz-6A`bks)g&iD7#>eZ&A`BQ}Chyx*-#9$Uq;*Kz# zc&{Eww+ZXhx{^e{Q2hI%_grGrO*MuB_HVe{>Nj%gd1uKFD6kqxiZ(xP4%~YH?TYy<0r(&X(wO z+u>Qw=_~COf#*z$lz)6l-*j}0H^VYHRPhQS-dH-${mC zR>D33_fyB>lFupqy01sZ`OGfZbGEGie2TBJ>0E>y^E$co2PXAe3$Z*$gwVZh;Vetn zmWeMkuG=?e2c=#d-QMQ8AN|O{nw!zU#Xs|cFLK+n@;zl93Q3MMZ%=QQ^lx1iGTux* zzPUAx-u?NF1@r!_OtuptZW_KkCL`q??&@4G_V<` zU+y7oRnZyH+}m_SF;!z~Pc)0AR^sDZzMpjL!tc%hi1Cow5EsXFg=t;%r5M%UyWcr1 zAIt8(C25U&yqaXGQ4^g(z0%U!gA;zt)Jh*E8|(cEv7K?eIUn zKaurI$SCoM{S22;s&rWR=O9~$`*=Uakq>3ODPMKhiFw*84`(DLJZN$kW=@i7D3cC| z>wWF?Tv_JJ_k<(wJsi)+yuW_Kb2E5z_k0w>y9y`GIqe~SL>A@I~?6Lf%8(+mb zzWwyL`$Ek6lf4RGFFZW>dT&)(ltinh&=Io=JyuQU!rYB6KX8gM5pK7dvelaKVoS$p z6+JI6MJb!Sk|@B_`?TkPt31uoIiR_O`!RN z{6j{q@AQ>3Dy^Q2=55^a=`rc1!@XPdGwMuCx@!GgyaJ6wKi;`dd^X6s>%;}CExL!k z?U2sB^Df{b&4S0%4{?L43WSqF;T~uZcg5k{%|k_wvI)4QHmcqj?c2v^xnAwQa?)b7 zEoR>r>&|O=&w6d$7AKx%n=R}ut2e&wxczh`cQ{AU^W@8l2Tg;eC#TFW*+xsK#@f)k zywG{yEG8?p5qCW9;SDbtA`^Us+faN#fo(aYvCqW#;@0cUK8Lfibyv3wTeaJ+PFHPY ziB@11X{29Cy=UpFPG13@12yX?dcDQ_e73L z1Q`vy`4*yj?DT<*GyL&KJDm2+6!mtcg&olf6@KOJc+0G`Ay5CY(jy|Vz*AN7ypY3p zANIEbIFSO?^*z&PLgy}SK9tY=`|#1q9UOy_W&XBXB6jrFWC_UqsJ06aDU{BnvJ+Xr zZEdP??lHT$!RAOivzfO{yJO`oLH7q?&7Mu#55Bn`9-g9#5ZIOZrQgeHCsj?r8P{Zu z5V^{9ZYragUGpsGMh)^$9`7U0t=Om^GFYh>zTmx@b@CO%A-eOadbJ7D0&LOC;?^7? zm#f(wil zdbj0quZI7I4ajl<0hb-~mhRN3%A3|u5%l(owCt6T%f#%+v6G-l~)j}@Z|YUYxp z^c1I$^Gq$AxVy(WS-aA}!GgD$Z*L*V}L3&uw4nsmY;vsDtDX`JdS( zZF(lvQI|9v`Osvi3eTlu@!n?l<7k1v`GG}(Dj zx2~DxvE+@&pU9q(yAp;8UO4-aX8YU3;^~X}&&!<0sM0UdM5F#suil{QiVdoZdKo8o z{5$Uv%XO#A@)lkdpK!V#p8BAH9>0`}CJ4lg8(7e4#V+bcNK5~uRh=9m*v_e3s?;tW zQNOQdb5W$U&hxB8nk~=0v8lVh8aF~E95kgFO6VefM|}wrFJYa`S|?*u-g(}RQ-(qcDA4z|e}LVYjTN-4r+D zMZQ6$hlI5Ln}K%cR`%_aEs+zDmR`4INRuHX`=>(ouwsLR-xZ6`k;|XMj>im?okE!iTtYzmdUe4J(d(}|Vq<*sQ>bVCaZPmaqzGMHY@74KX2 zd(Fbjc_V}Qu5DkbtfpJo``u-BTueUj_vLReTD0sJd<~Hp88g$ zG6u4pd8u}?bqwQi{jK#i&7l3$C)~Xor+$e)F|gn}Vy%$HMk+N%V9|H2FNc ze9BSp0?VrFI_Vq@wKfMCFUyx@h3jm-@!fvidVo#GCG$Hu~vt1}0%03a7cR zt;k1J$kSZ<<(ToX`dP8Rd6WBPj&~AX56eXL^`8;DJ(-9)>eYwdeh3ZhaiV$4cx-dg zgSq|=p>gKkQpV=LlO?q@a|yiFS(f4HR0 zD68$e=Mb@{YR}eaZBhTUo9qvJTsBUgt?zLcjH)O;D#m!TL@HS;Q-y2DwC?NZ+)10Q z@eH1IESHu_80IBve={&F=}x{By(OaA{(D-rdntxfzPqUJa;eYfbDJ5O$8toTHl&*R zyipWX*~@fFMPt%A|HTE4!h-kSe)5j{igTBBTE~M+3y7AnUkZ2*(G8{F&8rT(ZnwcM zKEdxTYuQh0nt>OeC**Ap*JK(WsD5nW-Sw@!cURPbNJB+a_7j{!g*y#&Y;|J35w&0X za9>x5TsA$mV~6rx_7{up5o3!Q@k{2@>*G3KC9-f7@-O=6Uorf6Bi&n2Xy1fYvA%B7 zNtq*-VpE39KE#;0OSh6`cs{qqCh*$zHG9r?3^<(C%NBItzuA7mH@3-c(`fLLtiHY0 z;dH}V?_jl}jJGr;-gVCYotJ6+_&uA%dA72tg@@FQ`zz$POG@{9`x@E3<{bU-`}ir5 z^jOwxn!+dcAG93LTRSU-QRN&cO(*`cUpmtgTXJt+okfh3I95uF&}~RsY^2T;A?$X~ zxg>D?bCdq6#=PfrBGnZ+ofpelqbhT%Qq~OtJzu$~cZTI<&xgG9`<3-}Ue4flvXky- ztE-cyBc^v9N`G)!sGRPNxO77I=VXUwY0^%~zAI7h<@6eFiTb47t~*KR(Q4@(7bU9J z|D|{Q#^TVxInkX&v2Ec!qWK16{6C#cSKBO;m2^(;Qod;+ylv=A_OVCj_sRr(H;?&x z>;f$eQyh#GZLT!J*Z4_UWOB7THHz<7@4NmJ)8C zJoRPaSwumr@y5d;!40-JUezbrET2@GRXOZmA$2^-a=mJ$b8d%;7G?2V2M)XtwTLkp z>NYd`rqZf;=ma{wp{hSTF>FcfsLdG#qeIkEd^fMXanK`oEh8yJf?iLhQf7IvaejrJV_t}<6ZPUmVVKd+NdcuvpSxc2S zzjH2?k9|H{xiLr0N{XoaQzcnAss7aByx!%eEmh;^?&7n~U!9xHyrTNa_`)D-qIEe< zj>45)JCx<4>$66-fWw)GXcp!uH_8!P7J*j+dKk#;Vx|%lG8}+Lc0O7Nu?B#7MLh-N`zibg)27 zB9UL;w%$8t{|SNGyn8>GjckXXwBd6q9e1BtXmQ(HI}~+yLG*{nm$G+A-MDT`&X_wg zH>kUL`GN&aU$9B!(;ItDT=4lk)Ul#sJ)DsbhY2o%w}UGuH#y|&oWX6Ku8!WTpg^njJnu|jV=kx@s+GMvH8?aCYXV#N@b$M(tIdkE?s#@@PU{E*Vbr|8k) zp35J<`k}YqJ(z#F+M#sdpo3;drUC~OC#&SvUtJmLdp!CJmI8ybUp!wvtl{$3$Jp8I z)B21Gy|V_9&eiJW=fh;uD+2|GXUx;}uFU@3v1Gs`(5~%59T<=~P;CfnU|dWDCtxTe|&L zC1EuAtU=XWg`HZ$do{lWzdy}0v@OC;fAhuS#m=d?pHE)D*6}n-NSt`z^nKf#w6o%8 zYR9MRZmvAhZDIUaUCp5`QanQBlVfZ;a-}vZBqKJzYW|ilf1!!J-kI%3holDvKR-K{ zGy8$cOJ(1{yIO9QP_AatfE|PSUpWO2Y`#b{>@BJ%awG90p_z?o3a@Oz(J*-Zcu|=A z*9+bp3)gF&$Mv7H+V#;XE`VC;*$ec_srm1_PtNvO=N?Aw5Zx)UI}hJ|>y#i0e>-FN z#VJeN=yu|h92=uV50)={=MAQ%AAY{U_wJh?m*YXS?u$TCRFGClt|;}4({7=`OFwE2 z%RVz{a!c+DWYn3t6c_z?*XG!?(@&rC254{3*m0I-+W{Z8V74ERV%qBFX_TF#Jaox{L7JZ~;;419N)*5KYJ{mMYohs-%d#c941KgF-RmIs7tq`DnvzQHCn^ZOmq@5jaJ zHyclDJ-DQ#>Yuy+O~!`9+y!^3AKy8=o#%yJb5}_E=wz0hAXVAcI0DzlnEj6rpBt#3 ze_FRu_fdk^jd*rkNr6e}m35L04p#@t6pqqq?#a{rHNT(Z7Vo!(5+3&B=5@)ufmKG_ zL^MTk>eEKSlhkKddG@J01o(d+5o?~j+8F(Kl2z_(6#EIe$T-3?@kee48wTCqZS(vs z{al15TZ$$^`X`e$&5MH1@8_9}ZjNqV3A;aGVV-^b486g`m7Pk>0fF0wb3Zn@eDnA5 z_YWC2(V6g4eeZhsS7yPfsz%>2zZa$#XRa;q5_fLsQaWuT^P6X-;j!h0cVA-DRRYu< zhJ2$|ia#Y3M$4QwzH8#8*m1%FeVJN2f-gZcHbC*kHyu)&KV4xrQ zIbHgAQvU#($cXqzV(lx1iSYT#>a$0iE=2~LvN1N7Z|xjc2`hE#otQhglU>o``-S_) zMjPvh@04Dr?27HHFKv&0HlGx;#U4z06<4A1kIAGNB{9(WL~bA6_BE2sB4_v?cFbv*~?enh{$`THH` zJe|VI^9icq%QgKz1Mz0`bE-b3C9HIEFHam%5W{;ARVJ1de~QYzKF@OJsDZdcXbs0} z^Jw2+KWoHhGPcyX^Z0+dF-dLQSm0z6tr$wft2~>e7tN|AxBh74KwXnLn~VN9GHf2{ zAsv5bl3UNSto(`Nsc2b^z$vEPZo^g2?845S*Vs&ZefI))Wc=0NcZ7R3su>UVDrv+{ zEe&V-$}kf5@=gpd1SEcWGxKBLee-h@n(v+z%LNVYwBvchcGCBH-mT?*_P>tFNe}$BY7`+Ra!6D-t%HQ%w4r7$nM^yqn#$c@om@54HJkiZO6I#Y$JxOT86D;+DpFA z%@1;V+7{}&1iR&g80F7%C>3!*8phDM z@yPdG4FW!n<>{Z>{6f zHQ_1g($n3pPF%<1Fced2Z+HBNwnAQ<;`qc4S7j|N*IuRM&TYdXqqh3dw;o#Eka%|X zM{sIrgwvyp)tG>nE9sR+4&Ddti#6}8%l~R3_E^oSU|a5^L+&rs4Qk7MFSH!ykLq$X zia1-y%ldKMlrqidQ~PZWTsyqG_jdiv(O8b~duJ=Hj_0Z?MG;5hrL!)1$s8uwj5_mO zZ&S>dNq!c3+c)V>+~5iOowoHw62a*M{HtZ%M&a)ML4) zJs(Q;OPqanwceG_L_Ot+Zvs*Je0ZSvA!Qt~nlm6pmMQ+tPIo`Iwmn2sk)_>EJ?8#z zrEhA@kdztC;fPGA^!EI@XeC;nlIY) zU)<%nCVn%7&8sK+P58O((r0~hZf~>7j$WPj?sdERPT;fTNt4*7pPFBT*GYMwb8bkc zO*V?1IA)e)o;+*a)v-_9r@!GGy}EfuH0{pIrv@uGF5x0y)W%+`CPq*z??|)g{J24& z;%lyI#pO;Br3dX_{j456nJ$Afnyu(LlEOhLa2lfjcxBFVnua z%iDnHdD96moa6rK=N?3DuST5Lp8EF1CijusSVuTtfoS$=fWXr=tGr>jtCL5MN|JMA8^c=s5O3sgSRt`lLI=}oM2 zcwx(4sh-h_i1r1Ih4K|8Hu;jifuvO`BcrrBl>Gq>7b;tTaH4D>G*E#o72!cl9E^8v zLlXs%3aUM*nIKYuBPErzMu`Q804lFQ%kWrL2$3*D-~To4ag-ObN`-@}q>zvRm8)HY zz2}X*RY7ZyK|&6U#$%wNLB&N*V(?em0s@u+LFO^dZG@8=Wxa!t;5kv341@(WNk_y` zflO!%O-F zO1$%DCI$^CwTdN^NXbHUupEbaS%@s!0Wu^>X>yU#+|EKY&`&wQ)kqd1D7jX;;@>n9 zQ1Eq)I3?EwWOO^X#wkfPd$SQaG$|KwBxfUn{G^Qif2E?J;6RJ%pqwbC3}8qYWynEf z&~14j<*f{a8MVwoSfn651c}-oc`W{mfqzwnF+lN`@*G5(8VVGC&Ozk($yp5l%!fh2 zlk`&LPm>+UMK)1G8B1)CB)LMze+>E~y9J({d-7kS^W-5akZQ^#581@`f0A&l5p@+6 zMQ;~?8(q4Ku;^02c6#j(5_43=lad@lDPMB_;kER`cuEm)JUJ&86!0Z^K~jaU0J=UH zYLESY@ZnWS=%JJ^IeRf4Pp%(^r{q8;kgBj)i(#d&!H1KsmkOZzp-}VZAAF{N@kbz) ztF;zW!;?%Srba14hLuc)@nY(fbUo^%f~%HP^_Dr ztr?1TlMrL|p)mrQr23rJ=#IP80!gVOj4AgJ9{s;q)TES1(aDkabaMg1s05`c-2y%Rf*~mk{(rEOQ)B;W zNXYcs(oD?@tT3Q0`3Q?XfyBU?gjf}Kj14>~e=z1M6xX2S)~1xQ6#FL~t9%0@2-%59 ztnkSEjchIJCngjneK#fF4*CrnM)m*(G#{qZdWzH(5zzGK5O#+O5D5ViLy-H%|0sxv z|6~5DqJyOfr>-h_mM|(Aim8$<_=iGBsmUOMSq6HBh-s0g2YytFEOd zCxK!$id+hj&B7GwltxNOGxt0m48-tgA%H-{m?}i}p$i)q(<^r&gxZrvS zT&#^FaiRPO40;usMgDAtsX>_;WaR1^Xy-%3fEtR-@;yQv(TGQgrS_kegGu)%*J~0{ zm?2koWK<$E1IYH4fVa*(LKMkK?!c&II%FQuLnVkdI#YrOvr@2<9RMmz3YWsb`VvGD z^?8i2;K+d)l`lms7$_+4T91#GBEd9}DHi?u6rj(QA?qQD63SDCXi*bXP^&V8AAHce z3=sgB$I)eo4;|LNP=jni@4Nt`?5agn$vX-$nXMMPZH%pCA(1{-M!Oc_q?D_aF}Am~ zhGsl@-ykMq8tmz-s6uKXPfc=*Dyc;a9XG%kq5^e*{p(AF+k*s+$NI=6^C;s9q!#jO zNFJ|7Y9U7h8FOQs-SDnTS(juiEO-CIAGrp(wU~?r#+C}y-OH(i&B>lu2sekNp|znI zSqxJbebc{_l<7N=6A)1>S`)10YQXo0pWd@4is zpkB=&i+KaWVnni$n2g6Ew}4>JKsihas+3s#N23a+8**wlVDcYe&<`GXz14t7QWI3s zh6Y3(jd=||$@&~gM^C&ZKhdMj&k-vQas+_U{(eEhvSON0zDKDM*rj9wRKerUBTyR@ z9Bio(DMmF~Vf3>X2m@u$y4pcS5QJ{>$|2(sd?LUz2tz|L7~1MWC585>QPXh&6nS}) z+3)G$1Dq>E4f}mB5iRhXl$VGdD%FN?r8FT*v`|!&fb}SC4{-|wKvnW)MGOW80B%(Z zvHhMwUI+c$g8j)bfC^6D;g;HaP1ehiqhl93wx4gjCfL=g&L0s{Sm$!(-?fI7aT zQUm58&){k^q6Vqo)LtVt=psfS^);ddIo_aMi4GeAmCH#lOu#zeBpCsXub@(82fw6H zz*x|P{DZ_dh$Ey@{P+e*MMvKQviP@%og`(Vz-AJIT6^>J@Hx8QQx^6cKQMu0?lq-St;EEn8#E24%rb|QSJay!C|17}xL z)*?Y5F!|L~(c7(%Y?|1HAdv2lG!W*yng)QhA^ea&kJN^?VEyW7x)zQTE$Tq%(U~?l zKNNH!yck+`%1}g0Rtz*10jkCb;ng&-(Oh(@z?V9K{DM;j#vrpA83>@@*=-JH2?_0| zc0h}MAfsi%sRD~Il`vS0TTmcy%Z-B=h1VpB&V>VR2~d~-ql2i!vkD0Wz5fmv*7}3t z)^~_BdZv2~vnGH-U30PbpgqV!9RLPJ0Ie1t^?#4>U|6*v_cJu}V^JLIM$_ISxW9Bz z`yNpGe?)jwIuI;pFb0JK6{vuM0Sh-h9^{4>HLQmVb?HFpVD4hiSRPi9-v}?A3Kpth z_SOuLHK2ex_8{VPiYhP?4n{NM2q(QF7Ps)Q?umjGc`4P4Wqg8y{f_#&dj={h01`av zI*ITwz!Rn$H3I6}iSVO_-Eh*&>_jBcUA-i%pdi4?{t1rQimK?_E`*O3Q!DB=g>ce9 zp?8!DR8Os_mI9P;7%->^Y%YkN?*b$meTcZAq6XGX3AleTp^2Kqu#^uZ#fyCag<{^Q zhQcF1)P%?WLS{wiCi4~e0Z?w}N5oO*Zcr=%Rr!T*(y1sbf=>{V4RM?>hZXT?O*g_% z3qlc+YrywJyAgWOG@#-FQ&@csbQ(WU@^xeXrU@2 zpiYv?vE+!w9|4IfIsgWQMr<-D6UfqDHx zLxOoQ_z6i&RYhzlRI0!_Kv&^C2tNY)fqu;X=u|JT9zll_LOJ>nDfHtfL=1$`LR)*l zE%BIJLTtbwY4G4GuKlD|Oi7Tu6a+@A`+!d^)U^-DVwCXc-~@Qv?>5mMM+yagaq(@pzS*TSfIDdXW$+9E>OfPC=eBb&3-@{?hVBY|OqfrC) zF%Z;p0IUnVU@u@G=Rr*M7(wuTtc^qvkdXQ{(V{_cw!r~pBYNu#;A$Bp;eu?_LkKr5 zi~==bQ;ndAg(?_^iAW1?uvZ&G1Q3iN^?yJxEvREtRt#+)1e6y?0HugJ4%mZGf}td7 z1gfln5mB=tgbp&|lGajFo000pQQ!pac%2+0t_>R{TAAs7=e3hqoGnHB;X z$N&*T8D0H^2+)!o$Z!_CLj?dZ#^CY_cxQk&j4=%|JRKhM1;{i@^20};z{GxIWTcq2 zG{_DHV=$d*kaWg{#Z@)f0b%sW-j2luTA-tj-tVWl4}lU@K7(EMjf3C`!w5nR3dDo~ zhp-v|Pf;WJk0yyRu+G#l!Y{5y5{FV0>aXynric-S)kh1w@!~MBYWWo$NS%yC4Q2ZR z{xJ$BqT8hBwRSm*l@JNo*{S+jDgxUusIK$gKG+- zJI27}>8F6pi(?=D$MBsRN9d_xYLJFt(yD@+jl+7A_!YJiE#u%15VAnC*2*V_eKAr`fzW^tVIz%sQD2{+}MGhUpT9~)06DWt7KNm(Vh@Z|=pqVNd zEJ(SI`fCDcVG{rlk=ER>D{iPWdOn>U+sw#i$4Axq#haybw3<%@8h=^@aC5_M^-}(K8i?m3pLx^RaMflX# zj+=k7hQ}h6`r6Uw?;cDK8W_`@sQ)Z1rIdM*I15&?{Q&`{NCSsZ0|=&dSPOtVE%5q* zS#Vj90XC}rv*a181!pO&8B?tmxHt&}0s(-4LkXdU8sOTO=HNTUwk1Ry2hkk*NDfb@ zN($5vv_At4cp)Rk45mv8*IMM;!M`;{3fEfXYr6mK!N|f2LUM>h^B@Xg862))9wr}w zfVRv-q{L{TmeU9q1b9%77PvRoPTGCLDgx5t)G@yYuE70Jr3DBNq~&q<0^k$IKjOC;0gk;a?ydF07RAa0&(;AcbJ3&0Dxvp016rIG-5f>q)IjEBdy}bxg5!UdQA0RlHMX)CMjl>uPG3}xn zTr_3I3pkKVTKXIDxncYmSOCgjql!K%TO{egMx9$b?b6 zCXOA&FTq07{2O>=T}E)Q%Z61kUTTHLkfBfhIIae{PLt{5Cg9PW&4)l+DnVv1O|qCcrrTB zGhP#0w1m)QK$mRRdO7==4`$p~L(G4_60(9lQm5Rv|xw@c6Y& zPybIa$Z0B^IBZ2BMBw2z1A`X?!{Ps9PU0bKp$fmi#sMn`Js0Id=8s7W_Hz4$2$0VT zP-mX(J54LF19YXviKFX(A#^<864))|U-JS6QvHU{mYA2qZU9?!T>uu6tfQBI!kLG( zhlie4*e=rIA$p^?WN|zw{9uI%LyAMIe<32M5e?8-{e>_H{ReBR*rW!YU|ang<`_t* zi5jlL-WD?z`D6tl1hWse@8P6_7jQH9Bo@B0qBIyTEUG}Y z9`ZA&oq$a(XeS-EmC=CTFcm=S1ZAjLf`Nmk32W!5%d4;j;XrWWu$9KP6;vSA^eRFJ zn>Nz^1+S@<%#Pztp2J}g4znq^B48og6x`{ZM|jpza(0T9f*5Y{jdxN?~KjqoK; z;SiVwGgLTEED8`{3x_?!3F;dajt|?=5Z3l?j#M}av=;}?b&Cpz!?tal^lBJY0_dKE z0CY&ej#3yhOeQ#!!85NQ6u_4JD^k7jS-U{|3!Mh~24q9S5gfw(f3Ghz;OJ{f3;uZ@!BNh|?FcwtD-(_z z4d_9bAhKd>4gq!-qBtBs-~UCSNiscY)q({9W*r@lPZ+Z;<%8j$w$&sFfL3E0^(QzG ztAUw9M^uv}!hdXyNTD56ISBDXkq(Cw{Eyv`rXoZ)0vup1=y1G3|FO@3Z7L?kT8vDk z1KI&B6xt%ti%p{c*vmi62Gh@#E(IC@l^0mntBf_W*d3RCnrJ|0RP;lEL+qQZUYfeDA`{_{z}*E86Sd|9utw#~VTX2iKr!}6uWgwuq@5yFWudYK7lh)S{nkuOX*MJKosr!XG?*S^?JP?hqHSBBhx zS(JQpFGgv>thja?O@@KlODRCI1_Sz0!|phladv128%)T4W*p9uq6YFHFr^x~{K(oM zh&<}*6yGPqK%i7#vlY1o)TK_T@JwL`J8x+zqnlZ9Drguxj^7nqeAX`5NrOmN#H5;a zuy&GLKnC@-&rIYN7^SfmD#$G$gXUUTBe%eW(}W`lkm5#HS#a=+B@UR?O6ze9`_`P2 z3<#2F{w13#NTRj&HG>QTl4y}jtgJCb+V%aVSzrPCXhkA;cRdiq^8mr_^*BbiwaX3? zGCarwxBQgt0l5hTf_r_+*@D~z=-`JAe_8=M`%=ovuIUC3hJo*P8f2<_Sz&h=#R~$* zvf`MX|MV3+$OPZ?DeD)R0tf}afuI~z$xWD4u&|R?IZ_kQ{O7wMxdEI^1(qo?Nd`6` z`G5~dYO&#%+}0v784{C!^*=eo&dw@?wR0623X_UJ`56h>2?$^%XrfRp z!>Gpb1J!Y$>OlDk3k4Dri$MMaO)(ar!>@h(A`t*&__gm>qz2Fqer>TJH2@Mktb!zC zda#2r_X*&*g-BhXBmBQ!9q0xh!{C#V23p9DQ-Y0gA8ce`{*p#AallqhQ4r?uW)2)3 zHEexbIdI`a;KyG*B5{+&=V;5a{AjvUc<(&a+ z{FLbPM>po=1h_yH=Z9{}N7FyLN!|^&5mx*-ZPZ5uCjvWVk|6(wBa(m+IMHHoGX6EM z{udQ#a>DgXKR=F#kK)b$_L3$gL{y*yzv>detw-fVaf;iq3qjBtWlH}GPMVtJpa1-+ zOw#mRTPFU6hI5ku#Fc6R9FC7NcmL_c?gin8PGrigK<;1Lz)5mN6sKUOirD~9_+KWl z4{Xrv9t)Z(c)0xsq50YVUtwn#v)NVE@wAoG zI#N1i+G(MdzVvIRA2aiOo#&i0olZZer7it}ASx-PKpRjxm3B~Lq7Rywm>4aU$RPox zL=!_yXfM1l21AI^XpjIBE;LFZns{MiA>Mg|zqQYEp0oG=|0d2&`>wM;*Is+=wf<}E z{X{QW-%bCId)2Xr0_~>ERtZh5#kwqq#Eh&KBU+9I_pWS;q%Dzv$9@{ls{{lLPD|}} z5Og;U0>Ao?-VOr-9H)%VbWpC_EV`^#n(3&preUO|#A0~+)vQJJw(8(T%QQJQbz(sD zlC{$I&t3}ymT9J=uG_U1I(D1MHq{9@a*jVc=;EntT4Kz$A6|`Qjt1KFIn53ne;5V* zWi2lI)7MqU?oS$bIjYyGYMSacuQ02XraB&(Q)zxO?rqHdTW_o0(ErIbNWdyhjzDqh zIy%W3>H0TaUmd%eE|zoMFLjzJ0m2Vlv(Ij-)0(1Re?Pve+}24z0sN!WOK5)T6Mga; zeO^4rR5`Bf8N`x!}qEDu4DC9VtP)9H;sey?A=GwIGULG zYD`hub=bu6;&@AkP2$9m`;#}9IDtFkymKhPOYpRr+Hy&hK3Q`S<`|J_a14gF)+aJsf> z+N0GoHQV*yyMc}ULr%Vny0o-`@j_CT2!QmjrpRRq~F~qKbJfT(Z#fjBbj(tedyr$6W9CxUHnUs|TRn~M(vCrllUv?D%*!sgKw)HMPPUsr%X_!HO+tI4Ia4>n={)0!WS!&|VL!n&@ zIL!U28Q$&7Zvg@M+|lZ~^Y;4crs}=h(g_OAN_YK#%qjikP1W-7khaP+&OLjMSHAQp3MYQ9``FtH?WpQdNg)-7*7`obqZn5|Rbuz$HEBAvQ?>tHh#|*cpE*Hv2;=Sxw^oa9l-PMOaPK|wZ({Bpu-{Yy78Kqh&h|LXDT2rJ*6s6G%msf_lj!%-==(YfcJI{U&i z&prR_Q{fQwH`NUH)Ze_}q63k~m==E3|M`jPR5hH}{gbn5esBUdAIbx`VD@K^{;E}>FBG!Xi?pC(T884 zyV;BwE=^oWyEx55dl&vve8Dtm7gcuw<%UN7cmXbXCNeDkby?lf|L+|@5zA%uhyB-s z_V^0gRV#3*#~S|p`}p%yD^R8HG+4S1*VRM)p_<+G-j+YV6MufTu5RrArKRxCuB&%O z`p1p^6CHnkFa8|E`g{F92kk=*HHaM_>Q6;5?%gM${bv*98XEnFlhA&#rO2YCl{2^T z_4T%TZ~*4N(gLG?Eojeo(7;!3=+~$C^S?U=nSumg3DD?Arx@BtPF8pJ$4^q^H*V+8 ze>+K$KRa1n%8od6n%(+yw^i>DE1kvvY<&7|deWreC7KgrZ8?IPBhk`to@q+pEY&Dp%+1?X1r4-C4b{ z|J~c!;O*(^^sq!1oJNwnyZG>p+t?OgISmWG99b9SOuVswkbK1RK?knAqq-KE{rVk< zQ*h)lV94wYj)98Er#m3eeef6dPMsPrQq0#|+nE0`HIdX%nh1h)aFGBnt3H@dR3F5j z{~38Nj`!s^-rdc z!AkkK#3Xs;-m1M4Bh)+PPEr5ksJh-~qH*=%(KGQe{6=Y)H1_@r@v#XXuKd`L_}jmJ zrfS{-hSVityMHl#^r0V^_%;v_I%{=rN62UUBEB2_uqtYWy?(@8%a1B*SsT!87ccROs>ZD&&9_CAIQfA zZueK?W9Mu|2(Z^5;3EMiYc`V3pNx-P#AwTA*O4snN_?#2dYXLXmO%gG^wFh&t-bCa zeUO@MSoTtrTXg*w9t;tg1w1HUN$u!gkFV?Wd-n2`8(#e#5An5W0|1k+L^%5w<10Ta z?fovm++K^X-OSmvUa-whyt8Uq>ahQ$<^JGf6z+FFj2wC`k6sSAj zZeZkJ3t^c(Oo8=2`!VpeN2)`cl)9gHjt(Hfpd8Sg*+*C)F9+1ngqxAmqHY`(N(+!Z zr_mmnu|a!(u3c)9d&+_|xKO?aEi`Y@V9R@?sO6l-07>nAlsPU{oM?ijD~r!t)TDGz z6Dwstb%}A7b%PeVKkuIQ(uK0w>`lcSm;I%WR+pWMYkhffnyBM|%4syQi~}O4F{DNR zwOF~e3NuZltf;&=O*C=mDW}oIJPyd5M%^Z^Nh&RH{+u>%$*oSRq<`_jYVR~z9#Vpq z+CcrZR$xszjU)}A@`ss77w|#;i6%N-O*(D@^3KcAL>p&$PUB(+)t#n%oVOjUiE^8K zc?d?xIHSP;e54Z$(vmjs8r+bQ#sJe5Uaebj|DM$J%H*5|7lCTzm1(dJr!%K9KoS`q z3ptNFB>5+rSgV}V#7fK2#7Y?stqxQ>Zx2&q5x!kci}nJtDfV(y-lr2|1`Vc|oHV!` zl*6C$B0EKRg=?OSPqNaQryTSY)Nr_tU#LQVJ}_di}; zd^^#UvH*>DT8W0%;Tuasv;H^V6+$0Qb^Zx&XQrkGS6~x_oR=ffsnd0dx&cw-<)9IK zENQgY40@^%dN!;SjLLBbOB!6Lidb+{%a3D>NFU6iFc|5df1L9ovC!bPb=>VUz@=;E zx>YlW_Bz+<^OiHA?1a3sS;S@I-(>GDmJvJ1X&mJ#LM}86EGyRqLQ|IGj2R?nv+IOj z7ru6FO6QTvc0f?KiIBFGYr{h+Y2BkGvt zH1g&mvR{k|E5k&LQ#_!+LMdZn*J?*YLlatqDdJytLW{ZzAXX-JU|PkYp5${rcP`B5 zYqN0X@KL!yA7;$(=z(b~yW%t<;a@z$Z-h z^XVkl)dDzIM~UL;v6ga7Z97$lJ%y6Yo}6T%dM^Bpn%XR&D1R)&Txq2)Mxb+u3?5j@V@<6yI+oaE}&#z)Ad z5o>VCdX)__m@d*y@=ovxQdUz=qvMrY?6U=XbXfN61YGQ6(eUnxy3|z0&e4uRq)d+R z+Kl}e*hSsoKT5>eUpJ;_5qGs0sGFX`$!83$GXrF?My=_ffulAy>NTlcRuB{3Xmo8f z*2!sRhAq}9$2SJO8Lb>{6QozL%9-Gbiy%>MJs826wuhz;0p-v^HkeknHvC_#Ntd#M z+=FpiMDoi4HtaE@aXLHAtf2*x$^5m!^g5Jul9KC$wlZb92uIY~t0VD7>P{ZPW{bGa z7LDy$XpXHwb6EgL@lHB(p8!mBD{e5q@X~aI04X+;)=&Ngd6~9Mt()@!-&i@0w{|b- zzv)Q97PPHH%*XaSh^y^)7S7fknrYExz&_)IHv`}eB)E(;)MA}TUNyEZafy`G&}@rw zB%1@X#5+>~-axc1h7z?c2FXl>lI!&rr$>M%@vUi5=U8(>8x6bMXt+I2Q!thRwuO0=HW0*kW==-f#kJj%w%(eZ z`JmVAb}N@2ER(tjq?KE244S}xv!e-`9Zei+W;p_M`08T>sP-VKYb*4b0k>>Pakdc> z2U8lLtIfEBvs$j(`g}RJI+3m5KhZze{M|m9pIfv#6O2w@I@GF7q}#?Siow+FZ9bFr z0A3UYF|}=Wym|8s8>scw>fodmH!wUfZbK5F*&>kjZ^tyW!J5i95b23_{Id7Va)o9a zgE*oYuF%YHzX;%swHzLYO}!!@rTQ3} zZwz*S!I|Jc0c-O!R!FU$4){>MF}M|KvjfD{Qx?zEtavcbdSf%87n=!D8k7E2$`~nk z1X|3N6I@6pf{TrFIxPF-4z2)Fq#!_8vkzx*y;Wwo2WGpZ*+*All#~;J|9A@Jn#7Vc zTV<8+_huhmMWDnx-bYt)Eyk9FNM!Sf&V=Z(ElI=kDOQf`AEWW~(8sDnk9%+w(9@X< zZ++~Y8U1m0@{4Ctl@_Naw1s)BqaYVzAKGAw=Im_K#gS5gT9l==m+o_wKrAnS`I_OA zn)LCMq6t+?u84Kg_%>?WV$B9s*?JIe1^#bq23BP=!O*oe>&REv!E`B=x8O{@m~Cuj zYV?7zniuADc0}aNudMg+sGynI&0}9%t(d7wh<2o5gO^Ab{b?J5Ae3X z^m#Vg(oRZ{MGN&nvm?LehNLP-Xa>3C%$VfV?6V|IFnZ_VKr~ytCh5eO#)Hm2$Ig7s znrO4`0cZtSlQtS}vKjUX%^A*wP2N!s#s$Lls)0da3)d=k95jODDvN*xCK5c$W)gwp z;vF~6YVaHH1HF{`%{Ln94Bkn4{5%FbEz_C+whkK5&pKI?nPcS^rT>sN8fiW@ll9WH zea+)k-U-hoS|{XM8g1>%M3j5uGjWR?PLDQ3#sxp+YTlqX`QQe)O%8`?D<6|h!n=2d zZ9(%LLD0asK#q%qG2wUaotyv!o_2kSXAuV7w^%Ny;!z zlX2H6M9sUcnoz<3I|JVkYO~A;*qMJ1%@r4sj*(kCh#G6sz=jBQm;xai#Ms}ZXVXe< zfhrjnIx^cz&TI($@3TL<)?hcD%5xn+maYzP4P>CKhGyvnEG9Tn(tp$5h6~2RfN)f* z*E7pDh5`^%&Mr!sUf>bIX*Z1!HTuImEZ!_M2X_syE2JifY5A!Ys-1#8qrH>6}vquCCoag474iPdr_OtbWx zIgwToLVPX*{z-XH26ym($Ntc^vOkgE(lU=tj<}glCj@P$Cz@J=^Q5y7rJV*i>^~Hy z_=}z*sMY>! z$=p`qB93Q}F;WO*R;0)#PK%qiVXw-01rF zCvmXdo&~D);^gL9S6J}Y6+oVK)wubI)*MzkQ?Q(t`!ERO&N^<>dv>u%yPZq&pz1@~ zV;OYb#JX}ZP70PZBJ=QC66b95VMv?2v+I=$+%_^?2ViD&s&<3sp5Mj-pCn70P6I77 zR_CP7`w1xZ6IwfW^NTn)iB=_&_yuet1d}Lo`9^$9K(A*+T?g{Q==kJORa1m zFSEum_=_2*$>F3AgUL`d#Ld+eQe#WP^QWpixvZeu6NJ~%<&Hb4Mcv>(YH~Cxrmfh4 z+Zww(3!)40FU!GxJAKG2w%nVz;?QlhGQO=Ua&8fGAx%1oY&B79lp{^X%2^1Ca_P64 zVkLG~6ehaeG+~5}2Lha^(xyQ(glLcOgARt9SLH-D>HfK*UUAt{H5@cciGXI;N#e~B zMNXjj#PyL;bC_x3Qgor`a+t6RQbCiRm$Q2mE}lz<37ho+oEU`w8JE5YNA6kixHZo@dQmBS!foK znQtJfRZKy$ipCKR>J~0org+d)>p|m!kk#eBg44puN$3B>R`4TJAiU2bnvhQHMkuse z)pyX;F^0Czl+@M9I>g>GCR~^C&_WC&=Q*z?@8*$ZOl?H zahEj)ALTL=0ip%VxVOcdecGU3g{2(HFjmg8<|$X+7mOuBjQ}rcWq$V5I>w@Q8n+g# zuHB%Z53`iP1o<(X7g+?$_T`gbYsZ^bb2?x}#dXnuW=KLK-Aji_s&!Hv#UiZiW&ok{ z^b^B{k{}U8fd8bz5BsJ=9ePll=Gt$ zJac3Fk{`KLFNH%cz5HBqfo);B7uVHj=oh77EN!iu$xdVQS$cV#n(7%sW9fyh(0ntq z1ynq_HCHMV_)mj|)j+e9ouH}14b9*YHaU*D~=+N(Er$rKm4F(uo1(W-K>Tl8D(li0Cq@t#jLmw9t4m*u^RBXne!YVY_ zzs^GZBUP|uj%dJ=K3oOil#u~fj3x$?9_KEXq;(yDF4Z^=@iHP4(jHKR`hJKJH{!SD zc6J(=q@B6Mx6FhB;y10w{RndwSR@+^5Tcd?jDa_~Mq=vFEb#!l&u0uYAa*x(u|idj zh#u`zF5&~B|1#;vxGeW)3XLTTD5_b)or|U4r|M>_0o&X-l4SC?zvG?riP2 zE?|O5!p?3zx8Nn~hCwH?z^Q5$&jw6F*M!Y!cs>o{>PdqUo76$`jF>qUV9e&ZKnqML z@qcHhffuNEO2?L!7c{fKc%wt%+Tem2h$P=;OFTq7Q331;nH_4u41TU%n)An#40gUV z4UP4OlVU!=@+U|Jnf34cbamZ^`!Z%7<8UiXL-fGVMQH9fKvTG%az(5$WIt#j7UfF7 zCG&uItH%t&K>Jk$p!p8uy(Zg4KsS?pvRw%x%(jfsoSS6tsDLwHJG-EnsF0Ol2Go+L zh3x!^J0mt~zcYfX3A;pm;trFVebCHI0EbHoHTb{V2qb=+yAI9Qll&rKKd75M!hp(m zPZ|p&x7*YDqoCap;4CzQX9>QkXHBRpTN1o_rEzD&IL*~mKd68nO^IPk+wmXwBh>Xl zX_#&zgWVJ*2K%7bnE#Ib~3T73W^+06h)k(9;PTs(m;oMzY7s7nq?)GcJYu^W$=YWs+e zhXKQ+n;@nwfI~988;|o}d#vl@=iWoZxlQm5)lWhzLGf9X(n?eK$@x z4U}7)gSsK{XUajt|2fu-8G4*rz9bwo)(P06v7f5ev1gb9U)8gXtugXpYmC+D4W^&# zETq52^|8Sa`?tEJ6KoxU$;$-(u-#mv(!8>z^@9)CbBoaIwo~8;qV4fA!Fvq($Nn+T zlO&_eJRMX^Bx@?S$jdZu6d1=0G(eKpyiAfX^P@l53({e^m7p5-c2l4qehy-B=q}-{ z$=z0*yi8KRbS80u#ZGTR^138=qkf`ymVY15Dd|bE38G=%B)Zw@jZbLK9tMZ`VQT;t z9bjNUD(GZUV$O#C%k($)lqm~N57Tg95O$Vf&iY`;fVIJZqU{DVdYRb0E+F_5%6oTbJ#>k$AcN5MEGBM$>7Q~qVx5Xo<9#U8#8}RT3(8NtP4xj^&)xNPakC;`ziebrnzm%ruLFY#8%g0K^Oh;Z=+x=ARD7hG@B350Mn4 zoFOt|>VdT~?Mx|`ZGY~9(|5Tsk-+3ILye7VeiR7}qlVobgrIn)V6j5XW^Z7E9gd{J zntKfdXlqO+tXZoh8<_1zCagJnz=!3M#NmiKEY>6xB4?Rx3^Ky(a13KicOO|3<{l9! zw=<8d4of%$xOC`@2M?jXh%9U)7W^97NEgQ zGTW6TIFlo2yJKMht2i9v6>8hZSiUxseZr`bFQxmP&1pISpw>8pX#xZ;$_LX#lRW}G z*W3({cgeX3nL%W1%i?|Lia?`k=ceYGj1HP76s!{x{!FKEJ4ecG z0)RDlmporn<8h5wO+#oV3xM5bP?4;pI)GbCWPI&CRUVFDg=Q3yux!RKZj22YJkoRp zV0{17m(nq#VuB%QVnX!8yb4Bc9yoj6c0Dw+@wlTrFg!nI;%zBi)yVeMRfT5ih74en zV`zr#qMD2IG95E8*KlhtF5B@z7N^-{@%WXB6N2aiBri(!A%@Y$WScH**T>Cj;|!N4 zZRxmvpocOBf~b}m7TE~cW^Ke=?q1@5=mL`Y`b za%MVaV3s*+JojN|88q9?k>{%egsT>C>jJJTmV{#l$H0!1und*eq#ml0r0(`TtIUok zNM)LxX&4p>Z9UgxhTxwWPtZ*1VpN*ag=R{Z+fb&YaC&x1YIn>)G%ZCecb^&C!yx?Z z6PMr%w!&3lRh0!&PSs}KU>LfAjH_%;e}~~~YwUMn31@lSD-vpLIWZP%^}#UUP5DIT zt#|AxIpMb3jEMxRxk7kj!Y4-`EP`;lj{(k2(LmFrX|%j0YLE(4>Us8i{P>L?w&>s8 z6`vi@9Z%cqOrQ~XEY~<_s^Os7JGap6R18|kTbw_6$7Y96&`w2YtceZA5^5=Dxiir6 zQ*nqdVc=q&XoEa0C+iMdEeQ!mW9wU8!uUqBTM#^;fd%g!+jHp*knB`#kOW;ZD=7zR zZ{;kJnsUP<^uhnpOM{qx3AlWve%CBzDzLjpt4S4pwzX8Nuh0ka;-s2A)=rK&Y|J0T3xdPC}*!$VFzsA&Sw4- z`!REDCVzgcVJDO2o{6}LvguF<0bgdRc^~`p`gzMnyO{Ya*M()0{_$jMkb<8 zgt{9e#)ennB3z{)A06A92c!*>a4AbdSR5XQ2uz#?o!ufoll@0!Go^@d+S~fvh_vt? zG{ZrtYtC1^NnM6Y;6K7(foBSGcS1)^L7N>fG^-Gj2cZWR$&Qv025nt$RN%mmP0^74 zqCo<@G(u`JzzF5&(t)*@swU}wbX9luA196<5)r#pJJ(m<}NQXzXOS!*EsP zz~ZepwxT90K(h=TX!gigKrOb#SR@T{l00fiQapM(TZsLK1ll7TyoBOwx6k8lB!yat zpF}x}xRS6wp+Tel2b|_yAXh=*M+DtsZscLQCIm#$yGf+>aG9l)8S-0bQiTTfp}rk2 z82~Gnm2nFFhmcry)hR>{M}Kdp1E9s*8R`6)i2Qniu4g1>sRD@wQI{=pW7Ne$FiD`3 zLGuLd!Y|}>r4KRTNoG^jQ z0ft>&#|TI&TksCKvWxJ5N-(cMC@2*fX8J9+ak>M!cJ?1ci&qkjvO^~#REqjT!=@=`42`S3 zO2gDE72F1|gs{5^AvCj8pp{#PsYA27%)DS>K~`uOlsXt}$5!mWc>Y3_1vEoO$$_*G zGBk`N?Ig0{jK(WTTiR&txgGQWM?7v{D`U24G_Zy&DUL7?1WeaHbDipMAH*M`d@>2O- zIGr5|+-3||njN39{ivJ&m_)JzpxIkF(Ck+BieD}uc3~YG$jIa1T-20u+?ZCJFdh+C z8y}k8rGb{5kaYf!Cm=-25r<|5CHAwST+r->SkN@&2rd78g#Iu7wz`a0Y!94x*K^OE zi=QZm<9qKqaN>cp&pa1@!tC_ty?gIFg(Z4sao62v?q1IBo8Py%YjyAJ?)XKEdzSS* tXWBFE>AnBI$P;^~Pak;U+*8k=`_<>4e&ztfY3qwt2X46G%%k@m_&-8+&v5_% delta 105068 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]U9$> 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%0DIz|0Hl&XbBu3Mt<8~ z`%JUQedYDj4hSeT){+BroN}AEz%50?gC6P51HA)Ih5tw1SLi!5OMm6gwIx;Kk`v@5 z0MXcyi?BZWe|VF6OAQ+N&g_tUrMR%q8Zo%VY0?Bqv!=m15a(aL(MQLVr~9OCDHl%@ zjdf8OAhgcAJ@*GpnMb?ch+-kl{+}I?dP!O8mgm}JBS0y2wgE9R=UaazGa(wP`}&1! z+TX;0C>0D%Zv#U+KK(CHI}S@60)PhfbzL8FpWv{h`=c8!L*^$bllV!YGa{sMS!W}wM>*U?K?0-AIhw1eJc z1kG&m#Ci}C3~_+!0h?40&;&I?BV(OhAf9ObvHmOjxk({eAYm;QQqB;npq|H02f1!2 zd0?JL>P=MfpN6_J1C2K*a@KfHp$c#s^dJ?q!H0zfYayUUiMH@DMIjoP=Wa!l^{&il zrZ%9df&0%qS6>RkE{iok~`>pq%y!`V0OW*p=_ui_%LcTnC z>6`Dq`>g(x<=ubt$xB~;=iBeTSO1SBwEutY{*PX+zn=NIhgawEb!wwu{ru}Z$2V?X z+wDKU+q^o=uYc~9`~SbmpWMIl%9HOtd;0#fzkdI%Z$BYxP65G_7hin+8((bAl A7XSbN diff --git a/docs/manual/options.pdf b/docs/manual/options.pdf index af3b68f1e6f955d4aa4be0effa5be95704416eb0..58df7031fca1c2784c1bb362f4bd963fbc9e32f9 100644 GIT binary patch delta 11769 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 F{|5pRQg|cTw~{SUNysj1 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 diff --git a/docs/spatch.1.in b/docs/spatch.1.in index 72a6780..d06b882 100644 --- a/docs/spatch.1.in +++ b/docs/spatch.1.in @@ -1,6 +1,6 @@ .\" -*- nroff -*- .\" Please adjust this date whenever revising the manpage. -.TH SPATCH 1 "January 28, 2010" +.TH SPATCH 1 "may 17, 2011" .\" see http://www.fnal.gov/docs/products/ups/ReferenceManual/html/manpages.html .\" see http://www.linuxjournal.com/article/1158 @@ -146,7 +146,7 @@ This file contains the default set of macro hints. .SH ENVIRONMENT .IP COCCINELLE_HOME -The path to coccinelle share directory. Defaut is +The path to the Coccinelle share directory. Default is .I SHAREDIR .SH REFERENCES @@ -167,7 +167,7 @@ and Julia Lawall . Send a mail to .SH COPYRIGHT -Copyright 2010, University of Copenhagen DIKU and INRIA. +Copyright 2010, 2011, University of Copenhagen DIKU and INRIA. Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen. spatch is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/engine/Makefile b/engine/Makefile index 6a7fa2c..4248d2d 100644 --- a/engine/Makefile +++ b/engine/Makefile @@ -33,7 +33,7 @@ SRC= flag_matcher.ml lib_engine.ml pretty_print_engine.ml \ check_exhaustive_pattern.ml \ check_reachability.ml \ c_vs_c.ml isomorphisms_c_c.ml \ - cocci_vs_c.ml pattern_c.ml sgrep.ml transformation_c.ml \ + cocci_vs_c.ml pattern_c.ml transformation_c.ml \ asttomember.ml asttoctl2.ml ctltotex.ml \ postprocess_transinfo.ml ctlcocci_integration.ml diff --git a/engine/asttoctl2.ml b/engine/asttoctl2.ml index 0ad73e2..05bf39c 100644 --- a/engine/asttoctl2.ml +++ b/engine/asttoctl2.ml @@ -1283,12 +1283,13 @@ let svar_minus_or_no_add_after stmt s label quantified d ast | (Ast.MINUS(pos,inst,adj,l),after) -> let (first_metamatch,last_metamatch,rest_metamatch) = match l with - [] -> (matcher(Ast.CONTEXT(pos,Ast.NOTHING)),CTL.True,matcher d) + Ast.NOREPLACEMENT -> + (matcher(Ast.CONTEXT(pos,Ast.NOTHING)),CTL.True,matcher d) | _ -> (matcher d, - matcher(Ast.MINUS(pos,inst,adj,[])), + matcher(Ast.MINUS(pos,inst,adj,Ast.NOREPLACEMENT)), ctl_and CTL.NONSTRICT (ctl_not (make_raw_match label false ast)) - (matcher(Ast.MINUS(pos,inst,adj,[])))) in + (matcher(Ast.MINUS(pos,inst,adj,Ast.NOREPLACEMENT)))) in (* try to follow after link *) let to_end = ctl_or (aftpred None) (loopfallpred None) in let is_compound = @@ -1729,13 +1730,29 @@ and statement stmt after quantified minus_quantified (Ast.MINUS(_,inst1,adj1,l1),Ast.MINUS(_,_,_,l2)) when !Flag.sgrep_mode2 -> (* in sgrep mode, we can propagate the - *) - Some (Ast.MINUS(Ast.NoPos,inst1,adj1,l1@l2)) + let new_info = + match (l1,l2) with + (Ast.NOREPLACEMENT,Ast.NOREPLACEMENT) -> + Ast.NOREPLACEMENT + | _ -> + failwith "no replacements allowed in sgrep mode" in + Some (Ast.MINUS(Ast.NoPos,inst1,adj1,new_info)) | (Ast.MINUS(_,_,_,l1),Ast.MINUS(_,_,_,l2)) -> - Some (Ast.CONTEXT(Ast.NoPos,Ast.BEFORE(l1@l2,Ast.ONE))) + let change = + match (l1,l2) with + (Ast.NOREPLACEMENT,Ast.NOREPLACEMENT) -> + Ast.NOTHING + | (Ast.NOREPLACEMENT,Ast.REPLACEMENT(l,ct)) + | (Ast.REPLACEMENT(l,ct),Ast.NOREPLACEMENT) -> + Ast.BEFORE(l,ct) + | (Ast.REPLACEMENT(l1,ct1),Ast.REPLACEMENT(l2,ct2)) -> + Ast.BEFORE(l1@l2,Ast.lub_count ct1 ct2) in + Some (Ast.CONTEXT(Ast.NoPos,change)) | (Ast.CONTEXT(_,Ast.BEFORE(l1,c1)), Ast.CONTEXT(_,Ast.AFTER(l2,c2))) -> - (if not (c1 = c2) then failwith "bad + code"); - Some (Ast.CONTEXT(Ast.NoPos,Ast.BEFORE(l1@l2,c1))) + Some + (Ast.CONTEXT(Ast.NoPos, + Ast.BEFORE(l1@l2,Ast.lub_count c1 c2))) | (Ast.CONTEXT(_,Ast.BEFORE(_)),Ast.CONTEXT(_,Ast.NOTHING)) | (Ast.CONTEXT(_,Ast.NOTHING),Ast.CONTEXT(_,Ast.NOTHING)) -> Some retmc @@ -2299,10 +2316,10 @@ and statement stmt after quantified minus_quantified [body] -> (match Ast.unwrap body with Ast.Dots - ((_,i,(Ast.MINUS(_,_,_,[]) as d),_),[],_,_) -> + ((_,i,(Ast.MINUS(_,_,_,Ast.NOREPLACEMENT) as d),_),[],_,_) -> (match (Ast.unwrap lbrace,Ast.unwrap rbrace) with - (Ast.SeqStart((_,_,Ast.MINUS(_,_,_,[]),_)), - Ast.SeqEnd((_,_,Ast.MINUS(_,_,_,[]),_))) + (Ast.SeqStart((_,_,Ast.MINUS(_,_,_,Ast.NOREPLACEMENT),_)), + Ast.SeqEnd((_,_,Ast.MINUS(_,_,_,Ast.NOREPLACEMENT),_))) when not (contains_pos rbrace) -> Some (* andany drops everything to the end, including close diff --git a/engine/cocci_vs_c.ml b/engine/cocci_vs_c.ml index ba46d5f..aa3849e 100644 --- a/engine/cocci_vs_c.ml +++ b/engine/cocci_vs_c.ml @@ -105,12 +105,12 @@ let mcodekind mc = A.get_mcodekind mc let mcode_contain_plus = function | A.CONTEXT (_,A.NOTHING) -> false | A.CONTEXT _ -> true - | A.MINUS (_,_,_,[]) -> false - | A.MINUS (_,_,_,x::xs) -> true + | A.MINUS (_,_,_,A.NOREPLACEMENT) -> false + | A.MINUS (_,_,_,A.REPLACEMENT _) -> true (* repl is nonempty *) | A.PLUS _ -> raise Impossible let mcode_simple_minus = function - | A.MINUS (_,_,_,[]) -> true + | A.MINUS (_,_,_,A.NOREPLACEMENT) -> true | _ -> false @@ -125,7 +125,7 @@ let mcode_simple_minus = function let minusizer = ("fake","fake"), {A.line = 0; A.column =0; A.strbef=[]; A.straft=[];}, - (A.MINUS(A.DontCarePos,[],-1,[])), + (A.MINUS(A.DontCarePos,[],A.ALLMINUS,A.NOREPLACEMENT)), [] let generalize_mcode ia = @@ -170,13 +170,14 @@ let equal_c_int s1 s2 = let equal_unaryOp a b = match a, b with | A.GetRef , B.GetRef -> true + | A.GetRefLabel, B.GetRefLabel -> true | A.DeRef , B.DeRef -> true | A.UnPlus , B.UnPlus -> true | A.UnMinus , B.UnMinus -> true | A.Tilde , B.Tilde -> true | A.Not , B.Not -> true - | _, B.GetRefLabel -> false (* todo cocci? *) - | _, (B.Not|B.Tilde|B.UnMinus|B.UnPlus|B.DeRef|B.GetRef) -> false + | _, (B.Not|B.Tilde|B.UnMinus|B.UnPlus|B.DeRef|B.GetRef|B.GetRefLabel) -> + false @@ -881,12 +882,10 @@ let list_matcher match_dots rebuild_dots match_comma rebuild_comma X.envf lenkeep leninherited (lenname, Ast_c.MetaListlenVal (len), max_min) | A.CstListLen n -> - Printf.printf "cstlen\n"; if len = n then (function f -> f()) else (function f -> fail) - | A.AnyListLen -> Printf.printf "anylen\n"; function f -> f() - ) + | A.AnyListLen -> function f -> f()) (fun () -> let max_min _ = Lib_parsing_c.lin_col_by_pos (get_iis startxs) in @@ -1340,18 +1339,17 @@ let rec (expression: (A.expression, Ast_c.expression) matcher) = )))) | A.NestExpr(starter,exps,ender,None,true), eb -> - (match A.get_mcodekind starter with - A.MINUS _ -> failwith "TODO: only context nests supported" - | _ -> ()); (match A.unwrap exps with A.DOTS [exp] -> X.cocciExpExp expression exp eb >>= (fun exp eb -> + X.distrf_e (dots2metavar starter) eb >>= (fun mcode eb -> return ( (A.NestExpr - (starter,A.rewrap exps (A.DOTS [exp]),ender,None,true)) +> wa, + (metavar2dots mcode, + A.rewrap exps (A.DOTS [exp]),ender,None,true)) +> wa, eb ) - ) + )) | _ -> failwith "for nestexpr, only handling the case with dots and only one exp") @@ -3850,16 +3848,25 @@ let rec (rule_elem_node: (A.rule_elem, Control_flow_c.node) matcher) = F.SeqEnd (level, i1) )) - | A.ExprStatement (ea, ia1), F.ExprStatement (st, (Some eb, ii)) -> + | A.ExprStatement (Some ea, ia1), F.ExprStatement (st, (Some eb, ii)) -> let ib1 = tuple_of_list1 ii in expression ea eb >>= (fun ea eb -> tokenf ia1 ib1 >>= (fun ia1 ib1 -> return ( - A.ExprStatement (ea, ia1), + A.ExprStatement (Some ea, ia1), F.ExprStatement (st, (Some eb, [ib1])) ) )) + | A.ExprStatement (None, ia1), F.ExprStatement (st, (None, ii)) -> + let ib1 = tuple_of_list1 ii in + tokenf ia1 ib1 >>= (fun ia1 ib1 -> + return ( + A.ExprStatement (None, ia1), + F.ExprStatement (st, (None, [ib1])) + ) + ) + | A.IfHeader (ia1,ia2, ea, ia3), F.IfHeader (st, (eb,ii)) -> let (ib1, ib2, ib3) = tuple_of_list3 ii in diff --git a/engine/postprocess_transinfo.ml b/engine/postprocess_transinfo.ml index 73c7c0a..81cbcda 100644 --- a/engine/postprocess_transinfo.ml +++ b/engine/postprocess_transinfo.ml @@ -98,7 +98,9 @@ let process_tree inherited_env l = str | _ -> failwith "bad id value") with - Not_found -> failwith "fresh: no binding for meta") + Not_found -> + failwith + ("fresh: no binding for meta "^(Dumper.dump id))) seed in string2val(String.concat "" strings))) all_fresh in @@ -142,14 +144,26 @@ let collect_used_after used_after envs l inherited_env = (* ----------------------------------------------------------------------- *) (* distinguish between distinct witness trees, each gets an index n *) +(* index should be global, so that it can extend over environments *) + +let index = ref (-1) + +let fold_left_with_index f acc = + let rec fold_lwi_aux acc = function + | [] -> acc + | x::xs -> + let n = !index in + index := !index + 1; + fold_lwi_aux (f acc x n) xs + in fold_lwi_aux acc let numberify trees = let trees = - Common.fold_left_with_index + fold_left_with_index (function acc -> function xs -> function n -> (List.map (function x -> (n,x)) xs) @ acc) [] trees in - List.fold_left + List.fold_left (function res -> function (n,x) -> let (same,diff) = List.partition (function (ns,xs) -> x = xs) res in diff --git a/engine/postprocess_transinfo.mli b/engine/postprocess_transinfo.mli index b5fde8f..09f3fa5 100644 --- a/engine/postprocess_transinfo.mli +++ b/engine/postprocess_transinfo.mli @@ -29,7 +29,7 @@ val process : (Ograph_extended.nodei * (Ast_cocci.meta_name * Lib_engine.metavar_binding_kind2) list * Lib_engine.predicate) list list -> - (int list * + (int list (*index*) * (Ograph_extended.nodei * (Ast_cocci.meta_name * Lib_engine.metavar_binding_kind2) list * diff --git a/engine/sgrep.ml b/engine/sgrep.ml index f1089b2..7442026 100644 --- a/engine/sgrep.ml +++ b/engine/sgrep.ml @@ -22,6 +22,8 @@ *) +(* no longer used *) + type marker = NoMark | BefMark of string | AftMark of string | BefAftMark of string * string diff --git a/engine/transformation_c.ml b/engine/transformation_c.ml index e33524b..6270e73 100644 --- a/engine/transformation_c.ml +++ b/engine/transformation_c.ml @@ -208,11 +208,15 @@ module XTRANS = struct | _ -> () ); - let many_count = function + let many_context_count = function Ast_cocci.BEFORE(_,Ast_cocci.MANY) | Ast_cocci.AFTER(_,Ast_cocci.MANY) | Ast_cocci.BEFOREAFTER(_,_,Ast_cocci.MANY) -> true | _ -> false in + let many_minus_count = function + Ast_cocci.REPLACEMENT(_,Ast_cocci.MANY) -> true + | _ -> false in + (match (oldmcode,mck) with | (Ast_cocci.CONTEXT(_,Ast_cocci.NOTHING), _) -> (* nothing there, so take the new stuff *) @@ -224,23 +228,39 @@ module XTRANS = struct | (_, Ast_cocci.CONTEXT(_,Ast_cocci.NOTHING)) -> (* can this case occur? stay with the old stuff *) () - | (Ast_cocci.MINUS(old_pos,old_inst,old_adj,[]), - Ast_cocci.MINUS(new_pos,new_inst,new_adj,[])) - when old_pos = new_pos && - (List.mem tin.binding oldenvs or !Flag.sgrep_mode2) + | (Ast_cocci.MINUS(old_pos,old_inst,old_adj,Ast_cocci.NOREPLACEMENT), + Ast_cocci.MINUS(new_pos,new_inst,new_adj,Ast_cocci.NOREPLACEMENT)) + when old_pos = new_pos + (* not sure why the following condition is useful. + should be ok to double remove even if the environments are + different *) + (* && + (List.mem tin.binding oldenvs or !Flag.sgrep_mode2) *) (* no way to combine adjacency information, just drop one *) -> cocciinforef := Some (Ast_cocci.MINUS - (old_pos,Common.union_set old_inst new_inst,old_adj,[]), + (old_pos,Common.union_set old_inst new_inst,old_adj, + Ast_cocci.NOREPLACEMENT), [tin.binding]); (if !Flag_matcher.show_misc - then pr2 "already tagged but only removed, so safe") + then pr2_once "already tagged but only removed, so safe") + + (* ++ cases *) + | (Ast_cocci.MINUS(old_pos,old_inst,old_adj,old_modif), + Ast_cocci.MINUS(new_pos,new_inst,new_adj,new_modif)) + when old_pos = new_pos && + old_modif = new_modif && many_minus_count old_modif -> + + cocciinforef := + Some(Ast_cocci.MINUS(old_pos,Common.union_set old_inst new_inst, + old_adj,old_modif), + tin.binding::oldenvs) | (Ast_cocci.CONTEXT(old_pos,old_modif), Ast_cocci.CONTEXT(new_pos,new_modif)) when old_pos = new_pos && - old_modif = new_modif && many_count old_modif -> + old_modif = new_modif && many_context_count old_modif -> (* iteration only allowed on context; no way to replace something more than once; now no need for iterable; just check a flag *) @@ -335,9 +355,11 @@ module XTRANS = struct (fun ib -> tag_with_mck (Ast_cocci.MINUS (pos,inst,adj,any_xxs)) ib tin), (fun ib -> - tag_with_mck (Ast_cocci.MINUS (pos,inst,adj,[])) ib tin), + tag_with_mck + (Ast_cocci.MINUS (pos,inst,adj,Ast_cocci.NOREPLACEMENT)) ib tin), (fun ib -> - tag_with_mck (Ast_cocci.MINUS (pos,inst,adj,[])) ib tin), + tag_with_mck + (Ast_cocci.MINUS (pos,inst,adj,Ast_cocci.NOREPLACEMENT)) ib tin), (fun ib -> tag_with_mck (Ast_cocci.MINUS (pos,inst,adj,any_xxs)) ib tin) ) expr diff --git a/globals/config.ml.in b/globals/config.ml.in index f448bf1..26b2e40 100644 --- a/globals/config.ml.in +++ b/globals/config.ml.in @@ -1,4 +1,4 @@ -let version = "1.0.0-rc1" +let version = "1.0.0-rc2" let path = try (Sys.getenv "COCCINELLE_HOME") diff --git a/ocaml/Makefile b/ocaml/Makefile index 760da79..01806eb 100644 --- a/ocaml/Makefile +++ b/ocaml/Makefile @@ -24,6 +24,7 @@ SYSLIBS= str.cma unix.cma #for warning: -w A #for profiling: -p -inline 0 with OCAMLOPT OCAMLCFLAGS ?= -g -dtypes +OPTFLAGS?=$(OCAMLCFLAGS) OCAMLC=ocamlc$(OPTBIN) $(OCAMLCFLAGS) $(INCLUDES) OCAMLOPT=ocamlopt$(OPTBIN) $(OPTFLAGS) $(INCLUDES) diff --git a/ocaml/prepare_ocamlcocci.ml b/ocaml/prepare_ocamlcocci.ml new file mode 120000 index 0000000..59536b4 --- /dev/null +++ b/ocaml/prepare_ocamlcocci.ml @@ -0,0 +1 @@ +yes_prepare_ocamlcocci.ml \ No newline at end of file diff --git a/ocaml/yes_prepare_ocamlcocci.ml b/ocaml/yes_prepare_ocamlcocci.ml index 1727c8a..7f835a7 100644 --- a/ocaml/yes_prepare_ocamlcocci.ml +++ b/ocaml/yes_prepare_ocamlcocci.ml @@ -5,7 +5,7 @@ exception LinkFailure of string let ext = if Dynlink.is_native then ".cmxs" else ".cma" -let sysdir = +let sysdir () = let sysdircmd = !Flag.ocamlfind ^ " printconf stdlib" in match Common.cmd_to_list sysdircmd with [sysdir] -> sysdir @@ -368,7 +368,7 @@ let load_file mlfile = let flags = Printf.sprintf "-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 + (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/parsing_c/ast_c.ml b/parsing_c/ast_c.ml index e76e208..a1e9760 100644 --- a/parsing_c/ast_c.ml +++ b/parsing_c/ast_c.ml @@ -291,7 +291,8 @@ and attribute = attributebis wrap and expression = (expressionbis * exp_info ref (* semantic: *)) wrap3 and exp_info = exp_type option * test and exp_type = fullType (* Type_c.completed_and_simplified *) * local - and local = LocalVar of parse_info | NotLocalVar (* cocci: *) + and local = LocalVar of parse_info | StaticLocalVar of parse_info + | NotLocalVar (* cocci: *) and test = Test | NotTest (* cocci: *) and expressionbis = diff --git a/parsing_c/control_flow_c_build.ml b/parsing_c/control_flow_c_build.ml index a911d45..b346791 100644 --- a/parsing_c/control_flow_c_build.ml +++ b/parsing_c/control_flow_c_build.ml @@ -1031,8 +1031,13 @@ and aux_statement_list starti (xi, newxi) statxs = let (head, body, tail) = Common.head_middle_tail ifdefs in - let newi = !g +> add_node (IfdefHeader (head)) newxi'.labels "[ifdef]" in - let taili = !g +> add_node (IfdefEndif (tail)) newxi'.labels "[endif]" in + let newi = + !g +> add_node (IfdefHeader (head)) newxi'.labels "[ifdef]" in + let taili = + !g +> add_node (IfdefEndif (tail)) newxi'.labels "[endif]" in + (* do like for a close brace, see endi.{c,cocci} *) + let taili_dup = + mk_fake_node (IfdefEndif (tail)) newxi'.labels [] "[endif]" in !g +> add_arc_opt (starti, newi); let elsenodes = @@ -1045,8 +1050,12 @@ and aux_statement_list starti (xi, newxi) statxs = let _finalxs = Common.zip (newi::elsenodes) xxs +> List.map (fun (start_nodei, xs)-> + (* not sure if this is correct... newxi seems to relate to + the assigned level number *) + let newerxi = + { newxi with braces = taili_dup:: newxi.braces } in let finalthen = - aux_statement_list (Some start_nodei) (newxi, newxi) xs in + aux_statement_list (Some start_nodei) (newxi, newerxi) xs in !g +> add_arc_opt (finalthen, taili); ) in diff --git a/parsing_c/parse_c.ml b/parsing_c/parse_c.ml index 251e50d..5bfe014 100644 --- a/parsing_c/parse_c.ml +++ b/parsing_c/parse_c.ml @@ -1061,7 +1061,7 @@ let parse_cache file = if not !Flag_parsing_c.use_cache then parse_print_error_heuristic None None file else - let _ = pr2 "TOFIX" in + let _ = pr2 "TOFIX: use_cache is not sensitive to changes in the considered macros, include files, etc" in let need_no_changed_files = (* should use Sys.argv.(0), would be safer. *) diff --git a/parsing_c/parsing_hacks.ml b/parsing_c/parsing_hacks.ml index f9019e8..76b445c 100644 --- a/parsing_c/parsing_hacks.ml +++ b/parsing_c/parsing_hacks.ml @@ -972,7 +972,6 @@ let rec find_macro_paren xs = (* recurse, may have other storage attributes *) find_macro_paren (PToken (tok1)::xs) - *) (* storage attribute *) diff --git a/parsing_c/type_annoter_c.ml b/parsing_c/type_annoter_c.ml index 010f2ab..7ae25b3 100644 --- a/parsing_c/type_annoter_c.ml +++ b/parsing_c/type_annoter_c.ml @@ -811,7 +811,6 @@ let annotater_expr_visitor_subpart = (fun (k,bigf) expr -> make_info_def_fix ft ) - (* -------------------------------------------------- *) (* fields *) | RecordAccess (e, namefld) @@ -1072,9 +1071,11 @@ let rec visit_toplevel ~just_add_in_env ~depth elem = let local = - match local with - | Ast_c.NotLocalDecl -> Ast_c.NotLocalVar - | Ast_c.LocalDecl -> Ast_c.LocalVar (Ast_c.info_of_type t) + match (sto,local) with + | (_,Ast_c.NotLocalDecl) -> Ast_c.NotLocalVar + | ((Ast_c.Sto Ast_c.Static, _), Ast_c.LocalDecl) -> + Ast_c.StaticLocalVar (Ast_c.info_of_type t) + | (_,Ast_c.LocalDecl) -> Ast_c.LocalVar (Ast_c.info_of_type t) in var +> Common.do_option (fun (name, iniopt) -> let s = Ast_c.str_of_name name in diff --git a/parsing_c/unparse_c.ml b/parsing_c/unparse_c.ml index cc08b84..2996d18 100644 --- a/parsing_c/unparse_c.ml +++ b/parsing_c/unparse_c.ml @@ -52,13 +52,13 @@ type token1 = *) type min = Min of (int list (* match numbers from witness trees *) * - int (* adjacency information *)) + Ast_cocci.adjacency (* adjacency information *)) | Ctx type token2 = | T2 of Parser_c.token * min * int option (* orig index, abstracting away comments and space *) - | Fake2 + | Fake2 of min | Cocci2 of string * int (* line *) * int (* lcol *) * int (* rcol *) * Unparse_cocci.nlhint option | C2 of string @@ -98,7 +98,7 @@ let print_token1 = function let str_of_token2 = function | T2 (t,_,_) -> TH.str_of_tok t - | Fake2 -> "" + | Fake2 _ -> "" | Cocci2 (s,_,_,_,_) -> s | C2 s -> s | Comma s -> s @@ -107,14 +107,31 @@ let str_of_token2 = function let print_token2 = function | T2 (t,b,_) -> + let t_str = + match t with + | Parser_c.TCommentSpace _ -> " sp " + | Parser_c.TCommentNewline _ -> " nl " + | Parser_c.TCommentCpp _ -> " cp " + | Parser_c.TCommentMisc _ -> " misc " + | Parser_c.TComment _ -> " comment " + | _ -> "" in let b_str = match b with Min (index,adj) -> - Printf.sprintf "-%d[%s]" adj + Printf.sprintf "-%d[%s]" + (match adj with Ast_cocci.ADJ n -> n | _ -> -1) (String.concat " " (List.map string_of_int index)) | Ctx -> "" in - "T2:"^b_str^TH.str_of_tok t - | Fake2 -> "fake" + "T2:"^b_str^t_str^TH.str_of_tok t + | Fake2 b -> + let b_str = + match b with + Min (index,adj) -> + Printf.sprintf "-%d[%s]" + (match adj with Ast_cocci.ADJ n -> n | _ -> -1) + (String.concat " " (List.map string_of_int index)) + | Ctx -> "" in + b_str^"fake" | Cocci2 (s,_,lc,rc,_) -> Printf.sprintf "Cocci2:%d:%d%s" lc rc s | C2 s -> "C2:"^s | Comma s -> "Comma:"^s @@ -162,8 +179,8 @@ let mcode_contain_plus = function | Ast_cocci.CONTEXT (_,Ast_cocci.NOTHING) -> false | Ast_cocci.CONTEXT _ -> true (* patch: when need full coccinelle transformation *) - | Ast_cocci.MINUS (_,_,_,[]) -> false - | Ast_cocci.MINUS (_,_,_,x::xs) -> true + | Ast_cocci.MINUS (_,_,_,Ast_cocci.NOREPLACEMENT) -> false + | Ast_cocci.MINUS (_,_,_,Ast_cocci.REPLACEMENT _) -> true(*REPL is not empty*) | Ast_cocci.PLUS _ -> raise Impossible let contain_plus info = @@ -254,7 +271,7 @@ let get_fakeInfo_and_tokens celem toks = List.rev !toks_out -(* Fake nodes that have BEFORE code should be moved over any subsequent +(* Fake nodes that have BEFORE code or are - should be moved over any subsequent whitespace and newlines, but not any comments, to get as close to the affected code as possible. Similarly, fake nodes that have AFTER code should be moved backwards. No fake nodes should have both before and after code. *) @@ -275,7 +292,8 @@ let displace_fake_nodes toks = (match !(info.cocci_tag) with | Some x -> (match x with - (Ast_cocci.CONTEXT(_,Ast_cocci.BEFORE _),_) -> + (Ast_cocci.CONTEXT(_,Ast_cocci.BEFORE _),_) + | (Ast_cocci.MINUS(_,_,_,Ast_cocci.REPLACEMENT _),_) -> (* move the fake node forwards *) let (whitespace,rest) = Common.span is_whitespace aft in bef @ whitespace @ fake :: (loop rest) @@ -323,7 +341,7 @@ let expand_mcode toks = | Fake1 info -> let str = Ast_c.str_of_info info in if str =$= "" - then push2 (Fake2) toks_out + then push2 (Fake2 minus) toks_out (* fx the fake "," at the end of a structure or enum. no idea what other fake info there can be... *) else push2 (Comma str) toks_out @@ -412,7 +430,10 @@ let expand_mcode toks = * set of tokens, so I can then process and remove the * is_between_two_minus for instance *) add_elem t (Min (inst,adj)); - unparser any_xxs Unparse_cocci.InPlace + (match any_xxs with + Ast_cocci.NOREPLACEMENT -> () + | Ast_cocci.REPLACEMENT(any_xxs,_) -> + unparser any_xxs Unparse_cocci.InPlace) | Ast_cocci.CONTEXT (_,any_befaft) -> (match any_befaft with | Ast_cocci.NOTHING -> @@ -526,6 +547,7 @@ let set_minus_comment adj = function T2 (t, Min adj, idx) (* patch: coccinelle *) | T2 (t,Min adj,idx) as x -> x + | Fake2 _ as x -> x | _ -> raise Impossible let set_minus_comment_or_plus adj = function @@ -538,17 +560,22 @@ let drop_minus xs = | _ -> false ) -let drop_expanded_and_fake xs = +let drop_expanded xs = xs +> Common.exclude (function | T2 (t,_,_) when TH.is_expanded t -> true - | Fake2 -> true + | _ -> false + ) + +let drop_fake xs = + xs +> Common.exclude (function + | Fake2 _ -> true | _ -> false ) let remove_minus_and_between_and_expanded_and_fake xs = - (* get rid of expanded and fake tok *) - let xs = drop_expanded_and_fake xs in + (* get rid of expanded tok *) + let xs = drop_expanded xs in let minus_or_comment = function T2(_,Min adj,_) -> true @@ -559,7 +586,11 @@ let remove_minus_and_between_and_expanded_and_fake xs = | x -> is_minusable_comment_nocpp x in let common_adj (index1,adj1) (index2,adj2) = - adj1 = adj2 (* same adjacency info *) && + let same_adj = (* same adjacency info *) + match (adj1,adj2) with + (Ast_cocci.ADJ adj1,Ast_cocci.ADJ adj2) -> adj1 = adj2 + | (Ast_cocci.ALLMINUS,_) | (_,Ast_cocci.ALLMINUS) -> true in + same_adj && (* non-empty intersection of witness trees *) not ((Common.inter_set index1 index2) = []) in @@ -574,7 +605,7 @@ let remove_minus_and_between_and_expanded_and_fake xs = let rec adjust_around_minus = function [] -> [] | (T2(Parser_c.TCommentNewline c,_b,_i) as x):: - (T2(_,Min adj1,_) as t1)::xs -> + ((Fake2(Min adj1) | T2(_,Min adj1,_)) as t1)::xs -> let (minus_list,rest) = Common.span not_context (t1::xs) in let contains_plus = List.exists is_plus minus_list in let x = @@ -585,22 +616,23 @@ let remove_minus_and_between_and_expanded_and_fake xs = | _ -> x in x :: adjust_within_minus contains_plus minus_list @ adjust_around_minus rest - | (T2(_,Min adj1,_) as t1)::xs -> + | ((Fake2(Min adj1) | T2(_,Min adj1,_)) as t1)::xs -> let (minus_list,rest) = Common.span not_context (t1::xs) in let contains_plus = List.exists is_plus minus_list in adjust_within_minus contains_plus minus_list @ adjust_around_minus rest | x::xs -> x :: adjust_around_minus xs and adjust_within_minus cp (* contains plus *) = function - (T2(_,Min adj1,_) as t1)::xs -> + ((Fake2(Min adj1) | T2(_,Min adj1,_)) as t1)::xs -> let not_minus = function T2(_,Min _,_) -> false | _ -> true in let (not_minus_list,rest) = Common.span not_minus xs in t1 :: (match rest with - (T2(_,Min adj2,_) as t2)::xs when common_adj adj1 adj2 -> + ((Fake2(Min adj2) | T2(_,Min adj2,_)) as t2)::xs + when common_adj adj1 adj2 -> (List.map (set_minus_comment_or_plus adj1) not_minus_list) @ (adjust_within_minus cp (t2::xs)) - | (T2(_,Min adj2,_) as t2)::xs -> + | ((Fake2(Min adj2) | T2(_,Min adj2,_)) as t2)::xs -> if not cp && List.for_all is_whitespace not_minus_list then (List.map (set_minus_comment_or_plus adj1) not_minus_list) @@ -611,6 +643,8 @@ let remove_minus_and_between_and_expanded_and_fake xs = if cp then xs else + (* remove spaces after removed stuff, eg a comma after a + function argument *) let (spaces,rest) = Common.span is_space xs in (List.map (set_minus_comment_or_plus adj1) spaces) @ rest) @@ -624,6 +658,9 @@ let remove_minus_and_between_and_expanded_and_fake xs = let xs = adjust_around_minus xs in + (* get rid of fake tok *) + let xs = drop_fake xs in + (* this drops blank lines after a brace introduced by removing code *) let minus_or_comment_nonl = function T2(_,Min adj,_) -> true @@ -709,7 +746,7 @@ let adjust_before_semicolon toks = [] -> [] | ((T2(_,Ctx,_)) as x)::xs | ((Cocci2 _) as x)::xs -> if List.mem (str_of_token2 x) [";";")";","] - then x :: search_minus false xs + then x :: search_semic (search_minus false xs) else x :: search_semic xs | x::xs -> x :: search_semic xs and search_minus seen_minus xs = @@ -720,6 +757,28 @@ let adjust_before_semicolon toks = | _ -> if seen_minus then rest else xs in List.rev (search_semic toks) +(* normally, in C code, a ( is not followed by a space or newline *) +let adjust_after_paren toks = + let rec search_paren = function + [] -> [] + | ((T2(_,Ctx,_)) as x)::xs | ((Cocci2 _) as x)::xs -> + if List.mem (str_of_token2 x) ["("] (* other things? *) + then x :: search_paren(search_minus false xs) + else x :: search_paren xs + | x::xs -> x :: search_paren xs + and search_minus seen_minus xs = + let (spaces, rest) = Common.span is_space xs in + (* only delete spaces if something is actually deleted *) + match rest with + ((T2(_,Min _,_)) as a)::rerest -> (* minus *) + a :: search_minus true rerest + | ((T2(_,Ctx,_)) as a)::rerest when str_of_token2 a = "," -> + (* comma after ( will be deleted, so consider it as minus code + already *) + a :: search_minus true rerest + | _ -> if seen_minus then rest else xs in (* drop trailing space *) + search_paren toks + let is_ident_like s = s ==~ Common.regexp_alpha let rec drop_space_at_endline = function @@ -861,7 +920,7 @@ let add_newlines toks tabbing_unit = a :: rest | ((C2(s)) as a)::xs -> a :: loop info (string_length s count) xs | ((Comma(s)) as a)::xs -> a :: loop info (string_length s count) xs - | Fake2 :: _ | Indent_cocci2 :: _ + | Fake2 _ :: _ | Indent_cocci2 :: _ | Unindent_cocci2 _::_ -> failwith "unexpected fake, indent, or unindent" in let redo_spaces prev = function @@ -1053,7 +1112,7 @@ let fix_tokens toks = type kind_token2 = KFake | KCocci | KC | KExpanded | KOrigin let kind_of_token2 = function - | Fake2 -> KFake + | Fake2 _ -> KFake | Cocci2 _ -> KCocci | C2 _ -> KC | Comma _ -> KC @@ -1163,11 +1222,12 @@ let pp_program2 xs outfile = if !Flag.sgrep_mode2 then (* nothing else to do for sgrep *) - drop_expanded_and_fake (drop_minus toks) + drop_expanded(drop_fake(drop_minus toks)) else (* phase2: can now start to filter and adjust *) let (toks,tu) = adjust_indentation toks in let toks = adjust_before_semicolon toks in(*before remove minus*) + let toks = adjust_after_paren toks in(*also before remove minus*) let toks = drop_space_at_endline toks in let toks = paren_to_space toks in let toks = drop_end_comma toks in diff --git a/parsing_c/unparse_cocci.ml b/parsing_c/unparse_cocci.ml index c4a4e0d..80f052e 100644 --- a/parsing_c/unparse_cocci.ml +++ b/parsing_c/unparse_cocci.ml @@ -182,7 +182,9 @@ let mcode fn (s,info,mc,pos) = force_newline(); print_text "- "; fn s line lcol; print_pos pos; - print_anything plus_stream + (match plus_stream with + Ast.NOREPLACEMENT -> () + | Ast.REPLACEMENT(plus_stream,ct) -> print_anything plus_stream) | (true, Ast.CONTEXT(_,plus_streams)) -> let fn s = force_newline(); fn s line lcol; print_pos pos in print_around fn s plus_streams @@ -387,6 +389,7 @@ and arg_expression e = and unaryOp = function Ast.GetRef -> print_string "&" + | Ast.GetRefLabel -> print_string "&&" | Ast.DeRef -> print_string "*" | Ast.UnPlus -> print_string "+" | Ast.UnMinus -> print_string "-" @@ -763,7 +766,7 @@ and rule_elem arity re = end_block(); pr_arity arity; mcode print_string brace | Ast.ExprStatement(exp,sem) -> - pr_arity arity; expression exp; mcode print_string sem + pr_arity arity; print_option expression exp; mcode print_string sem | Ast.IfHeader(iff,lp,exp,rp) -> pr_arity arity; @@ -1077,6 +1080,8 @@ let rec pp_any = function | Ast.SgrepEndTag(x) -> failwith "unexpected end tag" in +(*Printf.printf "start of the function\n";*) + anything := (function x -> let _ = pp_any x in ()); (* todo? imitate what is in pretty_print_cocci ? *) @@ -1146,10 +1151,12 @@ in (match Ast.unwrap x with Ast.IComma _ -> false | _ -> true) - | Ast.Token(t,_) when List.mem t [",";";";"(";")"] -> false + | Ast.Token(t,_) when List.mem t [",";";";"(";")";".";"->"] -> + false | _ -> true in let space_needed_after = function - Ast.Token(t,_) when List.mem t ["("] -> (*never needed*) false + Ast.Token(t,_) + when List.mem t ["(";".";"->"] -> (*never needed*) false | Ast.Token(t,_) when List.mem t ["if";"for";"while";"do"] -> (* space always needed *) pr_space(); false diff --git a/parsing_c/unparse_hrule.ml b/parsing_c/unparse_hrule.ml index a969dbc..b4d506c 100644 --- a/parsing_c/unparse_hrule.ml +++ b/parsing_c/unparse_hrule.ml @@ -93,7 +93,11 @@ let get_function_name rule env = [] any_list_list in let mcode r mc = match Ast.get_mcodekind mc with - Ast.MINUS(_,_,_,any_list_list) -> do_any_list_list r any_list_list + Ast.MINUS(_,_,_,any_list_list) -> + (match any_list_list with + Ast.NOREPLACEMENT -> [] + | Ast.REPLACEMENT(any_list_list,_) -> + do_any_list_list r any_list_list) | Ast.CONTEXT(_,any_befaft) -> (match any_befaft with Ast.BEFORE(any_list_list,_) | Ast.AFTER(any_list_list,_) -> diff --git a/parsing_cocci/adjust_pragmas.ml b/parsing_cocci/adjust_pragmas.ml index 7fb2399..de9b094 100644 --- a/parsing_cocci/adjust_pragmas.ml +++ b/parsing_cocci/adjust_pragmas.ml @@ -221,8 +221,8 @@ let rec left_ident i = match Ast0.unwrap i with Ast0.Id(name) -> call_right left_mcode name i (function name -> Ast0.Id(name)) - | Ast0.MetaId(name,a,b) -> - call_right left_mcode name i (function name -> Ast0.MetaId(name,a,b)) + | Ast0.MetaId(name,a,b,c) -> + call_right left_mcode name i (function name -> Ast0.MetaId(name,a,b,c)) | Ast0.MetaFunc(name,a,b) -> call_right left_mcode name i (function name -> Ast0.MetaFunc(name,a,b)) | Ast0.MetaLocalFunc(name,a,b) -> diff --git a/parsing_cocci/arity.ml b/parsing_cocci/arity.ml index 3f07049..c2ced71 100644 --- a/parsing_cocci/arity.ml +++ b/parsing_cocci/arity.ml @@ -163,12 +163,12 @@ let rec ident opt_allowed tgt i = [mcode2arity name] in let name = mcode name in make_id i tgt arity (Ast0.Id(name)) - | Ast0.MetaId(name,constraints,pure) -> + | Ast0.MetaId(name,constraints,seed,pure) -> let arity = all_same opt_allowed tgt (mcode2line name) [mcode2arity name] in let name = mcode name in - make_id i tgt arity (Ast0.MetaId(name,constraints,pure)) + make_id i tgt arity (Ast0.MetaId(name,constraints,seed,pure)) | Ast0.MetaFunc(name,constraints,pure) -> let arity = all_same opt_allowed tgt (mcode2line name) @@ -724,7 +724,7 @@ and statement tgt stm = make_rule_elem stm tgt arity (Ast0.Seq(lbrace,body,rbrace)) | Ast0.ExprStatement(exp,sem) -> let arity = stm_same (mcode2line sem) [mcode2arity sem] in - let exp = expression arity exp in + let exp = get_option (expression arity) exp in let sem = mcode sem in make_rule_elem stm tgt arity (Ast0.ExprStatement(exp,sem)) | Ast0.IfThen(iff,lp,exp,rp,branch,aft) -> diff --git a/parsing_cocci/ast0_cocci.ml b/parsing_cocci/ast0_cocci.ml index 36655a3..00eb537 100644 --- a/parsing_cocci/ast0_cocci.ml +++ b/parsing_cocci/ast0_cocci.ml @@ -38,10 +38,9 @@ let default_token_info = (* MIXED is like CONTEXT, since sometimes MIXED things have to revert to CONTEXT - see insert_plus.ml *) -type count = ONE (* + *) | MANY (* ++ *) type mcodekind = - MINUS of (Ast.anything list list * token_info) ref + MINUS of (Ast.anything Ast.replacement * token_info) ref | PLUS of Ast.count | CONTEXT of (Ast.anything Ast.befaft * token_info * token_info) ref | MIXED of (Ast.anything Ast.befaft * token_info * token_info) ref @@ -104,7 +103,7 @@ and 'a dots = 'a base_dots wrap and base_ident = Id of string mcode - | MetaId of Ast.meta_name mcode * Ast.idconstraint * pure + | MetaId of Ast.meta_name mcode * Ast.idconstraint * Ast.seed * pure | MetaFunc of Ast.meta_name mcode * Ast.idconstraint * pure | MetaLocalFunc of Ast.meta_name mcode * Ast.idconstraint * pure | DisjId of string mcode * ident list * @@ -306,7 +305,7 @@ and base_statement = Decl of (info * mcodekind) (* before the decl *) * declaration | Seq of string mcode (* { *) * statement dots * string mcode (* } *) - | ExprStatement of expression * string mcode (*;*) + | ExprStatement of expression option * string mcode (*;*) | IfThen of string mcode (* if *) * string mcode (* ( *) * expression * string mcode (* ) *) * statement * (info * mcodekind) (* after info *) @@ -484,7 +483,7 @@ let default_befaft _ = MIXED(ref (Ast.NOTHING,default_token_info,default_token_info)) let context_befaft _ = CONTEXT(ref (Ast.NOTHING,default_token_info,default_token_info)) -let minus_befaft _ = MINUS(ref ([],default_token_info)) + let minus_befaft _ = MINUS(ref (Ast.NOREPLACEMENT,default_token_info)) let wrap x = { node = x; @@ -579,7 +578,7 @@ let rec ast0_type_to_type ty = (match unwrap tag with Id(tag) -> TC.EnumName(TC.Name(unwrap_mcode tag)) - | MetaId(tag,_,_) -> + | MetaId(tag,_,_,_) -> (Printf.printf "warning: enum with a metavariable name detected.\n"; Printf.printf @@ -592,14 +591,14 @@ let rec ast0_type_to_type ty = (match unwrap tag with Id(tag) -> TC.StructUnionName(structUnion su,TC.Name(unwrap_mcode tag)) - | MetaId(tag,Ast.IdNoConstraint,_) -> + | MetaId(tag,Ast.IdNoConstraint,_,_) -> (Common.pr2 "warning: struct/union with a metavariable name detected.\n"; Common.pr2 "For type checking assuming the name of the metavariable is the name of the type\n"; TC.StructUnionName(structUnion su, TC.MV(unwrap_mcode tag,TC.Unitary,false))) - | MetaId(tag,_,_) -> + | MetaId(tag,_,_,_) -> (* would have to duplicate the type in type_cocci.ml? perhaps polymorphism would help? *) failwith "constraints not supported on struct type name" @@ -669,7 +668,7 @@ let rec reverse_type ty = | TC.EnumName(TC.MV(name,_,_)) -> EnumName (make_mcode "enum", - Some (context_wrap(MetaId(make_mcode name,Ast.IdNoConstraint, + Some (context_wrap(MetaId(make_mcode name,Ast.IdNoConstraint,Ast.NoVal, Impure)))) | TC.EnumName(TC.Name tag) -> EnumName(make_mcode "enum",Some(context_wrap(Id(make_mcode tag)))) @@ -677,7 +676,7 @@ let rec reverse_type ty = (* not right?... *) StructUnionName (reverse_structUnion su, - Some(context_wrap(MetaId(make_mcode name,Ast.IdNoConstraint, + Some(context_wrap(MetaId(make_mcode name,Ast.IdNoConstraint,Ast.NoVal, Impure(*not really right*))))) | TC.StructUnionName(su,TC.Name tag) -> StructUnionName diff --git a/parsing_cocci/ast0_cocci.mli b/parsing_cocci/ast0_cocci.mli index 38f35c2..d8d98a6 100644 --- a/parsing_cocci/ast0_cocci.mli +++ b/parsing_cocci/ast0_cocci.mli @@ -33,7 +33,7 @@ type token_info = val default_token_info : token_info type mcodekind = - MINUS of (Ast_cocci.anything list list * token_info) ref + MINUS of (Ast_cocci.anything Ast_cocci.replacement * token_info) ref | PLUS of Ast_cocci.count | CONTEXT of (Ast_cocci.anything Ast_cocci.befaft * token_info * token_info) ref @@ -93,7 +93,8 @@ and 'a dots = 'a base_dots wrap and base_ident = Id of string mcode - | MetaId of Ast_cocci.meta_name mcode * Ast_cocci.idconstraint * pure + | MetaId of Ast_cocci.meta_name mcode * Ast_cocci.idconstraint * + Ast_cocci.seed * pure | MetaFunc of Ast_cocci.meta_name mcode * Ast_cocci.idconstraint * pure | MetaLocalFunc of Ast_cocci.meta_name mcode * Ast_cocci.idconstraint * pure | DisjId of string mcode * ident list * @@ -291,7 +292,7 @@ and base_statement = Decl of (info * mcodekind) (* before the decl *) * declaration | Seq of string mcode (* { *) * statement dots * string mcode (* } *) - | ExprStatement of expression * string mcode (*;*) + | ExprStatement of expression option * string mcode (*;*) | IfThen of string mcode (* if *) * string mcode (* ( *) * expression * string mcode (* ) *) * statement * (info * mcodekind) diff --git a/parsing_cocci/ast0toast.ml b/parsing_cocci/ast0toast.ml index e492694..b05d7e7 100644 --- a/parsing_cocci/ast0toast.ml +++ b/parsing_cocci/ast0toast.ml @@ -54,7 +54,7 @@ let inline_mcodes = match (Ast0.get_mcodekind e) with Ast0.MINUS(replacements) -> (match !replacements with - ([],_) -> () + (Ast.NOREPLACEMENT,_) -> () | replacements -> let minus_try = function (true,mc) -> @@ -100,8 +100,16 @@ let inline_mcodes = List.iter (function Ast0.MINUS(mreplacements) -> - let (mrepl,tokeninfo) = !mreplacements in - mreplacements := concat bef beforeinfo mrepl tokeninfo + (match !mreplacements with + (Ast.NOREPLACEMENT,tokeninfo) -> + mreplacements := + (Ast.REPLACEMENT(bef,befit),beforeinfo) + | (Ast.REPLACEMENT(anythings,it),tokeninfo) -> + let (newbef,newinfo) = + concat bef beforeinfo anythings tokeninfo in + let it = Ast.lub_count befit it in + mreplacements := + (Ast.REPLACEMENT(newbef,it),newinfo)) | Ast0.CONTEXT(mbefaft) -> (match !mbefaft with (Ast.BEFORE(mbef,it),mbeforeinfo,a) -> @@ -133,8 +141,16 @@ let inline_mcodes = List.iter (function Ast0.MINUS(mreplacements) -> - let (mrepl,tokeninfo) = !mreplacements in - mreplacements := concat mrepl tokeninfo aft afterinfo + (match !mreplacements with + (Ast.NOREPLACEMENT,tokeninfo) -> + mreplacements := + (Ast.REPLACEMENT(aft,aftit),afterinfo) + | (Ast.REPLACEMENT(anythings,it),tokeninfo) -> + let (newaft,newinfo) = + concat anythings tokeninfo aft afterinfo in + let it = Ast.lub_count aftit it in + mreplacements := + (Ast.REPLACEMENT(newaft,it),newinfo)) | Ast0.CONTEXT(mbefaft) -> (match !mbefaft with (Ast.BEFORE(mbef,it),b,_) -> @@ -191,7 +207,7 @@ let check_allminus = let option_default = true in let mcode (_,_,_,mc,_,_) = match mc with - Ast0.MINUS(r) -> let (plusses,_) = !r in plusses = [] + Ast0.MINUS(r) -> let (plusses,_) = !r in plusses = Ast.NOREPLACEMENT | _ -> false in (* special case for disj *) @@ -262,12 +278,28 @@ let convert_info info = let convert_mcodekind adj = function Ast0.MINUS(replacements) -> let (replacements,_) = !replacements in - Ast.MINUS(Ast.NoPos,[],adj,replacements) + Ast.MINUS(Ast.NoPos,[],Ast.ADJ adj,replacements) | Ast0.PLUS count -> Ast.PLUS count | Ast0.CONTEXT(befaft) -> - let (befaft,_,_) = !befaft in Ast.CONTEXT(Ast.NoPos,befaft) + let (befaft,_,_) = !befaft in + Ast.CONTEXT(Ast.NoPos,befaft) | Ast0.MIXED(_) -> failwith "not possible for mcode" +let convert_allminus_mcodekind allminus = function + Ast0.CONTEXT(befaft) -> + let (befaft,_,_) = !befaft in + if allminus + then + (match befaft with + Ast.NOTHING -> + Ast.MINUS(Ast.NoPos,[],Ast.ALLMINUS,Ast.NOREPLACEMENT) + | Ast.BEFORE(a,ct) | Ast.AFTER(a,ct) -> + Ast.MINUS(Ast.NoPos,[],Ast.ALLMINUS,Ast.REPLACEMENT(a,ct)) + | Ast.BEFOREAFTER(b,a,ct) -> + Ast.MINUS(Ast.NoPos,[],Ast.ALLMINUS,Ast.REPLACEMENT(b@a,ct))) + else Ast.CONTEXT(Ast.NoPos,befaft) + | _ -> failwith "convert_allminus_mcodekind: unexpected mcodekind" + let pos_mcode(term,_,info,mcodekind,pos,adj) = (* avoids a recursion problem *) (term,convert_info info,convert_mcodekind adj mcodekind,[]) @@ -343,7 +375,7 @@ and ident i = Ast0.Id(name) -> Ast.Id(mcode name) | Ast0.DisjId(_,id_list,_,_) -> Ast.DisjId(List.map ident id_list) - | Ast0.MetaId(name,constraints,_) -> + | Ast0.MetaId(name,constraints,_,_) -> Ast.MetaId(mcode name,constraints,unitary,false) | Ast0.MetaFunc(name,constraints,_) -> Ast.MetaFunc(mcode name,constraints,unitary,false) @@ -697,10 +729,10 @@ and statement s = rewrap_stmt s (match Ast0.unwrap s with Ast0.Decl((_,bef),decl) -> + let allminus = check_allminus.VT0.combiner_rec_statement s in Ast.Atomic(rewrap_rule_elem s - (Ast.Decl(convert_mcodekind (-1) bef, - check_allminus.VT0.combiner_rec_statement s, - declaration decl))) + (Ast.Decl(convert_allminus_mcodekind allminus bef, + allminus,declaration decl))) | Ast0.Seq(lbrace,body,rbrace) -> let lbrace = mcode lbrace in let body = dots (statement seqible) body in @@ -711,7 +743,7 @@ and statement s = tokenwrap rbrace s (Ast.SeqEnd(rbrace))) | Ast0.ExprStatement(exp,sem) -> Ast.Atomic(rewrap_rule_elem s - (Ast.ExprStatement(expression exp,mcode sem))) + (Ast.ExprStatement(get_option expression exp,mcode sem))) | Ast0.IfThen(iff,lp,exp,rp,branch,(_,aft)) -> Ast.IfThen (rewrap_rule_elem s @@ -850,8 +882,9 @@ and statement s = let rbrace = mcode rbrace in let allminus = check_allminus.VT0.combiner_rec_statement s in Ast.FunDecl(rewrap_rule_elem s - (Ast.FunHeader(convert_mcodekind (-1) bef, - allminus,fi,name,lp,params,rp)), + (Ast.FunHeader + (convert_allminus_mcodekind allminus bef, + allminus,fi,name,lp,params,rp)), tokenwrap lbrace s (Ast.SeqStart(lbrace)), body, tokenwrap rbrace s (Ast.SeqEnd(rbrace))) diff --git a/parsing_cocci/ast_cocci.ml b/parsing_cocci/ast_cocci.ml index 1e57dd0..c95eab5 100644 --- a/parsing_cocci/ast_cocci.ml +++ b/parsing_cocci/ast_cocci.ml @@ -57,12 +57,14 @@ and 'a befaft = | BEFOREAFTER of 'a list list * 'a list list * count | NOTHING +and 'a replacement = REPLACEMENT of 'a list list * count | NOREPLACEMENT + and 'a mcode = 'a * info * mcodekind * meta_pos list (* pos variables *) (* pos is an offset indicating where in the C code the mcodekind has an effect *) (* int list is the match instances, which are only meaningful in annotated C code *) - (* int is the adjacency index, which is incremented on context dots *) + (* adjacency is the adjacency index, which is incremented on context dots *) (* iteration is only allowed on context code, the intuition vaguely being that there is no way to replace something more than once. Actually, allowing iterated additions on minus code would cause problems with some @@ -71,8 +73,9 @@ replacements with certainty. Anyway, iteration doesn't seem to be needed on - code for the moment. Although it may be confusing that there can be iterated addition of code before context code where the context code is immediately followed by removed code. *) +and adjacency = ALLMINUS | ADJ of int and mcodekind = - MINUS of pos * int list * int * anything list list + MINUS of pos * int list * adjacency * anything replacement | CONTEXT of pos * anything befaft | PLUS of count and count = ONE (* + *) | MANY (* ++ *) @@ -243,7 +246,7 @@ and listlen = | CstListLen of int | AnyListLen -and unaryOp = GetRef | DeRef | UnPlus | UnMinus | Tilde | Not +and unaryOp = GetRef | GetRefLabel | DeRef | UnPlus | UnMinus | Tilde | Not and assignOp = SimpleAssign | OpAssign of arithOp and fixOp = Dec | Inc @@ -434,7 +437,7 @@ and base_rule_elem = | SeqStart of string mcode (* { *) | SeqEnd of string mcode (* } *) - | ExprStatement of expression * string mcode (*;*) + | ExprStatement of expression option * string mcode (*;*) | IfHeader of string mcode (* if *) * string mcode (* ( *) * expression * string mcode (* ) *) | Else of string mcode (* else *) diff --git a/parsing_cocci/ast_cocci.mli b/parsing_cocci/ast_cocci.mli index 2bcda92..9726fb0 100644 --- a/parsing_cocci/ast_cocci.mli +++ b/parsing_cocci/ast_cocci.mli @@ -54,11 +54,14 @@ and 'a befaft = | BEFOREAFTER of 'a list list * 'a list list * count | NOTHING +and 'a replacement = REPLACEMENT of 'a list list * count | NOREPLACEMENT + and 'a mcode = 'a * info * mcodekind * meta_pos list (* pos variables *) (* pos is an offset indicating where in the C code the mcodekind has an effect *) +and adjacency = ALLMINUS | ADJ of int and mcodekind = - MINUS of pos * int list * int * anything list list + MINUS of pos * int list * adjacency * anything replacement | CONTEXT of pos * anything befaft | PLUS of count and count = ONE (* + *) | MANY (* ++ *) @@ -227,7 +230,7 @@ and listlen = | CstListLen of int | AnyListLen -and unaryOp = GetRef | DeRef | UnPlus | UnMinus | Tilde | Not +and unaryOp = GetRef | GetRefLabel | DeRef | UnPlus | UnMinus | Tilde | Not and assignOp = SimpleAssign | OpAssign of arithOp and fixOp = Dec | Inc @@ -412,7 +415,7 @@ and base_rule_elem = | SeqStart of string mcode (* { *) | SeqEnd of string mcode (* } *) - | ExprStatement of expression * string mcode (*;*) + | ExprStatement of expression option * string mcode (*;*) | IfHeader of string mcode (* if *) * string mcode (* ( *) * expression * string mcode (* ) *) | Else of string mcode (* else *) diff --git a/parsing_cocci/check_meta.ml b/parsing_cocci/check_meta.ml index 8722f60..2e9850a 100644 --- a/parsing_cocci/check_meta.ml +++ b/parsing_cocci/check_meta.ml @@ -107,13 +107,25 @@ let rec ident context old_metas table minus i = warning (Printf.sprintf "line %d: should %s be a metavariable?" rl name) | _ -> ()) - | Ast0.MetaId(name,_,_) -> check_table table minus name + | Ast0.MetaId(name,_,seedval,_) -> + check_table table minus name; + seed table minus seedval | Ast0.MetaFunc(name,_,_) -> check_table table minus name | Ast0.MetaLocalFunc(name,_,_) -> check_table table minus name | Ast0.DisjId(_,id_list,_,_) -> List.iter (ident context old_metas table minus) id_list | Ast0.OptIdent(_) | Ast0.UniqueIdent(_) -> failwith "unexpected code" + +and seed table minus = function + Ast.NoVal -> () + | Ast.StringSeed _ -> () + | Ast.ListSeed elems -> + List.iter + (function + Ast.SeedString _ -> () + | Ast.SeedId name -> check_table table minus (promote name)) + elems (* --------------------------------------------------------------------- *) (* Expression *) @@ -334,7 +346,8 @@ and statement old_metas table minus s = match Ast0.unwrap s with Ast0.Decl(_,decl) -> declaration ID old_metas table minus decl | Ast0.Seq(lbrace,body,rbrace) -> dots (statement old_metas table minus) body - | Ast0.ExprStatement(exp,sem) -> expression ID old_metas table minus exp + | Ast0.ExprStatement(exp,sem) -> + get_opt (expression ID old_metas table minus) exp | Ast0.IfThen(iff,lp,exp,rp,branch,_) -> expression ID old_metas table minus exp; statement old_metas table minus branch diff --git a/parsing_cocci/compute_lines.ml b/parsing_cocci/compute_lines.ml index fefe883..6c2c566 100644 --- a/parsing_cocci/compute_lines.ml +++ b/parsing_cocci/compute_lines.ml @@ -49,6 +49,7 @@ let mkres x e left right = Ast0.offset = lstart.Ast0.pos_info.Ast0.offset;} in let info = { Ast0.pos_info = pos_info; + (* not clear that the next two lines serve any purpose *) Ast0.attachable_start = check_attachable lstart.Ast0.attachable_start; Ast0.attachable_end = check_attachable lend.Ast0.attachable_end; Ast0.mcode_start = lstart.Ast0.mcode_start; @@ -154,6 +155,16 @@ let bad_mcode (t,a,info,mcodekind,pos,adj) = Ast0.attachable_end = check_attachable false} in (t,a,new_info,mcodekind,pos,adj) +let normal_mcode (t,a,info,mcodekind,pos,adj) = + let new_info = + if !in_nest_count > 0 + then + {info with + Ast0.attachable_start = check_attachable false; + Ast0.attachable_end = check_attachable false} + else info in + (t,a,new_info,mcodekind,pos,adj) + let get_all_start_info l = (List.for_all (function x -> (Ast0.get_info x).Ast0.attachable_start) l, List.concat (List.map (function x -> (Ast0.get_info x).Ast0.mcode_start) l)) @@ -238,11 +249,22 @@ let mkidres a b c d r = (mkres a b c d,r) let rec full_ident i = match Ast0.unwrap i with - Ast0.Id(name) as ui -> - let name = promote_mcode name in mkidres i ui name name (Some name) - | Ast0.MetaId(name,_,_) - | Ast0.MetaFunc(name,_,_) | Ast0.MetaLocalFunc(name,_,_) as ui -> - let name = promote_mcode name in mkidres i ui name name (Some name) + Ast0.Id(nm) -> + let nm = normal_mcode nm in + let name = promote_mcode nm in + mkidres i (Ast0.Id(nm)) name name (Some name) + | Ast0.MetaId(nm,a,b,c) -> + let nm = normal_mcode nm in + let name = promote_mcode nm in + mkidres i (Ast0.MetaId(nm,a,b,c)) name name (Some name) + | Ast0.MetaFunc(nm,a,b) -> + let nm = normal_mcode nm in + let name = promote_mcode nm in + mkidres i (Ast0.MetaFunc(nm,a,b)) name name (Some name) + | Ast0.MetaLocalFunc(nm,a,b) -> + let nm = normal_mcode nm in + let name = promote_mcode nm in + mkidres i (Ast0.MetaLocalFunc(nm,a,b)) name name (Some name) | Ast0.DisjId(starter,ids,mids,ender) -> let res = do_disj i starter ids mids ender ident @@ -268,77 +290,120 @@ let rec expression e = Ast0.Ident(id) -> let id = ident id in mkres e (Ast0.Ident(id)) id id - | Ast0.Constant(const) as ue -> + | Ast0.Constant(const) -> + let const = normal_mcode const in let ln = promote_mcode const in - mkres e ue ln ln + mkres e (Ast0.Constant(const)) ln ln | Ast0.FunCall(fn,lp,args,rp) -> let fn = expression fn in + let lp = normal_mcode lp in + let rp = normal_mcode rp in let args = dots is_exp_dots (Some(promote_mcode lp)) expression args in mkres e (Ast0.FunCall(fn,lp,args,rp)) fn (promote_mcode rp) | Ast0.Assignment(left,op,right,simple) -> let left = expression left in + let op = normal_mcode op in let right = expression right in mkres e (Ast0.Assignment(left,op,right,simple)) left right | Ast0.CondExpr(exp1,why,exp2,colon,exp3) -> let exp1 = expression exp1 in + let why = normal_mcode why in let exp2 = get_option expression exp2 in + let colon = normal_mcode colon in let exp3 = expression exp3 in mkres e (Ast0.CondExpr(exp1,why,exp2,colon,exp3)) exp1 exp3 | Ast0.Postfix(exp,op) -> let exp = expression exp in + let op = normal_mcode op in mkres e (Ast0.Postfix(exp,op)) exp (promote_mcode op) | Ast0.Infix(exp,op) -> let exp = expression exp in + let op = normal_mcode op in mkres e (Ast0.Infix(exp,op)) (promote_mcode op) exp | Ast0.Unary(exp,op) -> let exp = expression exp in + let op = normal_mcode op in mkres e (Ast0.Unary(exp,op)) (promote_mcode op) exp | Ast0.Binary(left,op,right) -> let left = expression left in + let op = normal_mcode op in let right = expression right in mkres e (Ast0.Binary(left,op,right)) left right | Ast0.Nested(left,op,right) -> let left = expression left in + let op = normal_mcode op in let right = expression right in mkres e (Ast0.Nested(left,op,right)) left right | Ast0.Paren(lp,exp,rp) -> + let lp = normal_mcode lp in + let rp = normal_mcode rp in mkres e (Ast0.Paren(lp,expression exp,rp)) (promote_mcode lp) (promote_mcode rp) | Ast0.ArrayAccess(exp1,lb,exp2,rb) -> let exp1 = expression exp1 in + let lb = normal_mcode lb in let exp2 = expression exp2 in + let rb = normal_mcode rb in mkres e (Ast0.ArrayAccess(exp1,lb,exp2,rb)) exp1 (promote_mcode rb) | Ast0.RecordAccess(exp,pt,field) -> let exp = expression exp in + let pt = normal_mcode pt in let field = ident field in mkres e (Ast0.RecordAccess(exp,pt,field)) exp field | Ast0.RecordPtAccess(exp,ar,field) -> let exp = expression exp in + let ar = normal_mcode ar in let field = ident field in mkres e (Ast0.RecordPtAccess(exp,ar,field)) exp field | Ast0.Cast(lp,ty,rp,exp) -> + let lp = normal_mcode lp in let exp = expression exp in + let rp = normal_mcode rp in mkres e (Ast0.Cast(lp,typeC ty,rp,exp)) (promote_mcode lp) exp | Ast0.SizeOfExpr(szf,exp) -> + let szf = normal_mcode szf in let exp = expression exp in mkres e (Ast0.SizeOfExpr(szf,exp)) (promote_mcode szf) exp | Ast0.SizeOfType(szf,lp,ty,rp) -> + let szf = normal_mcode szf in + let lp = normal_mcode lp in + let rp = normal_mcode rp in mkres e (Ast0.SizeOfType(szf,lp,typeC ty,rp)) (promote_mcode szf) (promote_mcode rp) | Ast0.TypeExp(ty) -> let ty = typeC ty in mkres e (Ast0.TypeExp(ty)) ty ty - | Ast0.MetaErr(name,_,_) | Ast0.MetaExpr(name,_,_,_,_) - | Ast0.MetaExprList(name,_,_) as ue -> - let ln = promote_mcode name in mkres e ue ln ln + | Ast0.MetaErr(name,a,b) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres e (Ast0.MetaErr(name,a,b)) ln ln + | Ast0.MetaExpr(name,a,b,c,d) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres e (Ast0.MetaExpr(name,a,b,c,d)) ln ln + | Ast0.MetaExprList(name,a,b) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres e (Ast0.MetaExprList(name,a,b)) ln ln | Ast0.EComma(cm) -> (*let cm = bad_mcode cm in*) (* why was this bad??? *) + let cm = normal_mcode cm in let ln = promote_mcode cm in mkres e (Ast0.EComma(cm)) ln ln | Ast0.DisjExpr(starter,exps,mids,ender) -> do_disj e starter exps mids ender expression (fun starter exps mids ender -> Ast0.DisjExpr(starter,exps,mids,ender)) | Ast0.NestExpr(starter,exp_dots,ender,whencode,multi) -> - let exp_dots = dots is_exp_dots None expression exp_dots in + (* See explanation on Nest *) + let wrapper f = + match Ast0.get_mcode_mcodekind starter with + Ast0.MINUS _ -> + in_nest_count := !in_nest_count + 1; + let res = f() in + in_nest_count := !in_nest_count - 1; + res + | _ -> f() in + let exp_dots = + wrapper (function _ -> dots is_exp_dots None expression exp_dots) in let starter = bad_mcode starter in let ender = bad_mcode ender in mkres e (Ast0.NestExpr(starter,exp_dots,ender,whencode,multi)) @@ -370,63 +435,92 @@ and expression_dots x = dots is_exp_dots None expression x and typeC t = match Ast0.unwrap t with Ast0.ConstVol(cv,ty) -> + let cv = normal_mcode cv in let ty = typeC ty in mkres t (Ast0.ConstVol(cv,ty)) (promote_mcode cv) ty - | Ast0.BaseType(ty,strings) as ut -> + | Ast0.BaseType(ty,strings) -> + let strings = List.map normal_mcode strings in let first = List.hd strings in let last = List.hd (List.rev strings) in - mkres t ut (promote_mcode first) (promote_mcode last) - | Ast0.Signed(sgn,None) as ut -> - mkres t ut (promote_mcode sgn) (promote_mcode sgn) + mkres t (Ast0.BaseType(ty,strings)) + (promote_mcode first) (promote_mcode last) + | Ast0.Signed(sgn,None) -> + let sgn = normal_mcode sgn in + mkres t (Ast0.Signed(sgn,None)) (promote_mcode sgn) (promote_mcode sgn) | Ast0.Signed(sgn,Some ty) -> + let sgn = normal_mcode sgn in let ty = typeC ty in mkres t (Ast0.Signed(sgn,Some ty)) (promote_mcode sgn) ty | Ast0.Pointer(ty,star) -> let ty = typeC ty in + let star = normal_mcode star in mkres t (Ast0.Pointer(ty,star)) ty (promote_mcode star) | Ast0.FunctionPointer(ty,lp1,star,rp1,lp2,params,rp2) -> let ty = typeC ty in + let lp1 = normal_mcode lp1 in + let star = normal_mcode star in + let rp1 = normal_mcode rp1 in + let lp2 = normal_mcode lp2 in let params = parameter_list (Some(promote_mcode lp2)) params in + let rp2 = normal_mcode rp2 in mkres t (Ast0.FunctionPointer(ty,lp1,star,rp1,lp2,params,rp2)) ty (promote_mcode rp2) | Ast0.FunctionType(Some ty,lp1,params,rp1) -> let ty = typeC ty in + let lp1 = normal_mcode lp1 in let params = parameter_list (Some(promote_mcode lp1)) params in + let rp1 = normal_mcode rp1 in let res = Ast0.FunctionType(Some ty,lp1,params,rp1) in mkres t res ty (promote_mcode rp1) | Ast0.FunctionType(None,lp1,params,rp1) -> + let lp1 = normal_mcode lp1 in let params = parameter_list (Some(promote_mcode lp1)) params in + let rp1 = normal_mcode rp1 in let res = Ast0.FunctionType(None,lp1,params,rp1) in mkres t res (promote_mcode lp1) (promote_mcode rp1) | Ast0.Array(ty,lb,size,rb) -> let ty = typeC ty in + let lb = normal_mcode lb in + let rb = normal_mcode rb in mkres t (Ast0.Array(ty,lb,get_option expression size,rb)) ty (promote_mcode rb) | Ast0.EnumName(kind,Some name) -> + let kind = normal_mcode kind in let name = ident name in mkres t (Ast0.EnumName(kind,Some name)) (promote_mcode kind) name | Ast0.EnumName(kind,None) -> + let kind = normal_mcode kind in let mc = promote_mcode kind in mkres t (Ast0.EnumName(kind,None)) mc mc | Ast0.EnumDef(ty,lb,ids,rb) -> let ty = typeC ty in + let lb = normal_mcode lb in let ids = dots is_exp_dots (Some(promote_mcode lb)) expression ids in + let rb = normal_mcode rb in mkres t (Ast0.EnumDef(ty,lb,ids,rb)) ty (promote_mcode rb) | Ast0.StructUnionName(kind,Some name) -> + let kind = normal_mcode kind in let name = ident name in mkres t (Ast0.StructUnionName(kind,Some name)) (promote_mcode kind) name | Ast0.StructUnionName(kind,None) -> + let kind = normal_mcode kind in let mc = promote_mcode kind in mkres t (Ast0.StructUnionName(kind,None)) mc mc | Ast0.StructUnionDef(ty,lb,decls,rb) -> let ty = typeC ty in + let lb = normal_mcode lb in let decls = dots is_decl_dots (Some(promote_mcode lb)) declaration decls in + let rb = normal_mcode rb in mkres t (Ast0.StructUnionDef(ty,lb,decls,rb)) ty (promote_mcode rb) - | Ast0.TypeName(name) as ut -> - let ln = promote_mcode name in mkres t ut ln ln - | Ast0.MetaType(name,_) as ut -> - let ln = promote_mcode name in mkres t ut ln ln + | Ast0.TypeName(name) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres t (Ast0.TypeName(name)) ln ln + | Ast0.MetaType(name,a) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres t (Ast0.MetaType(name,a)) ln ln | Ast0.DisjType(starter,types,mids,ender) -> do_disj t starter types mids ender typeC (fun starter types mids ender -> @@ -448,38 +542,58 @@ and is_decl_dots s = and declaration d = match Ast0.unwrap d with - (Ast0.MetaDecl(name,_) | Ast0.MetaField(name,_) - | Ast0.MetaFieldList(name,_,_)) as up -> - let ln = promote_mcode name in mkres d up ln ln + Ast0.MetaDecl(name,a) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres d (Ast0.MetaDecl(name,a)) ln ln + | Ast0.MetaField(name,a) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres d (Ast0.MetaField(name,a)) ln ln + | Ast0.MetaFieldList(name,a,b) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres d (Ast0.MetaFieldList(name,a,b)) ln ln | Ast0.Init(stg,ty,id,eq,exp,sem) -> let ty = typeC ty in let id = ident id in + let eq = normal_mcode eq in let exp = initialiser exp in + let sem = normal_mcode sem in (match stg with None -> mkres d (Ast0.Init(stg,ty,id,eq,exp,sem)) ty (promote_mcode sem) | Some x -> + let stg = Some (normal_mcode x) in mkres d (Ast0.Init(stg,ty,id,eq,exp,sem)) (promote_mcode x) (promote_mcode sem)) | Ast0.UnInit(stg,ty,id,sem) -> let ty = typeC ty in let id = ident id in + let sem = normal_mcode sem in (match stg with None -> mkres d (Ast0.UnInit(stg,ty,id,sem)) ty (promote_mcode sem) | Some x -> + let stg = Some (normal_mcode x) in mkres d (Ast0.UnInit(stg,ty,id,sem)) (promote_mcode x) (promote_mcode sem)) | Ast0.MacroDecl(name,lp,args,rp,sem) -> let name = ident name in + let lp = normal_mcode lp in let args = dots is_exp_dots (Some(promote_mcode lp)) expression args in + let rp = normal_mcode rp in + let sem = normal_mcode sem in mkres d (Ast0.MacroDecl(name,lp,args,rp,sem)) name (promote_mcode sem) | Ast0.TyDecl(ty,sem) -> let ty = typeC ty in + let sem = normal_mcode sem in mkres d (Ast0.TyDecl(ty,sem)) ty (promote_mcode sem) | Ast0.Typedef(stg,ty,id,sem) -> + let stg = normal_mcode stg in let ty = typeC ty in let id = typeC id in + let sem = normal_mcode sem in mkres d (Ast0.Typedef(stg,ty,id,sem)) (promote_mcode stg) (promote_mcode sem) | Ast0.DisjDecl(starter,decls,mids,ender) -> @@ -507,28 +621,40 @@ and is_init_dots i = and initialiser i = match Ast0.unwrap i with - (Ast0.MetaInit(name,_) | Ast0.MetaInitList(name,_,_)) as ut -> - let ln = promote_mcode name in mkres i ut ln ln + Ast0.MetaInit(name,a) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres i (Ast0.MetaInit(name,a)) ln ln + | Ast0.MetaInitList(name,a,b) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres i (Ast0.MetaInitList(name,a,b)) ln ln | Ast0.InitExpr(exp) -> let exp = expression exp in mkres i (Ast0.InitExpr(exp)) exp exp | Ast0.InitList(lb,initlist,rb,ordered) -> + let lb = normal_mcode lb in let initlist = dots is_init_dots (Some(promote_mcode lb)) initialiser initlist in + let rb = normal_mcode rb in mkres i (Ast0.InitList(lb,initlist,rb,ordered)) (promote_mcode lb) (promote_mcode rb) | Ast0.InitGccExt(designators,eq,ini) -> let (delims,designators) = (* non empty due to parsing *) List.split (List.map designator designators) in + let eq = normal_mcode eq in let ini = initialiser ini in mkres i (Ast0.InitGccExt(designators,eq,ini)) (promote_mcode (List.hd delims)) ini | Ast0.InitGccName(name,eq,ini) -> let name = ident name in + let eq = normal_mcode eq in let ini = initialiser ini in mkres i (Ast0.InitGccName(name,eq,ini)) name ini - | Ast0.IComma(cm) as up -> - let ln = promote_mcode cm in mkres i up ln ln + | Ast0.IComma(cm) -> + let cm = normal_mcode cm in + let ln = promote_mcode cm in + mkres i (Ast0.IComma(cm)) ln ln | Ast0.Idots(dots,whencode) -> let dots = bad_mcode dots in let ln = promote_mcode dots in @@ -542,10 +668,16 @@ and initialiser i = and designator = function Ast0.DesignatorField(dot,id) -> + let dot = normal_mcode dot in (dot,Ast0.DesignatorField(dot,ident id)) | Ast0.DesignatorIndex(lb,exp,rb) -> + let lb = normal_mcode lb in + let rb = normal_mcode rb in (lb,Ast0.DesignatorIndex(lb,expression exp,rb)) | Ast0.DesignatorRange(lb,min,dots,max,rb) -> + let lb = normal_mcode lb in + let dots = normal_mcode dots in + let rb = normal_mcode rb in (lb,Ast0.DesignatorRange(lb,expression min,dots,expression max,rb)) and initialiser_list prev = dots is_init_dots prev initialiser @@ -570,10 +702,17 @@ and parameterTypeDef p = let ty = typeC ty in mkres p (Ast0.Param(ty,Some id)) ty id | Ast0.Param(ty,None) -> let ty = typeC ty in mkres p (Ast0.Param(ty,None)) ty ty - | (Ast0.MetaParam(name,_) | Ast0.MetaParamList(name,_,_)) as up -> - let ln = promote_mcode name in mkres p up ln ln + | Ast0.MetaParam(name,a) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres p (Ast0.MetaParam(name,a)) ln ln + | Ast0.MetaParamList(name,a,b) -> + let name = normal_mcode name in + let ln = promote_mcode name in + mkres p (Ast0.MetaParamList(name,a,b)) ln ln | Ast0.PComma(cm) -> (*let cm = bad_mcode cm in*) (* why was this bad??? *) + let cm = normal_mcode cm in let ln = promote_mcode cm in mkres p (Ast0.PComma(cm)) ln ln | Ast0.Pdots(dots) -> @@ -609,6 +748,7 @@ let rec define_param p = let id = ident id in mkres p (Ast0.DParam(id)) id id | Ast0.DPComma(cm) -> (*let cm = bad_mcode cm in*) (* why was this bad??? *) + let cm = normal_mcode cm in let ln = promote_mcode cm in mkres p (Ast0.DPComma(cm)) ln ln | Ast0.DPdots(dots) -> @@ -630,7 +770,9 @@ let define_parameters x id = match Ast0.unwrap x with Ast0.NoParams -> (x,id) (* no info, should be ignored *) | Ast0.DParams(lp,dp,rp) -> + let lp = normal_mcode lp in let dp = dots is_define_param_dots None define_param dp in + let rp = normal_mcode rp in let l = promote_mcode lp in let r = promote_mcode rp in (mkres x (Ast0.DParams(lp,dp,rp)) l r, r) @@ -651,22 +793,36 @@ let rec statement s = let left = promote_to_statement_start decl bef in mkres s (Ast0.Decl((Ast0.get_info left,bef),decl)) decl decl | Ast0.Seq(lbrace,body,rbrace) -> + let lbrace = normal_mcode lbrace in let body = dots is_stm_dots (Some(promote_mcode lbrace)) statement body in + let rbrace = normal_mcode rbrace in mkres s (Ast0.Seq(lbrace,body,rbrace)) (promote_mcode lbrace) (promote_mcode rbrace) - | Ast0.ExprStatement(exp,sem) -> + | Ast0.ExprStatement(Some exp,sem) -> let exp = expression exp in - mkres s (Ast0.ExprStatement(exp,sem)) exp (promote_mcode sem) + let sem = normal_mcode sem in + mkres s (Ast0.ExprStatement(Some exp,sem)) exp (promote_mcode sem) + | Ast0.ExprStatement(None,sem) -> + let sem = normal_mcode sem in + let promoted_sem = promote_mcode sem in + mkres s (Ast0.ExprStatement(None,sem)) promoted_sem promoted_sem | Ast0.IfThen(iff,lp,exp,rp,branch,(_,aft)) -> + let iff = normal_mcode iff in + let lp = normal_mcode lp in let exp = expression exp in + let rp = normal_mcode rp in let branch = statement branch in let right = promote_to_statement branch aft in mkres s (Ast0.IfThen(iff,lp,exp,rp,branch,(Ast0.get_info right,aft))) (promote_mcode iff) right | Ast0.IfThenElse(iff,lp,exp,rp,branch1,els,branch2,(_,aft)) -> + let iff = normal_mcode iff in + let lp = normal_mcode lp in let exp = expression exp in + let rp = normal_mcode rp in let branch1 = statement branch1 in + let els = normal_mcode els in let branch2 = statement branch2 in let right = promote_to_statement branch2 aft in mkres s @@ -674,20 +830,32 @@ let rec statement s = (Ast0.get_info right,aft))) (promote_mcode iff) right | Ast0.While(wh,lp,exp,rp,body,(_,aft)) -> + let wh = normal_mcode wh in + let lp = normal_mcode lp in let exp = expression exp in + let rp = normal_mcode rp in let body = statement body in let right = promote_to_statement body aft in mkres s (Ast0.While(wh,lp,exp,rp,body,(Ast0.get_info right,aft))) (promote_mcode wh) right | Ast0.Do(d,body,wh,lp,exp,rp,sem) -> + let d = normal_mcode d in let body = statement body in + let wh = normal_mcode wh in + let lp = normal_mcode lp in let exp = expression exp in + let rp = normal_mcode rp in mkres s (Ast0.Do(d,body,wh,lp,exp,rp,sem)) (promote_mcode d) (promote_mcode sem) | Ast0.For(fr,lp,exp1,sem1,exp2,sem2,exp3,rp,body,(_,aft)) -> + let fr = normal_mcode fr in + let lp = normal_mcode lp in let exp1 = get_option expression exp1 in + let sem1 = normal_mcode sem1 in let exp2 = get_option expression exp2 in + let sem2 = normal_mcode sem2 in let exp3 = get_option expression exp3 in + let rp = normal_mcode rp in let body = statement body in let right = promote_to_statement body aft in mkres s (Ast0.For(fr,lp,exp1,sem1,exp2,sem2,exp3,rp,body, @@ -695,13 +863,19 @@ let rec statement s = (promote_mcode fr) right | Ast0.Iterator(nm,lp,args,rp,body,(_,aft)) -> let nm = ident nm in + let lp = normal_mcode lp in let args = dots is_exp_dots (Some(promote_mcode lp)) expression args in + let rp = normal_mcode rp in let body = statement body in let right = promote_to_statement body aft in mkres s (Ast0.Iterator(nm,lp,args,rp,body,(Ast0.get_info right,aft))) nm right | Ast0.Switch(switch,lp,exp,rp,lb,decls,cases,rb) -> + let switch = normal_mcode switch in + let lp = normal_mcode lp in let exp = expression exp in + let rp = normal_mcode rp in + let lb = normal_mcode lb in let decls = dots is_stm_dots (Some(promote_mcode lb)) statement decls in @@ -712,29 +886,45 @@ let rec statement s = else None (* not sure this is right, but not sure the case can arise either *)) case_line cases in + let rb = normal_mcode rb in mkres s (Ast0.Switch(switch,lp,exp,rp,lb,decls,cases,rb)) (promote_mcode switch) (promote_mcode rb) - | Ast0.Break(br,sem) as us -> - mkres s us (promote_mcode br) (promote_mcode sem) - | Ast0.Continue(cont,sem) as us -> - mkres s us (promote_mcode cont) (promote_mcode sem) + | Ast0.Break(br,sem) -> + let br = normal_mcode br in + let sem = normal_mcode sem in + mkres s (Ast0.Break(br,sem)) (promote_mcode br) (promote_mcode sem) + | Ast0.Continue(cont,sem) -> + let cont = normal_mcode cont in + let sem = normal_mcode sem in + mkres s (Ast0.Continue(cont,sem)) + (promote_mcode cont) (promote_mcode sem) | Ast0.Label(l,dd) -> let l = ident l in + let dd = normal_mcode dd in mkres s (Ast0.Label(l,dd)) l (promote_mcode dd) | Ast0.Goto(goto,id,sem) -> + let goto = normal_mcode goto in let id = ident id in + let sem = normal_mcode sem in mkres s (Ast0.Goto(goto,id,sem)) (promote_mcode goto) (promote_mcode sem) - | Ast0.Return(ret,sem) as us -> - mkres s us (promote_mcode ret) (promote_mcode sem) + | Ast0.Return(ret,sem) -> + let ret = normal_mcode ret in + let sem = normal_mcode sem in + mkres s (Ast0.Return(ret,sem)) (promote_mcode ret) (promote_mcode sem) | Ast0.ReturnExpr(ret,exp,sem) -> + let ret = normal_mcode ret in let exp = expression exp in + let sem = normal_mcode sem in mkres s (Ast0.ReturnExpr(ret,exp,sem)) (promote_mcode ret) (promote_mcode sem) - | Ast0.MetaStmt(name,_) - | Ast0.MetaStmtList(name,_) as us -> - let ln = promote_mcode name in mkres s us ln ln + | Ast0.MetaStmt(name,a) -> + let ln = promote_mcode name in + mkres s (Ast0.MetaStmt(name,a)) ln ln + | Ast0.MetaStmtList(name,a) -> + let ln = promote_mcode name in + mkres s (Ast0.MetaStmtList(name,a)) ln ln | Ast0.Exp(exp) -> let exp = expression exp in mkres s (Ast0.Exp(exp)) exp exp @@ -805,9 +995,13 @@ let rec statement s = (function Ast0.FType(ty) -> Ast0.FType(typeC ty) | x -> x) fninfo in let name = ident name in + let lp = normal_mcode lp in let params = parameter_list (Some(promote_mcode lp)) params in + let rp = normal_mcode rp in + let lbrace = normal_mcode lbrace in let body = dots is_stm_dots (Some(promote_mcode lbrace)) statement body in + let rbrace = normal_mcode rbrace in let left = (* cases on what is leftmost *) match fninfo with @@ -842,11 +1036,15 @@ let rec statement s = mkres s res (promote_mcode attr) (promote_mcode rbrace)) | Ast0.Include(inc,stm) -> + let inc = normal_mcode inc in + let stm = normal_mcode stm in mkres s (Ast0.Include(inc,stm)) (promote_mcode inc) (promote_mcode stm) | Ast0.Undef(def,id) -> + let def = normal_mcode def in let id = ident id in mkres s (Ast0.Undef(def,id)) (promote_mcode def) id | Ast0.Define(def,id,params,body) -> + let def = normal_mcode def in let (id,right) = full_ident id in (match right with None -> failwith "no disj id for #define" @@ -869,10 +1067,14 @@ let rec statement s = and case_line c = match Ast0.unwrap c with Ast0.Default(def,colon,code) -> + let def = normal_mcode def in + let colon = normal_mcode colon in let code = dots is_stm_dots (Some(promote_mcode colon)) statement code in mkres c (Ast0.Default(def,colon,code)) (promote_mcode def) code | Ast0.Case(case,exp,colon,code) -> + let case = normal_mcode case in let exp = expression exp in + let colon = normal_mcode colon in let code = dots is_stm_dots (Some(promote_mcode colon)) statement code in mkres c (Ast0.Case(case,exp,colon,code)) (promote_mcode case) code | Ast0.DisjCase(starter,case_lines,mids,ender) -> diff --git a/parsing_cocci/context_neg.ml b/parsing_cocci/context_neg.ml index 5aa465c..b1cfe9b 100644 --- a/parsing_cocci/context_neg.ml +++ b/parsing_cocci/context_neg.ml @@ -476,7 +476,7 @@ let dots fn d1 d2 = let rec equal_ident i1 i2 = match (Ast0.unwrap i1,Ast0.unwrap i2) with (Ast0.Id(name1),Ast0.Id(name2)) -> equal_mcode name1 name2 - | (Ast0.MetaId(name1,_,_),Ast0.MetaId(name2,_,_)) -> + | (Ast0.MetaId(name1,_,_,_),Ast0.MetaId(name2,_,_,_)) -> equal_mcode name1 name2 | (Ast0.MetaFunc(name1,_,_),Ast0.MetaFunc(name2,_,_)) -> equal_mcode name1 name2 @@ -959,7 +959,7 @@ let rec is_toplevel s = Ast0.Decl(_,e) -> true | Ast0.FunDecl(_,_,_,_,_,_,_,_,_) -> true | Ast0.Disj(_,stmts,_,_) -> isall is_toplevel stmts - | Ast0.ExprStatement(fc,_) -> + | Ast0.ExprStatement(Some fc,_) -> (match Ast0.unwrap fc with Ast0.FunCall(_,_,_,_) -> true | _ -> false) @@ -1026,7 +1026,8 @@ let context_neg minus plus = List.map (function m -> classify true - (function _ -> Ast0.MINUS(ref([],Ast0.default_token_info))) + (function _ -> + Ast0.MINUS(ref(Ast.NOREPLACEMENT,Ast0.default_token_info))) minus_table m) minus in [] @@ -1052,7 +1053,8 @@ let context_neg minus plus = collect_plus_lines p; let _ = classify true - (function _ -> Ast0.MINUS(ref([],Ast0.default_token_info))) + (function _ -> + Ast0.MINUS(ref(Ast.NOREPLACEMENT,Ast0.default_token_info))) minus_table m in let _ = classify false (function c -> Ast0.PLUS c) plus_table p in traverse minus_table plus_table; @@ -1068,7 +1070,9 @@ let context_neg minus plus = plus_lines := []; let _ = classify true - (function _ -> Ast0.MINUS(ref([],Ast0.default_token_info))) + (function _ -> + Ast0.MINUS(ref(Ast.NOREPLACEMENT, + Ast0.default_token_info))) minus_table m in loop(minus,pall) end diff --git a/parsing_cocci/data.ml b/parsing_cocci/data.ml index be640fc..b741f4c 100644 --- a/parsing_cocci/data.ml +++ b/parsing_cocci/data.ml @@ -90,7 +90,7 @@ let add_virt_id_meta_not_found: (Ast_cocci.meta_name -> Ast0_cocci.pure -> unit) ref = ref (fun _ -> failwith "uninitialized add_meta") -let add_fresh_id_meta: (Ast.meta_name -> unit) ref = +let add_fresh_id_meta: (Ast.meta_name -> Ast.seed -> unit) ref = ref (fun _ -> failwith "uninitialized add_meta") let add_type_meta: (Ast.meta_name -> Ast0.pure -> unit) ref = diff --git a/parsing_cocci/data.mli b/parsing_cocci/data.mli index 9be9a6f..0204cd0 100644 --- a/parsing_cocci/data.mli +++ b/parsing_cocci/data.mli @@ -73,7 +73,7 @@ val add_virt_id_meta_found: (string -> string -> unit) ref val add_virt_id_meta_not_found: (Ast_cocci.meta_name -> Ast0_cocci.pure -> unit) ref -val add_fresh_id_meta: (Ast_cocci.meta_name -> unit) ref +val add_fresh_id_meta: (Ast_cocci.meta_name -> Ast_cocci.seed -> unit) ref val add_type_meta: (Ast_cocci.meta_name -> Ast0_cocci.pure -> unit) ref diff --git a/parsing_cocci/disjdistr.ml b/parsing_cocci/disjdistr.ml index 0ce6531..bcd2600 100644 --- a/parsing_cocci/disjdistr.ml +++ b/parsing_cocci/disjdistr.ml @@ -314,9 +314,10 @@ let rec disj_rule_elem r k re = (function decl -> Ast.rewrap re (Ast.Decl(bef,allminus,decl))) | Ast.SeqStart(brace) -> re | Ast.SeqEnd(brace) -> re - | Ast.ExprStatement(exp,sem) -> + | Ast.ExprStatement(Some exp,sem) -> orify_rule_elem re exp - (function exp -> Ast.rewrap re (Ast.ExprStatement(exp,sem))) + (function exp -> Ast.rewrap re (Ast.ExprStatement(Some exp,sem))) + | Ast.ExprStatement(None,sem) -> re | Ast.IfHeader(iff,lp,exp,rp) -> orify_rule_elem re exp (function exp -> Ast.rewrap re (Ast.IfHeader(iff,lp,exp,rp))) diff --git a/parsing_cocci/free_vars.ml b/parsing_cocci/free_vars.ml index ed489e4..77c294e 100644 --- a/parsing_cocci/free_vars.ml +++ b/parsing_cocci/free_vars.ml @@ -356,7 +356,10 @@ let cip_mcodekind r mck = (List.map (function l -> List.fold_left (@) [] (List.map astfvs l)) anythings) in match mck with - Ast.MINUS(_,_,_,anythings) -> process_anything_list_list anythings + Ast.MINUS(_,_,_,replacement) -> + (match replacement with + Ast.REPLACEMENT(anythings,_) -> process_anything_list_list anythings + | Ast.NOREPLACEMENT -> []) | Ast.CONTEXT(_,befaft) -> (match befaft with Ast.BEFORE(ll,_) -> process_anything_list_list ll diff --git a/parsing_cocci/function_prototypes.ml b/parsing_cocci/function_prototypes.ml index 524736f..7ecb83d 100644 --- a/parsing_cocci/function_prototypes.ml +++ b/parsing_cocci/function_prototypes.ml @@ -32,7 +32,7 @@ type id = Id of string | Meta of Ast.meta_name let rec get_name name = match Ast0.unwrap name with Ast0.Id(nm) -> [Id(Ast0.unwrap_mcode nm)] - | Ast0.MetaId(nm,_,_) | Ast0.MetaFunc(nm,_,_) + | Ast0.MetaId(nm,_,_,_) | Ast0.MetaFunc(nm,_,_) | Ast0.MetaLocalFunc(nm,_,_) -> [Meta(Ast0.unwrap_mcode nm)] | Ast0.DisjId(_,id_list,_,_) -> List.concat (List.map get_name id_list) | Ast0.OptIdent(id) | Ast0.UniqueIdent(id) -> @@ -145,8 +145,8 @@ and strip = donothing r k (Ast0.rewrap e (match Ast0.unwrap e with - Ast0.MetaId(nm,constraints,pure) -> - Ast0.MetaId(nm,constraints,Ast0.Pure) + Ast0.MetaId(nm,constraints,seed,pure) -> + Ast0.MetaId(nm,constraints,seed,Ast0.Pure) | Ast0.MetaFunc(nm,constraints,pure) -> Ast0.MetaFunc(nm,constraints,Ast0.Pure) | Ast0.MetaLocalFunc(nm,constraints,pure) -> @@ -234,12 +234,12 @@ let rec rename_param old_name all param = Ast0.Param(ty,Some id) when all -> (match Ast0.unwrap id with Ast0.MetaId - (((_,name),arity,info,mcodekind,pos,adj),constraints,pure) -> + (((_,name),arity,info,mcodekind,pos,adj),constraints,seed,pure) -> let nm = ("__no_name__",new_name name) in let new_id = Ast0.rewrap id (Ast0.MetaId - ((nm,arity,info,mcodekind,pos,adj),constraints, + ((nm,arity,info,mcodekind,pos,adj),constraints,seed, Ast0.Pure)) in ([Ast.MetaIdDecl(Ast.NONE,nm)], Ast0.rewrap param (Ast0.Param(ty,Some new_id))) diff --git a/parsing_cocci/get_constants2.ml b/parsing_cocci/get_constants2.ml index 53e2aa3..f1cf687 100644 --- a/parsing_cocci/get_constants2.ml +++ b/parsing_cocci/get_constants2.ml @@ -339,16 +339,16 @@ let do_get_constants constants keywords env neg_pos = | _ -> k ft in let baseType = function - Ast.VoidType -> keywords "void " - | Ast.CharType -> keywords "char " - | Ast.ShortType -> keywords "short " - | Ast.IntType -> keywords "int " - | Ast.DoubleType -> keywords "double " - | Ast.FloatType -> keywords "float " - | Ast.LongType | Ast.LongLongType -> keywords "long " - | Ast.SizeType -> keywords "size_t " - | Ast.SSizeType -> keywords "ssize_t " - | Ast.PtrDiffType -> keywords "ptrdiff_t " in + Ast.VoidType -> keywords "void" + | Ast.CharType -> keywords "char" + | Ast.ShortType -> keywords "short" + | Ast.IntType -> keywords "int" + | Ast.DoubleType -> keywords "double" + | Ast.FloatType -> keywords "float" + | Ast.LongType | Ast.LongLongType -> keywords "long" + | Ast.SizeType -> keywords "size_t" + | Ast.SSizeType -> keywords "ssize_t" + | Ast.PtrDiffType -> keywords "ptrdiff_t" in let typeC r k ty = match Ast.unwrap ty with @@ -489,7 +489,7 @@ let get_plus_constants = bind ((get_all_constants false).V.combiner_anything cur) prev)) [] l in let process_mcodekind = function - Ast.MINUS(_,_,_,anythings) -> recurse anythings + Ast.MINUS(_,_,_,Ast.REPLACEMENT(anythings,_)) -> recurse anythings | Ast.CONTEXT(_,Ast.BEFORE(a,_)) -> recurse a | Ast.CONTEXT(_,Ast.AFTER(a,_)) -> recurse a | Ast.CONTEXT(_,Ast.BEFOREAFTER(a1,a2,_)) -> diff --git a/parsing_cocci/index.ml b/parsing_cocci/index.ml index 9b7064e..f4ee7cb 100644 --- a/parsing_cocci/index.ml +++ b/parsing_cocci/index.ml @@ -79,7 +79,7 @@ let case_line_dots d = let ident i = match Ast0.unwrap i with Ast0.Id(name) -> [10] - | Ast0.MetaId(name,_,_) -> [11] + | Ast0.MetaId(name,_,_,_) -> [11] | Ast0.MetaFunc(name,_,_) -> [12] | Ast0.MetaLocalFunc(name,_,_) -> [13] | Ast0.DisjId(_,id_list,_,_) -> [152] diff --git a/parsing_cocci/insert_plus.ml b/parsing_cocci/insert_plus.ml index e19ab82..c664b07 100644 --- a/parsing_cocci/insert_plus.ml +++ b/parsing_cocci/insert_plus.ml @@ -781,14 +781,21 @@ let init thing info = Ast0.left_offset = info.Ast0.pos_info.Ast0.offset; Ast0.right_offset = info.Ast0.pos_info.Ast0.offset}) +let it2c = function Ast.ONE -> "one" | Ast.MANY -> "many" + let attachbefore (infop,c,p) = function Ast0.MINUS(replacements) -> let (repl,ti) = !replacements in - let (bef,ti) = - match repl with - [] -> init p infop - | repl -> insert p infop repl ti in - replacements := (bef,ti) + (match repl with + Ast.NOREPLACEMENT -> + let (bef,ti) = init p infop in + Printf.printf "attachbefore 1 %s\n" (it2c c); + replacements := (Ast.REPLACEMENT(bef,c),ti) + | Ast.REPLACEMENT(repl,it) -> + Printf.printf "attachbefore 2 %s %s\n" (it2c c) (it2c it); + let it = Ast.lub_count it c in + let (bef,ti) = insert p infop repl ti in + replacements := (Ast.REPLACEMENT(bef,it),ti)) | Ast0.CONTEXT(neighbors) -> let (repl,ti1,ti2) = !neighbors in (match repl with @@ -812,11 +819,14 @@ let attachbefore (infop,c,p) = function let attachafter (infop,c,p) = function Ast0.MINUS(replacements) -> let (repl,ti) = !replacements in - let (aft,ti) = - match repl with - [] -> init p infop - | repl -> insert p infop repl ti in - replacements := (aft,ti) + (match repl with + Ast.NOREPLACEMENT -> + let (aft,ti) = init p infop in + replacements := (Ast.REPLACEMENT(aft,c),ti) + | Ast.REPLACEMENT(repl,it) -> + let it = Ast.lub_count it c in + let (aft,ti) = insert p infop repl ti in + replacements := (Ast.REPLACEMENT(aft,it),ti)) | Ast0.CONTEXT(neighbors) -> let (repl,ti1,ti2) = !neighbors in (match repl with @@ -963,11 +973,14 @@ let merge_one : (minus_join_point * Ast0.info * 'a) list * Printf.printf "minus code\n"; List.iter (function (_,info,_) -> - Printf.printf "start %d end %d real_start %d real_end %d\n" + Printf.printf + "start %d end %d real_start %d real_end %d attachable start %b attachable end %b\n" info.Ast0.pos_info.Ast0.logical_start info.Ast0.pos_info.Ast0.logical_end info.Ast0.pos_info.Ast0.line_start - info.Ast0.pos_info.Ast0.line_end) + info.Ast0.pos_info.Ast0.line_end + info.Ast0.attachable_start + info.Ast0.attachable_end) m; Printf.printf "plus code\n"; List.iter diff --git a/parsing_cocci/iso_pattern.ml b/parsing_cocci/iso_pattern.ml index 25997a7..3bd0ef6 100644 --- a/parsing_cocci/iso_pattern.ml +++ b/parsing_cocci/iso_pattern.ml @@ -299,7 +299,7 @@ let rec is_pure_context s = | Ast0.MINUS(mc) -> (match !mc with (* do better for the common case of replacing a stmt by another one *) - ([[Ast.StatementTag(s)]],_) -> + (Ast.REPLACEMENT([[Ast.StatementTag(s)]],_),_) -> (match Ast.unwrap s with Ast.IfThen(_,_,_) -> false (* potentially dangerous *) | _ -> true) @@ -375,7 +375,9 @@ let match_maker checks_needed context_required whencode_allowed = (Ast.NOTHING,_,_) -> Ast0.PureContext | _ -> Ast0.Context) | Ast0.MINUS(mc) -> - (match !mc with ([],_) -> Ast0.Pure | _ -> Ast0.Impure) + (match !mc with + (Ast.NOREPLACEMENT,_) -> Ast0.Pure + | _ -> Ast0.Impure) | _ -> Ast0.Impure in let donothing r k e = bind (pure_mcodekind (Ast0.get_mcodekind e)) (k e) in @@ -388,7 +390,7 @@ let match_maker checks_needed context_required whencode_allowed = let ident r k i = bind (bind (pure_mcodekind (Ast0.get_mcodekind i)) (k i)) (match Ast0.unwrap i with - Ast0.MetaId(name,_,pure) | Ast0.MetaFunc(name,_,pure) + Ast0.MetaId(name,_,_,pure) | Ast0.MetaFunc(name,_,pure) | Ast0.MetaLocalFunc(name,_,pure) -> pure | _ -> Ast0.Impure) in @@ -494,7 +496,7 @@ let match_maker checks_needed context_required whencode_allowed = let rec match_ident pattern id = match Ast0.unwrap pattern with - Ast0.MetaId(name,_,pure) -> + Ast0.MetaId(name,_,_,pure) -> (add_pure_binding name pure pure_sp_code.VT0.combiner_rec_ident (function id -> Ast0.IdentTag id) id) | Ast0.MetaFunc(name,_,pure) -> failwith "metafunc not supported" @@ -1053,7 +1055,8 @@ let match_maker checks_needed context_required whencode_allowed = bodya bodyb else return_false (Braces(s)))) | (Ast0.ExprStatement(expa,sc1),Ast0.ExprStatement(expb,sc)) -> - conjunct_bindings (check_mcode sc1 sc) (match_expr expa expb) + conjunct_bindings (check_mcode sc1 sc) + (match_option match_expr expa expb) | (Ast0.IfThen(if1,lp1,expa,rp1,branch1a,_), Ast0.IfThen(if2,lp2,expb,rp2,branch1b,_)) -> conjunct_many_bindings @@ -1278,7 +1281,8 @@ let make_minus = match mcodekind with Ast0.CONTEXT(mc) -> (match !mc with - (Ast.NOTHING,_,_) -> Ast0.MINUS(ref([],Ast0.default_token_info)) + (Ast.NOTHING,_,_) -> + Ast0.MINUS(ref(Ast.NOREPLACEMENT,Ast0.default_token_info)) | _ -> failwith "make_minus: unexpected befaft") | Ast0.MINUS(mc) -> mcodekind (* in the part copied from the src term *) | _ -> failwith "make_minus mcode: unexpected mcodekind" in @@ -1289,7 +1293,8 @@ let make_minus = Ast0.CONTEXT(mc) -> (match !mc with (Ast.NOTHING,_,_) -> - mcodekind := Ast0.MINUS(ref([],Ast0.default_token_info)) + mcodekind := + Ast0.MINUS(ref(Ast.NOREPLACEMENT,Ast0.default_token_info)) | _ -> failwith "make_minus: unexpected befaft") | Ast0.MINUS(_mc) -> () (* in the part copied from the src term *) | Ast0.PLUS _ -> failwith "make_minus donothing: unexpected plus mcodekind" @@ -1370,7 +1375,8 @@ let make_minus = Ast0.MIXED(mc) | Ast0.CONTEXT(mc) -> (match !mc with (Ast.NOTHING,_,_) -> - mcodekind := Ast0.MINUS(ref([],Ast0.default_token_info)); + mcodekind := + Ast0.MINUS(ref(Ast.NOREPLACEMENT,Ast0.default_token_info)); e | _ -> failwith "make_minus: unexpected befaft") (* code already processed by an enclosing iso *) @@ -1545,7 +1551,7 @@ let instantiate bindings mv_bindings = let identfn r k e = let e = k e in match Ast0.unwrap e with - Ast0.MetaId(name,constraints,pure) -> + Ast0.MetaId(name,constraints,seed,pure) -> (rebuild_mcode None).VT0.rebuilder_rec_ident (match lookup name bindings mv_bindings with Common.Left(Ast0.IdentTag(id)) -> id @@ -1553,7 +1559,7 @@ let instantiate bindings mv_bindings = | Common.Right(new_mv) -> Ast0.rewrap e (Ast0.MetaId - (Ast0.set_mcode_data new_mv name,constraints,pure))) + (Ast0.set_mcode_data new_mv name,constraints,seed,pure))) | Ast0.MetaFunc(name,_,pure) -> failwith "metafunc not supported" | Ast0.MetaLocalFunc(name,_,pure) -> failwith "metalocalfunc not supported" | _ -> e in @@ -1688,7 +1694,7 @@ let instantiate bindings mv_bindings = let nomodif = function Ast0.MINUS(x) -> (match !x with - ([],_) -> true + (Ast.NOREPLACEMENT,_) -> true | _ -> false) | Ast0.CONTEXT(x) | Ast0.MIXED(x) -> (match !x with @@ -1935,7 +1941,8 @@ let merge_plus model_mcode e_mcode = Ast0.MINUS(emc) -> emc := (match (!mc,!emc) with - (([],_),(x,t)) | ((x,_),([],t)) -> (x,t) + ((Ast.NOREPLACEMENT,_),(x,t)) + | ((x,_),(Ast.NOREPLACEMENT,t)) -> (x,t) | _ -> failwith "how can we combine minuses?") | _ -> failwith "not possible 6") | Ast0.CONTEXT(mc) -> @@ -1970,12 +1977,22 @@ let merge_plus model_mcode e_mcode = | Ast0.MINUS(emc) -> let (anything_bef_aft,_,_) = !mc in let (anythings,t) = !emc in - emc := - (match anything_bef_aft with - Ast.BEFORE(b,_) -> (b@anythings,t) - | Ast.AFTER(a,_) -> (anythings@a,t) - | Ast.BEFOREAFTER(b,a,_) -> (b@anythings@a,t) - | Ast.NOTHING -> (anythings,t)) + (match (anything_bef_aft,anythings) with + (Ast.BEFORE(b1,it1),Ast.NOREPLACEMENT) -> + emc := (Ast.REPLACEMENT(b1,it1),t) + | (Ast.AFTER(a1,it1),Ast.NOREPLACEMENT) -> + emc := (Ast.REPLACEMENT(a1,it1),t) + | (Ast.BEFOREAFTER(b1,a1,it1),Ast.NOREPLACEMENT) -> + emc := (Ast.REPLACEMENT(b1@a1,it1),t) + | (Ast.NOTHING,Ast.NOREPLACEMENT) -> + emc := (Ast.NOREPLACEMENT,t) + | (Ast.BEFORE(b1,it1),Ast.REPLACEMENT(a2,it2)) -> + emc := (Ast.REPLACEMENT(b1@a2,Ast.lub_count it1 it2),t) + | (Ast.AFTER(a1,it1),Ast.REPLACEMENT(a2,it2)) -> + emc := (Ast.REPLACEMENT(a2@a1,Ast.lub_count it1 it2),t) + | (Ast.BEFOREAFTER(b1,a1,it1),Ast.REPLACEMENT(a2,it2)) -> + emc := (Ast.REPLACEMENT(b1@a2@a1,Ast.lub_count it1 it2),t) + | (Ast.NOTHING,Ast.REPLACEMENT(a2,it2)) -> ()) (* no change *) | Ast0.MIXED(_) -> failwith "how did this become mixed?" | _ -> failwith "not possible 7") | Ast0.MIXED(_) -> failwith "not possible 8" diff --git a/parsing_cocci/lexer_cocci.mll b/parsing_cocci/lexer_cocci.mll index 65aa135..46fdde8 100644 --- a/parsing_cocci/lexer_cocci.mll +++ b/parsing_cocci/lexer_cocci.mll @@ -338,7 +338,7 @@ let init _ = Hashtbl.replace metavariables (get_name name) fn); Data.add_id_meta := (fun name constraints pure -> - let fn clt = TMetaId(name,constraints,pure,clt) in + let fn clt = TMetaId(name,constraints,Ast.NoVal,pure,clt) in Hashtbl.replace metavariables (get_name name) fn); Data.add_virt_id_meta_found := (fun name vl -> @@ -346,11 +346,11 @@ let init _ = Hashtbl.replace metavariables name fn); Data.add_virt_id_meta_not_found := (fun name pure -> - let fn clt = TMetaId(name,Ast.IdNoConstraint,pure,clt) in + let fn clt = TMetaId(name,Ast.IdNoConstraint,Ast.NoVal,pure,clt) in Hashtbl.replace metavariables (get_name name) fn); Data.add_fresh_id_meta := - (fun name -> - let fn clt = TMetaId(name,Ast.IdNoConstraint,Ast0.Impure,clt) in + (fun name seed -> + let fn clt = TMetaId(name,Ast.IdNoConstraint,seed,Ast0.Impure,clt) in Hashtbl.replace metavariables (get_name name) fn); Data.add_type_meta := (fun name pure -> @@ -760,12 +760,16 @@ rule token = parse { start_line true; check_plus_linetype (tok lexbuf); TPragma (Ast.Noindent(tok lexbuf), get_current_line_type lexbuf) } | "/*" - { start_line true; check_plus_linetype (tok lexbuf); + { + match !current_line_type with + (D.PLUS,_,_) | (D.PLUSPLUS,_,_) -> + start_line true; (* second argument to TPragma is not quite right, because it represents only the first token of the comment, but that should be good enough *) - TPragma (Ast.Indent("/*"^(comment lexbuf)), - get_current_line_type lexbuf) } + TPragma (Ast.Indent("/*"^(comment check_comment lexbuf)), + get_current_line_type lexbuf) + | _ -> let _ = comment (fun _ -> ()) lexbuf in token lexbuf } | "---" [^'\n']* { (if !current_line_started then lexerr "--- must be at the beginning of the line" ""); @@ -846,27 +850,28 @@ and string = parse } | _ { lexerr "unrecognised symbol: " (tok lexbuf) } -and comment = parse +and comment check_comment = parse | "*/" { let s = tok lexbuf in check_comment s; start_line true; s } | ['\n' '\r' '\011' '\012'] { let s = tok lexbuf in (* even blank line should have a + *) check_comment s; - reset_line lexbuf; s ^ comment lexbuf } + reset_line lexbuf; s ^ comment check_comment lexbuf } | "+" { pass_zero(); if !current_line_started - then (start_line true; let s = tok lexbuf in s^(comment lexbuf)) - else (start_line true; comment lexbuf) } + then (start_line true; + let s = tok lexbuf in s^(comment check_comment lexbuf)) + else (start_line true; comment check_comment lexbuf) } (* noteopti: *) | [^ '*'] { let s = tok lexbuf in - check_comment s; start_line true; s ^ comment lexbuf } + check_comment s; start_line true; s ^ comment check_comment lexbuf } | [ '*'] { let s = tok lexbuf in - check_comment s; start_line true; s ^ comment lexbuf } + check_comment s; start_line true; s ^ comment check_comment lexbuf } | _ { start_line true; let s = tok lexbuf in Common.pr2 ("LEXER: unrecognised symbol in comment:"^s); - s ^ comment lexbuf + s ^ comment check_comment lexbuf } diff --git a/parsing_cocci/parse_aux.ml b/parsing_cocci/parse_aux.ml index 2800932..8b2cbb3 100644 --- a/parsing_cocci/parse_aux.ml +++ b/parsing_cocci/parse_aux.ml @@ -28,6 +28,8 @@ module Ast = Ast_cocci (* types for metavariable tokens *) type info = Ast.meta_name * Ast0.pure * Data.clt +type midinfo = + Ast.meta_name * Data.iconstraints * Ast.seed * Ast0.pure * Data.clt type idinfo = Ast.meta_name * Data.iconstraints * Ast0.pure * Data.clt type expinfo = Ast.meta_name * Data.econstraints * Ast0.pure * Data.clt type tyinfo = Ast.meta_name * Ast0.typeC list * Ast0.pure * Data.clt @@ -72,13 +74,13 @@ let drop_pos (arity,line,lline,offset,col,strbef,straft,pos) = let clt2mcode str = function (Data.MINUS,line,lline,offset,col,strbef,straft,pos) -> (str,Ast0.NONE,make_info line lline offset col strbef straft, - Ast0.MINUS(ref([],Ast0.default_token_info)),ref pos,-1) + Ast0.MINUS(ref(Ast.NOREPLACEMENT,Ast0.default_token_info)),ref pos,-1) | (Data.OPTMINUS,line,lline,offset,col,strbef,straft,pos) -> (str,Ast0.OPT,make_info line lline offset col strbef straft, - Ast0.MINUS(ref([],Ast0.default_token_info)),ref pos,-1) + Ast0.MINUS(ref(Ast.NOREPLACEMENT,Ast0.default_token_info)),ref pos,-1) | (Data.UNIQUEMINUS,line,lline,offset,col,strbef,straft,pos) -> (str,Ast0.UNIQUE,make_info line lline offset col strbef straft, - Ast0.MINUS(ref([],Ast0.default_token_info)),ref pos,-1) + Ast0.MINUS(ref(Ast.NOREPLACEMENT,Ast0.default_token_info)),ref pos,-1) | (Data.PLUS,line,lline,offset,col,strbef,straft,pos) -> (str,Ast0.NONE,make_info line lline offset col strbef straft, Ast0.PLUS(Ast.ONE),ref pos,-1) diff --git a/parsing_cocci/parse_cocci.ml b/parsing_cocci/parse_cocci.ml index 8638805..a18abbc 100644 --- a/parsing_cocci/parse_cocci.ml +++ b/parsing_cocci/parse_cocci.ml @@ -203,7 +203,7 @@ let token2c (tok,_) = | PC.TMetaIdExp(_,_,_,_,clt) -> "idexpmeta"^(line_type2c clt) | PC.TMetaLocalIdExp(_,_,_,_,clt) -> "localidexpmeta"^(line_type2c clt) | PC.TMetaExpList(_,_,_,clt) -> "explistmeta"^(line_type2c clt) - | PC.TMetaId(nm,_,_,clt) -> "idmeta-"^(Dumper.dump nm)^(line_type2c clt) + | PC.TMetaId(nm,_,_,_,clt) -> "idmeta-"^(Dumper.dump nm)^(line_type2c clt) | PC.TMetaType(_,_,clt) -> "typemeta"^(line_type2c clt) | PC.TMetaInit(_,_,clt) -> "initmeta"^(line_type2c clt) | PC.TMetaInitList(_,_,_,clt) -> "initlistmeta"^(line_type2c clt) @@ -336,7 +336,7 @@ let plus_attachable only_plus (tok,_) = | PC.TMetaExp(_,_,_,_,clt) | PC.TMetaIdExp(_,_,_,_,clt) | PC.TMetaLocalIdExp(_,_,_,_,clt) | PC.TMetaExpList(_,_,_,clt) - | PC.TMetaId(_,_,_,clt) + | PC.TMetaId(_,_,_,_,clt) | PC.TMetaType(_,_,clt) | PC.TMetaInit(_,_,clt) | PC.TMetaInitList(_,_,_,clt) | PC.TMetaStm(_,_,clt) | PC.TMetaStmList(_,_,clt) @@ -410,7 +410,7 @@ let get_clt (tok,_) = | PC.TMetaExp(_,_,_,_,clt) | PC.TMetaIdExp(_,_,_,_,clt) | PC.TMetaLocalIdExp(_,_,_,_,clt) | PC.TMetaExpList(_,_,_,clt) - | PC.TMetaId(_,_,_,clt) + | PC.TMetaId(_,_,_,_,clt) | PC.TMetaType(_,_,clt) | PC.TMetaInit(_,_,clt) | PC.TMetaInitList(_,_,_,clt) | PC.TMetaStm(_,_,clt) | PC.TMetaStmList(_,_,clt) @@ -530,7 +530,7 @@ let update_clt (tok,x) clt = | PC.TMetaIdExp(a,b,c,d,_) -> (PC.TMetaIdExp(a,b,c,d,clt),x) | PC.TMetaLocalIdExp(a,b,c,d,_) -> (PC.TMetaLocalIdExp(a,b,c,d,clt),x) | PC.TMetaExpList(a,b,c,_) -> (PC.TMetaExpList(a,b,c,clt),x) - | PC.TMetaId(a,b,c,_) -> (PC.TMetaId(a,b,c,clt),x) + | PC.TMetaId(a,b,c,d,_) -> (PC.TMetaId(a,b,c,d,clt),x) | PC.TMetaType(a,b,_) -> (PC.TMetaType(a,b,clt),x) | PC.TMetaInit(a,b,_) -> (PC.TMetaInit(a,b,clt),x) | PC.TMetaInitList(a,b,c,_) -> (PC.TMetaInitList(a,b,c,clt),x) @@ -683,7 +683,7 @@ let split_token ((tok,_) as t) = | PC.TMetaIdExp(_,_,_,_,clt) | PC.TMetaLocalIdExp(_,_,_,_,clt) | PC.TMetaExpList(_,_,_,clt) | PC.TMetaParam(_,_,clt) | PC.TMetaParamList(_,_,_,clt) - | PC.TMetaId(_,_,_,clt) | PC.TMetaType(_,_,clt) + | PC.TMetaId(_,_,_,_,clt) | PC.TMetaType(_,_,clt) | PC.TMetaInit(_,_,clt) | PC.TMetaInitList(_,_,_,clt) | PC.TMetaDecl(_,_,clt) | PC.TMetaField(_,_,clt) | PC.TMetaFieldList(_,_,_,clt) @@ -764,7 +764,7 @@ let rec find_function_names l = let is_ident = function (PC.TIdent(_,clt),info) | (PC.TMeta(_,_,clt),info) - | (PC.TMetaId(_,_,_,clt),info) + | (PC.TMetaId(_,_,_,_,clt),info) | (PC.TMetaFunc(_,_,_,clt),info) | (PC.TMetaLocalFunc(_,_,_,clt),info) -> true | _ -> false in @@ -836,7 +836,7 @@ let rec find_function_names l = let rec detect_attr l = let is_id = function - (PC.TIdent(_,_),_) | (PC.TMetaId(_,_,_,_),_) | (PC.TMetaFunc(_,_,_,_),_) + (PC.TIdent(_,_),_) | (PC.TMetaId(_,_,_,_,_),_) | (PC.TMetaFunc(_,_,_,_),_) | (PC.TMetaLocalFunc(_,_,_,_),_) -> true | _ -> false in let rec loop = function @@ -872,7 +872,7 @@ let detect_types in_meta_decls l = let is_choices_delim = function (PC.TOBrace(_),_) | (PC.TComma(_),_) -> true | _ -> false in let is_id = function - (PC.TIdent(_,_),_) | (PC.TMetaId(_,_,_,_),_) | (PC.TMetaFunc(_,_,_,_),_) + (PC.TIdent(_,_),_) | (PC.TMetaId(_,_,_,_,_),_) | (PC.TMetaFunc(_,_,_,_),_) | (PC.TMetaLocalFunc(_,_,_,_),_) -> true | (PC.TMetaParam(_,_,_),_) | (PC.TMetaParamList(_,_,_,_),_) @@ -978,7 +978,7 @@ let token2line (tok,_) = | PC.TMetaConst(_,_,_,_,clt) | PC.TMetaExp(_,_,_,_,clt) | PC.TMetaIdExp(_,_,_,_,clt) | PC.TMetaLocalIdExp(_,_,_,_,clt) | PC.TMetaExpList(_,_,_,clt) - | PC.TMetaId(_,_,_,clt) | PC.TMetaType(_,_,clt) + | PC.TMetaId(_,_,_,_,clt) | PC.TMetaType(_,_,clt) | PC.TMetaInit(_,_,clt) | PC.TMetaInitList(_,_,_,clt) | PC.TMetaDecl(_,_,clt) | PC.TMetaField(_,_,clt) | PC.TMetaFieldList(_,_,_,clt) diff --git a/parsing_cocci/parser_cocci_menhir.ml b/parsing_cocci/parser_cocci_menhir.ml index 9835449..a5cd51a 100644 --- a/parsing_cocci/parser_cocci_menhir.ml +++ b/parsing_cocci/parser_cocci_menhir.ml @@ -123,14 +123,14 @@ type token = # 124 "parser_cocci_menhir.ml" ) | TXor of ( -# 160 "parser_cocci_menhir.mly" +# 161 "parser_cocci_menhir.mly" (Data.clt) # 129 "parser_cocci_menhir.ml" ) | TWords | TWhy0 | TWhy of ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 136 "parser_cocci_menhir.ml" ) @@ -140,17 +140,17 @@ type token = # 141 "parser_cocci_menhir.ml" ) | TWhenTrue of ( -# 142 "parser_cocci_menhir.mly" +# 143 "parser_cocci_menhir.mly" (Data.clt) # 146 "parser_cocci_menhir.ml" ) | TWhenFalse of ( -# 142 "parser_cocci_menhir.mly" +# 143 "parser_cocci_menhir.mly" (Data.clt) # 151 "parser_cocci_menhir.ml" ) | TWhen of ( -# 142 "parser_cocci_menhir.mly" +# 143 "parser_cocci_menhir.mly" (Data.clt) # 156 "parser_cocci_menhir.ml" ) @@ -158,7 +158,7 @@ type token = | TUsing | TUnderscore | TUndef of ( -# 149 "parser_cocci_menhir.mly" +# 150 "parser_cocci_menhir.mly" (Data.clt * token) # 164 "parser_cocci_menhir.ml" ) @@ -170,17 +170,17 @@ type token = ) | TType | TTildeExclEq of ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 176 "parser_cocci_menhir.ml" ) | TTildeEq of ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 181 "parser_cocci_menhir.ml" ) | TTilde of ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 186 "parser_cocci_menhir.ml" ) @@ -190,17 +190,17 @@ type token = # 191 "parser_cocci_menhir.ml" ) | TSub of ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 196 "parser_cocci_menhir.ml" ) | TString of ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) # 201 "parser_cocci_menhir.ml" ) | TStrict of ( -# 142 "parser_cocci_menhir.mly" +# 143 "parser_cocci_menhir.mly" (Data.clt) # 206 "parser_cocci_menhir.ml" ) @@ -211,17 +211,17 @@ type token = # 212 "parser_cocci_menhir.ml" ) | TShROp of ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 217 "parser_cocci_menhir.ml" ) | TShLOp of ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 222 "parser_cocci_menhir.ml" ) | TScriptData of ( -# 139 "parser_cocci_menhir.mly" +# 140 "parser_cocci_menhir.mly" (string) # 227 "parser_cocci_menhir.ml" ) @@ -239,12 +239,12 @@ type token = ) | TPure | TPtrOp of ( -# 172 "parser_cocci_menhir.mly" +# 173 "parser_cocci_menhir.mly" (Data.clt) # 245 "parser_cocci_menhir.ml" ) | TPtVirg of ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 250 "parser_cocci_menhir.ml" ) @@ -256,227 +256,227 @@ type token = | TPosition | TPosAny | TPlusFile of ( -# 151 "parser_cocci_menhir.mly" +# 152 "parser_cocci_menhir.mly" (string * Data.clt) # 262 "parser_cocci_menhir.ml" ) | TPlus0 | TPlus of ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 268 "parser_cocci_menhir.ml" ) | TPathIsoFile of ( -# 147 "parser_cocci_menhir.mly" +# 148 "parser_cocci_menhir.mly" (string) # 273 "parser_cocci_menhir.ml" ) | TParameter | TPOEllipsis of ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) # 279 "parser_cocci_menhir.ml" ) | TPCEllipsis of ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) # 284 "parser_cocci_menhir.ml" ) | TPArob | TOrLog of ( -# 157 "parser_cocci_menhir.mly" +# 158 "parser_cocci_menhir.mly" (Data.clt) # 290 "parser_cocci_menhir.ml" ) | TOr of ( -# 159 "parser_cocci_menhir.mly" +# 160 "parser_cocci_menhir.mly" (Data.clt) # 295 "parser_cocci_menhir.ml" ) | TOn | TOPar0 of ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 301 "parser_cocci_menhir.ml" ) | TOPar of ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 306 "parser_cocci_menhir.ml" ) | TOInit of ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 311 "parser_cocci_menhir.ml" ) | TOEllipsis of ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) # 316 "parser_cocci_menhir.ml" ) | TOCro of ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) # 321 "parser_cocci_menhir.ml" ) | TOBrace of ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 326 "parser_cocci_menhir.ml" ) | TNothing | TNotEq of ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 332 "parser_cocci_menhir.ml" ) | TNever | TName | TMul of ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 339 "parser_cocci_menhir.ml" ) | TMinusFile of ( -# 151 "parser_cocci_menhir.mly" +# 152 "parser_cocci_menhir.mly" (string * Data.clt) # 344 "parser_cocci_menhir.ml" ) | TMinus of ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 349 "parser_cocci_menhir.ml" ) | TMid0 of ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 354 "parser_cocci_menhir.ml" ) | TMetavariable | TMetaType of ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 360 "parser_cocci_menhir.ml" ) | TMetaStmList of ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 365 "parser_cocci_menhir.ml" ) | TMetaStm of ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 370 "parser_cocci_menhir.ml" ) | TMetaPos of ( -# 136 "parser_cocci_menhir.mly" +# 137 "parser_cocci_menhir.mly" (Parse_aux.pos_info) # 375 "parser_cocci_menhir.ml" ) | TMetaParamList of ( -# 133 "parser_cocci_menhir.mly" +# 134 "parser_cocci_menhir.mly" (Parse_aux.list_info) # 380 "parser_cocci_menhir.ml" ) | TMetaParam of ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 385 "parser_cocci_menhir.ml" ) | TMetaLocalIdExp of ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) # 390 "parser_cocci_menhir.ml" ) | TMetaLocalFunc of ( -# 128 "parser_cocci_menhir.mly" +# 129 "parser_cocci_menhir.mly" (Parse_aux.idinfo) # 395 "parser_cocci_menhir.ml" ) | TMetaIterator of ( -# 129 "parser_cocci_menhir.mly" +# 130 "parser_cocci_menhir.mly" (Parse_aux.idinfo) # 400 "parser_cocci_menhir.ml" ) | TMetaInitList of ( -# 133 "parser_cocci_menhir.mly" +# 134 "parser_cocci_menhir.mly" (Parse_aux.list_info) # 405 "parser_cocci_menhir.ml" ) | TMetaInit of ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) # 410 "parser_cocci_menhir.ml" ) | TMetaIdExp of ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) # 415 "parser_cocci_menhir.ml" ) | TMetaId of ( # 128 "parser_cocci_menhir.mly" - (Parse_aux.idinfo) + (Parse_aux.midinfo) # 420 "parser_cocci_menhir.ml" ) | TMetaFunc of ( -# 128 "parser_cocci_menhir.mly" +# 129 "parser_cocci_menhir.mly" (Parse_aux.idinfo) # 425 "parser_cocci_menhir.ml" ) | TMetaFieldList of ( -# 134 "parser_cocci_menhir.mly" +# 135 "parser_cocci_menhir.mly" (Parse_aux.list_info) # 430 "parser_cocci_menhir.ml" ) | TMetaField of ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) # 435 "parser_cocci_menhir.ml" ) | TMetaExpList of ( -# 133 "parser_cocci_menhir.mly" +# 134 "parser_cocci_menhir.mly" (Parse_aux.list_info) # 440 "parser_cocci_menhir.ml" ) | TMetaExp of ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) # 445 "parser_cocci_menhir.ml" ) | TMetaErr of ( -# 130 "parser_cocci_menhir.mly" +# 131 "parser_cocci_menhir.mly" (Parse_aux.expinfo) # 450 "parser_cocci_menhir.ml" ) | TMetaDeclarer of ( -# 129 "parser_cocci_menhir.mly" +# 130 "parser_cocci_menhir.mly" (Parse_aux.idinfo) # 455 "parser_cocci_menhir.ml" ) | TMetaDecl of ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) # 460 "parser_cocci_menhir.ml" ) | TMetaConst of ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) # 465 "parser_cocci_menhir.ml" ) | TMeta of ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) # 470 "parser_cocci_menhir.ml" ) | TMPtVirg | TLogOp of ( -# 163 "parser_cocci_menhir.mly" +# 164 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) # 476 "parser_cocci_menhir.ml" ) | TLocal | TLineEnd of ( -# 142 "parser_cocci_menhir.mly" +# 143 "parser_cocci_menhir.mly" (Data.clt) # 482 "parser_cocci_menhir.ml" ) @@ -497,24 +497,24 @@ type token = | TIso | TInvalid | TInt of ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) # 503 "parser_cocci_menhir.ml" ) | TInitialize | TInitialiser | TIncludeNL of ( -# 148 "parser_cocci_menhir.mly" +# 149 "parser_cocci_menhir.mly" (string * Data.clt) # 510 "parser_cocci_menhir.ml" ) | TIncludeL of ( -# 148 "parser_cocci_menhir.mly" +# 149 "parser_cocci_menhir.mly" (string * Data.clt) # 515 "parser_cocci_menhir.ml" ) | TInc of ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) # 520 "parser_cocci_menhir.ml" ) @@ -550,7 +550,7 @@ type token = # 551 "parser_cocci_menhir.ml" ) | TFloat of ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) # 556 "parser_cocci_menhir.ml" ) @@ -562,12 +562,12 @@ type token = | TEver | TError | TEqEq of ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 568 "parser_cocci_menhir.ml" ) | TEq of ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 573 "parser_cocci_menhir.ml" ) @@ -577,17 +577,17 @@ type token = # 578 "parser_cocci_menhir.ml" ) | TEllipsis of ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) # 583 "parser_cocci_menhir.ml" ) | TDotDot of ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 588 "parser_cocci_menhir.ml" ) | TDot of ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 593 "parser_cocci_menhir.ml" ) @@ -597,19 +597,19 @@ type token = # 598 "parser_cocci_menhir.ml" ) | TDmOp of ( -# 165 "parser_cocci_menhir.mly" +# 166 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 603 "parser_cocci_menhir.ml" ) | TDisable | TDepends | TDefineParam of ( -# 150 "parser_cocci_menhir.mly" +# 151 "parser_cocci_menhir.mly" (Data.clt * token * int * int) # 610 "parser_cocci_menhir.ml" ) | TDefine of ( -# 149 "parser_cocci_menhir.mly" +# 150 "parser_cocci_menhir.mly" (Data.clt * token) # 615 "parser_cocci_menhir.ml" ) @@ -626,7 +626,7 @@ type token = | TDeclarer | TDeclaration | TDec of ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) # 632 "parser_cocci_menhir.ml" ) @@ -639,12 +639,12 @@ type token = | TContext | TConstant | TComma of ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 645 "parser_cocci_menhir.ml" ) | TChar of ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) # 650 "parser_cocci_menhir.ml" ) @@ -654,27 +654,27 @@ type token = # 655 "parser_cocci_menhir.ml" ) | TCPar0 of ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 660 "parser_cocci_menhir.ml" ) | TCPar of ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 665 "parser_cocci_menhir.ml" ) | TCEllipsis of ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) # 670 "parser_cocci_menhir.ml" ) | TCCro of ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) # 675 "parser_cocci_menhir.ml" ) | TCBrace of ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 680 "parser_cocci_menhir.ml" ) @@ -685,29 +685,29 @@ type token = ) | TBang0 | TBang of ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 691 "parser_cocci_menhir.ml" ) | TAssign of ( -# 176 "parser_cocci_menhir.mly" +# 177 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) # 696 "parser_cocci_menhir.ml" ) | TArobArob | TArob | TAny of ( -# 142 "parser_cocci_menhir.mly" +# 143 "parser_cocci_menhir.mly" (Data.clt) # 703 "parser_cocci_menhir.ml" ) | TAndLog of ( -# 158 "parser_cocci_menhir.mly" +# 159 "parser_cocci_menhir.mly" (Data.clt) # 708 "parser_cocci_menhir.ml" ) | TAnd of ( -# 161 "parser_cocci_menhir.mly" +# 162 "parser_cocci_menhir.mly" (Data.clt) # 713 "parser_cocci_menhir.ml" ) @@ -784,15 +784,15 @@ let tmeta_to_statement (name,pure,clt) = let tmeta_to_seed_id (name,pure,clt) = (coerce_tmeta "an identifier" name - (TMetaId(name,Ast.IdNoConstraint,pure,clt)) - (function TMetaId(_,_,_,_) -> true | _ -> false)); + (TMetaId(name,Ast.IdNoConstraint,Ast.NoVal,pure,clt)) + (function TMetaId(_,_,_,_,_) -> true | _ -> false)); Ast.SeedId name let tmeta_to_ident (name,pure,clt) = (coerce_tmeta "an identifier" name - (TMetaId(name,Ast.IdNoConstraint,pure,clt)) - (function TMetaId(_,_,_,_) -> true | _ -> false)); - Ast0.wrap(Ast0.MetaId(P.clt2mcode name clt,Ast.IdNoConstraint,pure)) + (TMetaId(name,Ast.IdNoConstraint,Ast.NoVal,pure,clt)) + (function TMetaId(_,_,_,_,_) -> true | _ -> false)); + Ast0.wrap(Ast0.MetaId(P.clt2mcode name clt,Ast.IdNoConstraint,Ast.NoVal,pure)) # 798 "parser_cocci_menhir.ml" let _eRR = @@ -1580,19 +1580,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct Obj.repr _v let default_reduction = - (16, "\000\000\000\000\003\016\000\131\000\000\000\000\003`\001\130\000\000\001\128\001\129\001\127\000\000\001\132\001\131\000\001\000\000\001\185\000\000\000\000\000\147\000\000\000\000\001\175\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\156\003\155\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\002\019\002\018\002\017\000\000\001-\001,\000\000\000\000\002*\000\000\001\199\002\021\000\000\000\000\000\000\000\000\000\000\0014\000\000\000\000\001M\001|\001L\001K\001J\001I\001{\001H\001G\002V\000\000\000\000\002U\000\000\000\000\000\000\000\159\000\000\000\000\000\158\002Y\001E\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\003\142\003\149\003\148\003\150\000\000\000\000\000\000\000\000\003\184\000\000\003\143\003\144\000\000\000\000\000\206\000\000\003\146\000\000\000\000\000\000\004+\002\218\000\000\000\000\004)\000\000\002\244\000\000\000\000\000\000\000\000\000\000\000\000\004(\004*\002\224\001w\002\223\001v\002\222\002\221\002\220\002=\002\216\000\000\000\000\002\217\001.\000\000\000\000\000\000\002\219\000\000\004'\000\000\000\000\004\b\002\187\000\000\000\000\002\190\000\000\000\000\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\001/\001u\002\215\002\227\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\0019\000p\002\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\188\002\191\000\000\002\189\002\192\004\007\000\000\002\252\000\000\000\247\000\000\000\000\002+\000\000\001\201\002\022\000\000\000\000\002)\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\002|\000\252\000\253\000\000\000\000\000\000\000\000\000\000\002j\002{\0021\000\000\000\000\000\000\000\000\000\000\001D\001\001\000\000\0022\000\000\000\000\000\000\000\000\000\251\000\000\000\249\000\000\001\177\000\171\000\000\000\000\000\170\002n\002k\000\000\000\000\003\152\000\000\003\151\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\000\000\000\000\000\242\000\240\003\183\000\000\000\000\003\154\003\147\000\227\000\000\001\197\002\020\000\000\000\000\002\251\000\000\000\000\002\250\002\249\002\248\002\247\002\246\002\242\000\000\004\019\002\243\000\000\004\020\002\245\000\000\004\022\000\000\000y\002\201\000\000\000\000\002\204\000\000\000\000\000\015\000\000\000\000\000\000\000\000\000\000\000i\000\000\000h\000\151\002\253\002\241\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\002G\002K\000\000\000\000\000\150\002H\001<\001:\000\000\002\207\000\000\000\000\002\202\002\205\000\000\002\203\002\206\004\021\000z\000\000\002\193\004#\004$\004\"\004!\004\006\000\000\002\225\004\005\001R\000\000\002;\000\000\000\000\000\000\000\000\000\000\0012\002B\000\000\000\000\001\213\000\000\002\226\000\000\000\000\000v\000\000\000\000\004\024\004\023\000\000\002<\000\000\000\000\004&\004%\000\000\000\000\004\n\004\t\000\000\000c\000\248\000\000\003\153\000\000\000\000\000\000\000\000\000\207\000\205\000\000\0018\000\000\000\000\000\208\000\192\000\000\000\000\001\153\000\000\001\152\000\000\001\167\000\000\001\187\000\000\000\000\000\000\003\206\000\000\000\000\003\193\000\000\000\000\003\198\003\197\000\000\003\194\000\000\003\192\000\000\000\000\000\000\003\196\000\000\003\195\000\000\003\210\000\000\003\209\000\000\000\000\003\186\000\000\000\000\003\191\003\190\000\000\003\187\000\000\003\185\000\000\000\000\000\000\003\189\000\000\003\188\000\000\003\200\000\000\003\211\000\000\000\000\003\205\003\204\000\000\003\201\000\000\003\208\000\000\000\000\000\000\000\000\003\213\000\000\000\000\000\000\000\000\003\214\003\212\000\000\003\207\000\000\003\199\000\000\003\219\000\000\000\000\000\000\003\203\000\000\001\230\000\000\003\255\000\000\000\000\002.\001\231\000\000\001\207\002\026\000\000\000\000\000\000\000\000\003\218\003\202\004\000\000\000\004\003\004\002\000\000\000\000\003p\004\001\000\139\000\000\001\030\000\000\000\000\000\000\000\000\003\216\000\000\000\000\000\000\000\000\003\217\003\215\000\000\000\000\003\241\000\000\000\000\003\228\000\000\000\000\003\233\003\232\000\000\003\229\000\000\003\227\000\000\000\000\000\000\003\231\000\000\003\230\000\000\003\245\000\000\003\244\000\000\000\000\003\221\000\000\000\000\003\226\003\225\000\000\003\222\000\000\003\220\000\000\000\000\000\000\003\224\000\000\003\223\000\000\003\235\000\000\003\246\000\000\000\000\003\240\003\239\000\000\003\236\000\000\003\243\000\000\000\000\000\000\000\000\003\248\000\000\000\000\000\000\000\000\003\249\003\247\000\000\003\242\000\000\003\234\000\000\003\254\000\000\000\000\000\000\003\238\000\000\000\000\000\000\000\000\003\253\003\237\000\000\000\000\000\000\000\000\003\251\000\000\000\000\000\000\000\000\003\252\003\250\003\138\003\140\003\141\003\139\000\000\000\000\000\000\000\000\000\000\001\135\000\000\000\000\000\000\000\000\000\000\000\255\001\011\000\254\000\000\000\000\000\128\000\000\000\000\000\000\002\231\000\000\000\000\000\000\004\017\004\016\000\000\000\000\002\239\000\000\000\000\002\238\000\000\000\000\002\237\002\236\002\235\002\234\002\233\001\149\002\229\000\000\004\012\002\230\000\000\004\r\002\232\000\000\004\015\000\000\000w\002\194\000\000\000\000\002\197\000\000\000\000\002\200\000\000\000\000\002\195\002\198\000\000\002\196\002\199\002\240\002\228\004\014\000x\000\000\000\000\000\000\000\000\001)\001(\000\000\000\000\001\147\001\146\000\000\000\000\000\000\000\000\001\141\000\000\0016\001\139\000\000\001'\000\000\002]\000\000\000\000\000\000\000\000\001\144\000\000\001\183\000$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000&\000\000\000\000\000\000\000\000\001\145\000\000\000\000\002\\\000\000\000\000\000\000\000\163\000\000\000\000\000\162\002`\001@\000\000\001\143\001\148\000\000\001\140\000\000\001\023\000\000\003Z\000\000\000\000\001\019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\026\000\000\000\000\001\029\001\\\001[\000\000\000\000\000\000\000\000\001z\000\000\000\000\000\000\000\000\001\016\000\000\001\r\000\000\000\000\000\000\000\000\000\000\001\024\000\000\001\020\000\000\000\000\000\000\000\000\001\021\000\000\001\017\000\000\000\000\000\000\003\001\000\000\000\000\000\000\004\031\004\030\000\000\003\129\000\000\003\128\000\000\000\000\000\000\000\000\0042\000\000\000\000\000\000\0043\000\000\000\018\000\000\000\000\000\000\000\000\003\b\000\000\000\000\000\000\003\007\003\006\003\005\003\004\003\003\002\255\000\000\004\026\003\000\000\000\004\027\003\002\000\000\004\029\000\000\000{\002\208\000\000\000\000\002\211\000\000\000\000\002\214\000\000\000\000\002\209\002\212\000\000\002\210\002\213\003\n\002\254\004\028\000\000\000\000\000l\000\000\000k\000\000\003\t\000\000\002\023\000j\000B\001Q\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.\000\000\001\215\000\000\000\000\000\000\001\002\003w\001\173\000\000\001\172\001\134\001\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\155\0010\000\000\000\000\002N\000\000\000\000\000\154\002R\002O\001>\001\031\000\000\001!\001 \000\000\003\131\000\000\003\130\003s\000\000\000\000\000\000\000\000\000\000\003}\000\000\003\132\000\000\000\000\000\000\000\000\003~\003u\000\000\003x\000\000\001\006\001\136\000\000\003\135\000\000\001\138\000\000\000\000\003\162\000\000\003\169\001\b\000\000\001\014\000\000\003\163\001\007\000\000\003\164\000\000\003\171\000\000\000\000\000\000\000\000\001\027\000\000\001\n\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\001y\000\000\000\000\000\000\001\015\000\000\001\012\000\000\000\000\000\000\000\000\000\000\001\022\000\000\001\018\001\004\001\003\000\000\003\172\003\173\000\000\003\174\000\000\003\175\000\000\001\137\003{\000\000\000\000\0020\000\000\001\211\002\028\000\000\003t\000\000\000\000\000\000\003z\000\000\000\000\000\000\001n\000\000\001h\000\000\001i\000\000\001s\001g\001r\000\000\003\134\001t\000\000\001\t\000\000\000\000\000\000\000\000\001p\001k\002,\000\000\001l\000\000\001m\000\000\001\203\002\024\000\000\000\000\000\000\0027\000\000\0025\000\000\000\000\0029\0023\000\000\002:\0024\000\000\003\136\002>\000\000\001\005\000\000\000\000\002-\000\000\001\205\002\025\000\000\004/\000\000\004,\000\000\004-\000\019\000\020\000\000\000\000\003=\000\000\003<\000\000\002~\000\000\003?\000\000\003>\000\000\000\000\000\000\002\134\000\000\000\000\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\141\000\000\000\000\002\144\000\000\002\128\000\000\000\000\002\131\000\000\000\000\000\000\002\135\000\000\000\000\002\139\000\000\000\000\002/\000\000\000\000\002\132\000\000\000\000\002\136\003:\002\129\000\000\003;\000\000\000\000\000\000\000\000\002\142\000\000\002}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\140\000\000\000\000\002\143\000\000\002\127\000\000\000\000\002\130\000\000\000\000\000\000\002\133\000\000\000\000\002\137\000\000\001\209\002\027\000\000\003@\000\000\000\000\000\000\0040\000\017\000~\000\000\0041\000\000\000\000\003V\000\000\000\000\003\137\000s\000\000\000\000\000\000\000t\000\000\003\127\000\000\001\179\000\000\001\181\003|\000\000\000\000\001\159\000\000\001\158\000\000\001\168\000\000\001\193\000\000\000\000\000\000\001\157\000\000\001\156\000\000\001\165\000\000\001\191\000\000\000\000\000\000\001\164\000\000\000\000\000\000\001\161\000\000\001\160\000\000\001\166\000\000\001\195\000\000\000\000\000\000\001\162\000\000\000\000\000\000\001\155\000\000\001\154\000\000\001\169\000\000\001\189\000\000\000\000\000\000\001\163\000\002\000\000\000`\000a\000\000\000\000\003\026\003\030\003\"\003\022\003\019\000\000\000\000\003\031\003&\003\023\003%\003\021\003$\003\025\003\017\003\024\003!\003\020\003\027\003\018\003\029\003#\003 \003\028\001\236\001\235\000\137\000\000\000\000\003l\000\000\000\000\003O\000\000\000\000\003R\003P\003Q\0030\000\000\000\000\003r\003(\003'\003)\000\000\001\253\000_\001\170\000\003\000\000\000\000\003\r\000\000\002\148\000\000\000\138\000\000\000\000\003n\000\000\000\000\000\000\000\130\000\000\000\000\003^\000\000\002x\002w\001\227\0031\000\000\002\012\000\000\003\014\000\000\000\000\000\132\000\000\000\000\003b\000\000\001\250\000\000\000\000\001\242\000\000\000\000\000\000\001\249\000\000\001\245\000\000\000\000\000\000\001\217\001\216\000\000\000\000\000\000\002\r\000\000\001\240\000\000\001\239\000\000\000\127\000\000\000\000\003X\000\000\000\000\001\234\000\000\000\000\001\238\000\000\000\000\000\135\000\000\000\000\003h\000\000\000\000\0038\000\000\0037\000\000\000\000\000\000\002v\002u\0035\002\156\003,\0036\000\000\002\000\000\000\000\000\000\000\001\252\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\002\016\000\000\001\244\000\000\001\243\000\000\000\000\000\000\003.\000\136\000\000\000\000\003j\000\000\003-\000\000\001\254\000\000\000\000\001\255\000\000\000\000\000\000\000\000\000\000\000\000\002\015\000\000\001\248\000\000\001\247\000\000\000\000\001V\000\000\001U\000\000\000\000\000\000\000\000\000\000\002\014\000\000\001\241\000\000\001T\000\000\002D\000\133\000\000\000\000\003d\000\000\000\000\000\000\000\000\003\158\003\157\000\000\000\000\001~\000\129\001}\000\000\000\000\003\\\000\000\002p\002o\002r\003*\002\152\002q\001S\000\000\000\134\000\000\000\000\003f\000\000\000\000\000\000\000\000\002t\002s\0034\0032\002\154\003+\0033\000\000\002\007\000\000\002\n\000\000\000\000\002\003\000\000\000\000\000\000\001\251\000\000\002\001\000\000\000\000\001\246\000\000\000\000\000\000\000\000\000\000\000\000\001\233\000\000\000\000\002\t\000\000\002\b\000\000\000\000\000\000\000\000\002\006\000\000\000\000\002\005\000\000\002\004\000\000\000\000\002\011\000\000\000\000\001\171\000\004\000\000\001\237\000\005\000\000\000\000\001Y\000\006\000\000\002 \002!\002\031\000\000\002\030\003\159\001\223\000\000\000\007\000\000\002#\002$\002\"\000\000\000\000\000\000\000\000\001^\000\000\000\000\000\000\000\000\001c\001e\001d\001_\001a\001`\000\000\000\000\000\000\000\000\000\000\003\165\003\178\000\000\003\166\000\000\003\167\000\000\000\000\003\160\000\000\000\000\000\000\000\000\003\177\000\000\000\000\003\176\002(\002'\000\000\000\000\001\225\002\029\002%\000\000\000\000\000\000\000\000\000\000\002z\000\000\000\000\000\000\000\000\000\000\002c\002y\000\000\000\000\000\000\000\167\000\000\000\000\000\166\002g\002d\001B\001\000\000\000\000\000\000\000\000\000\001x\001Z\000\000\003\181\000\000\003\182\000\000\000\000\002A\002?\000\000\002@\000\b\000\000\000\t\000\000\002\171\002\172\002\170\000\000\002\169\000\000\000\n\000\000\002\174\002\175\002\173\000\000\002\177\000\000\000\000\000\000\002\163\000\000\000\000\002\165\000\000\002\159\000\000\002\161\000\000\002\166\000\000\002\167\000\000\002\160\002\158\002\178\001\229\002\168\000\000\002\180\000\000\002\179\000\000\002\181\000\000\0039\000\011\000\000\000\000\000\000\000\000\000\000\000\000\002\182\000\000\000\000\002\185\000\000\002\184\000\000\002\183\001\"\000\000\000\000\000\000\000\000\001#\002\186\000\000\000\000\000\000\003E\000\000\003D\000\000\000\000\000\000\000\000\003F\000\000\000\000\001X\000\000\000\000\000\000\000\000\000\000\003T\000}\000\000\000\000\001+\000\000\001O\001N\000\000\001\151\000\000\003C\001\221\001\219\000\000\000\000\000\000\000\000\003G\000\012\000\000\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\003A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003N\000\000\000\000\003M\000\000\003J\000\000\000\000\000\000\000\000\000\000\003K\000\000\000\000\000\000\003L\000\r\000\000\003H\000\000\003I") + (16, "\000\000\000\000\003\022\000\131\000\000\000\000\003g\001\130\000\000\001\128\001\129\001\127\000\000\001\132\001\131\000\001\000\000\001\185\000\000\000\000\000\147\000\000\000\000\001\175\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\163\003\162\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\002\019\002\018\002\017\000\000\001-\001,\000\000\000\000\002*\000\000\001\199\002\021\000\000\000\000\000\000\000\000\000\000\0014\000\000\000\000\001M\001|\001L\001K\001J\001I\001{\001H\001G\002V\000\000\000\000\002U\000\000\000\000\000\000\000\159\000\000\000\000\000\158\002Y\001E\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\003\149\003\156\003\155\003\157\000\000\000\000\000\000\000\000\003\191\000\000\003\150\003\151\000\000\000\000\000\206\000\000\003\153\000\000\000\000\000\000\0042\002\221\000\000\000\000\0040\000\000\002\249\000\000\000\000\000\000\000\000\000\000\000\000\004/\0041\002\227\001w\002\226\001v\002\225\002\224\002\223\002=\002\219\000\000\000\000\002\220\001.\000\000\000\000\000\000\002\222\000\000\000\000\002\218\004.\000\000\000\000\004\015\002\189\000\000\000\000\002\192\000\000\000\000\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\001/\001u\002\217\002\230\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\0019\000p\002\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\190\002\193\000\000\002\191\002\194\004\014\000\000\003\001\000\000\000\247\000\000\000\000\002+\000\000\001\201\002\022\000\000\000\000\002)\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\002|\000\252\000\253\000\000\000\000\000\000\000\000\000\000\002j\002{\0021\000\000\000\000\000\000\000\000\000\000\001D\001\001\000\000\0022\000\000\000\000\000\000\000\000\000\251\000\000\000\249\000\000\001\177\000\171\000\000\000\000\000\170\002n\002k\000\000\000\000\003\159\000\000\003\158\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\000\000\000\000\000\242\000\240\003\190\000\000\000\000\003\161\003\154\000\227\000\000\001\197\002\020\000\000\000\000\003\000\000\000\000\000\002\255\002\254\002\253\002\252\002\251\002\247\000\000\004\026\002\248\000\000\004\027\002\250\000\000\004\029\000\000\002\246\000\000\000y\002\203\000\000\000\000\002\206\000\000\000\000\000\015\000\000\000\000\000\000\000\000\000\000\000i\000\000\000h\000\151\003\002\002\245\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\002G\002K\000\000\000\000\000\150\002H\001<\001:\000\000\002\209\000\000\000\000\002\204\002\207\000\000\002\205\002\208\004\028\000z\000\000\002\195\004*\004+\004)\004(\004\r\000\000\002\228\004\012\001R\000\000\002;\000\000\000\000\000\000\000\000\000\000\0012\002B\000\000\000\000\001\213\000\000\002\229\000\000\000\000\000v\000\000\000\000\004\031\004\030\000\000\002<\000\000\000\000\004-\004,\000\000\000\000\004\017\004\016\000\000\000c\000\248\000\000\003\160\000\000\000\000\000\000\000\000\000\207\000\205\000\000\0018\000\000\000\000\000\208\000\192\000\000\000\000\001\153\000\000\001\152\000\000\001\167\000\000\001\187\000\000\000\000\000\000\003\213\000\000\000\000\003\200\000\000\000\000\003\205\003\204\000\000\003\201\000\000\003\199\000\000\000\000\000\000\003\203\000\000\003\202\000\000\003\217\000\000\003\216\000\000\000\000\003\193\000\000\000\000\003\198\003\197\000\000\003\194\000\000\003\192\000\000\000\000\000\000\003\196\000\000\003\195\000\000\003\207\000\000\003\218\000\000\000\000\003\212\003\211\000\000\003\208\000\000\003\215\000\000\000\000\000\000\000\000\003\220\000\000\000\000\000\000\000\000\003\221\003\219\000\000\003\214\000\000\003\206\000\000\003\226\000\000\000\000\000\000\003\210\000\000\001\230\000\000\004\006\000\000\000\000\002.\001\231\000\000\001\207\002\026\000\000\000\000\000\000\000\000\003\225\003\209\004\007\000\000\004\n\004\t\000\000\000\000\003w\004\b\000\139\000\000\001\030\000\000\000\000\000\000\000\000\003\223\000\000\000\000\000\000\000\000\003\224\003\222\000\000\000\000\003\248\000\000\000\000\003\235\000\000\000\000\003\240\003\239\000\000\003\236\000\000\003\234\000\000\000\000\000\000\003\238\000\000\003\237\000\000\003\252\000\000\003\251\000\000\000\000\003\228\000\000\000\000\003\233\003\232\000\000\003\229\000\000\003\227\000\000\000\000\000\000\003\231\000\000\003\230\000\000\003\242\000\000\003\253\000\000\000\000\003\247\003\246\000\000\003\243\000\000\003\250\000\000\000\000\000\000\000\000\003\255\000\000\000\000\000\000\000\000\004\000\003\254\000\000\003\249\000\000\003\241\000\000\004\005\000\000\000\000\000\000\003\245\000\000\000\000\000\000\000\000\004\004\003\244\000\000\000\000\000\000\000\000\004\002\000\000\000\000\000\000\000\000\004\003\004\001\003\145\003\147\003\148\003\146\000\000\000\000\000\000\000\000\000\000\001\135\000\000\000\000\000\000\000\000\000\000\000\255\001\011\000\254\000\000\000\000\000\128\000\000\000\000\000\000\002\235\000\000\000\000\000\000\004\024\004\023\000\000\000\000\002\243\000\000\000\000\002\242\000\000\000\000\002\241\002\240\002\239\002\238\002\237\001\149\002\233\000\000\004\019\002\234\000\000\004\020\002\236\000\000\004\022\000\000\002\232\000\000\000w\002\196\000\000\000\000\002\199\000\000\000\000\002\202\000\000\000\000\002\197\002\200\000\000\002\198\002\201\002\244\002\231\004\021\000x\000\000\000\000\000\000\000\000\001)\001(\000\000\000\000\001\147\001\146\000\000\000\000\000\000\000\000\001\141\000\000\0016\001\139\000\000\001'\000\000\002]\000\000\000\000\000\000\000\000\001\144\000\000\001\183\000$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000&\000\000\000\000\000\000\000\000\001\145\000\000\000\000\002\\\000\000\000\000\000\000\000\163\000\000\000\000\000\162\002`\001@\000\000\001\143\001\148\000\000\001\140\000\000\001\023\000\000\003a\000\000\000\000\001\019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\026\000\000\000\000\001\029\001\\\001[\000\000\000\000\000\000\000\000\001z\000\000\000\000\000\000\000\000\001\016\000\000\001\r\000\000\000\000\000\000\000\000\000\000\001\024\000\000\001\020\000\000\000\000\000\000\000\000\001\021\000\000\001\017\000\000\000\000\000\000\003\007\000\000\000\000\000\000\004&\004%\000\000\003\136\000\000\003\135\000\000\000\000\000\000\000\000\0049\000\000\000\000\000\000\004:\000\000\000\018\000\000\000\000\000\000\000\000\003\014\000\000\000\000\000\000\003\r\003\012\003\011\003\n\003\t\003\005\000\000\004!\003\006\000\000\004\"\003\b\000\000\004$\000\000\003\004\000\000\000{\002\210\000\000\000\000\002\213\000\000\000\000\002\216\000\000\000\000\002\211\002\214\000\000\002\212\002\215\003\016\003\003\004#\000\000\000\000\000l\000\000\000k\000\000\003\015\000\000\002\023\000j\000B\001Q\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\0045\000\000\001\215\000\000\000\000\000\000\001\002\003~\001\173\000\000\001\172\001\134\001\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\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\155\0010\000\000\000\000\002N\000\000\000\000\000\154\002R\002O\001>\001\031\000\000\001!\001 \000\000\003\138\000\000\003\137\003z\000\000\000\000\000\000\000\000\000\000\003\132\000\000\003\127\000\000\003\139\000\000\000\000\000\000\000\000\003\133\003|\002\152\000\000\001\006\001\136\000\000\003\142\000\000\001\138\000\000\000\000\003\169\000\000\003\176\001\b\000\000\001\014\000\000\003\170\001\007\000\000\003\171\000\000\003\178\000\000\000\000\000\000\000\000\001\027\000\000\001\n\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\001y\000\000\000\000\000\000\001\015\000\000\001\012\000\000\000\000\000\000\000\000\000\000\001\022\000\000\001\018\001\004\001\003\000\000\003\179\003\180\000\000\003\181\000\000\003\182\000\000\001\137\003\130\000\000\000\000\0020\000\000\001\211\002\028\000\000\003{\000\000\000\000\000\000\003\129\000\000\000\000\000\000\001n\000\000\001h\000\000\001i\000\000\001s\001g\001r\000\000\003\141\001t\000\000\001\t\000\000\000\000\000\000\000\000\001p\001k\002,\000\000\001l\000\000\001m\000\000\001\203\002\024\000\000\000\000\000\000\0027\000\000\0025\000\000\000\000\0029\0023\000\000\002:\0024\000\000\003\143\002>\000\000\001\005\000\000\000\000\002-\000\000\001\205\002\025\000\000\0046\000\000\0043\000\000\0044\000\019\000\020\000\000\000\000\003C\000\000\003B\000\000\002~\000\000\003E\000\000\003D\000\000\000\000\000\000\002\134\000\000\000\000\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\141\000\000\000\000\002\144\000\000\002\128\000\000\000\000\002\131\000\000\000\000\000\000\002\135\000\000\000\000\002\139\000\000\000\000\002/\000\000\000\000\002\132\000\000\000\000\002\136\000\000\003A\003@\002\129\000\000\000\000\000\000\000\000\002\142\000\000\002}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\140\000\000\000\000\002\143\000\000\002\127\000\000\000\000\002\130\000\000\000\000\000\000\002\133\000\000\000\000\002\137\000\000\001\209\002\027\000\000\003F\000\000\000\000\0047\000\017\000~\000\000\0048\000\000\000\000\003]\000\000\000\000\003\144\000s\000\000\000\000\000\000\000t\000\000\003\134\000\000\001\179\000\000\001\181\003\131\000\000\000\000\001\159\000\000\001\158\000\000\001\168\000\000\001\193\000\000\000\000\000\000\001\157\000\000\001\156\000\000\001\165\000\000\001\191\000\000\000\000\000\000\001\164\000\000\000\000\000\000\001\161\000\000\001\160\000\000\001\166\000\000\001\195\000\000\000\000\000\000\001\162\000\000\000\000\000\000\001\155\000\000\001\154\000\000\001\169\000\000\001\189\000\000\000\000\000\000\001\163\000\002\000\000\000`\000a\000\000\000\000\003 \003$\003(\003\028\003\025\000\000\000\000\003%\003,\003\029\003+\003\027\003*\003\031\003\023\003\030\003'\003\026\003!\003\024\003#\003)\003&\003\"\001\236\001\235\000\137\000\000\000\000\003s\000\000\000\000\000\000\000\000\003X\003U\000\000\000\000\003Y\003V\003W\0036\000\000\000\000\003y\003.\003-\003/\000\000\001\253\000_\001\170\000\003\000\000\000\000\003\019\000\000\002\148\000\000\000\138\000\000\000\000\003u\000\000\000\000\000\000\000\130\000\000\000\000\003e\000\000\002x\002w\001\227\0037\000\000\002\012\000\000\003\020\000\000\000\000\000\132\000\000\000\000\003i\000\000\001\250\000\000\000\000\001\242\000\000\000\000\000\000\001\249\000\000\001\245\000\000\000\000\000\000\001\217\001\216\000\000\000\000\000\000\002\r\000\000\001\240\000\000\001\239\000\000\000\127\000\000\000\000\003_\000\000\000\000\001\234\000\000\000\000\001\238\000\000\000\000\000\135\000\000\000\000\003o\000\000\000\000\003>\000\000\003=\000\000\000\000\000\000\002v\002u\003;\002\158\0032\003<\000\000\002\000\000\000\000\000\000\000\001\252\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\002\016\000\000\001\244\000\000\001\243\000\000\000\000\000\000\0034\000\136\000\000\000\000\003q\000\000\0033\000\000\001\254\000\000\000\000\001\255\000\000\000\000\000\000\000\000\000\000\000\000\002\015\000\000\001\248\000\000\001\247\000\000\000\000\001V\000\000\001U\000\000\000\000\000\000\000\000\000\000\002\014\000\000\001\241\000\000\001T\000\000\002D\000\133\000\000\000\000\003k\000\000\000\000\000\000\000\000\003\165\003\164\000\000\000\000\001~\000\129\001}\000\000\000\000\003c\000\000\002p\002o\002r\0030\002\154\002q\001S\000\000\000\134\000\000\000\000\003m\000\000\000\000\000\000\000\000\002t\002s\003:\0038\002\156\0031\0039\000\000\002\007\000\000\002\n\000\000\000\000\002\003\000\000\000\000\000\000\001\251\000\000\002\001\000\000\000\000\001\246\000\000\000\000\000\000\000\000\000\000\000\000\001\233\000\000\000\000\002\t\000\000\002\b\000\000\000\000\000\000\000\000\002\006\000\000\000\000\002\005\000\000\002\004\000\000\000\000\002\011\000\000\000\000\001\171\000\004\000\000\001\237\000\005\000\000\000\000\001Y\000\006\000\000\002 \002!\002\031\000\000\002\030\003\166\001\223\000\000\000\007\000\000\002#\002$\002\"\000\000\000\000\000\000\000\000\001^\000\000\000\000\000\000\000\000\001c\001e\001d\001_\001a\001`\000\000\000\000\000\000\000\000\000\000\003\172\003\185\000\000\003\173\000\000\003\174\000\000\000\000\003\167\000\000\000\000\000\000\000\000\003\184\000\000\000\000\003\183\002(\002'\000\000\000\000\001\225\002\029\002%\000\000\000\000\000\000\000\000\000\000\002z\000\000\000\000\000\000\000\000\000\000\002c\002y\000\000\000\000\000\000\000\167\000\000\000\000\000\166\002g\002d\001B\001\000\000\000\000\000\000\000\000\000\001x\001Z\000\000\003\188\000\000\003\189\000\000\000\000\002A\002?\000\000\002@\000\b\000\000\000\t\000\000\002\173\002\174\002\172\000\000\002\171\000\000\000\n\000\000\002\176\002\177\002\175\000\000\002\179\000\000\000\000\000\000\002\165\000\000\000\000\002\167\000\000\002\161\000\000\002\163\000\000\002\168\000\000\002\169\000\000\002\162\002\160\002\180\001\229\002\170\000\000\002\182\000\000\002\181\000\000\002\183\000\000\003?\000\011\000\000\000\000\000\000\000\000\000\000\000\000\002\184\000\000\000\000\002\187\000\000\002\186\000\000\002\185\001\"\000\000\000\000\000\000\000\000\001#\002\188\000\000\000\000\000\000\003K\000\000\003J\000\000\000\000\000\000\000\000\003L\000\000\000\000\001X\000\000\000\000\000\000\000\000\000\000\003[\000}\000\000\000\000\001+\000\000\001O\001N\000\000\001\151\000\000\003I\001\221\001\219\000\000\000\000\000\000\000\000\003M\000\012\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\003G\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003T\000\000\000\000\003S\000\000\003P\000\000\000\000\000\000\000\000\000\000\003Q\000\000\000\000\000\000\003R\000\r\000\000\003N\000\000\003O") let error = - (192, "\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\0000\000\000\000\000\000\000\000\000\000\000\000\b\001\006\000\000\002\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\252\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\tP\208\002\128\131T\0162\025@\134\0014\002!\222\004\128\001\014d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\026\209\192\000\000\003\016\0000\001@\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\026\209\192\000\000\003\016\0000\001@\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\001\000\000\004\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\004\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\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\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\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\004\001\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\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\004\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\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\000\000\000\000 \000\002\004\000\000\000\000\000\000\000\000\000\000\000\000\000\012#\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 \128\000\004\001\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\000\002\004\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\000\000\000\128\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\002\004\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128@\001\129\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000A\000\002\000\000 \128@\001\129\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\000z\246\175\000\001\000\002\000\000 \000@\001\129\000\000\000\128\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000!\000\000\004\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\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\001\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\000 \000\002 \000\000\000\000\000\000\018@\000H4\n\001\1423\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\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\000\130z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\000\000A\000\130\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\001\1423\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\00010M\150K\000\000\000P\002\004\000\000n\128B|w\000\000\000\000\000\000\000\000\000 \000\000\004\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\000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \130z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\001\1423\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\00010M\150K\000\000\000P\002\004\000\000n\128B|w\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000l\128\002xw\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000l\128\002xw\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\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\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\012\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\018@\000H4\n\001\1423\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\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\001\000\000\000\000\000\000\000\000\000\000\000@\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\018\129\000\000\000\002\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\018\129\000\000\000\002\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\001\000\000\004\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\000z\246\175\000\001\000\002\000\000 \128@\001\129\000\000\000\128\000\000\000\000\004\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\0000\000\000\004\001\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\000\000\000\000\000\000\000\000 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\0000\000\000\004\001\000\000\000\128\000\000\000\002 \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\004\001\000\000\000\128\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\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\016\000\002\000\000\000\000\000\000\000\000\000 \000\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 \128F\000\001\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000!\000\000\004\001\000\000\000\128\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\004\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000z\246\175\000\001\018B\000H4\nA\1423\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\018@\000H4\n\001\1423\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\0000 E\146J\000\000\000@\000\004\000\000j\128B0F\000\000\000\000\000\000\000\000\000 \000\000\004\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\000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \130z\246\175\000\001\018B\000H4\138A\142s\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\002 \000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\000\000A \130z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000h\128\0020F\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\012\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0000\000E\128J\000\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\002 \000z\246\175\000\001\018B\000H4\138A\142s\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\002 \000z\246\175\000\001\018B\000H4\138A\142s\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\000\000\000 \000\000\000\000\000\000\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\001\1423\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\b\000\000\016\000\000\000\000\000@\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\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\018@\000H4\n\001\1423\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\b\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\018@\000H4\n\001\1423\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\000z\246\175\000\001\018B\000H4\nA\1423\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\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\000z\246\175\000\001\018B\000H4\nA\1423\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\000z\246\175\000\001\018B\000H4\nA\1423\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\130z\246\175\000\001\000\002\000\000 \000@\000\001\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\018\129\000\000\000\002\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@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\018\129\000\000\000\002\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@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\000\004\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\000z\246\175\000\001\000\002\000\000 \000@\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000z\246\175\000\001\000\002\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\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000\001$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\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\016\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\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\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\001\000\000\000\000!\000\000\004\001\000\000\000\128\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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:\246\173\000\001\000\002\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@\000\001$\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\018\129\000\000\000\002\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@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\018\129\000\000\000\002\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@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\000\004\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\000\000\000!\000\000\004\001\000\000\000\128\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\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\004\026@\128@1\n\017\2063\b\001\158\160\192\001\024Q\002\130\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\018@\000H4\n\001\1423\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\006\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000@3\138\001\1903\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130z\246\175\000\001\018B\000H4\nA\1423\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\018@\000H4\n\001\1423\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\000z\246\175\000\001\018B\000H4\nA\1423\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\018@\000@0\n\001\1422\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\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\018@\000@0\n\001\1422\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\0000 A\146J\000\000\000@\000\004\000\000B\128B\004\006\000\000\000\000\000\000\000\000\000 \000\000\004\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\000z\246\175\000\001\018B\000H4\138A\142s\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\018@\000H4\n\001\1423\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\018@\000H4\n\001\1423\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\b\000\000\b\000\000\000\000\000\000\018@\000H4\n\001\1423\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\138\001\1903\000\001\132\128@*\000A\004\130\000\000\000\000\000\018@\000@3\138\001\1903\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\00010M\150K\000\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\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\018@\000H5\n\001\1583\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\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\004\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\00000A\146K\000\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\004\000\000\000\000\000\000\000\000\000\018@\000@3\n\001\1903\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\018@\000@3\n\001\1903\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\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\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\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\002\004\000\000\000\000\000\000\018@\000@3\138\001\1903\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\002\004\000\000\000\000\000\000\018@\000@3\138\001\1903\000\001\132\128@\"\000A\004\130\000\000\000\000\000\018@\000@3\138\001\1903\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\002\004\000\000\000\000\000\000\018@\000@3\138\001\1903\000\001\132\128@*\000A\004\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\002\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\0000\000\000\134\001\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\000\018\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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:\246\173\000\001\000\002\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\004\001\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\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\001\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\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\132\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\127\254\191\130\005\026B\128H5\nq\206?\b\001\158\160\192\t\030Q\134\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130z\246\175\000\001\018B\000H4\nA\1423\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\018@\016H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\138q\206?\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000@\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\000\127\254\191\130\005\026B\128@1\nq\206?\b\001\158\160\192\001\026Q\002\130\127\254\191\130\005\026B\128H5\011q\206?\b\001\158\160\192\t\026QB\130z\246\175\000\001\018B\000H4\nA\1423\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\018@\000@0\n\001\1422\000\001\132\128@\000\000A\000\130\000\000\000\000\000\018@\000@0\n\001\1422\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\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\018@\000@0\n\001\1422\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\00010M\150K\000\000\000P\002\004\000\000j\128@Pw\000\000\000\000\000\000\000\000\000 \000\000\004\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\000z\246\175\000\001\018B\000H4\138A\142s\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\018@\000H4\n\001\1423\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\0001\016M\132K\000\000\000P\002\000\000\000h\128\000Pw\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\012\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\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\000\127\254\191\131\197\026B\128@1\138q\206?\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\127\254\255\195\197\026B\128@1\139q\206?\024\001\158\164\192\001\030Q\198\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\130\127\254\191\130\005\026B\128H5\011q\206?\b\001\158\160\192\t\026QB\130\127\254\191\130\005\026B\128H5\nq\206?\b\001\158\160\192\t\026Q\006\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\026C\128L5\011q\206?\024\003\158\164\192\029\030Q\214\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018@\000H4\n\001\1423\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\004\026@\128@1\n\017\2063\b\001\158\160\192\001\024Q\002\130\000\000\000\002\004\026@\128@1\n\017\2063\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\000 \000\000\004\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018@\016H4\n\001\1423\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\018@\016H4\n\001\1423\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\018@\000H4\n\001\1423\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\002\004\026@\128@1\n\017\2063\b\001\158\160\192\001\024Q\002\130\000\000\000\002\004\026@\128@1\n\017\2063\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\000\000\128\000\004\001\000\000\000\128\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\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\002 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\000\000\000\128\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\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\002 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\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 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\000\000\000\128\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\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\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\018B\000H4\138A\142s\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\002\004\026@\128@1\n\017\2063\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\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\127\254\191\130\005\026B\128H5\nq\206?\024\001\158\160\192\t\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\195\197\026B\128@1\139q\206?\024\001\158\164\192\001\030Q\198\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\127\254\191\130\005\026B\128@1\138q\206?\024\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\b\004\000\000\000\000\016\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128@1\138q\206?\024\001\158\160\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\00010M\182K\000\004\001P\002\004\128\000n\128@Pw\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\b\004\000\000\000\000\016\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128H5\nq\206?\024\001\158\160\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128@1\138q\206?\024\001\158\160\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\018B\000H4\138A\142s\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\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\0000\000\000\134\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\b\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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:\246\173\000\001\000\002\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\004\001\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\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\127\254\191\130\005\026B\128H5\nq\206?\024\001\158\160\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\b\004\000\000\000\000\016\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128H5\nq\206?\024\001\158\160\192\t\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\0000\000\000\134\001\016\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\002\004\026@\128@1\n\017\2063\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\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000\127\254\255\194\005\026C\128L5\011q\206?\024\003\158\164\192\025\030Q\214\179\000\000\000\002\004\026@\128@1\n\017\2063\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\127\254\191\130\005\026B\128@1\139q\206?\b\001\158\160\192\001\030Q\198\130\000\000\000\000\000\000\000\000\b\004\000\000\000\000\000\000\000\000\000\b\000\000\000\000\127\254\191\130\005\026B\128@1\139q\206?\b\001\158\160\192\001\030Q\198\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\b\004\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\127\254\191\130\005\026B\128H5\011q\206?\b\001\158\160\192\t\030Q\198\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128H5\011q\206?\b\001\158\160\192\t\030Q\198\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\000\000\000\000\000\000\000\000\000\000@\000\127\254\191\130\005\026B\128@1\139q\206?\b\001\158\160\192\001\026QB\130\000\000\000\000\000\000\000\000\b\004\001\000\000\000\000\000\000\000\000\b\000\000@\000\127\254\191\130\005\026B\128@1\139q\206?\b\001\158\160\192\001\026QB\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\b\004\001\000\000\000\000\000\000\000\000\b\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128H5\011q\206?\b\001\158\160\192\t\026QB\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\0000\001\000\134\001\000\000\000\128\000\000\000\000@\000\000\000\000\000\000\000\001\000\012\004\000\000\000\000\000\002\000\000\000\b\000\000\016\001\127\254\191\130\005\026B\128@1\138q\206?\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\001\016\012\004\000\000\000\000\000\002\000\000\000\b\000\000\016\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026C\128L5\nq\206?\b\003\158\160\192\t\026Q\018\131\127\254\191\130\005\026B\128@1\138q\206?\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\127\254\191\130\005\026C\128L5\nq\206?\b\003\158\160\192\t\026Q\018\131\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000\127\254\191\130\005\026B\128H5\011q\206?\b\001\158\160\192\t\026QB\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\016\b\004\000\000\000\000\016\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128H5\nq\206?\024\001\158\160\192\t\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000{\254\191\128\001\018B\128@0\nA\142>\000\001\132\128@\000\002Q\002\130\000\000\000\000\000\018@\016H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\018B\128@0\nA\142>\000\001\132\128@\000\002Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\000z\246\175\000\001\000\002\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\004\001\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\000 \000\000\000\000\000\000\000\000\000\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\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\000\134\001\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018@\000H5\n\001\1583\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:\246\173\000\001\000\002\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\004\001\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\000 \000\000\000\000\000\000\000\000\000\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\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000{\254\191\128\001\018B\128@0\nA\142>\000\001\132\128@\000\002Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\00000A\178K\000\004\001@\000\004\128\000b\128@@F\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\018B\000H4\138A\142s\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\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\0000\000\000\134\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\b\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018@\000H5\n\001\1583\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:\246\173\000\001\000\002\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\004\001\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\000 \000\000\000\000\000\000\000\000\000\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\001\1583\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\016\0000\001\000\134\001\000\000\000\128\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\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\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\001\002\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\130\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\018@\000H4\n\001\1423\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\004\000\000\000\000\127\254\191\130\005\026B\128H5\nq\206?\b\001\158\160\192\t\030Q\134\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\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\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\006\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\127\254\191\130\005\026B\128@1\138q\206?\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\127\254\191\130\005\026B\128@1\138q\206?\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\018@\000H4\n\001\1423\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\018@\000H4\n\001\1423\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\004\026@\128@1\n\017\2063\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\002\004\026@\128@1\n\017\2063\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\002\004\026@\128@1\n\017\2063\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\002\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000z\246\175\b\003\128\130D\144!\000\192\000\001$\000!J\020\128\001\140\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\001\000\016\002\128\128D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000 \000\002\000\000\000\000\000\000\000\002\002\000\000\000\000\000\004\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\002\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\128\000\000\000\000\000\000\"\000\000\000\000\000\000\000\002\002\000\000\000\000\000\004\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000z\246\175\000\003\128\130D\016!\000\192\000\001$\000!H\020\128\001\140\000\000z\246\175\000\003\128\130\000\016!\000\192\000\001$\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\001\000\016\002\128\130F\016\000\016\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\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\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\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\002\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\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\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\000z\246\175\000\003\128\130@\016!\000\192\000\001$\000!H\020\128\001\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\003\128\130\000\016!\000\192\000\001$\000!H\020\128\001\132\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\004\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\002\128\130D\016\000\016\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\016\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\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\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\024\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\001\000\016\002\128\130D\016\000\016\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\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\000H\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\000\000\000\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\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\001\000\016\002\128\130D\016\001\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\224\130D\016\000P\000\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\016\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\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\016\"\128\130D\016\000\016\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\002\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\128\000\000\000\000\000\000\002\000\000\000\001\000\016\"\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\016\002\128\130D\016\000\016\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\016\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\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\n\001\b\016\002\128\130D\016\000\024\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\024\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\001\000\016\002\128\130D\016\000\024\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\001\000\016\002\132\130D\016\002P\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\016\002\128\130D\016\000\024\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\001\000\016\002\128\130D\016\000\024\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\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\004\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\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\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\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\001\000\000\000\000\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\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\000d\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\128\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\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\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\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\016\002\128\130D\016\000\016\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\224\130D\016\000P\000\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\016\002\128\130D\016\000\016\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\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\000z\247\175\016\003\128\130D\016!\016@\000\001$\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\002\000\000\000\000\000\001\000\016\002\128\128D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\228\130D\016\002X\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\002\016\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\b\000\000\000\000\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\000\016\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\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\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\000z\247\175\016\003\128\130D\016!\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\016\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\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\016\002\128\130D\016\000\016\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\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\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\016\002\128\130D\016\000\016\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\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\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\000z\246\175\b\003\128\130D\144!\000\192\000\001$\000!J\020\128\001\140\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\014\001\1423\000\000\132\128@\b\000A\000\130\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\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\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\127\254\255\194\005\026B\128H=\014q\206?\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\026B\128H=\nq\206?\b\001\158\164\192\t\026Q\002\179{\254\255\192\001\000\002\000\000 \000@\000\000\000\000\000\004\000\000\000\000\000\000{\254\255\192\001\000\002\000\000 \000@\000\000\000\000\000\004\000\000\000\000\000\000{\254\255\192\001\000\002\000\000 \000@\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\bP\192\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\bP\192\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\bP\192\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\127\254\191\131\197\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\130\127\254\191\130\005\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\179\000\000\000\000\000\000\000\000\b\004\000\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\000\016\b\004\000\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\127\254\191\130\005\026B\128H5\nq\206?\b\001\158\160\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000@3\138\001\1903\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\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\127\254\191\131\197\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\130\127\254\191\130\005\026B\128@1\138q\206?\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\016\000\127\254\191\130\005\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\131\197\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\130\127\254\191\130\005\026B\128@1\138q\206?\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000{\254\255\192\001\000\002\000\000 \000@\000\000\000\000\000\132\000\000\000\000\000\000\001\bP\192\000\000\000\000\0000\000\000\134\001\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\134\001\000\000\000\128\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\000z\246\175\000\001\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\000\000\000\000\000\000\000\000 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\0000\000\000\004\001\000\000\000\128\000\000\000\002 \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\004\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\128H5\nq\206?\b\001\158\160\192\t\026Q\006\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\b\004\000\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\127\254\191\130\005\026B\128H5\nq\206?\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\001\bP\192\000\000\000\016\0000\000\000\134\001\000\000\000\132\000\000\000\000\0001\000\000\000\000\000\000\b\b\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\014\001\1423\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\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\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\127\254\255\194\005\026B\128H=\014q\206?\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\026B\128H=\nq\206?\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\026B\128@1\138q\206?\b\001\158\164\192\001\026Q\002\179\000\000\000\000\000\000\000\000\b\004\000\000\000\000\000\000\000\000\000\b\000\000\0001\127\254\255\194\005\026B\128@1\138q\206?\b\001\158\164\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\026B\128H5\nq\206?\b\001\158\164\192\t\026Q\002\179\127\254\255\194\005\026B\128@1\138q\206?\b\001\158\164\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\b\004\000\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\127\254\255\194\005\026B\128H5\nq\206?\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\026B\128H5\nq\206?\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\026B\128H5\nq\206?\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\000\016\0000\000\000\134\001\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\000\000\000\127\254\255\194\005\026B\128H5\nq\206?\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\b\004\000\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\127\254\255\194\005\026B\128H5\nq\206?\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\000\016\0000\000\000\134\001\000\000\000\132\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\004\000\000\000\000\000\000\000\000\000@\145.\000`\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000 \000\000\016\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\016 \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\002\000\000\016 \000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000 \004\000\000\000\000\000\000\002\000\000\016 \000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\016\000\000\000\001\000\000\000\000\000\000\000\000\001\006\000@\000 \020\000\000\000\000\000\000\002\000\000\016 \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\016\000\000\000\001\000\000\000\000\000\000\000\000\001\006\000@\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\001\014\000`\000\000\016\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\006\000`\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\002\000\016\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\006\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\001\014\000`\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000`\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000`\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\002\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\002\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\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\002\000\000\000\000\000\000\b\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\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\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") + (192, "\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\0000\000\000\000\000\000\000\000\000\000\000\000\b\001\006\000\000\002\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\252\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\tP\208\002\128\131T\0162\025@\134\0014\002!\222\004\128\001\014d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\026\209\192\000\000\003\016\0000\001@\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\026\209\192\000\000\003\016\0000\001@\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\001\000\000\004\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\004\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\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\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\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\004\001\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\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\004\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\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\000\000\000\000 \000\002\004\000\000\000\000\000\000\000\000\000\000\000\000\000\012#\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 \128\000\004\001\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\000\002\004\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\000\000\000\128\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\002\004\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128@\001\129\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000A\000\002\000\000 \128@\001\129\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\000z\246\175\000\001\000\002\000\000 \000@\001\129\000\000\000\128\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000!\000\000\004\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\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\001\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\000 \000\002 \000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\b\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\000\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\000\134z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\000\000A\000\134\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\004\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\00010M\150K\000\000\000P\002\004\000\000n\128B|w\000\000\000\000\000\000\000\000\000 \000\000\004\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\000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \134z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\00010M\150K\000\000\000P\002\004\000\000n\128B|w\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000l\128\002xw\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000l\128\002xw\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\012\000A\000\134\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\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\001\000\000\000\000\000\000\000\000\000\000\000@\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\018\129\000\000\000\002\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\018\129\000\000\000\002\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\nP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\001\000\000\004\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0000\t\000\134\001\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\002\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\0000\t\000\134\001\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\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\000z\246\175\000\001\000\002\000\000 \128@\001\129\000\000\000\128\000\000\000\000\004\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\0000\000\000\004\001\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\000\000\000\000\000\000\000\000 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\0000\000\000\004\001\000\000\000\128\000\000\000\002 \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\004\001\000\000\000\128\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\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\016\000\002\000\000\000\000\000\000\000\000\000 \000\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 \128F\000\001\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000!\000\000\004\001\000\000\000\128\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\004\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\000\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\004\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\018@\000H4\n\001\1423\000\000\132\128@\000\000A\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\0000 E\146J\000\000\000@\000\004\000\000j\128B0F\000\000\000\000\000\000\000\000\000 \000\000\004\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\000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \134z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A\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\002 \000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\000\000A \134z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000h\128\0020F\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\000\000\000\000\000\000\000\000\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\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\012\000A\000\134\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0000\000E\128J\000\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\002 \000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \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\002 \000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\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\004\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\b\000\000\016\000\000\000\000\000@\018@\000H4\n\001\1423\000\000\132\128@\000\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\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\018@\000H4\n\001\1423\000\000\132\128@\000\000A\000\134\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\b\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\000z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\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\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\000z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\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\000z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\bP\192\000\000\001\016\0001\t\000\134\001\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\000\001\bP\192\000\000\001\016\0000\t\000\134\001\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\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134z\246\175\000\001\000\002\000\000 \000@\000\001\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\018\129\000\000\000\002\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@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\018\129\000\000\000\002\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@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\000\004\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\000z\246\175\000\001\000\002\000\000 \000@\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000z\246\175\000\001\000\002\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\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000\001$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\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\016\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\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\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\001\000\000\000\000!\000\000\004\001\000\000\000\128\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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:\246\173\000\001\000\002\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@\000\001$\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\018\129\000\000\000\002\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@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\018\129\000\000\000\002\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@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\003\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\000\004\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000 \128\000\004\001\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\002\024@\000\001$\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\002\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@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\000\000\000!\000\000\004\001\000\000\000\128\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\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\001\000\016\002\128\130D\016\003\024@\000\001$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128@\001\129\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\004\000\000\001\000\016\002\128\130D\016\002\024@\000\001$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\134\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\006\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\000\000\000\000\000\018@\000@3\138\001\1903\000\001\132\128@*\000A\004\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\000z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\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\018@\000@0\n\001\1422\000\001\132\128@\000\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\004\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\018@\000@0\n\001\1422\000\001\132\128@\000\000A\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\0000 A\146J\000\000\000@\000\004\000\000B\128B\004\006\000\000\000\000\000\000\000\000\000 \000\000\004\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\000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\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\004\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\b\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\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\018@\000@3\138\001\1903\000\001\132\128@*\000A\004\134\000\000\000\000\000\018@\000@3\138\001\1903\000\001\132\128@*\000A\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\00010M\150K\000\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\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\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\004\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\00000A\146K\000\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\004\000\000\000\000\000\000\000\000\000\018@\000@3\n\001\1903\000\001\132\128@\"\000A\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\018@\000@3\n\001\1903\000\001\132\128@\"\000A\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\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\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\0000\000A\128J\000\000\000@\000\000\000\000@\128\002\004\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\002\004\000\000\000\000\000\000\018@\000@3\138\001\1903\000\001\132\128@*\000A\004\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\002\004\000\000\000\000\000\000\018@\000@3\138\001\1903\000\001\132\128@\"\000A\004\134\000\000\000\000\000\018@\000@3\138\001\1903\000\001\132\128@*\000A\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\002\004\000\000\000\000\000\000\018@\000@3\138\001\1903\000\001\132\128@*\000A\004\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\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\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\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\002\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\0000\000\000\134\001\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\000\018\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\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:\246\173\000\001\000\002\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\004\001\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\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\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\004\001\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\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\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\000\132\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\127\254\191\130\005\026B\144H5\nq\206?\b\001\158\160\192\t\030Q\134\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\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\018@\016H4\n\001\1423\000\000\132\128@\b\000A\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\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\127\254\191\131\197\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000@\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\000\127\254\191\130\005\026B\144@1\nq\206?\b\001\158\160\192\001\026Q\002\134\127\254\191\130\005\026B\144H5\011q\206?\b\001\158\160\192\t\026QB\134z\246\175\000\001\018B\000H4\nA\1423\000\000\132\128@\b\000A\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\018@\000@0\n\001\1422\000\001\132\128@\000\000A\000\134\000\000\000\000\000\018@\000@0\n\001\1422\000\001\132\128@\000\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\004\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\018@\000@0\n\001\1422\000\001\132\128@\000\000A\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\00010M\150K\000\000\000P\002\004\000\000j\128@Pw\000\000\000\000\000\000\000\000\000 \000\000\004\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\000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\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\004\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000P\002\000\000\000h\128\000Pw\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\012\000A\000\134\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\0001\016M\132K\000\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\000\127\254\191\131\197\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\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\127\254\255\195\197\026B\144@1\139q\206?\024\001\158\164\192\001\030Q\198\183\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\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\127\254\191\130\005\026B\144H5\011q\206?\b\001\158\160\192\t\026QB\134\127\254\191\130\005\026B\144H5\nq\206?\b\001\158\160\192\t\026Q\006\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\255\194\005\026C\144L5\011q\206?\024\003\158\164\192\029\030Q\214\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\134\000\000\000\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\134\000\000\000\000\000\000\000\000\000 \000\000\004\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018@\016H4\n\001\1423\000\000\132\128@\b\000A\000\134\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\018@\016H4\n\001\1423\000\000\132\128@\b\000A\000\134\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A \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\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\134\000\000\000\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\134\000\000\000\000\000\000\000\000\000\000\128\000\004\001\000\000\000\128\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\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\002 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\000\000\000\128\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\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\002 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\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 \000\000\000\000\000\000\000\000\000\000\000\128\000\004\001\000\000\000\128\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \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\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\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\127\254\191\130\005\026B\144H5\nq\206?\024\001\158\160\192\t\026Q\002\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\127\254\255\195\197\026B\144@1\139q\206?\024\001\158\164\192\001\030Q\198\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\127\254\191\130\005\026B\144@1\138q\206?\024\001\158\160\192\001\026Q\002\134\000\000\000\000\000\000\000\000\b\004\000\000\000\000\016\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\144@1\138q\206?\024\001\158\160\192\001\026Q\002\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\182K\000\004\001P\002\004\128\000n\128@Pw\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\b\004\000\000\000\000\016\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\144H5\nq\206?\024\001\158\160\192\t\026Q\002\183\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\005\026B\144@1\138q\206?\024\001\158\160\192\001\026Q\002\183\000\000\000\000\000\000\000\000\000\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\000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \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\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\0000\000\000\134\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\b\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\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:\246\173\000\001\000\002\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\004\001\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\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\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\127\254\191\130\005\026B\144H5\nq\206?\024\001\158\160\192\t\026Q\002\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\b\004\000\000\000\000\016\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\144H5\nq\206?\024\001\158\160\192\t\026Q\002\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\016\0000\000\000\134\001\016\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\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\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000\127\254\255\194\005\026C\144L5\011q\206?\024\003\158\164\192\025\030Q\214\183\000\000\000\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\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\127\254\191\130\005\026B\144@1\139q\206?\b\001\158\160\192\001\030Q\198\134\000\000\000\000\000\000\000\000\b\004\000\000\000\000\000\000\000\000\000\b\000\000\000\000\127\254\191\130\005\026B\144@1\139q\206?\b\001\158\160\192\001\030Q\198\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\016\b\004\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\127\254\191\130\005\026B\144H5\011q\206?\b\001\158\160\192\t\030Q\198\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\127\254\191\130\005\026B\144H5\011q\206?\b\001\158\160\192\t\030Q\198\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\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\001\000\000\000\000\000\000\000\000\000\000\000@\000\127\254\191\130\005\026B\144@1\139q\206?\b\001\158\160\192\001\026QB\134\000\000\000\000\000\000\000\000\b\004\001\000\000\000\000\000\000\000\000\b\000\000@\000\127\254\191\130\005\026B\144@1\139q\206?\b\001\158\160\192\001\026QB\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\016\b\004\001\000\000\000\000\000\000\000\000\b\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\144H5\011q\206?\b\001\158\160\192\t\026QB\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\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\016\0000\001\000\134\001\000\000\000\128\000\000\000\000@\000\000\000\000\000\000\000\001\000\012\004\000\000\000\000\000\002\000\000\000\b\000\000\016\001\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\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\001\016\012\004\000\000\000\000\000\002\000\000\000\b\000\000\016\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026C\144L5\nq\206?\b\003\158\160\192\t\026Q\018\135\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\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\127\254\191\130\005\026C\144L5\nq\206?\b\003\158\160\192\t\026Q\018\135\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000\127\254\191\130\005\026B\144H5\011q\206?\b\001\158\160\192\t\026QB\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\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\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\016\b\004\000\000\000\000\016\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\144H5\nq\206?\024\001\158\160\192\t\026Q\002\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{\254\191\128\001\018B\144@0\nA\142>\000\001\132\128@\000\002Q\002\134\000\000\000\000\000\018@\016H4\n\001\1423\000\000\132\128@\b\000A\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\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{\254\191\128\001\018B\144@0\nA\142>\000\001\132\128@\000\002Q\002\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\004\001\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\000 \000\000\000\000\000\000\000\000\000\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\001\1583\000\000\132\128@\b\000A\000\134\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\0000\000\000\134\001\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\004\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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:\246\173\000\001\000\002\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\004\001\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\000 \000\000\000\000\000\000\000\000\000\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\001\1583\000\000\132\128@\b\000A\000\134\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\001\000\000\000\000\000\000\000\000\000\000\000@\000{\254\191\128\001\018B\144@0\nA\142>\000\001\132\128@\000\002Q\002\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\00000A\178K\000\004\001@\000\004\128\000b\128@@F\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\018B\000H4\138A\142s\000\000\132\128@\b\000A \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\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\0000\000\000\134\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\b\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\001\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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\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\018@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\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:\246\173\000\001\000\002\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\004\001\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\000 \000\000\000\000\000\000\000\000\000\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\001\1583\000\000\132\128@\b\000A\000\134\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\001\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\0000\001\000\134\001\000\000\000\128\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\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\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\001\002\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\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\005\026B\144H5\nq\206?\b\001\158\160\192\t\030Q\134\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\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\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\006\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\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\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\134\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\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\002\004\026@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\002\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\128\001\000\002\000\000 \000@\000\012\000\000\000\128\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000z\246\175\b\003\128\130D\144!\000\192\000\001$\000!J\020\128\001\140\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\001\000\016\002\128\128D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000 \000\002\000\000\000\000\000\000 \002\002\000\000\000\000\000\004\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\002\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\002\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\128\000\000\000\000\000\000\"\000\000\000\000\000\000 \002\002\000\000\000\000\000\004\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000z\246\175\000\003\128\130D\016!\000\192\000\001$\000!H\020\128\001\140\000\000z\246\175\000\003\128\130\000\016!\000\192\000\001$\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\001\000\016\002\128\130F\016\000\016\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\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\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\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\002\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\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\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\000z\246\175\000\003\128\130@\016!\000\192\000\001$\000!H\020\128\001\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\003\128\130\000\016!\000\192\000\001$\000!H\020\128\001\132\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\004\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\002\128\130D\016\000\016\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\016\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\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\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\024\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\001\000\016\002\128\130D\016\000\016\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\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\000H\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\000\000\000\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\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\001\000\016\002\128\130D\016\001\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\224\130D\016\000P\000\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\016\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\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\016\"\128\130D\016\000\016\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\002\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\128\000\000\000\000\000\000\002\000\000\000\001\000\016\"\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\016\002\128\130D\016\000\016\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\016\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\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\n\001\b\016\002\128\130D\016\000\024\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\024\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\001\000\016\002\128\130D\016\000\024\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\001\000\016\002\132\130D\016\002P\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\001\000\016\002\128\130D\016\000\016\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\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\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\016\002\128\130D\016\000\024\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\001\000\016\002\128\130D\016\000\024\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\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\004\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\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\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\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\001\000\000\000\000\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\001\000\016\002\128\130D\016\000\016\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\000d\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\128\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\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\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\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\016\002\128\130D\016\000\016\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\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\016\002\128\130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\224\130D\016\000P\000\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\016\002\128\130D\016\000\016\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\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\000z\247\175\016\003\128\130D\016!\016@\000\001$\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\002\000\000\000\000\000\001\000\016\002\128\128D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\228\130D\016\002X\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\002\016\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\b\000\000\000\000\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\000\016\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\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\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\000z\247\175\016\003\128\130D\016!\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\016\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\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\016\002\128\130D\016\000\016\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\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\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\016\002\128\130D\016\000\016\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\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\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\000z\246\175\b\003\128\130D\144!\000\192\000\001$\000!J\020\128\001\140\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\014\001\1423\000\000\132\128@\b\000A\000\134\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\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\127\254\255\194\005\026B\144H=\014q\206?\b\001\158\164\192\t\026Q\002\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\026B\144H=\nq\206?\b\001\158\164\192\t\026Q\002\183{\254\255\192\001\000\002\000\000 \000@\000\000\000\000\000\004\000\000\000\000\000\000{\254\255\192\001\000\002\000\000 \000@\000\000\000\000\000\004\000\000\000\000\000\000{\254\255\192\001\000\002\000\000 \000@\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\bP\192\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\bP\192\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\bP\192\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\127\254\191\131\197\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\183\000\000\000\000\000\000\000\000\b\004\000\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\000\016\b\004\000\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\127\254\191\130\005\026B\144H5\nq\206?\b\001\158\160\192\t\026Q\002\183\000\000\000\000\000\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\138\001\1903\000\001\132\128@*\000A\004\134\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\127\254\191\131\197\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\183\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\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\127\254\191\130\005\026B\144@1\138q\206?\b\001\158\160\192\001\026Q\002\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{\254\255\192\001\000\002\000\000 \000@\000\000\000\000\000\132\000\000\000\000\000\000\001\bP\192\000\000\000\000\0000\000\000\134\001\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\134\001\000\000\000\128\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\000z\246\175\000\001\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\000\000\000\000\000\000\000\000 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\0000\000\000\004\001\000\000\000\128\000\000\000\002 \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\004\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\001\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\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\026B\144H5\nq\206?\b\001\158\160\192\t\026Q\006\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\b\004\000\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\127\254\191\130\005\026B\144H5\nq\206?\b\001\158\160\192\t\026Q\002\183\000\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\000\016\0000\000\000\134\001\000\000\000\132\000\000\000\000\0001\000\000\000\000\000\000\b\b\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\014\001\1423\000\000\132\128@\b\000A\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\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\1423\000\000\132\128@\b\000A\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\127\254\255\194\005\026B\144H=\014q\206?\b\001\158\164\192\t\026Q\002\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\026B\144H=\nq\206?\b\001\158\164\192\t\026Q\002\183\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\255\194\005\026B\144@1\138q\206?\b\001\158\164\192\001\026Q\002\183\000\000\000\000\000\000\000\000\b\004\000\000\000\000\000\000\000\000\000\b\000\000\0001\127\254\255\194\005\026B\144@1\138q\206?\b\001\158\164\192\001\026Q\002\183\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\255\194\005\026B\144H5\nq\206?\b\001\158\164\192\t\026Q\002\183\127\254\255\194\005\026B\144@1\138q\206?\b\001\158\164\192\001\026Q\002\183\000\000\000\000\000\000\000\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\b\004\000\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\127\254\255\194\005\026B\144H5\nq\206?\b\001\158\164\192\t\026Q\002\183\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\255\194\005\026B\144H5\nq\206?\b\001\158\164\192\t\026Q\002\183\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\255\194\005\026B\144H5\nq\206?\b\001\158\164\192\t\026Q\002\183\000\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\000\016\0000\000\000\134\001\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\000\000\000\127\254\255\194\005\026B\144H5\nq\206?\b\001\158\164\192\t\026Q\002\183\000\000\000\000\000\000\000\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\b\004\000\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\127\254\255\194\005\026B\144H5\nq\206?\b\001\158\164\192\t\026Q\002\183\000\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\000\016\0000\000\000\134\001\000\000\000\132\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\004\000\000\000\000\000\000\000\000\000@\145.\000`\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000 \000\000\016\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\016 \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\002\000\000\016 \000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000 \004\000\000\000\000\000\000\002\000\000\016 \000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\016\000\000\000\001\000\000\000\000\000\000\000\000\001\006\000@\000 \020\000\000\000\000\000\000\002\000\000\016 \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\016\000\000\000\001\000\000\000\000\000\000\000\000\001\006\000@\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\001\014\000`\000\000\016\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\006\000`\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\002\000\016\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\006\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\001\014\000`\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000`\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000`\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\002\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\002\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\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\002\000\000\000\000\000\000\b\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\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\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") let action = - ((16, "\000F\000\245\000\000\000\000\023v\000\245\000\000\000\000\000t\000\000\000\000\000\000\001\015\000\000\000\000\000\000\000F\000\000\000}+\210\000\000\021\202\021\202\000\000\000\000D\196\021\202\000\000E\226\021\202\000\000\000\000\021\202\000\000\021\202\000\000\001\011\000\179\021\202\000\000\021\202\000\000\000\000\000\000\021\202\000\000\021\202\000\000EN\021\202\000\000FH\021\202\000\000\000\000\021\202\000\000\021\202\000\000\000\155\000\166\021\202\000\000\021\202\000\000\021\202\000\000\021\202\000\000Vh\021\202\000\000\000\000\021\202\000\000\021\202\000\000\000\017\0010\0010\000\000\000\000\000\000\000\178\000\000\000\000\000m\0010\000\000\000m\000\000\000\000\0010\000\005\001\132\0010\001R\000\000\001\132\000\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000[\0010\000\000\000Q\003F\0010\000\000\000I\002\224\000\000\000\000\000\000\001(\021\202\000\000E\226\0010\001f\021\202\000\000\000\000\021\202\000\000\000\000\021\202\000\000\021\202\000\000\001\174\002R\021\202\000\000+\210FH/\238\000\000\000\000\000\000\000\000.\182\002\216/\238\004\168\000\000/\238\000\000\000\000\002V\021\202\000\000/\238\000\000\0010\001pG\176\000\000\000\000V\224Wx\000\000]\150\000\000W\252G\176\028\182\028\182]\150G\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000X\148G\176\000\000\000\000X\148X\148X\148\000\000X\148\000\000G\176X\148\000\000\000\000\"d\0010\000\000\023H\028\182G\176\000\000#\176G\176*,G\176*DG\176\000\000\000\000\000\000\000\000\000\000\000\000\000\0009\228G\176\000\000:lG\176-\246G\176/\000G\176\000\000G\176\000\000G\1760\nG\1761\020G\1762\030G\1763(G\17642G\1765\154G\176?\"G\176\000\000G\176@,G\176@\180G\176A\190G\176\000\000G\176BFG\176CPG\176\000\000\000\000G\176\000\000\002\250\000\000\000\000\0010\000\000\000\000\000\000\003\n\000\000\003\162\000\000\000\236G\176\000\000\000\236\000\000\000\000\001T+\210\000\000\021\006\021\202\000\000\000\136\021\202\000\000Yf\021\202\000\000\000\000\021\202\000\000\021\202\000\000\003\224\0048\021\202\000\000\021\202\000\000\021\202\000\000\021\202\000\000\001\192\021\202\000\000Yv\021\202\000\000\000\000\021\202\000\000\021\202\000\000\0048\004z\021\202\000\000\021\202\000\000\021\202\000\000\021\202\000\000Y\146\021\202\000\000\000\000\021\202\000\000\021\202\000\000\000\174\0010\004v\021\202\000\000H\202\0010\004\208\021\202\000\000\000\000\021\202\000\000\021\202\000\000\021\202\000\000\005(\005\184\021\202\000\000Vh/\238\005|\021\202\000\0004\2421\212\000\000\002\224\006\146\0010\006x\007L+\210+\210\000\000\000\000\000\000\000sb\\+\210\000\1526*\000\000\000\000\000\000\005\200\007>\0010\007T+\210\000\000\000\000\006\140\000\000\006\144\007b+\210\006\156\000\000\0009\000\000\001p\000\000\000\000\001\230DN\000\000\000\000\000\000\006\158\007\154\000\000\007\160\000\000\023x\007f/\238\006\174\021\202\000\000Y\178/\238\006\176\021\202\000\000\000\000\000\000\0010\007\168\000\000\000\000\000\000\001T\000\000\000\000\028\182\006\200\000\000\006\202]\150\000\000\000\000\000\000\000\000\000\000\000\000X\148\000\000\000\000X\148\000\000\000\000X\148\000\000]\150\000\000\000\0002\196\0010\000\000\023H\023H\000\000\002\186\027\158\023H\030\154G\176\000\000G\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000U\146G\176fnG\176\006\254G\176\000\000G\176f\228G\176gNG\176g\196G\176h.G\176h\164G\176i\014G\176\000\000G\176i\132G\176i\238G\176jdG\176\000\000G\176j\206G\176kD\003Z\024\186\000\000\000\000\003\254\026,\000\000\000\000\000\000\000\000\006\214\000\000G\176\006\222\000\000\000\000\0010\000\000\000\000\000\000\000\000\006\242\000\000\000\000\000\000\000\000\000\000\000\000\006\244\000\000\000\000\000\000\006\250\000\000\000KZ\182\007\192G\176\007~\000\000\000\000]\150\000K\000\000\007\004\000\000\007\004G\176\000\000\028\182\007\006\000\000\000\000\007\226\000\000\028\182\007\n\000\000\000\000\028\182\007\030\000\000\000\000\007\030\000\000\000\000\b\020\000\000[\002/\238\007\"\021\202\000\000\000\000\007\170\000\000\007(\021\202\000\000\000\000\000t+\210\000\000+\210\000\000\007\028\000\000\000t\000\000\019d&\184\021\164\000\000\005\194\021\164\000\000\021\164\021\164\000\000\000\000\021\164\000\000\021\164\000\000\007d\007\148\021\164\000\000\021\164\000\000\021\164\000\000\021\164\000\000\b\130\021\164\000\000\021\180\021\164\000\000\000\000\021\164\000\000\021\164\000\000\007l\007\154\021\164\000\000\021\164\000\000\021\164\000\000\021\164\000\000E\244\021\164\000\000\000\000\021\164\000\000\021\164\000\000\003>\0010\007D\021\164\000\000\021\196\0010\007J\021\164\000\000\000\000\021\164\000\000\021\164\000\000\021\164\000\000\007z\007\168\021\164\000\000f`\000\000\007\\\000\000\001tf`\000\000\000\000\001t\000\000\000\000\021\202/\238\007X\021\164\000\000\000\000\000\000\0001\000\000\000\000\001R\0001\000\000\000\000\000\000\bN\000\000\b\216/\238\007^\021\164\000\000E\244/\238\007b\021\164\000\000\000\000\024\234\021\164\000\000\n\000\021\164\000\000Hl\021\164\000\000\000\000\021\164\000\000\021\164\000\000\007\146\007\192\021\164\000\000\021\164\000\000\021\164\000\000\021\164\000\000\n\180\021\164\000\000H\128\021\164\000\000\000\000\021\164\000\000\021\164\000\000\007\152\007\204\021\164\000\000\021\164\000\000\021\164\000\000\021\164\000\000H\170\021\164\000\000\000\000\021\164\000\000\021\164\000\000\004.\0010\007t\021\164\000\000H\164\0010\007|\021\164\000\000\000\000\021\164\000\000\021\164\000\000\021\164\000\000\007\176\b\000\021\164\000\000H\170/\238\007\190\021\164\000\000\000\000\b\228/\238\007\192\021\164\000\000I\004/\238\007\198\021\164\000\000\000\000\000\000\000\000\000\000\000\000\b\168G\176\007\226 \018\bf\000\000\b\192G\176\007\244\b\190DN\000\000\000\000\000\000+\210\0010\000\000\001dG\176+n\000\000[\218\028\182\007\252\000\000\000\000G\176\b\002\000\000\028\182\b\002\000\000\b\004b\144\000\000\000\000\000\000\000\000\000\000\000\000\000\000X\148\000\000\000\000X\148\000\000\000\000X\148\000\000b\144\000\000\000\000e\178\0010\000\000\023H\b\006\000\000G\176\b\006\000\000\000\000\0010\000\000\000\000\000\000\000\000\000\000\000\000G\176\001VG\176\b\b\000\000\000\000+n+n\000\000\000\000'\164\001n\b\208G\176\000\000\b\152\000\000\000\000\0010\000\000$\204\000\000\bF+n\bV+n\000\000\001l\000\000\000\000\025>G\176\026\178G\176\029\n\014+\210\tB\005f\000\000G\176\n2\000\000\n\020+\210\tJ\n:\000\000\003\172G\176\n>\000\000\nB\000\000\023x\0010\005RG\176\nF\000\000\nJ\000\000\000\000\000\000\011\238\000\000\000\000\002\190\000\000\b\242\000\000\002\184\000\000\000\000\001\252 \242\000\000\001\252\000\000\000\000\t`\000\000\000\236\001| \018\000\000\005\246\000M\005\246\000\000\000\184\000\000\b\242\000\000\b\242\000\000\000\000\000\000\td\000\000\000\000\tt\000\000\002j\007t\000M\005\246\000\000\000\000\000\000\002\190\000\000\b\242\000\000\002j\000\000\000\000\r<\000\184\019d\000\000\000\184\000\000\np\019d\000\000\000\000\np\000\000\000\000\tr\000\000\000\000\t\130\000\000\003\196\b\242\000\000\003\196\000\000\000\000\n\000\000\000\002\190\000\000\b\242\000\000\000\000\000\000\020\214T\128\000\000\nr\000\000\020\214\000\000\nt\000\000\nv\000\000+\210\0010\005\190\000\000G\176\nz\000\000\004\214\nL\0010\t\146\nf+\210\t\154\005\244\000\000G\176\n\138\000\000\005\246\000\000G\176\n\146\000\000\023x\0010\005\252\000\000G\176\n\150\000\000\005\136\020\214\000\000$\204\006\004\000\000G\176\n\154\000\000\000\000\000\000\001\148\000\000\n|\023H\t\176\n\160\000\000\003\030\000\000\nr\0010\t\186\n\146+\210\t\198\006<\000\000G\176\n\182\000\000\006x\000\000G\176\n\192\000\000\023x\0010\006\164\000\000G\176\n\200\000\000\005\136\000\000\000\000\t\222\000\000\001\148\014\186\n\\\000\000\000\000\000\000\nj\000\000\002\208\002R\000\000\019d\n\200\000\000\000\000G\176\n\026\b\242\000\000\t\236\000\000\000\012\000\000DN\000\000\000\000\003.\019d\000\000\019d\000\000\t\220\000\000\003.\000\000G\176\003\230G\176\000\000G\176\000\000\t\224\000\000\003\230\000\000G\176\003\230\t\226\000\000 \018\004\172 \018\000\000 \018\000\000\t\228\000\000\004\172\000\000G\176\003\230\t\230\000\000DN\005;\254\n\202\000\000\n\204\000\000\n\208\000\000+\210\000\000\005\026+\210\000\000\nP\021\164\000\000;\254\n\222\000\000\006V;\254\000\000\005j;\254\000\000\000\031\011d\000\000\011h\000\000;\254;\254\n^\000\000\000\000\000\000\000\000\000\000\000\000\n\234\000\000BFUH\n\236\000\000\n\240\000\000d>^\158;\254\nj;\254\n\244\000\000\n\248\000\000\n\250\000\000;\254\n\162\000\245\000\000\000\000\005\128;\254\000\000\000\031\000\000\011\004\000\000;\254\011\b\000\000d\150_X;\254\n\130;\254\0110\000\000\011B\000\000\011F\000\000\\\248\021\164\000\000\021\164\000\000U\202;\254\n\192;\254\011L\000\000\011N\000\000\021\164\000\000c\220\000\000\000\000\005\184;\254\000\000\006V\007J\004l\n\198\000\000\000\000\001\172\001\172\000\000\000\000\000\000\006d\001\172\000\000\n\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000;\254\000\000\005\192;\254\000\000\000\003\003\180\000\245\n\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011V\000\000\011Z\000\000;\254\011^\000\000d\248UH\011`\000\000\011b\000\000;\254\011h\000\000\031\136\011\016e\178E\244=\144\n\236\000\000;\254\011v\000\000\011x\000\000\011J\031\136;\254\011\128\000\000;\254\011\132\000\000\011\134\000\000;\254\011\136\000\000\000\245\n\244\000\000\000\000\030(\000\000\000\000\004\030\011\238\000\000\000\000\000\130\000\000\000\000\000\000G\176\000\000\000\000\000\000\004x\000\000\0040\000\000\000\000\000\000\005\246DNDNDN\000\000\002N\002N\002N\002N\000\000\000\000\000\000\000\000\000\000\000\000\002\250\019d\011\228\016h\000M\000\000\000\000\002\190\000\000\011\238\000\000+n\011\b\000\000\002\250\019d\011\014\017\230\000\000\002\250\016h\000\000\000\000\000\000DN\r\022\000\000\000\000\000\000\011^\002\184\011\230`\1808>\000\000\005`b\1408>\005\140`\228\000\000\000\000\007\020\011\214\0010\000\000\005\238a\160\000\000\000\000\000\000\000\000\000\000\011\028\011\232\b\242\011 \000\000\000\000\002\190\000\000\011\238\000\000\025\212\006\186\000\000\000\000\011\214\000\000\000\000\004\030\000\000\004\\\000\000\000\000\000\000G\176\000\000\004x\000\000\005n\000\000\000\000\000\000\007t\000\000\rl\005\230\rl\000\000\b\242\rl\000\000\007d\000\000\b\242\000\000\b\242\000\000\b\242\000\000\025\212\000\000\000\000\000\000\000\000\000\000\b\242\000\000\007d\000\000\b\242\000\000\028^\000\000\000\000\np\011V\000\245\006N\012\000\003\146\000\000\003\146\012,\000\000\0120\000\000\0122\000\000\000\000\002\228\003\146\b\024\003\146\000\000\000\000\000\162\006N\0112\000\000\0114\000\000\011x\000\245\006N\011>\000\000\006\144\012R\000\000\b\014\005\018\012d\003\144\012d\000\000\000\000\000\231\000\245\000\000\002\020\000\000\000\000\000\225\000\000\011X\000\000\000\000\000\000\011\150\000\245\006N\011\\\000\000\000\000\006\144\b\014\005\018\000\231\002\020\000\225\011b\000\000\b\014\005\018\000\231\002\020\000\225\011d\000\000\002\252\003\222\011\128\000\245\011z\007b\007\130\011\164\000\245\000\000\011\166\000\245\000\000\012\004\000\000\011\138\004N\011\134\007b\012\016\000\000\011\142\007b\012\028\000\000\000\000\007b\000\000\012 \000\000"), (16, "\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\000\n\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\r\213\000\150\025\238\025\246\007m\r\213\016V\001z\007M\001^\007m\007m\r\213\031\154\r\213\017\226\025\238\025\246\r\213\r\213\027.\r\213\031\130\000\154\r\213\005\185\002\146\0007\000;\r\213\r\213\r\213\000N\t\214\023>\023f\023v\023\158\023\174\023\214\r\213\011N\025\254\r\213\r\213\000\006\000\"\001:\007m\r\213\r\213\006U\r\213\014\157\r\213\004\242\027\154\000\242\004\250\r\213\005\n\r\213\r\213\011R\r\213\r\213\r\213\005\018\001\146\001\150\r\213\r\213\r\213\ni\001\154\r\213\r\213\r\213\001\158\001\162\000&\r\213\r\213\r\213\r\213\r\213\r\213\na\000\n\t\182\r\213\r\213\004\149\006V\019\014\b\254\001\166\t\173\005\026\007\021\000*\r\213\r\213\r\213\000\n\001\190\r\213\r\213\r\213\r\213\001\202\r\213\tI\r\213\001\218\005\185\r\213\tY\007M\r\213\r\213\002m\006\189\b\213\014\157\014\157\006\189\018\254\031\022\014\157\r\213\r\213\bE\005*\r\213\ni\016V\b\213\r\213\r\213\r\213\r\213\005\186\000.\r\213\017\226\r\213\016&\004\201\na\r\213\r\213\r\213\018\254\r\213\004\201\r\213\r\213\022\238\r\213\t\190\r\213\r\213\006\197\001\150\r\213\r\213\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\004\194\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\r\225\014^\024~\b\213\000\246\r\225\006\221\006\221\000\n\004\149\024\130\001>\r\225\r\185\r\225\004\149\004\149\001r\r\225\r\225\005F\r\225\ra\005N\r\225\005^\r\129\004\149\006\189\r\225\r\225\r\225\005f\019\014\006\229\006b\028\151\028\155\001B\t\157\r\225\028\159\004\218\r\225\r\225\014.\022\"\002\146\001F\r\225\r\225\001R\r\225\004\149\r\225\031\030\b\213\024\142\011\022\r\225\001~\r\225\r\225\005n\r\225\r\225\r\225\024\146\b\213\001\134\r\225\r\225\r\225\000\n\004\194\r\225\r\225\r\225\027F\018b\007\029\r\225\r\225\r\225\r\225\r\225\r\225\r\n\025>\015\"\r\225\r\225\r\014\001v\005\021\r\129\te\028\226\005~\r\018\001B\r\225\r\225\r\225\r\022\028\230\r\225\r\225\r\225\r\225\001F\r\225\0146\r\225\001\238\006~\r\225\rb\tM\r\225\r\225\006\213\ra\006\189\ra\014v\020\"\027J\011Z\016~\020F\r\225\007\r\001\142\r\225\000\n\014B\015j\r\225\r\225\r\225\r\225\004\209\006\189\r\225\002\002\r\225\006\189\0075\004\209\r\225\r\225\r\225\005\021\r\225\018f\r\225\r\225\002.\r\225\005\021\r\225\r\225\016\130\007\029\r\225\r\225\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\020\150\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\019r\018n\031\142\018\254\007U\016Z\016j\016z\005=\031\146\006\194\007U\016V\007U\002\157\001>\019v\007U\007U\ra\007U\017\226\001B\007U\007E\015\210\0022\015\242\007U\005\133\007U\005\185\001F\021B\031\022\001>\006.\015\174\002^\007U\021F\001r\001B\015\178\021J\015j\005=\015j\007U\007U \006\022>\001F\007U\007U\023\030\020\022\000\n\007U\014\157\007U\007U\001B\007U\007U\007U\001>\022B\rQ\007U\007U\007U\001F\002z\007U\007U\007U\000\n\022\194\007%\007U\007U\007U\007U\007U\007U\001>\n\178\015\174\007U\007U\015.\001\206\001B\015\178\r\193\003\230\000\n\tu\tA\019\014\007U\007U\001F\030\238\007U\007U\007U\007U\001\150\007U\000\n\007U\001B\016\014\007U\007\174\001v\007U\007U\t!\005\185\ra\001F \n\030\242\023&\022\214\000\n\015>\014\157\014\157\030\246\007U\015j\014\157\002}\007U\007U\007U\007U\031&\002q\007U\000\n\007U\027\158\023F\000\n\007U\007U\007U\031\030\024\158\004\150\007U\007U\r\193\007U\004\178\007U\007U\021\022\007u\007U\007U\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u F\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\006\253\rI\t]\007u\007u\bv\007u\rI\rI\t\017\030\254\007u\000\n\007u\028\134\007u\012v\007u\007u\rI\007u\024\242\024\018\007u\007u\007u\019\186\023N\007u\007u\007u\007u\031r\000\n\025\002\007u\007u\002f\001\150\007u\007u\rq\007u\031\006\004\186\rI\015j\024\246\007u\007u\007u\007u\007\133\007u\r\169\023~\005\030\007u\007u\028\134\007u\007-\007u\007u\007u\007u\001>\015\130\015\158\007u\007u\007u\001>\000\n\007u\007u\007u\002j\005\"\012\185\007u\007u\007u\007u\007u\007u\031j\b\134\015\174\000\n\007u\002M\006\245\001B\015\178\001>\021\150\r\177\007u\001B\005r\007u\007u\001F\007u\007u\007u\007u\007u\001F\007u\005v\007u\007u\007\133\007u\024n\015\174\007u\007u\006\189\024z\001B\015\178\028\191\028\195\023\134\023\182\000\n\028\199\007u\018j\001F\007u\000\n\t=\005e\007u\007u\002\146\007u\012\185\ra\007u\018~\007u\030+\030/\t-\007u\t\234\0303\019\146\t\242\005\194\n\002\007u\000\n\007u\024\230\007u\007u\n\n\015\162\007u\007u\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\023\254\001&\028\206\001.\r\018\0016\002\014\002\022\002\026\r\022\028\210\007\005\024\002\n\018\007e\r\026\021\130\021\246\023\190\005\214\007e\007e\r*\024\006\002\"\024\n\018\138\r\153\002\150\r2\002]\016.\007e\024\014\0162\006\189\001>\006v\r\161\002*\005\254\016F\024\026\021\178\021\198\016V\024\030\021\226\n\"\025\178\002\166\022\006\024\"\029\006\017\226\006\189\rY\019\218\007e\017\246\016\138\0292\029>\001B\017\250\020R\r\137\019\150\024&\002\202\r\145\002\206\005\149\001F\002>\019\006\018\002\015j\027.\022^\016\162\002\214\018\006\006\237\029\150\016\166\014V\002\222\t\145\025\226\006\002\016\170\016\174\rF\rJ\016\178\018\n\005Y\000\n\024*\026\134\018\014\024.\030K\030O\006\022\029\162\007=\030S\022r\t\129\021\134\r\182\016\182\027B\0242\018\018\018\022\016\186\018\026\0246\000\n\024:\018.\024>\024B\005q\024F\027\"\018:\016\194\022\142\027\142\019\014\024J\030\011\003\229\024N\021\182\021\202\003\229\029R\021\230\030\015\018Z\nY\022\n\0062\018^\018\170\005\149\rN\024R\030\018\016\198\029\194\018\174\024V\024Z\002\141\016\206\005\149\005\149\n\133\n\133\000\n\005\149\018\182\n\133\016\210\nE\007}\007}\025\214\022b\003\026\007}\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\030\230\001&\028\206\001.\r\018\0016\002\014\002\022\002\026\r\022\028\210\001>\029\178\022v\005Y\r\026\nY\002f\024\018\031Z\005Y\005Y\r*\027Z\002\"\004\145 \030 \026\002\150\r2\ri\016.\005Y\005Y\0162\022\146\018\254\006:\001B\002*\006>\016F\006z\0272\006\130\016V *\006\146\001F\006\154\002\166\006\158\001>\016V\017\226\006\166\006\214\006\238\005Y\017\246\016\138\0292\017\226\006\218\017\250\020\154\006\226\006\246\007\n\002\202\007\"\002\206\005\165\000\n\002>\019\006\018\002\007B\007J\001B\016\162\002\214\018\006\b\002\b\158\016\166\014V\002\222 o\001F\b\170\016\170\016\174\rF\rJ\016\178\018\n\004\145\b\202\b\230\019\n\018\014\004\141\b\246\t\006\t\014\t&\t.\t>\tJ\tV\003\229\r\182\016\182\000\n\003\229\018\018\018\022\016\186\018\026\tf\000\n\tr\018.\t~\t\142\005q\t\158\t\166\018:\016\194\n>\t\203\019\014\nF\n\022\nV\n\026\004\141\nj\nn\019\014\n\186\n^\018Z\n\206\n\246\n\250\018^\018\170\011\014\rN\011:\011n\016\198\011~\018\174\011\146\011\218\011\222\016\206\012.\005\165\n\133\n\133\0122\012~\018\182\n\133\016\210\012\146\007\141\007\141\012\186\nf\003\026\007\141\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\012\190\001&\028\206\001.\r\018\0016\002\014\002\022\002\026\r\022\028\210\002f\012\210\012\234\004\145\r\026\012\254\002f\nv\004\141\004\145\004\145\r*\r\030\002\"\004\141\004\141\r&\002\150\r2\r.\016.\004\145\030\230\0162\r6\r>\004\141\rB\002*\rz\016F\r\138\r\150\r\158\r\254\001>\014\n\014>\014b\002\166\011v\001>\016V\004\141\014n\014\138\012\226\004\145\016\134\016\138\014\146\017\226\004\141\017\250\031\030\015R\015^\015f\002\202\015z\002\206\005\193\001B\002>\017\254\018\002\015\134\015\142\001B\016\162\002\214\018\006\001F\015\146\016\166\014V\002\222\015\154\001F\015\170\016\170\016\174\rF\rJ\016\178\018\n\015\186\015\194\015\198\014\165\018\014\015\218\015\226\015\250\016\002\016\022\016\030\000\n\016*\016>\016R\r\182\016\182\000\n\016^\018\018\018\022\016\186\018\026\016f\000\n\016n\018.\016v\016\146\005q\016\154\016\250\018:\016\194\011\174\017\006\017>\011\182\017n\011\198\018\030\018&\0186\018>\019\014\018F\011\206\018Z\018N\018V\018\166\018^\018\170\005\193\rN\018\178\018\186\016\198\018\198\018\174\018\202\018\210\018\214\016\206\005\193\005\193\018\222\018\230\018\238\005\193\018\182\019\026\016\210\019^\n\141\n\141\019f\011\214\003\026\n\141\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\019j\001&\019z\001.\r\018\0016\002\014\002\022\002\026\r\022\019\130\019\134\019\142\019\158\019\166\r\026\019\174\019\178\011\230\019\194\005Y\019\202\r*\019\226\002\"\019\234\020:\018b\002\150\r2\012\002\016.\020\130\012\n\0162\012\026\020\142\021\002\030\218\002*\b\221\016F\012\"\021\014\021.\021Z\021j\021r\001B\021\142\002\166\021\154\021\162\016V\b\221\021\166\021\174\021\190\001F\016\134\016\138\021\210\017\226\021\238\017\250\022\018\022*\0222\0226\002\202\022F\002\206\022N\012*\002>\017\254\018\002\022R\022Z\022j\016\162\002\214\018\006\000\n\022~\016\166\014V\002\222\022\154\022\174\022\190\016\170\016\174\rF\rJ\016\178\018\n\022\206\022\230\022\246\023\002\018\014\0233\018f\023[\023s\023\147\023\171\012:\023\203\023\227\b\221\r\182\016\182\031B\023\250\018\018\018\022\016\186\018\026\024\022\000\n\024\134\018.\031V\004\241\024\183\025\014\005Y\018:\016\194\031\174\025#\031Z\005Y\005Y\025K\025W\025g\025o\025\138\019\014\025\147\025\155\018Z\025\163\005Y\005Y\018^\018\170\025\190\rN\025\207\025\242\016\198\025\250\018\174\026\n\026'\0267\016\206\026?\026R\026[\b\221\026c\026k\018\182\026v\016\210\018b\026\155\005Y\026\167\026\186\003\026\b\221\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\001B\001&\026\195\001.\r\018\0016\002\014\002\022\002\026\r\022\001F\026\203\018b\026\211\026\246\r\026\026\255\027\007\027:\027f\027\166\027\199\r*\027\207\002\"\027\219\027\235\027\243\002\150\r2\027\255\016.\028\n\001B\0162\000\n\028\026\028'\028/\002*\0286\016F\028C\001F\028O\028W\028c\028o\028\138\029\018\002\166\029:\029J\016V\029~\018f\029\134\029\182\029\222\016\134\016\138\029\226\017\226\029\234\017\250\030\023\030\222\030\234\000\n\002\202\030\250\002\206\031\002\031\n\002>\017\254\018\002\t1\0317\031?\016\162\002\214\018\006\031F\031S\016\166\014V\002\222\018f\031^\031n\016\170\016\174\rF\rJ\016\178\018\n\031\163\031\178\031\191\014\165\018\014\031\227\031\255 \014 \022 \" . ; B\002a J\r\182\016\182 S Z\018\018\018\022\016\186\018\026 c\000\n w\018.\000\000\000\000\000\000\000\000\000\000\018:\016\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\n\019\014\000\000\000\000\018Z\r\014\000\000\000\000\018^\018\170\028\226\rN\r\018\000\000\016\198\000\000\018\174\r\022\028\230\000\000\016\206\000\000\000\000\000\000\000\000\000\000\000\000\018\182\000\000\016\210\000\000\014\165\014\165\000\000\000\000\003\026\014\165\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\000\000\001&\028\206\001.\r\018\0016\002\014\002\022\002\026\r\022\028\210\000\000\000\000\000\000\000\000\r\026\001>\015\130\000\000\000\000\019r\000\000\r*\000\000\002\"\000\000\000\000\000\000\002\150\r2\000\000\016.\000\000\000\000\0162\001>\019v\000\000\015\174\002*\000\000\016F\000\000\001B\015\178\000\000\000\000\000\000\004\218\000\000\002\166\000\000\000\000\001F\000\000\000\000\000\000\015\174\000\000\017\246\016\138\000\000\001B\015\178\017\250\030b\000\000\000\000\000\000\002\202\000\000\002\206\001F\000\000\002>\019\006\018\002\000\000\000\n\000\000\016\162\002\214\018\006\005\133\000\000\016\166\014V\002\222\000\000\000\000\000\000\016\170\016\174\rF\rJ\016\178\018\n\000\n\000\000\000\000\000\000\018\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\182\016\182\000\000\000\000\018\018\018\022\016\186\018\026\000\000\000\n\000\000\018.\000\000\000\000\005q\000\000\000\000\018:\016\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\r\000\000\000\000\000\000\000\000\000\000\018Z\000\000\000\000\000\000\018^\018\170\000\000\rN\000\000\000\000\016\198\000\000\018\174\000\000\000\000\000\000\016\206\000\000\000\000\000\000\000\000\000\000\000\000\018\182\000\000\016\210\000\000\nq\nq\000\000\000\000\003\026\nq\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\000\000\001&\000\000\001.\r\018\0016\002\014\002\022\002\026\r\022\000\000\000\000\000\000\000\000\000\000\r\026\000\000\000\000\000\000\000\000\022>\000\000\r*\000\000\002\"\000\000\000\000\000\000\002\150\r2\000\000\016.\000\000\000\000\0162\001>\022B\000\000\000\000\002*\000\000\016F\000\000\000\000\000\000\000\000\000\000\000\000\004\218\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\015\174\000\000\017\246\016\138\000\000\001B\015\178\017\250\019\"\000\000\000\000\000\000\002\202\000\000\002\206\001F\000\000\002>\019\006\018\002\000\000\000\000\000\000\016\162\002\214\018\006\000\000\000\000\016\166\014V\002\222\000\000\000\000\000\000\016\170\016\174\rF\rJ\016\178\018\n\000\n\000\000\000\000\014\129\018\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\182\016\182\000\000\000\000\018\018\018\022\016\186\018\026\000\000\000\n\000\000\018.\000\000\000\000\000\000\000\000\000\000\018:\016\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\r\000\000\000\000\000\000\000\000\000\000\018Z\000\000\000\000\000\000\018^\018\170\000\000\rN\000\000\000\000\016\198\000\000\018\174\000\000\000\000\000\000\016\206\000\000\000\000\000\000\000\000\000\000\000\000\018\182\000\000\016\210\000\000\014\129\014\129\000\000\000\000\003\026\014\129\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\000\000\001&\000\000\001.\r\018\0016\002\014\002\022\002\026\r\022\000\000\000\000\000\000\000\000\000\000\r\026\000\000\000\000\000\000\000\000\000\000\000\000\r*\000\000\002\"\000\000\000\000\000\000\002\150\r2\000\000\016.\000\000\000\000\0162\000\000\000\000\000\000\000\000\002*\000\000\016F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\246\016\138\000\000\000\000\000\000\017\250\029\022\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\019\006\018\002\000\000\000\000\000\000\016\162\002\214\018\006\000\000\000\000\016\166\014V\002\222\000\000\000\000\000\000\016\170\016\174\rF\rJ\016\178\018\n\000\000\000\000\000\000\000\000\018\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\182\016\182\000\000\000\000\018\018\018\022\016\186\018\026\000\000\000\n\000\000\018.\000\000\000\000\000\000\000\000\000\000\018:\016\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018Z\000\000\000\000\000\000\018^\018\170\000\000\rN\000\000\000\000\016\198\000\000\018\174\000\000\000\000\000\000\016\206\000\000\000\000\000\000\000\000\000\000\000\000\018\182\000\000\016\210\000\000\014\205\014\205\000\000\000\000\003\026\014\205\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\000\000\001&\000\000\001.\r\018\0016\002\014\002\022\002\026\r\022\000\000\000\000\000\000\000\000\000\000\r\026\000\000\000\000\000\000\000\000\000\000\000\000\r*\000\000\002\"\000\000\000\000\000\000\002\150\r2\000\000\016.\000\000\000\000\0162\000\000\000\000\000\000\000\000\002*\000\000\016F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\246\016\138\000\000\000\000\000\000\017\250\029\022\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\019\006\018\002\000\000\000\000\000\000\016\162\002\214\018\006\000\000\000\000\016\166\014V\002\222\000\000\000\000\000\000\016\170\016\174\rF\rJ\016\178\018\n\000\000\000\000\000\000\000\000\018\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\182\016\182\000\000\000\000\018\018\018\022\016\186\018\026\000\000\000\n\000\000\018.\000\000\000\000\000\000\000\000\000\000\018:\016\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018Z\000\000\000\000\000\000\018^\018\170\000\000\rN\000\000\000\000\016\198\000\000\018\174\000\000\000\000\000\000\016\206\000\000\000\000\000\000\000\000\000\000\000\000\018\182\000\000\016\210\000\000\014\201\014\201\000\000\000\000\003\026\014\201\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\000\000\001&\000\000\001.\r\018\0016\002\014\002\022\002\026\r\022\000\000\000\000\000\000\000\000\000\000\r\026\000\000\000\000\000\000\000\000\000\000\000\000\r*\000\000\002\"\000\000\000\000\000\000\002\150\r2\000\000\016.\000\000\000\000\0162\000\000\000\000\000\000\000\000\002*\000\000\016F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\246\016\138\000\000\000\000\000\000\017\250\020\206\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\019\006\018\002\000\000\000\000\000\000\016\162\002\214\018\006\000\000\000\000\016\166\014V\002\222\000\000\000\000\000\000\016\170\016\174\rF\rJ\016\178\018\n\000\000\000\000\000\000\000\000\018\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\182\016\182\000\000\000\000\018\018\018\022\016\186\018\026\000\000\000\n\000\000\018.\000\000\000\000\000\000\000\000\000\000\018:\016\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018Z\000\000\000\000\000\000\018^\018\170\000\000\rN\000\000\000\000\016\198\000\000\018\174\000\000\000\000\000\000\016\206\000\000\000\000\000\000\000\000\000\000\000\000\018\182\000\000\016\210\000\000\000R\000V\000f\000\170\003\026\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\000\000\001&\000\000\001.\r\018\0016\002\014\002\022\002\026\r\022\000\000\004\230\004\238\000\170\000\000\000\174\000\000\0052\005:\005B\005\134\000\000\005\142\005\150\002\"\005\166\000\000\005\174\002\150\005\182\005\226\016.\005\234\000\000\0162\000\000\000\000\000\000\000\000\002*\000\000\021N\000\000\000\000\000\000\000\000\000\000\000\000\005\242\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021^\016\138\000\000\000\000\005\250\000\000\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\000\000\000\000\000\000\016\162\002\214\000\000\000\000\000\000\016\166\001\150\002\222\000\000\000\000\000\000\016\170\016\174\rF\021b\016\178\000\000\000\000\006\n\000\000\000\000\000\000\t\246\006\181\000\000\000\000\000\000\000\000\000\000\000\000\nJ\006\181\r\182\016\182\006\181\006\181\000\000\000\000\016\186\006\181\000\000\000\n\006\181\006\181\006\181\000\000\006\181\000\000\006\181\000\000\016\194\006\181\006\181\000\000\006\181\000\000\006\181\000\000\000\000\000\000\000\000\000\000\006\181\000\000\006\181\006\181\000\000\006\181\000\000\006\181\006\181\rN\006\181\006\181\016\198\006\181\021f\006\181\006\181\000\000\016\206\006\181\006\181\006\181\006\181\006\181\006\181\021n\006\181\016\210\000\000\006\181\000Z\000\000\006\181\003\026\000\000\006\181\000\000\006\181\000Z\006\181\006\181\n\198\000\000\006\181\0112\006\181\000Z\000\000\006\181\000Z\000\000\006\181\006\181\000\000\006\181\000\000\000\000\006\181\000\000\000\000\006\181\006\181\000\000\006\181\000\000\006\181\006\181\006\181\006\181\000\000\000\000\006\181\000\000\006\181\000\000\000\000\006\181\000\000\000\000\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\000\000\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\000\000\000\000\000\000\006\181\000\000\006\181\006\181\000\000\000\000\006\181\006\181\006\181\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\006\181\000\000\000\000\006\181\000\000\006\181\006\181\000\000\006\181\006\181\006\181\000\000\000\000\006\181\006\181\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\000\000\000\000\006\181\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\002\014\002\022\002\026\000\000\000\000\004\230\004\238\000\170\000\000\000\174\000\000\0052\005:\005B\005\134\000\000\005\142\005\150\002\"\005\166\000\000\005\174\002\150\005\182\005\226\002\174\005\234\000\000\002\178\000\000\000\000\000\000\000\000\002*\000\000\000\000\ry\ry\000\000\000\000\000\000\000\000\005\242\000\000\002\166\000\000\000\000\002\170\000\000\000\000\000\000\000\000\000\000\003>\007:\000\000\002\194\005\250\000\000\007\162\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\000\000\000\000\000\000\007N\002\214\000\000\000\000\000\000\007R\001\150\002\222\000\000\000\000\007\166\007V\007Z\000\000\000\000\007^\002\238\000\000\006\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\007b\000\000\000\000\000\000\000\000\007f\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ry\007\170\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\ry\000\000\000\000\007r\000\000\000\000\ry\ry\000\000\007z\000\000\000\000\004\233\000\000\000\000\000\000\000\000\000\000\007~\000\000\000R\000V\000f\000\170\003\026\000\174\000\000\000\178\000\186\000\194\001\006\000\022\001\014\001\022\000\000\001&\000\000\001.\ry\0016\002\014\002\022\002\026\ry\ry\011\162\011\170\000\170\000\000\000\174\000\000\011\238\011\246\011\254\012B\000\000\012J\012R\002\"\012b\000\000\012j\002\150\012r\012\158\002\174\012\166\000\000\002\178\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\012\174\000\000\002\166\000\000\000\000\002\170\000\000\000\000\000\000\000\000\000\000\003>\007:\000\000\002\194\012\182\000\000\007\162\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\014\170\000\000\000\000\007N\002\214\000\000\000\000\000\000\007R\001\150\002\222\000\000\000\000\007\166\007V\007Z\000\000\000\000\007^\002\238\000\000\012\198\000\000\000\000\014\178\014\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007b\000\000\000\000\014\194\000\000\007f\000\000\000\000\000\n\014\202\014\210\000\000\000\000\000\000\000\000\000\000\000\000\007n\000\000\014\218\r\n\000\000\014\226\000\000\014\234\r\014\000\000\000\000\007\170\000\000\028\226\000\000\r\018\000\000\000\000\000\000\000\000\r\022\028\230\000\000\000\000\007r\000\000\000\000\000\000\000\000\000\000\007z\000\000\000\000\t\021\014\242\000\000\000\000\000\000\000\000\007~\000\000\000R\000V\000f\000\170\003\026\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\019r\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\001>\019v\000\000\000\000\014\250\000\000\000\000\000\000\000\000\002\"\000\000\015\002\000\000\002\150\000\000\000\000\002\174\000\000\000\000\002\178\000\000\000\000\015\174\000\000\002*\0065\000\000\001B\015\178\000\000\000\000\000\000\0065\000\000\000\000\002\166\000\000\001F\002\170\000\000\015\n\015\018\000\000\000\000\003>\007:\000\000\002\194\000\000\000\000\007\162\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\000\n\000\189\000\000\007N\002\214\005\133\000\000\000\000\007R\001\150\002\222\000\000\000\000\007\166\007V\007Z\000\000\000\000\007^\002\238\000\000\000\000\000\000\000\000\000\000\003\142\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007b\000\000\000\000\000\000\003\150\007f\000\000\000\000\000\n\000\000\000\189\000\189\000\000\000\000\b\149\b\149\000\000\007n\000\000\b\149\003\190\000\000\000\000\003\158\000\000\003\174\000\000\000\000\007\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\007r\000\000\000\000\000\000\000\000\000\000\007z\000\000\000\000\002Q\000\000\003\198\000\000\000\000\000\000\007~\000\000\000R\000V\000f\000\170\003\026\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\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\000\000\002\"\000\000\000\000\003\166\002\150\000\000\000\000\002\174\000\000\000\000\002\178\000\000\000\000\000\000\000\000\002*\000\000\000\189\000\000\000\000\000\000\000\000\000\000\000\000\000\189\000\000\002\166\000\000\000\000\002\170\000\000\000\000\000\189\003\214\000\000\003>\007:\000\000\002\194\000\000\000\000\007\178\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\000\000\000\000\000\000\007N\002\214\000\000\000\000\000\000\007R\001\150\002\222\r\n\000\000\007\166\007V\007Z\r\014\000\000\007^\002\238\000\000\028\226\000\000\r\018\000\000\000\000\000\000\000\000\r\022\028\230\000\000\000\000\000\000\000\000\000\000\000\000\007b\000\000\000\000\000\000\000\000\007f\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\007n\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\019r\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\007r\001>\019v\000\000\000\000\000\000\007z\000\000\000\000\t%\002\"\000\000\000\000\000\000\002\150\007~\000\000\002\154\000\000\000\000\002\158\003\026\000\000\015\174\000\000\002*\000\000\000\000\001B\015\178\000\000\000\000\000\000\000\000\000\000\000\000\002\166\000\000\001F\002\170\000\000\000\000\000\000\000\000\000\000\002\190\002\186\000\000\002\194\000\000\000\000\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\000\n\000\165\000\000\002\210\002\214\005\133\000\000\000\000\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\000\000\000\000\002\234\002\238\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\000\000\000\000\002\242\000\000\000\000\000\000\003\150\002\246\000\000\000\000\000\n\000\000\000\165\000\165\000\000\000\000\n\189\n\189\000\000\002\254\000\000\n\189\000\165\000\000\000\000\003\158\000\000\003\174\000\000\000\000\003\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\006\000\000\000\000\000\000\000\000\000\000\003\018\000\000\000\000\000\000\000\000\000\165\000\000\000\000\000\000\003\"\000\000\001\133\001\133\001\133\001\133\003\026\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\023\238\000\000\000\000\000\000\000\000\000\000\000\000\000\165\000\000\000\000\001\133\001\133\001\133\000\000\003\166\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\165\001\133\000\000\000\000\000\000\001\133\000\000\000\165\023\242\000\000\000\000\001\133\000\000\000\000\000\000\000\165\000\165\000\000\001\133\000\000\000\000\000\000\000\000\001\133\000\000\000\000\000\000\001\225\000\000\000\000\001\225\000\000\001\133\001\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\225\001\225\000\000\000\000\001\133\000\000\000\000\001\133\000\000\000\000\001\133\000\000\000\000\000\000\000\000\001\225\000\000\000\000\000\000\001\225\000\000\001\225\001\225\001\133\000\000\000\000\000\000\000\000\001\133\000\000\001\133\001\225\000\000\001\133\001\225\023\246\001\225\000\000\000\000\000\000\001\133\000\000\001\133\000\000\000\000\001\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\133\001\133\000\000\001\225\000\000\001\133\001\133\000\000\000\000\000\000\000R\t\222\t\230\000\170\000\000\000\174\024\186\n*\n2\n:\n~\000\000\n\134\n\142\023\254\n\158\000\000\n\166\000\000\n\174\n\218\002\022\n\226\000\000\000\000\000\000\024\002\000\000\000\000\000\000\000\000\000\000\000\000\001\225\007\186\000\000\001\225\024\006\n\234\024\n\001\225\000\000\000\000\000\000\000\000\000\000\000\000\024\014\000\000\000\000\000\000\000\000\000\000\028\006\001\225\000\000\024\026\000\000\001\225\001\225\024\030\000\000\000\000\000\000\000\000\007\194\024\"\000\000\000\000\001\225\001\225\000\000\000\000\011\002\000\000\000\000\000\000\000\000\025\166\000\000\000\000\000\000\024&\027\018\000\000\000\000\000\000\000\000\011.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\026\000\000\000\000\000\000\000\000\000\000\000\000\r*\000\000\000\000\000\000\000\000\011F\002\150\r2\024*\016.\000\000\024.\0162\000\000\000\000\000\000\000\000\000\000\000\000\016F\000\000\000\000\000\000\000\000\0242\000\000\000\000\000\000\002\166\0246\000\n\024:\000\000\024>\024B\000\000\024F\018*\016\138\000\000\000\000\000\000\017\250\024J\000\000\000\000\024N\002\202\000\000\002\206\000\000\000\000\000\000\000\000\018\002\000\000\000\000\000\000\016\162\002\214\018\006\024R\000\000\016\166\014V\002\222\024V\024Z\000\000\016\170\016\174\000\000\000\000\016\178\018\n\000\000\000\000\000\000\000\000\018\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\182\016\182\000\000\000\000\018\018\018\022\016\186\018\026\000\000\000\n\000\000\018.\000\000\000\000\000\000\r\026\000\000\018:\016\194\000\000\000\000\000\000\r*\000\000\000\000\000\000\000\000\000\000\002\150\r2\000\000\016.\018Z\000\000\0162\000\000\018^\018\170\000\000\000\000\000\000\016F\016\198\000\000\018\174\000\000\000\000\000\000\016\206\000\000\002\166\000\000\000\000\000\000\000\000\018\182\000\000\016\210\000\000\016\158\016\138\000\000\000\000\003\026\017\250\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\018\002\000\000\000\000\000\000\016\162\002\214\018\006\000\000\000\000\016\166\014V\002\222\000\000\000\000\000\000\016\170\016\174\000\000\000\000\016\178\018\n\000\000\000\000\000\000\000\000\018\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\182\016\182\000\000\000\000\018\018\018\022\016\186\018\026\000\000\000\n\000\000\018.\000\000\000\000\000\000\000\000\000\000\018:\016\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018Z\000\000\000\000\000\000\018^\018\170\000\000\000\000\000\000\000\000\016\198\000\000\018\174\000\000\000\000\000\000\016\206\000\000\000\000\000\000\000\000\000\000\000\000\018\182\000\000\016\210\000\000\0129\0129\0129\0129\003\026\0129\000\000\0129\0129\0129\0129\000\000\0129\0129\000\000\0129\000\000\0129\000\000\0129\0129\0129\0129\000\000\000\000\016}\000\000\000\000\016}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0129\0129\0129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0129\000\000\016}\016}\000\000\000\000\0129\016}\000\000\024\202\0032\016}\000\000\024\210\000\000\000\000\000\000\016}\000\000\0129\016}\016}\000\000\016}\016}\000\000\0129\003:\000\000\016}\003N\0129\000\000\016}\000\000\000\000\016}\000\000\016}\016}\0129\0129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0129\000\000\016}\0129\016}\000\000\0129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016}\000\000\000\000\000\000\0129\000\000\000\000\004\154\000\000\0129\000\000\0129\000\000\000\000\0129\000\000\000\000\000\000\000\000\000\000\000\000\0129\000\000\0129\000\000\000\000\0129\016}\016}\000\000\016}\016}\004\158\000\000\016}\000\000\000\000\000\000\000\000\000\000\000\000\0129\0129\004\166\000\000\000\000\025&\0129\016}\000\000\000\000\016}\016}\016}\016}\016}\000\000\000\000\000\000\016}\016}\016}\000\000\016}\016}\016}\016\r\000\000\000\000\016\r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\r\016\r\000\000\000\000\000\000\016\r\000\000\000\000\0032\016\r\000\000\000\000\000\000\000\000\000\000\016\r\000\000\000\000\016\r\016\r\000\000\016\r\016\r\000\000\000\000\003:\000\000\016\r\003N\000\000\000\000\016\r\000\000\000\000\016\r\000\000\016\r\016\r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\r\000\000\016\r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\r\000\000\000\000\000\000\000\000\000\000\000\000\004\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\r\016\r\000\000\016\r\016\r\004\158\000\000\016\r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\004\166\000\000\005\233\000\000\000\000\016\r\000\000\000\000\016\r\016\r\016\r\016\r\016\r\000\000\000\000\000\000\016\r\016\r\016\r\000\000\016\r\016\r\016\r\005\233\005\233\000\000\000\000\000\000\005\233\000\000\000\000\005\233\005\233\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\005\233\000\000\005\233\005\233\000\000\001>\005\233\000\000\005\233\005\233\000\000\000\000\005\233\000\000\000\000\005\233\000\000\005\233\005\233\000\000\000\000\000\000\000\000\000\000\000\000\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\001F\000\000\005\233\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\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\000\000\005\233\005\233\000\000\005\233\bA\005\233\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\000\000\005\233\000\000\005\233\000\000\000\000\000\000\005\233\005\233\005\233\000\000\005\233\005\233\005\233\012)\012)\012)\012)\000\000\012)\000\000\012)\012)\012)\012)\000\000\012)\012)\000\000\012)\000\000\012)\000\000\012)\012)\012)\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\012)\012)\012)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012)\000\000\000\000\000\000\000\000\000\000\012)\000\000\000R\t\222\t\230\000\170\000\000\000\174\000\000\n*\n2\n:\n~\012)\n\134\n\142\000\000\n\158\000\000\n\166\012)\n\174\n\218\002\022\n\226\012)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012)\012)\000\000\000\000\000\000\000\000\n\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\n\242\000\000\012)\000\000\000\000\012)\000\000\000\000\012)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\002\012)\000\000\000\000\000\000\000\000\012)\000\000\012)\000\000\000\000\012)\000\000\000\000\000\000\011.\000\000\000\000\012)\000\000\012)\000\000\000\000\012)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011F\012)\012)\000\000\000\000\000\000\024\206\012)\012-\012-\012-\012-\000\000\012-\000\000\012-\012-\012-\012-\000\000\012-\012-\000\000\012-\000\000\012-\000\000\012-\012-\012-\012-\000\000\000\000\005\237\000\000\000\000\005\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012-\012-\012-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012-\000\000\005\237\005\237\000\000\000\000\012-\005\237\000\000\025*\005\237\005\237\000\000\000\000\000\000\000\000\000\000\005\237\000\000\012-\005\237\005\237\000\000\005\237\005\237\000\000\012-\005\237\000\000\005\237\005\237\012-\000\000\005\237\000\000\000\000\005\237\000\000\005\237\005\237\012-\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\012-\000\000\005\237\012-\005\237\000\000\012-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\237\000\000\000\000\000\000\012-\000\000\000\000\005\237\000\000\012-\000\000\012-\000\000\000\000\012-\000\000\000\000\000\000\000\000\000\000\000\000\012-\000\000\012-\000\000\000\000\012-\005\237\005\237\000\000\005\237\bI\005\237\000\000\005\237\000\000\000\000\000\000\000\000\000\000\000\000\012-\012-\005\237\000\000\000\000\000\000\012-\005\237\000\000\000\000\005\237\000\000\005\237\000\000\005\237\000\000\000\000\000\000\005\237\005\237\005\237\000\000\005\237\005\237\005\237\000R\t\222\t\230\000\170\000\000\000\174\000\000\n*\n2\n:\n~\000\000\n\134\n\142\000\000\n\158\000\000\n\166\000\000\n\174\n\218\002\022\n\226\000\000\000\000\016a\000\000\000\000\016a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0252\n\234\025N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025Z\000\000\016a\016a\000\000\000\000\n\242\016a\000\000\000\000\016\234\016a\000\000\000\000\000\000\000\000\000\000\016a\000\000\025r\016a\016a\000\000\016a\016a\000\000\011\002\016\242\000\000\016a\016\254\025\166\000\000\016a\000\000\000\000\016a\000\000\016a\016a\025\198\011.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011F\000\000\016a\025\210\016a\000\000\026*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016a\000\000\000\000\000\000\026B\000\000\000\000\017\n\000\000\026n\000\000\nA\000\000\000\000\026\158\000\000\000\000\000\000\000\000\000\000\000\000\026\170\000\000\026\214\000\000\000\000\027\210\016a\016a\000\000\016a\000\000\017\014\001\209\016a\000\000\001\209\000\000\000\000\000\000\000\000\027\222\027\246\017\022\000\000\001\209\000\000\028\002\001\209\000\000\000\000\016a\000\000\016a\000\000\000\000\000\000\001\209\001\209\016a\016a\016a\001\209\016a\016a\016a\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\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\003V\000\000\001\209\001\209\000\000\000\000\001\209\000\000\000\000\000\000\000\000\001\209\003^\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\000\000\000\000\000\000\000\000\004\138\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\002\150\000\000\000\000\rj\000\000\000\000\rn\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\002\166\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\r\130\r\142\000\000\000\000\014.\014F\014J\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002\"\000\000\000\000\000\000\000\000\000\000\r\162\002\214\000\000\014N\014R\r\166\014V\002\222\000\000\002*\000\000\r\170\r\174\000\000\000\000\r\178\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002:\000\000\000\000\r\182\r\186\000\000\006B\000\000\000\000\r\190\000\000\000\000\000\n\000\000\000\000\002>\000\000\000\000\000\000\006F\006J\r\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\213\000\000\014Z\002\150\014v\000\000\rj\006N\000\000\rn\000\000\000\000\000\000\000\000\000\000\r\202\000\000\000\000\000\000\000\000\000\000\r\210\000\000\000\000\000\000\002\166\000\000\004\249\000\000\000\000\r\214\000\000\000\n\000\000\r\130\r\142\003\026\000\000\014.\014F\014J\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\006R\000\000\000\000\r\162\002\214\000\000\014N\014R\r\166\014V\002\222\000\000\000\000\000\000\r\170\r\174\000\000\000\000\r\178\001F\000\000\000\000\005\t\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\182\r\186\000\000\000\000\000\000\000\000\r\190\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\213\000\000\014Z\002\150\014v\000\000\rj\000\000\000\000\rn\000\000\000\000\000\000\000\000\000\000\r\202\000\000\000\000\000\000\000\000\000\000\r\210\000\000\000\000\000\000\002\166\000\000\ti\000\000\000\000\r\214\000\000\000\000\000\000\r\130\r\142\003\026\000\000\014.\014F\014J\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\162\002\214\000\000\014N\014R\r\166\014V\002\222\000\000\000\000\000\000\r\170\r\174\000\000\000\000\r\178\001F\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\000\000\r\182\r\186\000\000\000\000\000\000\000\000\r\190\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\001Y\001Y\000\000\000\000\000\000\001Y\000\000\000\000\006\213\001Y\014Z\000\000\014v\000\000\000\000\003\150\000\000\000\000\001Y\001Y\000\000\001Y\001Y\r\202\000\000\000\000\000\000\001Y\000\000\r\210\000\000\001Y\000\000\000\000\003\158\002\129\003\174\001Y\r\214\000\000\000\000\000\000\000\000\000\000\003\026\000\000\000\000\004\217\004\217\004\217\004\217\000\000\004\217\000\000\004\217\004\217\004\217\004\217\000\000\004\217\004\217\000\000\004\217\001Y\004\217\001Y\004\217\004\217\004\217\004\217\000\000\000\000\000\000\000\000\000\000\000\000\001Y\000\000\000\000\002Z\000\000\000\000\000\000\000\000\000\000\004\217\000\000\000\000\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\217\000\000\000\000\001Y\000\000\000\000\001Y\001Y\000\000\001M\003\166\000\000\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\217\000\000\000\000\000\000\001Y\000\000\004\217\001Y\001Y\001Y\001Y\001Y\000\000\001M\001M\004\217\001Y\001Y\001M\001Y\001Y\001Y\001M\000\000\000\000\000\000\000\000\000\000\001M\004\217\004\217\001M\001M\000\000\001M\001M\000\000\004\217\000\000\000\000\001M\000\000\000\000\000\000\001M\000\000\000\000\003\158\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\004\217\000\000\000\000\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\001M\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\001M\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\004\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\000\000\000\000\001M\001M\002\"\001Q\003\166\000\000\001Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002*\001M\000\000\000\000\001M\001M\001M\001M\001M\000\000\001Q\001Q\000\000\001M\001M\001Q\001M\001M\001M\001Q\002:\000\000\000\000\000\000\000\000\001Q\002F\000\000\001Q\001Q\000\000\001Q\001Q\000\000\000\000\002>\000\000\001Q\000\000\000\000\000\000\001Q\000\000\000\000\003\158\000\000\001Q\001Q\000\000\002J\002N\000\000\000\000\000\000\000\000\000\000\000\000\002R\000\000\000\000\000\000\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\001Q\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\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\000\000\000\000\000\000\000\000\002V\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\001U\003\166\000\000\001U\000\000\000\000\000\000\000\000\014A\000\000\000\000\000\000\000\000\000\000\000\000\001Q\000\000\000\000\001Q\001Q\001Q\001Q\001Q\000\000\001U\001U\000\000\001Q\001Q\001U\001Q\001Q\001Q\001U\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\001U\001U\000\000\001U\001U\000\000\000\000\000\000\000\000\001U\000\000\000\000\000\000\001U\000\000\000\000\003\158\000\000\003\174\001U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\001U\001.\001U\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\001U\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\001U\000\000\000\000\001U\001U\000\000\001e\003\166\000\000\001e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002:\000\000\000\000\000\000\001U\000\000\002F\001U\001U\001U\001U\001U\000\000\003\142\003\182\002>\001U\001U\001e\001U\001U\001U\001e\000\000\000\000\000\000\000\000\000\000\003\150\002J\002N\001e\001e\000\000\001e\001e\000\000\002R\000\000\000\000\001e\000\000\000\000\000\000\001e\000\000\000\000\003\158\000\000\003\174\001e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016E\000\000\000\000\016E\003\198\000\000\001e\000\000\000\000\000\000\002V\000\000\000\000\000\000\000\000\000\000\000\000\001e\000\000\000\000\000\000\000\000\000\000\000\000\016E\016E\000\000\000\000\000\000\000\000\000\000\000\000\007\150\000\000\000\000\002\181\000\000\000\000\000\000\016E\000\000\000\000\000\000\016E\001e\016E\016E\001e\001e\007\158\001]\003\166\b\162\001]\000\000\016E\000\000\000\000\016E\000\000\016E\000\000\000\000\000\000\000\000\001e\000\000\000\000\001e\001e\001e\001e\001e\000\000\003\142\003\182\000\000\001e\001e\001]\001e\001e\001e\001]\000\000\000\000\000\000\016E\000\000\003\150\000\000\000\000\001]\001]\000\000\001]\001]\000\000\000\000\000\000\000\000\001]\000\000\000\000\000\000\001]\000\000\b\174\003\158\000\000\003\174\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\016E\016E\000\000\016E\000\000\b\178\000\000\016E\000\000\000\000\001]\000\000\001]\000\000\000\000\000\000\b\186\000\000\000\000\000\000\000\000\016E\000\000\001]\000\000\016E\016E\000\000\000\000\000\000\000\000\000\000\016E\000\000\000\000\000\000\016E\016E\000\000\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]\000\000\001a\003\166\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\003\142\003\182\000\000\001]\001]\001a\001]\001]\001]\001a\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\001a\001a\000\000\001a\001a\000\000\000\000\000\000\000\000\001a\000\000\000\000\000\000\001a\000\000\000\000\003\158\000\000\003\174\001a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\003\198\001.\001a\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\001a\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\001a\000\000\000\000\001a\001a\000\000\001i\003\166\000\000\001i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002:\000\000\000\000\000\000\001a\000\000\002F\001a\001a\001a\001a\001a\000\000\003\142\003\182\002>\001a\001a\001i\001a\001a\001a\001i\000\000\000\000\000\000\000\000\000\000\003\150\002J\002N\001i\001i\000\000\001i\001i\000\000\002R\000\000\000\000\001i\000\000\000\000\000\000\003\190\000\000\000\000\003\158\000\000\003\174\001i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\198\000\000\001i\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\001i\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\002\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\001i\001i\002\"\001q\003\166\000\000\001q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002*\001i\000\000\000\000\001i\001i\001i\001i\001i\000\000\003\142\003\182\000\000\001i\001i\001q\001i\001i\001i\001q\002:\000\000\000\000\000\000\000\000\003\150\006B\000\000\001q\001q\000\000\001q\001q\000\000\000\000\002>\000\000\001q\000\000\006F\006J\003\190\000\000\000\000\003\158\000\000\003\174\001q\000\000\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\000\000\000\000\000\000\000\000\000\000\003\198\000\000\001q\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\000\000\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\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\001q\001q\000\000\004\030\003\166\000\000\001m\000\000\t\161\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\001q\001q\001q\000\000\003\142\003\182\000\000\001q\001q\001m\001q\003\214\001q\001m\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\001m\001m\000\000\001m\001m\000\000\000\000\000\000\000\000\001m\000\000\000\000\000\000\003\190\000\000\000\000\003\158\000\000\003\174\001m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\198\000\000\001m\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\001m\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\001m\001m\002\"\004\030\003\166\000\000\001u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002*\001m\000\000\000\000\001m\001m\001m\001m\001m\000\000\003\142\003\182\000\000\001m\001m\001u\001m\003\214\001m\001u\002:\000\000\000\000\000\000\000\000\003\150\029\138\000\000\001u\001u\000\000\001u\004&\000\000\000\000\002>\000\000\001u\000\000\029\142\006J\003\190\000\000\000\000\003\158\000\000\003\174\001u\000\000\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\000\000\000\000\000\000\000\000\000\000\003\198\000\000\001u\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\000\000\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\146\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\001u\001u\000\000\000\000\003\166\002\150\000\000\000\000\rj\000\000\000\000\rn\000\000\000\000\000\000\000\000\000\000\000\000\001u\000\000\000\000\001u\001u\001u\001u\001u\000\000\002\166\000\000\000\000\001u\001u\000\000\001u\003\214\001u\r\130\r\142\000\000\000\000\014.\014F\0152\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\162\002\214\000\000\014N\014R\r\166\014V\002\222\000\000\000\000\003\130\r\170\r\174\003\222\000\000\r\178\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\182\r\186\003\254\004\006\000\000\000\000\r\190\002-\000\000\000\n\000\000\002-\000\000\000\000\000\000\000\000\000\000\004\014\r\198\000\000\002-\002-\000\000\004\022\0046\000\000\000\000\006\213\000\000\002-\000\000\014v\000\000\004>\000\000\nI\004F\000\000\004N\002-\000\000\000\000\r\202\000\000\000\000\000\000\000\129\nI\r\210\000\129\000\000\000\000\000\000\000\000\ty\000\000\000\000\r\214\nI\000\000\nI\000\000\000\000\003\026\000\000\004V\000\000\002-\nI\000\000\003\142\003\182\000\000\000\000\nI\000\129\000\000\nI\002-\000\129\000\000\nI\024\214\000\000\000\000\003\150\000\000\nI\000\129\000\129\000\000\000\129\000\129\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\000\003\190\000\000\nI\003\158\004^\003\174\000\129\002-\002-\000\000\000\000\004f\000\000\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\002-\002-\002-\002-\003\198\nI\000\129\000\000\nI\002-\002-\000\000\004n\004v\002-\000\000\000\000\000\129\000\000\000\000\000\000\nI\000\000\000\000\000\000\000\000\nI\nI\nI\000\000\nI\nI\000\000\nI\000\000\000\000\000\000\000\000\000\000\000\000\nI\000\000\000\000\nI\003\206\000\000\000\000\000\129\000\129\000\000\000i\003\166\000\000\000i\000\000\000\000\000\000\000\000\nI\000\000\000\000\000\000\000\000\nI\nI\000\129\000\000\000\000\000\129\000\129\000\129\000\129\000\000\000\000\000i\000i\000\000\000\129\000\129\000i\000\129\003\214\000\129\000i\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\000i\000i\000\000\000i\000i\000\000\000\000\000\000\000\000\000i\000\000\000\000\000\000\000i\000\000\023\254\003\158\000\000\003\174\000i\000\000\000\000\000\000\000\000\000\000\000\000\000e\024\002\000\000\000e\000\000\000\000\000\000\000\000\026r\000\000\000\000\000\000\024\006\000\000\024\n\000\000\000\000\000\000\000\000\000i\000\000\000i\024\014\000\000\000e\000e\000\000\000\000\024\018\000e\000\000\024\026\000i\000e\000\000\024\030\000\000\000\000\000\000\003\150\000\000\024\"\000e\000e\000\000\000e\000e\000\000\000\000\000\000\000\000\000e\000\000\026\002\000\000\000e\000\000\024&\003\158\000i\003\174\000e\000i\000i\000\000\000\000\003\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\000\000i\000i\000i\000i\000e\024*\000e\000\000\024.\000i\000i\000\000\000i\000i\000i\000\000\000\000\000e\000\000\025~\000\000\0242\000\000\000\000\000\000\000\000\0246\000\n\024:\000\000\024>\024B\000\000\024F\000\000\000\000\000\000\000\000\000\000\000\000\024J\000\000\000\000\024N\000e\000\000\000\000\000e\000e\000\000\000]\003\166\000\000\000]\000\000\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\024Z\000e\000\000\000\000\000e\000e\000e\000e\000\000\000\000\000]\000]\000\000\000e\000e\000]\000e\000e\000e\000]\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000]\000\000\000]\000]\000\000\000\000\000\000\000\000\000]\000\000\000\000\000\000\000]\000\000\007\157\003\158\000\000\000]\000]\000\000\000\000\000\000\000\000\000\000\000\000\004\030\007\157\000\000\000\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\157\000\000\007\157\000\000\000\000\000\000\000\000\000]\000\000\000]\007\157\000\000\003\142\003\182\000\000\000\000\007\157\000\137\000\000\007\157\000]\000\137\000\000\007\157\000\000\000\000\000\000\003\150\000\000\007\157\000\137\000\137\000\000\000\137\004&\000\000\000\000\000\000\000\000\000\137\028\022\000\000\000\000\003\190\000\000\007\157\003\158\000]\003\174\000\137\000]\000]\000\000\000\000\003\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000]\000]\000]\003\198\007\157\000\137\000\000\007\157\000]\000]\000\000\000]\000]\000]\000\000\000\000\000\137\000\000\000\000\000\000\007\157\000\000\000\000\000\000\000\000\007\157\007\157\007\157\000\000\007\157\007\157\000\000\007\157\000\000\000\000\000\000\000\000\000\000\000\000\007\157\000\000\000\000\007\157\003\206\000\000\000\000\000\137\000\137\000\000\004\030\003\166\000\000\000}\000\000\000\000\000\000\000\000\007\157\000\000\000\000\000\000\000\000\007\157\007\157\000\137\000\000\000\000\000\137\000\137\000\137\000\137\000\000\000\000\003\142\003\182\000\000\000\137\000\137\000}\004.\003\214\000\137\000}\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\000}\000}\000\000\000}\000}\000\000\000\000\000\000\000\000\000}\000\000\000\000\000\000\003\190\000\000\025^\003\158\000\000\003\174\000}\000\000\000\000\000\000\000\000\000\000\000\000\000u\024\002\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\006\000\000\024\n\000\000\000\000\000\000\000\000\003\198\000\000\000}\024\014\000\000\003\142\003\182\000\000\000\000\024\018\000u\000\000\024\026\000}\000u\000\000\024\030\000\000\000\000\000\000\003\150\000\000\024\"\000u\000u\000\000\000u\000u\000\000\000\000\000\000\000\000\000u\000\000\000\000\000\000\000u\000\000\024&\003\158\003\206\003\174\000u\000}\000}\000\000\000\000\003\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\000\000\000\000\000}\000}\000}\000}\003\198\024*\000u\000\000\024.\000}\000}\000\000\000}\003\214\000}\000\000\000\000\000u\000\000\000\000\000\000\0242\000\000\000\000\000\000\000\000\0246\000\n\024:\000\000\024>\024B\000\000\024F\000\000\000\000\000\000\000\000\000\000\000\000\024J\000\000\000\000\024N\000u\000\000\000\000\000u\000u\000\000\000a\003\166\000\000\000a\000\000\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\024Z\000u\000\000\000\000\000u\000u\000u\000u\000\000\000\000\000a\000a\000\000\000u\000u\000a\000u\000u\000u\000a\000\000\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\000\000a\000\000\000\000\000\000\000a\000\000\025v\003\158\000\000\000a\000a\000\000\000\000\000\000\000\000\000\000\000\000\000m\024\002\000\000\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\006\000\000\024\n\000\000\000\000\000\000\000\000\000a\000\000\000a\024\014\000\000\003\142\003\182\000\000\000\000\024\018\000m\000\000\024\026\000a\000m\000\000\024\030\000\000\000\000\000\000\003\150\000\000\024\"\000m\000m\000\000\000m\000m\000\000\000\000\000\000\000\000\000m\000\000\000\000\000\000\000m\000\000\024&\003\158\000a\003\174\000m\000a\000a\000\000\000\000\003\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\000\000\000\000a\000a\000a\000a\000m\024*\000m\000\000\024.\000a\000a\000\000\000a\000a\000a\000\000\000\000\000m\000\000\000\000\000\000\0242\000\000\000\000\000\000\000\000\0246\000\n\024:\000\000\024>\024B\000\000\024F\000\000\000\000\000\000\000\000\000\000\000\000\024J\000\000\000\000\024N\000m\000\000\000\000\000m\000m\000\000\000q\003\166\000\000\000q\000\000\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\024Z\000m\000\000\000\000\000m\000m\000m\000m\000\000\000\000\003\142\003\182\000\000\000m\000m\000q\000m\000m\000m\000q\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\000q\000q\000\000\000q\000q\000\000\000\000\000\000\000\000\000q\000\000\000\000\000\000\000q\000\000\023\254\003\158\000\000\003\174\000q\000\000\000\000\000\000\000\000\000\000\000\000\004\030\024\002\000\000\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\006\000\000\024\n\000\000\000\000\000\000\000\000\003\198\000\000\000q\024\014\000\000\003\142\003\182\000\000\000\000\024\018\000\133\000\000\024\026\000q\000\133\000\000\024\030\000\000\000\000\000\000\003\150\000\000\024\"\000\133\000\133\000\000\000\133\004&\000\000\000\000\000\000\000\000\000\133\000\000\000\000\000\000\003\190\000\000\026.\003\158\000q\003\174\000\133\000q\000q\000\000\000\000\003\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000q\000q\003\198\024*\000\133\000\000\024.\000q\000q\000\000\000q\000q\000q\000\000\000\000\000\133\000\000\000\000\000\000\0242\000\000\000\000\000\000\000\000\0246\000\n\024:\000\000\024>\024B\000\000\024F\000\000\000\000\000\000\000\000\000\000\000\000\024J\000\000\000\000\024N\003\206\000\000\000\000\000\133\000\133\000\000\000y\003\166\000\000\000y\000\000\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\024Z\000\133\000\000\000\000\000\133\000\133\000\133\000\133\000\000\000\000\003\142\003\182\000\000\000\133\000\133\000y\000\133\003\214\000\133\000y\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\000y\000y\000\000\000y\000y\000\000\000\000\000\000\000\000\000y\000\000\000\000\000\000\003\190\000\000\000\000\003\158\000\000\003\174\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\198\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000y\000\000\000R\000V\000f\000\170\t\218\000\174\r\n\000\178\000\186\000\194\001\006\r\014\001\014\001\022\000\000\001&\028\206\001.\r\018\0016\002\014\002\022\002\026\r\022\028\210\003\206\000\000\000\000\000y\000y\000\000\000\000\003\166\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\000y\000\000\000\000\000y\000y\000y\000y\002*\000\000\000\000\000\000\000\000\000y\000y\000\000\000y\000y\000y\000\000\003\213\000\000\000\000\000\000\000j\003\213\000\000\000r\002:\000\130\003\213\000\000\003\213\000\000\006B\000\000\000\138\003\213\003\213\000\000\000\000\000\000\000\000\002>\000\000\000\000\000\000\006F\006J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\rF\rJ\000\000\006N\000\000\000\146\003\213\000\000\000\000\000\000\003\213\000\000\000\000\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\213\003\213\003\209\000\n\000\000\000\000\000\198\003\209\005q\000\206\000\000\000\222\003\209\003\213\003\209\000\162\000\000\000\000\000\230\003\209\003\209\000\000\003\213\006R\000\000\000\000\000\000\003\213\003\213\000\000\000\000\000\000\006\205\rN\000\000\000\000\000\000\003\213\000\000\000\000\000\000\003\213\000\000\006\205\000\000\002\161\000\000\000\000\006\205\000\238\003\209\000\000\003\213\000\000\003\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\213\000\000\000\000\000\000\000\000\003\213\000\000\003\209\003\209\000\000\000\000\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\003\209\000v\000\254\000\000\006\181\000\000\006\181\000\000\000\000\003\209\n\146\006\181\006\181\000\000\003\209\003\209\000\000\000\000\003\213\000\000\000\000\003\213\003\213\006\181\003\209\003\213\000\000\000\000\003\209\000\000\003\213\003\213\000\000\000\000\006\181\003\213\006\181\012=\012=\003\209\000\000\012=\006\181\000\000\006\181\006\181\006\181\000\000\000\000\003\209\006\181\000\000\000\210\006\181\003\209\006\181\000\000\006\181\000\000\000\000\000\000\006\181\006\181\006\181\000\000\000\000\001\250\000\000\000\000\000\000\000\000\000Z\000\000\000\000\006\181\011\138\000\000\012=\000\000\006\181\000Z\000\000\000\000\006\181\000\000\006\181\000\000\003\209\006\181\006\181\003\209\003\209\000\000\006\181\003\209\000\000\000\000\006\181\006\181\003\209\003\209\000\000\006\181\000\000\003\209\000\000\000\000\006\181\012=\000\000\006\181\000\000\006\181\006\181\000\000\000\000\000\000\002B\000\000\000\000\000\000\000\000\000Z\006\181\000\000\006\181\006\181\000\000\006\181\000\000\000\000\006\181\006\181\006\181\006\181\006\181\006\181\000\000\006\181\006\181\006\181\000\000\000\000\000\000\000\000\006\181\000\000\001\233\006\181\006\181\001\233\000\000\000\000\006\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\181\000\000\006\181\006\181\006\181\000\000\000\000\006\181\006\181\012=\001\233\001\233\006\181\006\181\000\000\001\233\000\000\006\181\006\181\001\233\000\000\000\000\000\000\000\000\000\000\001\233\000\000\000\000\001\233\001\233\000\000\001\233\001\233\000\000\000\000\000\000\000\000\001\233\000\000\000\000\000\000\001\233\000\000\000\000\001\233\000\000\001\233\001\233\000\000\000\000\000\000\006\181\000\000\000\000\006\181\006\181\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\001\233\000\000\001\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\233\000\000\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\150\000\000\000\000\002\154\000\000\000\000\002\158\000\000\000\000\000\000\000\000\000\000\000\000\001\233\017*\000\000\001\233\000\000\000\000\000\000\001\233\000\000\002\166\000\000\000\000\002\170\000\000\000\000\000\000\000\000\000\000\002\182\002\186\000\000\002\194\000\000\rf\001\233\000\000\001\233\000\000\002\202\000\000\002\206\000\000\0172\001\233\001\233\000\000\001\233\001\233\001\233\002\210\002\214\000\000\000\000\014f\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\011\186\006\181\002\234\002\238\000\000\000\000\000\000\000\000\000\000\000\000\012\014\006\181\000\000\006\181\000\000\000\000\000\000\000\000\000\000\000\000\002\242\000\000\000\000\006\181\006\181\002\246\006\181\000\000\000\n\006\181\000\000\012V\006\181\000\000\006\181\000\000\006\181\002\254\000\000\000\000\006\181\006\181\000\000\006\181\006\181\006\181\000\000\006\181\003\002\nQ\006\181\000\000\006\181\006\181\006\181\006\181\000\000\006\181\006\181\000\000\000\000\003\006\006\181\006\181\006\181\006\181\000\000\003\018\006\181\006\181\000Z\006\181\nQ\000\000\006\181\006\181\003\"\006\181\006\181\006\181\000Z\006\181\003\026\000\000\006\181\006\181\000\000\000\000\006\181\006\181\000\000\000\000\006\181\012\138\000\000\006\181\012\202\006\181\000Z\000\000\006\181\000Z\006\181\006\181\000\000\000\000\006\181\006\181\006\181\000\000\006\181\000\000\005\206\006\181\000\000\000\000\006\181\000Z\000\000\006\181\006\181\006\181\006\181\006\181\000\000\006\181\006\181\000\000\006\181\006\181\000\000\006\181\006\181\006\181\006\181\006\181\006\181\000\000\006\181\000\000\006\181\012\246\000\000\000\000\006\181\006\181\000Z\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\000\000\006\181\006\181\006\181\006\181\000\000\000\000\000\000\006\181\000\000\000\000\006\181\000\000\006\181\006\181\000\000\000\000\000\000\006\181\006\181\000\000\006\181\000\000\000\000\006\181\000\000\006\181\000\000\000\000\006\181\000\000\006\181\006\181\000\000\006\181\006\181\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\006\181\000\000\006\181\006\181\000\000\006\181\000\000\002\150\006\181\000\000\002\154\006\181\006\181\002\158\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\016J\000\000\006\181\000\000\000\000\000\000\002\166\006\181\000\000\002\170\000\000\000\000\006\181\006\181\000\000\002\182\002\186\000\000\002\194\000\000\017^\000\000\000\000\017f\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\017v\017~\000\000\002\226\002\230\002=\000\000\002\234\002\238\002=\000\000\000\000\000\000\000\000\000\000\017\134\000\000\000\000\002=\002=\000\000\017\142\017\150\000\000\000\000\002\242\000\000\002=\000\000\000\000\002\246\017\158\000\000\000\n\017\166\000\000\017\174\002=\000\000\000\000\000\000\000\000\002\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\182\000\000\002=\003\006\000\000\000\000\000\000\000\000\000\000\003\018\000\000\000\000\nQ\002=\000\000\000\000\000\000\000\000\003\"\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\017\190\000\000\000\000\002=\000\000\000\000\0015\017\198\000\000\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\000\000\002=\000\000\002=\000\000\000\000\000\000\003\142\003\182\000\000\002=\002=\0015\017\206\017\214\002=\0015\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\0015\0015\000\000\0015\0015\000\000\000\000\000\000\000\000\0015\000\000\000\000\000\000\003\190\000\000\000\000\003\158\001\029\003\174\0015\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\000\000\000\000\000\000\000\000\000\000\000\000\001\029\001\029\000\000\000\000\003\198\001\029\0015\000\000\000\000\001\029\000\000\000\000\000\000\000\000\000\000\003\150\000\000\0015\001\029\001\029\000\000\001\029\001\029\000\000\000\000\000\000\000\000\001\029\000\000\000\000\000\000\001\029\000\000\000\000\003\158\000\000\003\174\001\029\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\0015\000\000\000\000\000\000\003\166\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\001\029\000\000\000\000\0015\000\000\0015\000\000\000\000\000\000\000\000\000\000\001\029\0015\0015\000\000\0015\003\214\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\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\001\025\003\166\000\000\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\000\000\001\029\000\000\001\029\000\000\000\000\000\000\001\025\001\025\000\000\001\029\001\029\001\025\001\029\001\029\001\029\001\025\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\001\025\001\025\000\000\001\025\001\025\000\000\000\000\000\000\000\000\001\025\000\000\000\000\000\000\001\025\000\000\000\000\003\158\001\017\003\174\001\025\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\000\000\000\000\000\000\000\000\000\000\000\000\001\017\001\017\000\000\000\000\001\025\001\017\001\025\000\000\000\000\001\017\000\000\000\000\000\000\000\000\000\000\001\017\000\000\001\025\001\017\001\017\000\000\001\017\001\017\000\000\000\000\000\000\000\000\001\017\000\000\000\000\000\000\001\017\000\000\000\000\003\158\000\000\001\017\001\017\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\003\166\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\001\017\000\000\000\000\001\025\000\000\001\025\000\000\000\000\000\000\000\000\000\000\001\017\001\025\001\025\000\000\001\025\001\025\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\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\004\030\003\166\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\017\000\000\001\017\000\000\000\000\000\000\003\142\003\182\000\000\001\017\001\017\001=\001\017\001\017\001\017\001=\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\001=\001=\000\000\001=\004&\000\000\000\000\000\000\000\000\001=\000\000\000\000\000\000\003\190\000\000\000\000\003\158\004\030\003\174\001=\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\000\000\000\000\000\000\000\000\000\000\000\000\003\142\003\182\000\000\000\000\003\198\0011\001=\000\000\000\000\0011\000\000\000\000\000\000\000\000\000\000\003\150\000\000\001=\0011\0011\000\000\0011\0011\000\000\000\000\000\000\000\000\0011\000\000\000\000\000\000\003\190\000\000\000\000\003\158\000\000\003\174\0011\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\001=\000\000\000\000\000\000\003\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\198\000\000\0011\000\000\000\000\001=\000\000\001=\000\000\000\000\000\000\000\000\000\000\0011\001=\001=\000\000\004.\003\214\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\003\206\000\000\000\000\0011\000\000\000\000\001)\003\166\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\0011\000\000\0011\000\000\000\000\000\000\003\142\003\182\000\000\0011\0011\001)\0011\003\214\0011\001)\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\001)\001)\000\000\001)\001)\000\000\000\000\000\000\000\000\001)\000\000\000\000\000\000\001)\000\000\000\000\003\158\001\021\003\174\001)\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\000\000\000\000\000\000\000\000\000\000\000\000\001\021\001\021\000\000\000\000\003\198\001\021\001)\000\000\000\000\001\021\000\000\000\000\000\000\000\000\000\000\001\021\000\000\001)\001\021\001\021\000\000\001\021\001\021\000\000\000\000\000\000\000\000\001\021\000\000\000\000\000\000\001\021\000\000\000\000\003\158\000\000\001\021\001\021\000\000\000\000\000\000\000\000\000\000\000\000\001)\000\000\000\000\001)\000\000\000\000\000\000\003\166\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\001\021\000\000\000\000\001)\000\000\001)\000\000\000\000\000\000\000\000\000\000\001\021\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\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\001!\003\166\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\021\000\000\001\021\000\000\000\000\000\000\003\142\003\182\000\000\001\021\001\021\001!\001\021\001\021\001\021\001!\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\001!\001!\000\000\001!\001!\000\000\000\000\000\000\000\000\001!\000\000\000\000\000\000\001!\000\000\000\000\003\158\001%\003\174\001!\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\142\003\182\000\000\000\000\001!\001%\001!\000\000\000\000\001%\000\000\000\000\000\000\000\000\000\000\003\150\000\000\001!\001%\001%\000\000\001%\001%\000\000\000\000\000\000\000\000\001%\000\000\000\000\000\000\001%\000\000\000\000\003\158\000\000\003\174\001%\000\000\000\000\000\000\000\000\000\000\000\000\001!\000\000\000\000\001!\000\000\000\000\000\000\003\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\198\000\000\001%\000\000\000\000\001!\000\000\001!\000\000\000\000\000\000\000\000\000\000\001%\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\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\004\030\003\166\000\000\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\000\000\000\000\001%\000\000\001%\000\000\000\000\000\000\003\142\003\182\000\000\001%\001%\0019\001%\001%\001%\0019\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\0019\0019\000\000\0019\004&\000\000\000\000\000\000\000\000\0019\000\000\000\000\000\000\003\190\000\000\000\000\003\158\001-\003\174\0019\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\003\142\003\182\000\000\000\000\003\198\001-\0019\000\000\000\000\001-\000\000\000\000\000\000\000\000\000\000\003\150\000\000\0019\001-\001-\000\000\001-\001-\000\000\000\000\000\000\000\000\001-\000\000\000\000\000\000\003\190\000\000\000\000\003\158\000\000\003\174\001-\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\0019\000\000\000\000\000\000\003\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\198\000\000\001-\000\000\000\000\0019\000\000\0019\000\000\000\000\000\000\000\000\000\000\001-\0019\0019\000\000\0019\003\214\0019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\150\000\000\000\000\002\154\000\000\000\000\002\158\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\001-\nQ\000\000\000\000\003\166\000\000\000\000\002\166\000\000\000\000\002\170\000\000\000\000\000\000\000\000\000\000\002\182\002\186\000\000\002\194\000\000\001-\000\000\001-\000\000\000\000\002\202\000\000\002\206\000\000\001-\001-\000\000\001-\001-\001-\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\000\000\002\150\002\234\002\238\002\154\000\000\000\000\002\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021R\000\000\000\000\002\242\000\000\000\000\002\166\000\000\002\246\002\170\000\000\000\n\000\000\000\000\000\000\002\182\002\186\000\000\002\194\000\000\002\254\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\003\002\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\003\006\000\000\000\000\002\226\002\230\000\000\003\018\002\234\002\238\000\000\000\000\000\000\023\254\000\000\000\000\003\"\000\000\000\000\000\000\000\000\000\000\003\026\000\000\000\000\024\002\002\242\000\000\000\000\000\000\000\000\002\246\000\000\000\000\000\n\000\000\024\006\000\000\024\n\012\145\012\145\000\000\000\000\002\254\000\000\000\000\024\014\000\000\000\000\000\000\000\000\000\000\024\018\000\000\003\002\024\026\000\000\000\000\000\000\024\030\000\000\007\242\000\000\000\000\007\250\024\"\000\000\003\006\000\000\000\000\000\000\000\000\000\000\003\018\000\000\000\000\000\000\000\000\023\254\012\145\000\000\024&\003\"\000\000\000\000\b\n\b\018\000\000\003\026\000\000\024\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\026\024\006\000\000\024\n\0025\000\000\b\"\b*\012e\000\000\012\145\024\014\024*\000\000\000\000\024.\b2\024\018\000\000\b:\024\026\bB\000\000\000\000\024\030\000\000\000\000\000\000\0242\000\000\024\"\000\000\000\000\0246\000\n\024:\000\000\024>\024B\000\000\024F\026\238\000\000\000\000\012e\000\000\024&\024J\bJ\006\181\024N\000\000\000\000\000\000\006\181\000\000\001\026\000\000\000\000\006\181\000\000\006\181\000\000\000\000\000\000\024R\006\181\006\181\000\000\000\000\024V\024Z\012\145\000\000\000\000\012e\000\000\024*\000\000\000\000\024.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bR\000\000\000\000\0025\000\000\0242\000\000\bZ\000\000\006\181\0246\000\n\024:\006\181\024>\024B\000\000\024F\000\000\000\000\000\000\0025\000\000\000\000\024J\0025\0025\024N\006\181\006\181\000\000\000\000\000\000\006\014\000\000\000\000\bb\bj\000Z\000\000\000\000\006\181\024R\000\000\000\000\000\000\000\000\024V\024Z\012e\006\181\000\000\000\000\000\000\000\000\006\181\006\181\002\150\000\000\000\000\002\154\000\000\000\000\002\162\000\000\006\181\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\166\006\181\000\000\002\170\000\000\000\000\000\000\000\000\000\000\002\182\t^\006\181\002\194\000\000\000\000\000\000\006\181\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\000\000\000\000\002\234\002\238\000\000\000\000\006\181\000\000\000\000\006\181\006\181\002\150\000\000\006\181\002\154\000\000\000\000\002\162\006\181\006\181\002\242\000\000\000\000\006\181\000\000\003\n\000\000\000\000\000\n\000\000\000\000\000\000\000\000\002\166\000\000\000\000\002\170\002\254\000\000\000\000\000\000\000\000\002\182\tN\000\000\002\194\000\000\000\000\003\002\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\003\014\000\000\002\210\002\214\000\000\000\000\003\018\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\003\022\002\150\002\234\002\238\002\154\000\000\003\026\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\000\000\000\000\002\166\000\000\003\n\002\170\000\000\000\n\000\000\000\000\000\000\002\182\t6\000\000\002\194\000\000\002\254\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\003\002\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\003\014\000\000\000\000\002\226\002\230\000\000\003\018\002\234\002\238\000\000\000\000\000\000\000\000\000\000\000\000\003\022\002\150\000\000\000\000\002\154\000\000\003\026\002\162\000\000\000\000\002\242\000\000\000\000\000\000\000\000\003\n\000\000\000\000\000\n\000\000\000\000\000\000\000\000\002\166\000\000\000\000\002\170\002\254\000\000\000\000\000\000\000\000\002\182\002\250\000\000\002\194\000\000\000\000\003\002\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\003\014\000\000\002\210\002\214\000\000\000\000\003\018\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\003\022\000\000\002\234\002\238\006\181\000\000\003\026\000\000\000\000\006\181\000\000\004\254\006\181\000\000\006\181\000\000\006\181\006\181\000\000\005R\002\242\006\181\006\181\000\000\006\181\003\n\006\181\000\000\000\n\006\181\006\181\006\181\000\000\005\154\000\000\000\000\006\181\002\254\006\181\000\000\000\000\000\000\006\181\006\181\006\181\000\000\000\000\006\181\003\002\000\000\000\000\000\000\006\181\000\000\006\181\000\000\006\181\000\000\000\000\006\181\006\181\003\014\000\000\000\000\006\181\000\000\000\000\003\018\000\000\000\000\000\000\006\181\006\181\000\000\006\181\000\000\003\022\000\000\006\181\006\181\006\181\000Z\003\026\000\000\006\181\000\000\000\000\000\000\000\000\000Z\006\181\000\000\006\181\006\181\006\181\000\000\000\000\000\000\006\181\006\181\000\000\006\181\000\000\000Z\000\000\000\000\006\181\006\181\006\181\006\181\006\181\000\000\006\181\000\000\007\002\006\181\006\181\000\000\000\000\000Z\006\181\006\181\006\181\006\181\000\000\000\000\000\000\000\000\000\000\000\000\006\181\006\181\000\000\006\181\006\181\000\000\006\181\006\181\006\181\000\000\000\000\006\181\000\000\000\000\000\000\006\181\006\181\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\181\000\000\000\000\006\181\006\181\006\181\000\000\006\181\006\181\000\000\000\000\006\181\006\181\006\181\000\000\006\181\000\000\006\181\000\000\000\000\006\181\006\181\006\181\000\000\000\000\006\181\006\181\t\002\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\004\193\006\181\006\181\004\193\006\181\006\181\004\193\006\181\006\181\000\000\000\000\000\000\006\181\006\181\006\181\000\000\000\000\000\000\006\181\006\181\006\181\000\000\004\193\000\000\000\000\004\193\000\000\000\000\000\000\000\000\000\000\004\193\004\193\000\000\004\193\000\000\000\000\000\000\000\000\000\000\000\000\004\193\000\000\004\193\000\000\000\000\000\000\000\000\000\000\000\000\006\181\000\000\004\193\004\193\006\181\000\000\000\000\004\193\004\193\004\193\000\000\000\000\000\000\004\193\004\193\000\000\000\000\004\193\004\193\006\181\006\181\000\000\000\000\000\000\t\134\000\000\000\000\000\000\000\000\000Z\000\000\000\000\006\181\000\000\000\000\004\193\000\000\000\000\000\000\000\000\004\193\006\181\000\000\004\193\000\000\000\000\006\181\006\181\000\000\000\000\000\000\000\000\004\193\000\000\000\000\000\000\006\181\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\004\193\000\000\000\000\000\000\000\000\006\181\004\193\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\004\193\000\000\000\000\000\000\000\000\002\150\004\193\000\000\002\154\000\000\000\000\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\166\006\181\000\000\002\170\006\181\006\181\000\000\000\000\006\181\002\182\rr\000\000\002\194\006\181\006\181\000\000\000\000\000\000\006\181\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\000\000\002\150\002\234\002\238\002\154\000\000\000\000\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\000\000\000\000\002\166\000\000\003\n\002\170\000\000\000\n\000\000\000\000\000\000\002\182\0166\000\000\002\194\000\000\002\254\000\000\026\218\000\000\026\226\002\202\000\000\002\206\000\000\000\000\000\000\003\002\000\000\026\234\000\000\000\000\002\210\002\214\027\n\000\000\000\000\002\218\001\150\002\222\003\014\024\002\000\000\002\226\002\230\000\000\003\018\002\234\002\238\000\000\000\000\000\000\024\006\000\000\024\n\003\022\000\000\000\000\000\000\000\000\000\000\003\026\024\014\000\000\000\000\002\242\000\000\000\000\024\018\000\000\003\n\024\026\000\000\000\n\000\000\024\030\000\000\000\000\000\000\000\000\000\000\024\"\002\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\002\000\000\000\000\000\000\024&\027\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\014\000\000\000\000\000\000\000\000\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\022\000\000\000\000\000\000\000\000\000\000\003\026\024*\000\000\000\000\024.\000\000\000\000\000\000\000\000\002\150\000\000\000\000\002\174\000\000\000\000\002\178\000\000\0242\000\000\000\000\000\000\000\000\0246\000\n\024:\000\000\024>\024B\000\000\024F\000\000\002\166\000\000\000\000\002\170\000\000\024J\000\000\000\000\024N\002\198\007:\000\000\002\194\000\000\000\000\023\254\000\000\000\000\000\000\002\202\000\000\002\206\000\000\024R\000\000\000\000\000\000\024\002\024V\024Z\007N\002\214\000\000\000\000\000\000\007R\001\150\002\222\024\006\000\000\024\n\007V\007Z\000\000\000\000\007^\002\238\000\000\024\014\000\000\000\000\000\000\000\000\000\000\024\018\000\000\000\000\024\026\000\000\000\000\000\000\024\030\000\000\007b\000\000\000\000\000\000\024\"\007f\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\025z\000\000\007n\000\000\023\254\024&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\161\000\000\007r\024\006\000\000\024\n\000\000\000\000\007z\000\000\012e\000\000\024*\024\014\000\000\024.\000\000\007~\000\000\024\018\000\000\000\000\024\026\003\026\000\161\000\161\024\030\000\000\0242\000\000\000\000\000\000\024\"\0246\000\n\024:\000\000\024>\024B\003\150\024F\000\000\000\000\026J\000\000\000\161\000\161\024J\024&\000\000\024N\000\000\000\000\000\000\000\000\000\161\000\000\000\000\003\158\000\000\003\174\000\000\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\024Z\012e\023\254\000\000\000\000\000\000\012e\000\000\024*\000\000\000\000\024.\000\000\000\000\024\002\000\000\000\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0242\024\006\000\000\024\n\000\000\0246\000\n\024:\000\000\024>\024B\024\014\024F\000\000\000\000\000\000\000\000\024\018\000\000\024J\024\026\000\000\024N\000\000\024\030\000\000\000\000\000\000\000\000\000\000\024\"\000\000\000\161\000\000\000\000\000\000\000\000\024R\000\000\003\166\000\000\026\178\024V\024Z\012e\000\000\024&\000\000\000\000\000\000\000\000\000\000\000\000\000\161\000\000\000\000\000\000\000\000\000\000\000\000\000\161\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\161\000\161\000\000\000\000\000\000\000\000\000\000\012e\000\000\024*\000\000\000\000\024.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\153\000\153\000\000\000\000\0242\000\000\000\000\000\000\000\000\0246\000\n\024:\000\000\024>\024B\000\153\024F\000\000\000\000\000\000\000\000\000\153\000\153\024J\000\000\000\000\024N\000\000\000\000\000\000\000\000\000\153\000\000\000\000\003\158\000\000\000\153\000\000\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\024Z\012e\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\153\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\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\002\"\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\002*\000\153\000\000\000\000\000\000\000\000\000\000\000\000\003\166\002\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002:\000\000\000\153\000\000\002*\000\000\029\138\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000\000\002>\000\000\000\153\000\153\029\142\006J\000\000\000\000\000\000\002:\000\000\000\000\000\000\000\000\000\000\029\138\000\000\000\000\000\000\000\000\000\000\000\000\006N\000\000\002>\000\000\000\000\000\000\029\142\006J\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&\006N\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\029\146\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\005\001\000\000\029\146\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\029\138\000\000\000\000\000\000\t\133\000\000\000\000\000\000\000\000\002>\000\000\000\000\000\000\029\142\006J\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&\006N\001.\000\000\0016\002\014\002\022\002\026\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\002\"\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\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\029\146\002\"\000\000\000\000\000\000\000\000\000\000\002\150\000\000\000\000\rj\000\000\002:\rn\000\000\000\000\002*\000\000\006Z\000\000\000\000\000\000\002\145\000\000\000\000\000\000\000\000\002>\000\000\002\166\000\000\006F\006J\000\000\000\000\000\000\002:\000\000\r\130\r\142\000\000\000\000\029\154\000\000\000\000\000\000\000\000\000\000\002\202\006N\002\206\002>\000\000\000\000\000\000\029\142\006J\000\000\000\000\r\162\002\214\000\000\000\000\000\000\r\166\001\150\002\222\000\000\000\000\000\000\r\170\r\174\000\000\006N\r\178\000\000\000\000\000\000\000\000\002\150\000\000\000\000\016.\000\000\000\000\0162\000\000\000\000\000\000\000\000\000\000\r\182\r\186\000\000\000\000\000\000\000\000\r\190\000\000\000\000\000\n\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\016\158\016\138\000\000\000\000\000\000\000\000\t\177\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\162\002\214\r\202\000\000\000\000\016\166\001\150\002\222\r\210\t\149\000\000\016\170\016\174\000\000\t\t\016\178\000\000\r\214\000\000\000\000\000\000\000\000\000\000\003\026\000\000\000\000\t\t\000\000\000\000\000\000\000\000\000\000\r\182\016\182\000\000\000\000\000\000\t\t\016\186\t\t\000\000\000\n\000\000\000\000\000\000\000\000\000\000\t\t\000\000\000\000\016\194\000\000\000\000\t\t\000\000\000\000\t\t\000\000\000\000\000\000\t\t\000\000\000\000\026F\000\000\000\000\t\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\198\024\002\000\000\000\000\000\000\000\000\016\206\000\000\t\t\027\018\000\000\000\000\024\006\000\000\024\n\016\210\000\000\000\000\000\000\000\000\000\000\003\026\024\014\000\000\000\000\000\000\000\000\000\000\024\018\000\000\000\000\024\026\000\000\026\174\000\000\024\030\000\000\000\000\000\000\t\t\000\000\024\"\t\t\000\000\000\000\024\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\t\024\006\024&\024\n\000\000\t\t\t\t\t\t\000\000\t\t\t\t\024\014\t\t\000\000\000\000\000\000\000\000\024\018\000\000\t\t\024\026\000\000\t\t\000\000\024\030\000\000\000\000\023\254\000\000\000\000\024\"\000\000\000\000\024*\000\000\000\000\024.\t\t\000\000\024\002\000\000\000\000\t\t\t\t\000\000\000\000\024&\000\000\000\000\0242\024\006\000\000\024\n\000\000\0246\000\n\024:\000\000\024>\024B\024\014\024F\000\000\000\000\000\000\000\000\024\018\000\000\024J\024\026\000\000\024N\000\000\024\030\000\000\000\000\000\000\024*\000\000\024\"\024.\000\000\000\000\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\024Z\0242\000\000\027\226\000\000\000\000\0246\000\n\024:\000\000\024>\024B\000\000\024F\000\000\000\000\000\000\000\000\000\000\000\000\024J\000\000\000\000\024N\000\000\000\000\000\000\000\000\023\254\000\000\000\000\000\000\000\000\000\000\024*\000\000\000\000\024.\024R\016)\024\002\000\000\000\000\024V\024Z\000\000\000\000\000\000\000\000\000\000\0242\024\006\000\000\024\n\000\000\0246\000\n\024:\000\000\024>\024B\024\014\024F\016)\016)\000\000\000\000\000\000\000\000\024J\024\026\r\238\024N\000\000\024\030\000\000\000\000\000\000\016)\000\000\024\"\000\000\000\000\000\000\016)\016)\000\000\024R\r\246\000\000\000\000\014\002\024V\024Z\016)\000\000\024&\016)\000\000\016)\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.\000\000\0016\002\014\002\022\002\026\000\000\000\000\016)\024*\000\000\000\000\024.\000\000\000\000\000\249\000\000\000\000\000\249\000\000\000\000\002\"\000\000\000\000\000\000\0242\000\000\000\000\014\014\000\000\0246\028\014\024:\000\000\024>\024B\002*\024F\000\000\003\142\003\182\000\000\000\000\000\000\024J\000\000\000\000\024N\016)\000\000\000\000\000\000\000\000\014\018\003\150\016)\002:\000\000\000\249\000\000\000\249\000\249\024R\000\000\014\026\000\000\000\000\024V\024Z\016)\003\190\002>\000\000\003\158\000\225\003\174\016)\000\225\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\011\006\000\000\000\000\000\000\000\000\000\225\000\225\000\000\000\000\003\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\000\000\000\225\000\000\000\225\000\225\000\000\000\000\000\000\000\000\000\000\000\000\000\221\000\000\000\225\000\221\000\000\003\158\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\000\249\000\000\000\000\000\000\003\166\000\000\000\221\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\225\000\000\000\249\000\000\000\000\003\150\000\249\000\249\000\000\000\221\000\000\000\221\000\221\000\000\000\000\000\000\000\000\000\249\003\214\000\000\000\000\000\221\000\000\000\000\003\158\000\213\003\174\000\000\000\213\000\000\000\000\000\000\000\000\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\003\166\000\000\000\213\000\213\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\225\000\000\000\000\000\213\000\225\000\225\000\000\000\213\000\000\000\213\000\213\000\000\000\000\000\000\000\000\000\225\000\225\004\030\000\000\000\213\001\001\000\000\003\158\000\000\000\213\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\003\166\000\000\003\142\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\221\000\000\000\000\003\150\000\221\000\221\000\000\001\001\000\000\001\001\004&\000\000\000\000\000\000\000\000\000\221\000\221\000\000\000\000\003\190\000\000\000\000\003\158\004\030\003\174\000\000\000\245\000\000\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\003\166\000\000\003\142\003\182\000\000\000\000\003\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\000\003\150\000\213\000\213\000\000\000\245\000\000\000\245\000\245\000\000\000\000\000\000\000\000\000\213\000\213\000\237\000\000\003\190\000\237\000\000\003\158\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\001\001\000\000\000\000\000\000\003\166\000\000\003\142\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\198\000\000\001\001\000\000\000\000\003\150\001\001\001\001\000\000\000\237\000\000\000\237\000\237\000\000\000\000\000\000\000\000\004.\003\214\000\000\000\000\000\237\000\000\000\000\003\158\000\217\003\174\000\000\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\000\245\000\000\000\000\000\000\003\166\000\000\000\217\000\217\000\000\000\000\003\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\245\000\000\000\000\000\217\000\245\000\245\000\000\000\217\000\000\000\217\000\217\000\000\000\000\000\000\000\000\000\245\003\214\000\229\000\000\000\217\000\229\000\000\003\158\000\000\000\217\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\003\166\000\000\003\142\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\237\000\000\000\000\003\150\000\237\000\237\000\000\000\229\000\000\000\229\000\229\000\000\000\000\000\000\000\000\000\237\000\237\000\000\000\000\000\229\000\000\000\000\003\158\000\233\003\174\000\000\000\233\000\000\000\000\000\000\000\000\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\003\166\000\000\003\142\003\182\000\000\000\000\000\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\003\150\000\217\000\217\000\000\000\233\000\000\000\233\000\233\000\000\000\000\000\000\000\000\000\217\000\217\004\030\000\000\000\233\000\253\000\000\003\158\000\000\003\174\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\003\166\000\000\003\142\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\198\000\000\000\229\000\000\000\000\003\150\000\229\000\229\000\000\000\253\000\000\000\253\004&\000\000\000\000\000\000\000\000\000\229\000\229\000\000\000\000\003\190\000\000\000\000\003\158\000\241\003\174\000\000\000\241\000\000\000\000\000\000\000\000\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\003\166\000\000\003\142\003\182\000\000\000\000\003\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\233\000\000\000\000\003\150\000\233\000\233\000\000\000\241\000\000\000\241\000\241\000\000\000\000\000\000\000\000\000\233\000\233\004\030\000\000\003\190\000\000\004\030\003\158\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\000\253\000\000\000\000\000\000\003\166\000\000\003\142\003\182\000\000\000\000\003\142\003\182\000\000\000\000\000\000\000\000\003\198\000\000\000\253\000\000\000\000\003\150\000\253\000\253\000\000\003\150\000\000\000\197\004&\000\000\000\000\000\185\000\185\000\253\003\214\000\000\000\000\003\190\000\000\000\000\003\158\003\190\003\174\000\000\003\158\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\000\241\000\000\000\000\000\000\003\166\000\000\000\000\000\177\000\000\000\000\003\198\000\000\000\000\000\000\003\198\000\000\000\000\000\000\000\241\000\000\000\000\000\000\000\241\000\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\142\003\182\000\241\000\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\000\000\003\206\000\000\000\177\000\177\003\206\000\000\000\157\003\166\000\000\000\000\000\169\003\166\000\177\000\000\000\000\003\158\000\000\003\174\000\000\000\000\000\000\000\197\000\000\000\000\000\000\000\185\000\000\000\000\000\197\000\000\000\157\000\157\000\185\000\000\003\142\003\182\004.\003\214\000\000\000\000\000\185\003\214\000\000\000\000\003\198\000\157\000\000\000\000\000\000\003\150\000\000\000\157\000\157\000\000\000\000\000\169\000\169\000\000\000\000\000\000\000\000\000\157\000\000\000\000\003\158\000\169\000\157\000\000\003\158\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\177\000\000\000\000\000\000\000\000\000\000\000\173\003\166\000\000\000\157\000\000\000\000\000\000\000\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\177\000\000\000\000\000\000\000\000\000\000\000\000\000\177\000\000\003\142\003\182\000\000\000\000\000\000\000\000\000\177\000\177\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\150\000\000\000\000\000\000\000\157\000\000\000\173\000\173\000\169\000\000\004\030\003\166\000\000\000\000\000\181\003\166\000\173\000\000\000\000\003\158\000\000\003\174\000\000\000\000\000\000\000\157\000\000\000\000\000\000\000\169\000\000\000\000\000\157\000\000\003\142\003\182\000\169\000\000\003\142\003\182\000\157\000\157\000\000\000\000\000\169\000\169\000\000\000\000\003\198\003\150\000\000\000\000\000\000\003\150\000\000\000\193\004&\000\000\000\000\000\181\000\181\000\000\000\000\000\000\000\000\003\190\000\000\000\000\003\158\003\190\003\174\000\000\003\158\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\173\000\000\000\000\000\000\000\000\000\000\000\000\003\166\000\000\003\198\000\000\000\000\000\000\003\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\173\000\000\000\000\000\000\000\000\000\000\000\000\000\173\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\003\206\000\000\000\000\000\000\003\206\000\000\000\000\003\166\000\000\000\000\000\000\003\166\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\181\000\000\000\000\000\193\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\193\003\214\000\000\000\000\000\181\000\181")) + ((16, "\002f\000\161\000\000\000\000\020<\000\161\000\000\000\000\001\202\000\000\000\000\000\000\001A\000\000\000\000\000\000\002f\000\000\000\005/Z\000\000\021d\021\248\000\000\000\000E\226\021d\000\000\021d\021d\000\000\000\000\021d\000\000\021d\000\000\000\179\000\133\021d\000\000\021d\000\000\000\000\000\000\021d\000\000\021d\000\000Fl\021d\000\000[\156\021d\000\000\000\000\021d\000\000\021d\000\000\000\135\000<\021d\000\000\021d\000\000\021d\000\000\021d\000\000[\200\021d\000\000\000\000\021d\000\000\021d\000\000\000m\000\017\000\017\000\000\000\000\000\000\000~\000\000\000\000\0016\000\017\000\000\0016\000\000\000\000\000\017\000\138\001V\000\017\0016\000\000\000\005\000c\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\027\000\017\000\000\001\132\004\202\000\017\000\000\002@\001b\000\000\000\000\000\000\001\138\021d\000\000[\156\000\017\001\174\021d\000\000\000\000\021d\000\000\000\000\021d\000\000\021d\000\000\002\006\002J\021d\000\000/Z\\.2h\000\000\000\000\000\000\000\0000\130\002\2122h\000\017\000\0002h\000\000\000\000\002\028\021d\000\0002h\000\000\000\017\002.I.\000\000\000\000KfK\234\000\000]\006\000\000L\130G\178\029f\029f]\006G\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000M\006G\178\000\000\000\000M\006M\006M\006\000\000M\006\000m\000\000\000\000G\178M\006\000\000\000\000#Z\000\017\000\000\023v\029fG\178\000\000$\166G\178-\174G\178-\204G\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000;\002G\178\000\000;\138G\178/\148G\1780\158G\178\000\000G\178\000\000G\1781\168G\1782\178G\1783\188G\1784\198G\1785\208G\1786\218G\178\002\134G\178\000\000\000\000\000\000\000\000\000\000G\178<\148G\178=\028G\178>&G\178>\174G\1787\228G\1788\238G\1789\248G\178?\184G\178@@G\178\000\000G\178AJG\178A\210G\178B\220G\178\000\000G\178CdG\178DnG\178\000\000\000\000G\178\000\000\002\246\000\000\000\000\000\017\000\000\000\000\000\000\003h\000\000\003\148\000\000\0001G\178\000\000\0001\000\000\000\000\002\176/Z\000\000\023\166\021d\000\000\000.\021d\000\000[\216\021d\000\000\000\000\021d\000\000\021d\000\000\003\206\004\n\021d\000\000\021d\000\000\021d\000\000\021d\000\000\003^\021d\000\000\\\142\021d\000\000\000\000\021d\000\000\021d\000\000\0048\004z\021d\000\000\021d\000\000\021d\000\000\021d\000\000\\\216\021d\000\000\000\000\021d\000\000\021d\000\000\000c\000\017\004B\021d\000\000\\\216\000\017\004\208\021d\000\000\000\000\021d\000\000\021d\000\000\021d\000\000\005\030\005T\021d\000\000]\2202h\005R\021d\000\0005\1343\160\000\000\000.\006\030\000\017\005\140\006\\6\1906\190\000\000\000\000\000\000\001\\c\2466\190\002Z8\210\000\000\000\000\000\000\003\\\006\192\006T\007*6\190\000\000\000\000\006\142\000\000\006\156\007l6\190\006\186\000\000\001R\000\000\002.\000\000\000\000\003\254El\000\000\000\000\000\000\006\224\007\208\000\000\007\224\000\000\023\166\001b2h\006\246\021d\000\000]\2322h\007\024\021d\000\000\000\000\000\000\000\017\b\016\000\000\000\000\000\000\002\176\000\000\000\000\029f\007&\000\000\007,]\006\000\000\000\000\000\000\000\000\000\000\000\000M\006\000\000\000\000M\006\000\000\000\000M\006\000\000\000m\000\000]\006\000\000\000\000\030\030\000\017\000\000\023v\023v\000\000\004p\027\234\023v\031TG\178\000\000G\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000h\012G\178hnG\178\007^G\178\000\000G\178h\210G\178ixG\178i\218G\178j>G\178j\228G\178kFG\178\000\000G\178k\170G\178lPG\178l\178G\178\000\000G\178m\022G\178m\188\004\236\024\242\000\000\000\000\005\014\026n\000\000\000\000\000\000\000\000\0076\000\000G\178\0076\000\000\000\000\000\017\000\000\000\000\000\000\000\000\007<\000\000\000\000\000\000\000\000\000\000\000\000\007>\000\000\000\000\000\000\007>\000\000\001(M\178\b\bG\178\007\200\000\000\000\000]\006\001(\000\000\007N\000\000\007RG\178\000\000\029f\007T\000\000\000\000\b8\000\000\029f\007d\000\000\000\000\029f\007h\000\000\000\000\007f\000\000\000\000\bb\000\000^ 2h\007r\021d\000\000\000\000\007\252\000\000\007|\021d\000\000\000\000\000\204/Z\000\000/Z\000\000\007\146\000\000\000\204\000\000\019d'\174\021\174\000\000\004\150\021\174\000\000\021\174\021\174\000\000\000\000\021\174\000\000\021\174\000\000\007\234\b\024\021\174\000\000\021\174\000\000\021\174\000\000\021\174\000\000\005\194\021\174\000\000\021\216\021\174\000\000\000\000\021\174\000\000\021\174\000\000\007\244\b\"\021\174\000\000\021\174\000\000\021\174\000\000\021\174\000\000\021\248\021\174\000\000\000\000\021\174\000\000\021\174\000\000\001\192\000\017\007\202\021\174\000\000\021\216\000\017\007\212\021\174\000\000\000\000\021\174\000\000\021\174\000\000\021\174\000\000\b\n\bH\021\174\000\000/Z\000\000\007\250\000\000\002\242/Z\000\000\000\000\002\242\000\000\000\000\021\2482h\007\246\021\174\000\000\000\000\000\000\001\144\000\000\000\000\001\214\001\144\000\000\000\000\000\000\b\240\000\000\004\2022h\b\002\021\174\000\000\022\0182h\b\004\021\174\000\000\000\000\025\"\021\174\000\000\b\190\021\174\000\000G\018\021\174\000\000\000\000\021\174\000\000\021\174\000\000\b6\bf\021\174\000\000\021\174\000\000\021\174\000\000\021\174\000\000\t6\021\174\000\000Nn\021\174\000\000\000\000\021\174\000\000\021\174\000\000\b<\bn\021\174\000\000\021\174\000\000\021\174\000\000\021\174\000\000N\128\021\174\000\000\000\000\021\174\000\000\021\174\000\000\002 \000\017\b\022\021\174\000\000G\018\000\017\b\024\021\174\000\000\000\000\021\174\000\000\021\174\000\000\021\174\000\000\bN\b\132\021\174\000\000Nn2h\b,\021\174\000\000\000\000\007Z2h\b.\021\174\000\000N\1282h\b2\021\174\000\000\000\000\000\000\000\000\000\000\000\000\t\020G\178\bH \204\b\200\000\000\t G\178\bT\t\"El\000\000\000\000\000\000/Z\000\017\000\000\000\174G\178+\026\000\000OJ\029f\b^\000\000\000\000G\178\bb\000\000\029f\bn\000\000\bpc\208\000\000\000\000\000\000\000\000\000\000\000\000\000\000M\006\000\000\000\000M\006\000\000\000\000M\006\000\000\000m\000\000c\208\000\000\000\000\028z\000\017\000\000\023v\br\000\000G\178\bv\000\000\000\000\000\017\000\000\000\000\000\000\000\000\000\000\000\000G\178\0048G\178\bx\000\000\000\000+\026+\026\000\000\000\000(\154\001\012\t@G\178\000\000\b\254\000\000\000\000\000\017\000\000%\194\000\000\b\172+\026\b\182+\026\000\000\000\027\000\000\000\000`\190G\178m\222G\178m\244G\178nJG\178n\230G\178o>G\178o\162G\178o\170G\178\000\000G\178p\020G\178p\128G\178p\180G\178\000\000G\178q\022G\178q8\000\000\002\162,\004\000\000\004\224.\246+\026\000\000\005\004,\238\000\000\000\000\000\000\b\130\000\000\000\000\b\132\000\000\t~\000\000\000\017\000\000\000\174\t\128\000\000\003X\tX\000\017\b\160\tr6\190\b\166\000\031\000\000G\178\t\152\000\000\000\000\000\000\tz6\190\b\178\t\162\000\000\007h\001`G\178\t\164\000\000\t\166\000\000\023\166\000\017\002,G\178\t\168\000\000\t\170\000\000\000\017\002\212G\178\t\172\000\000\t\176\000\000\000\012\b\238\b\242\000\000O\206\029f\b\200\000\000\000\000I\178\000\000\t\184\000\000\002\250\t\144G\178\tN\000\000\t\148G\178\tZ\000\000\005\246\000\000\b\242\b\242\029f\b\222\000\000\b\226d`d`\000\000\000\000\000\000\000\000\000\000\000\000M\006\000\000\000\000M\006\000\000\000\000M\006\000\000\000m\000\000d`\000\000\000\000*\024\000\017\000\000\023v\b\230\000\000G\178\b\228\000\000\000\000\000\017\000\000\000\000\000\000\000\000\000\000HlG\178\000\000G\178\000\000\b\236\000\000\0001\000\000\000\000\000\000\000\000\000\000P\136G\178P\254G\178\t\028G\178\000\000G\178R\bG\178R~G\178S\136G\178S\254G\178U\bG\178U~G\178\000\000G\178V\136G\178V\254G\178X\bG\178\000\000G\178X~G\178Y\136\000\000\002\250\000\000\002\250\000\000\019d\b\242\b\242\000\000\000\000\000\000\000\003\000\000\000\000\000\000\t\194G\178\b\246 \204!\222\000\017\t\234\000\000\t\212JJ\n\028JJ\n.G\178\tB \204 \204\004\014\000i\005$\004\204\000i\000\000\000\000\005\134\007Z\000\000\005\138\t\196\000\000\000\000\000\000\000\000\000\000\tD\000\000\000\000\n4\000\000\n8\000\000\000\000\nt\n\028G\178\tT\nF\000\000\nN\000\000\t\144\000\000\n8\023v\tl \204\000\000\000\000\000\000\007t\000\000\000\000\002\250\000\000\t\240\000\000\014\234\0012\000\000\014\234\000\000\000\000%\194\000\000\002\190\000\000\000\000\011\238\000\000\014\234\000\000\nL\023v\t\128\nr\000\000\002\184\000\000\nB\000\017\t\136\nX6\190\t\140\000\154\000\000G\178\n~\000\000\n`6\190\t\154\n\138\000\000\002\246G\178\n\140\000\000\n\146\000\000\023\166\000\017\003\224G\178\n\156\000\000\n\158\000\000\000\000\000\000\011\238\000\000\000\000\002\190\000\000\b\242\000\000\002\184\000\000\000\000\004.!\222\000\000\004.\000\000\000\000\t\180\000\000\0001\001| \204\000\000\005\246\0007\005\246\000\000\0007\000\000\b\242\000\000\b\242\000\000\000\000\000\000\t\176\000\000\000\000\t\188\000\000\005$\007t\0007\005\246\000\000\000\000\000\000\0007\000\000\b\242\000\000\005$\000\000\000\000\r<\000\184\019d\000\000\000\184\000\000\np\019d\000\000\000\000\np\000\000\000\000\t\186\000\000\000\000\t\200\000\000\0058\b\242\000\000\0058\000\000\000\000\nF\000\000\002\190\000\000\b\242\000\000\000\000\000\000\020\224J\206\000\000\n\190\000\000\020\224\000\000\n\192\000\000\n\200\000\000/Z\000\017\003\n\000\000G\178\n\202\000\000\007\152\n\154\000\017\t\238\n\1906\190\t\242\006\004\000\000G\178\n\228\000\000\006\164\000\000G\178\n\230\000\000\023\166\000\017\006\166\000\000G\178\n\232\000\000\006z\020\224\000\000%\194\006\220\000\000G\178\n\234\000\000\n\236\000\000\000\000\000\000\n\206\023v\n\002\n\242\000\000\003\030\000\000\n\194\000\017\n\016\n\2326\190\n\030\006\228\000\000G\178\011\018\000\000\006\230\000\000G\178\011\020\000\000\023\166\000\017\0074\000\000G\178\011\022\000\000\006z\000\000\000\000\n4\000\000\014\186\n\184\000\000\000\000\000\000\n\186\000\000\000\216\000D\000\000\019d\011\024\000\000\000\000G\178\nj\b\242\000\000\n<\000\000\000\012\000\000El\000\000\000\000\002h\019d\000\000\019d\000\000\n,\000\000\002h\000\000G\178\002vG\178\000\000G\178\000\000\n.\000\000\002v\000\000G\178\002v\n2\000\000 \204\002\208 \204\000\000 \204\000\000\n<\000\000\002\208\000\000G\178\002v\n@\000\000El\003\218El\000\000El\000\000\nB\000\000\003\218\000\000G\178\002v\nF\000\000\000\000\030\226\000\000\000\000\n\186=\028\000\000\000\000\000\000\000\000\000\000\n\142\005\246\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\248=\028\000\000\004\n\006\128\n\144\000\161\000\000\000\000\n\148\000\161\000\000\000\000\000\000\000\000\000A\006\128\000\000\000\000\000\000\000\000\n\242\000\000\000\000\000\000\000\000#Z'@\000\000;\138\000\000=\028\000\000\003\004=\028\000\000\004\132\004\240\004\240\000\000\005\026\004\240\000\000\nj\000\000\000\000\000\000\000\000\n\248\000\000(\154\000\000*\024=\028\000\000\005^=\028\000\000\n\250\000\000=\028\n\254\000\000@@Z\254\011\002\000\000\011\004\000\000A\210_\170=\028\000\000\000\000\n\128=\028\011,\000\000\0110\000\000\011@\000\000/Z\000\000\005D/Z\000\000\n\184\021\174\000\000=\028\011D\000\000\006\208=\028\000\000\006P=\028\000\000\004\142\011\202\000\000\011\208\000\000=\028=\028\n\196\000\000\000\000\000\000\000\000\000\000\000\000\011P\000\000CdZ\b\011R\000\000\011Z\000\000e\254`\160=\028\n\214=\028\011`\000\000\011b\000\000\011h\000\000=\028\011\018\000\161\000\000\000\000\006Z=\028\000\000\004\142\000\000\011r\000\000=\028\011t\000\000f~`\242=\028\n\238=\028\011x\000\000\011|\000\000\011\128\000\000_X\021\174\000\000\021\174\000\000Z\254=\028\n\250=\028\011\134\000\000\011\136\000\000\021\174\000\000ex\000\000\000\000\006\212=\028\000\000\006V\006F\004\240\011\000\000\000\000\000\000\252\000\252\000\000\000\000\000\000\006\138\000\252\000\000\011\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000=\028\000\000\007\016=\028\000\000\007t\000\026\000\161\011\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\146\000\000\011\148\000\000=\028\011\152\000\000f\250Z\b\011\154\000\000\011\156\000\000=\028\011\158\000\000 B\011JgtG\018>\174\011\"\000\000=\028\011\174\000\000\011\176\000\000\011\128 B=\028\011\180\000\000=\028\011\184\000\000\011\188\000\000=\028\011\190\000\000\000\161\0110\000\000\000\000\030\226\000\000\000\000\004(\012*\000\000\000\000\002\170\000\000\000\000\000\000G\178\000\000\000\000\000\000\004x\000\000\004(\000\000\000\000\000\000\005\246ElElEl\000\000\002N\002N\002N\002N\000\000\000\000\000\000\000\000\000\000\000\000\002\250\019d\012 \016h\0012\000\000\000\000\002\190\000\000\011\238\000\000+\026\011H\000\000\002\250\019d\011N\017\230\000\000\002\250\016h\000\000\000\000\000\000El\025\212\000\000\000\000\000\000\011\162\002\184\012(bNbN\000\000\006\222etbN\007\nb~\000\000\000\000\005\200\012\024\000\017\000\000\007\020c:\000\000\000\000\000\000\000\000\000\000\011j\0122\b\242\011h\000\000\000\000\002\190\000\000\011\238\000\000\026\022\004\144\000\000\000\000\012 \000\000\000\000\004(\000\000\004>\000\000\000\000\000\000G\178\000\000\004x\000\000\004R\000\000\000\000\000\000\007t\000\000\rl\004D\rl\000\000\b\242\rl\000\000\004D\000\000\b\242\000\000\b\242\000\000\b\242\000\000\019\190\000\000\000\000\000\000\000\000\000\000\b\242\000\000\004D\000\000\b\242\000\000\026\242\000\000\000\000\np\011\160\000\161\003R\012J\001d\000\000\001d\012r\000\000\012t\000\000\012v\000\000\000\000\002\178\001d\b\024\001d\000\000\000\000\t\150\003R\011n\000\000\011p\000\000\011\174\000\161\003R\011t\000\000\000\152\012\132\000\000\006\144\011\n\012\150\b\014\012\150\000\000\000\000\000\246\000\161\000\000\005\012\000\000\000\000\006\028\000\000\011\134\000\000\000\000\000\000\011\198\000\161\003R\011\142\000\000\000\000\000\152\006\144\011\n\000\246\005\012\006\028\011\144\000\000\006\144\011\n\000\246\005\012\006\028\011\146\000\000\000{\007|\011\174\000\161\011\168\004\206\004\006\011\214\000\161\000\000\011\216\000\161\000\000\0126\000\000\011\188\007\164\011\182\004\206\012<\000\000\011\186\004\206\012@\000\000\000\000\004\206\000\000\012B\000\000"), (16, "\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241 2\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241\r\241\001:\0007\000;\018\130\r\241\005\194\002f\n]\001\190\004\250\n]\r\241\005\002\r\241\005\018\tI\016n\r\241\r\241\015\182\r\241\005\026\001\150\r\241\001B\018\002\001\146\001\150\r\241\r\241\r\241\000\n\001\154\r\241\001F\005\185\001\158\001\162\004\202\r\241\014F\001>\r\241\r\241\000\150\000\154\002j\001r\r\241\r\241\000\n\r\241\005\"\r\241\001\166\r\221\016\150\000\n\r\241\000\n\r\241\r\241\000\n\r\241\r\241\r\241\000\242\027\202\001B\r\241\r\241\r\241\001>\0066\r\241\r\241\r\241\001z\001F\018\134\r\241\r\241\r\241\r\241\r\241\r\241\005Y\0052\005\021\r\241\r\241\000N\t\230\023^\023\134\023\150\023\190\023\206\023\246\001B\r\241\r\241\r\241\000\n\0192\r\241\r\241\r\241\r\241\001F\r\241\019\182\r\241\024\202\015\186\r\241\006\213\r\221\r\241\r\241\014\142\r}\b\213\001v\000\n\005\185\n]\001\142\007\029\r\241\r\241\bE\t\198\r\241\000\n\016n\b\213\r\241\r\241\r\241\r\241\000\246\014v\r\241\018\002\r\241\016>\005\021\tM\r\241\r\241\r\241\021f\r\241\005\021\r\241\r\241\023\014\r\241\021j\r\241\r\241\006\197\r\241\r\241\r\241\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\027r\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\r\253\002f\007M\b\213\005Y\r\253\016n\022\226\rm\031\134\005Y\005Y\r\253\t\206\r\253\018\002\019\186\031\026\r\253\r\253\r}\r\253\005Y\005Y\r\253\001R\rr\001^\004\201\r\253\r\253\r\253\002\146\0192\r\253\004\201\001>\001~\031\030\027v\r\253\006\246\001r\r\253\r\253\031\"\015\130\000\n\005Y\r\253\r\253\007m\r\253\014\185\r\253\001\134\b\213\007m\007m\r\253\000&\r\253\r\253\001B\r\253\r\253\r\253\022\246\b\213\031\174\r\253\r\253\r\253\001F\011^\r\253\r\253\r\253\006\229\r\213\000*\r\253\r\253\r\253\r\253\r\253\r\253\r\026\n\194\t\014\r\253\r\253\r\030\004\209\0192\007m\011b\029\014\000\n\r\"\004\209\r\253\r\253\r\253\r&\029\018\r\253\r\253\r\253\r\253\001\150\r\253\007M\r\253\031*\015\234\r\253\007\021\001v\r\253\r\253\000\n\r}\006\189\014\185\014\185\000\006\000\"\006\189\014\185\020j\r\253\006\189\006^\r\253\015\130\012\134\t\173\r\253\r\253\r\253\r\253\002\146\002q\r\253\000\n\r\253\0312\023>\r\197\r\253\r\253\r\253\001\202\r\253\023f\r\253\r\253\001\150\r\253\tY\r\253\r\253\001\238\r\253\r\253\r\253\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\002\002\007U\007U\007U\007U\007U\007U\007U\007U\007U\007U\019\150\000\n\011j\n]\007U\016r\016\130\016\146\023\158\031B\002.\007U\016n\007U\r}\001>\019\154\007U\007U\024\142\007U\018\002\0022\007U\004\226\016\n\006\189\023F\007U\005\133\007U\r}\000.\007U\023n\005N\002^\015\198\005V\007U\005f\021\166\001B\015\202\002z\015\130\006\189\005n\007U\007U\006\189\022b\001F\007U\007U\001\218\020:\011&\007U\014\185\007U\007U\002m\007U\007U\007U\001>\022f\006j\007U\007U\007U\t\157\003\238\007U\007U\007U\000\n\005v\023\166\007U\007U\007U\007U\007U\007U\006\221\006\221\015\198\007U\007U\r\205\006\253\001B\015\202\001>\015\154\001>\006~\006\245\0192\007U\007U\001F\015:\007U\007U\007U\007U\016&\007U\te\007U\005\134\007\r\007U\031R\015\198\007U\007U\028\195\028\199\001B\015\202\001B\028\203\019\222\031J\000\n\015\130\014\185\014\185\001F\007U\001F\014\185\021\170\007U\007U\007U\007U\023\214 J\007U\007\005\007U\015\130\0075\r}\007U\007U\007U\004\158\025\018\000\n\007U\007U\000\n\007U\000\n\007U\007U V\007U\007U\007U\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\031\018\007u\007u\007u\007u\007u\007u\007u\007u\007u\007u\t\250\018\130\007u\n\002\007u\n\018\003\229\n]\007u\007u\003\229\007u\n\026\007u\004\145\004\186\016n\007u\007u\028\178\007u\023\222\001B\007u\020F\018\002\026\026\026\"\007u\007u\007u\012\209\001F\007u\007u\007u\007u\004\194\0307\007u\007u\007u\007u\n\"\007u\007u\030;\005&\007u\007u\007u\007u\019\254\007u\002f\005*\030>\000\n\007u\028\178\007u\025\030\007u\007u\007u\007u\026*\007u F\007u\007u\007u\015\130\024\154\007u\007u\007u\018\134\n2\007u\007u\007u\007u\007u\007u\007u\006\237\006\202\0242\001>\007u\002\157\007\133\012\209\011\134\001\206\018\142\nq\014N\004\241\005z\007u\007u\007u\0192\007u\007u\007u\007u\007u\007u\005~\007u\025\"\007E\007u\001B\001B\007u\007u\028\235\028\239\014Z\007u\007u\028\243\001F\001F\005\202 \155\007u\030W\030[\007u\n\141\n\141\030_\007u\007u\n\141\007u\030w\030{\007u\007\190\007u\030\127\020\186\t!\007u\nN\000\n\000\n\nV\007\133\nf\007u\021:\007u\nq\007u\007u\nn\007u\007u\007u\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\024\030\001&\028\250\001.\r\"\0016\002\014\002\022\002\026\r&\028\254\031\186\024\"\nv\tA\r*\t]\005=\031\190\005\222\015F\r\157\r:\024&\002\"\024*\b\134\tu\002\150\rB\t\017\016F\016\150\024.\016J\006\006\001>\029\222\015V\002*\006\n\016^\024:\b\150\nY\002}\024>\002M\n\134\025.\002\166\021\214\024B\0292\018\138\005=\r\141\007%\t=\018\022\016\162\029^\029j\001B\018\026\020v\016\154\007-\024F\002\202\025\222\002\206\005\149\001F\002>\019*\018\"\ru\027Z\0242\016\186\002\214\018&\025j\006\030\016\190\014n\002\222\024\158\006:\r\157\016\194\016\198\rV\rZ\016\202\018*\004\145\000\n\024J\024\170\018.\024N\018\158\027^\018\170\001>\t-\024\174\002]\006B\006F\r\198\016\206\027n\024R\0182\0186\016\210\018:\024V\000\n\024Z\018N\024^\024b\005q\024f\021f\018Z\016\218\021\234\022\006\001B\024j\021j\003\229\024n\022\026\021n\003\229\029~\r\181\001F\018z\na\021\218\r\189\018~\018\202\005\149\r^\024r\031\198\016\222\024\186\018\206\024v\024z\022*\016\230\005\149\005\149\022\130\022\150\024\190\005\149\018\214\000\n\016\234\006\130\007}\007}\022\226\016\242\003\"\007}\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\006U\001&\028\250\001.\r\"\0016\002\014\002\022\002\026\r&\028\254\002f\022\178\026\014\004\145\r*\na\r\165\026\178\006\134\004\145\004\145\r:\006\138\002\" 6\026\026\026\"\002\150\rB\027Z\016F\004\145\031\018\016J\021\238\022\n\007=\006\189\002*\nE\016^\027\134\026\002\nY r\001>\r\173\006\154\r\133\002\166\012\242\018\130\016n\005e\006\162\006\166\002\146\004\145\018\022\016\162\029^\018\002\022.\018\026\020\190\027\198\022\134\022\154\002\202\006\174\002\206\005\165\001B\002>\019*\018\"\001>\021\186\027N\016\186\002\214\018&\001F\029\194\016\190\014n\002\222\t\145\006\222\006\226\016\194\016\198\rV\rZ\016\202\018*\ni\006\234\015\198\019.\018.\004\141\006\254\001B\015\202\029\206\022\182\000\n\027\186\t\129\029\238\r\198\016\206\001F\002\141\0182\0186\016\210\018:\007\018\000\n\007*\018N\007J\000\n\005q\007R\018\134\018Z\016\218\b\018\b\174\006\189\b\186\b\218\b\246\t\006\004\141\000\n\t\022\0192\t\030\t6\018z\000\n\t>\tN\018~\018\202\t1\r^\tZ\006\189\016\222\tf\018\206\tv\t\130\ni\016\230\011\190\005\165\t\142\011\198\t\158\011\214\018\214\t\174\016\234\t\182\007\141\007\141\011\222\016\242\003\"\007\141\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\t\219\001&\028\250\001.\r\"\0016\002\014\002\022\002\026\r&\028\254\n&\n*\011\230\re\r*\nz\n~\n\202\004\141\re\re\r:\n\222\002\"\004\141\004\141\011\006\002\150\rB\012\018\016F\re\012\026\016J\012*\011\n\004\141\011\030\002*\011J\016^\0122\011~\nY\031\158\011\142\011\162\011\246\011\234\002\166\011\238\012>\016n\004\141\012B\012\142\012\162\re\016\158\016\162\012\202\018\002\004\141\018\026\031J\012\206\012\226\012\250\002\202\r\014\002\206\005\193\012:\002>\018\030\018\"\r.\r6\r>\016\186\002\214\018&\rF\rN\016\190\014n\002\222\rR\r\138\r\154\016\194\016\198\rV\rZ\016\202\018*\r\166\r\174\014\022\014\193\018.\004\149\014\"\014V\014z\014\134\014\162\012J\014\170\015j\015v\r\198\016\206\015~\015\146\0182\0186\016\210\018:\015\158\000\n\015\166\018N\015\170\015\178\005q\015\194\015\210\018Z\016\218\015\218\015\222\015\242\015\250\016\018\016\026\016.\031B\0166\016B\0192\016V\016j\018z\016v\016~\016\134\018~\018\202\005\193\r^\016\142\016\170\016\222\016\178\018\206\017\026\017&\017^\016\230\005\193\005\193\017\142\018>\018F\005\193\018\214\018V\016\234\018\130\n\149\n\149\018^\016\242\003\"\n\149\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\001B\001&\018f\001.\r\"\0016\002\014\002\022\002\026\r&\001F\018n\018v\018\198\018\210\r*\018\218\018\230\018\234\004\149\005Y\018\242\r:\018\246\002\"\004\149\004\149\018\254\002\150\rB\019\006\016F\019\014\019\022\016J\000\n\019>\004\149\031\006\002*\b\221\016^\019\130\019\138\nY\019\142\019\158\019\166\019\170\019\178\002\166\019\194\019\202\016n\b\221\018\134\019\210\019\214\019\230\016\158\016\162\019\238\018\002\004\149\018\026\031J\020\006\020\014\020^\002\202\020\166\002\206\020\178\021&\002>\018\030\018\"\002a\0212\021R\016\186\002\214\018&\021~\021\142\016\190\014n\002\222\021\150\021\178\021\190\016\194\016\198\rV\rZ\016\202\018*\031\150\021\198\021\202\021\210\018.\021\226\021\246\022\018\0226\022>\022N\022V\022Z\022j\b\221\r\198\016\206\031n\022r\0182\0186\016\210\018:\022v\000\n\022~\018N\031\130\022\142\022\162\022\190\005Y\018Z\016\218\031\218\022\210\031\134\005Y\005Y\022\222\022\238\023\006\023\022\023\"\0192\023S\023{\018z\023\147\005Y\005Y\018~\018\202\023\179\r^\023\203\023\235\016\222\024\003\018\206\024\026\0246\024\162\016\230\024\178\024\227\025:\b\221\025O\025w\018\214\025\131\016\234\025\147\025\155\005Y\025\182\016\242\003\"\b\221\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\025\191\001&\025\199\001.\r\"\0016\002\014\002\022\002\026\r&\025\207\025\234\025\251\026\030\007e\r*\026&\0266\026S\026c\007e\007e\r:\026k\002\"\026~\026\135\026\143\002\150\rB\026\151\016F\007e\026\162\016J\026\199\026\211\026\230\026\239\002*\026\247\016^\026\255\027\"\nY\027+\0273\027f\027\146\027\210\002\166\027\243\027\251\016n\028\007\028\023\028\031\028+\007e\016\158\016\162\0286\018\002\028F\018\026\028S\028[\028b\028o\002\202\028{\002\206\028\131\028\143\002>\018\030\018\"\028\155\028\182\029>\016\186\002\214\018&\029f\029v\016\190\014n\002\222\029\170\029\178\029\226\016\194\016\198\rV\rZ\016\202\018*\030\n\030\014\030\022\014\193\018.\030C\031\n\031\022\031&\031.\0316\031c\031k\031r\031\127\r\198\016\206\031\138\031\154\0182\0186\016\210\018:\031\207\000\n\031\222\018N\031\235 \015 + : B\018Z\016\218 N Z g n v \127 \134 \143 \163\000\000\0192\000\000\000\000\018z\000\000\000\000\000\000\018~\018\202\000\000\r^\000\000\000\000\016\222\000\000\018\206\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\018\214\000\000\016\234\000\000\014\193\014\193\000\000\016\242\003\"\014\193\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\000\000\001&\028\250\001.\r\"\0016\002\014\002\022\002\026\r&\028\254\000\000\000\000\000\000\000\000\r*\000\000\000\000\000\000\000\000\019\150\000\000\r:\000\000\002\"\000\000\000\000\000\000\002\150\rB\000\000\016F\000\000\000\000\016J\001>\019\154\000\000\000\000\002*\000\000\016^\000\000\000\000\nY\000\000\000\000\000\000\004\226\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\015\198\000\000\018\022\016\162\000\000\001B\015\202\018\026\030\142\000\000\000\000\000\000\002\202\000\000\002\206\001F\000\000\002>\019*\018\"\000\000\000\000\000\000\016\186\002\214\018&\000\000\000\000\016\190\014n\002\222\000\000\000\000\000\000\016\194\016\198\rV\rZ\016\202\018*\000\n\000\000\000\000\000\000\018.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\016\206\000\000\000\000\0182\0186\016\210\018:\000\000\000\n\000\000\018N\000\000\000\000\005q\000\000\000\000\018Z\016\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\r\000\000\000\000\000\000\000\000\000\000\018z\000\000\000\000\000\000\018~\018\202\000\000\r^\000\000\000\000\016\222\000\000\018\206\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\018\214\000\000\016\234\000\000\ny\ny\000\000\016\242\003\"\ny\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\000\000\001&\000\000\001.\r\"\0016\002\014\002\022\002\026\r&\000\000\000\000\000\000\000\000\000\000\r*\000\000\000\000\000\000\000\000\022b\000\000\r:\000\000\002\"\000\000\000\000\000\000\002\150\rB\000\000\016F\000\000\000\000\016J\001>\022f\000\000\000\000\002*\000\000\016^\000\000\000\000\nY\000\000\000\000\000\000\004\226\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\015\198\000\000\018\022\016\162\000\000\001B\015\202\018\026\019F\000\000\000\000\000\000\002\202\000\000\002\206\001F\000\000\002>\019*\018\"\000\000\000\000\000\000\016\186\002\214\018&\000\000\000\000\016\190\014n\002\222\000\000\000\000\000\000\016\194\016\198\rV\rZ\016\202\018*\000\n\000\000\000\000\014\157\018.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\016\206\000\000\000\000\0182\0186\016\210\018:\000\000\000\n\000\000\018N\000\000\000\000\000\000\000\000\000\000\018Z\016\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\r\000\000\000\000\000\000\000\000\000\000\018z\000\000\000\000\000\000\018~\018\202\000\000\r^\000\000\000\000\016\222\000\000\018\206\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\018\214\000\000\016\234\000\000\014\157\014\157\000\000\016\242\003\"\014\157\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\000\000\001&\000\000\001.\r\"\0016\002\014\002\022\002\026\r&\000\000\000\000\000\000\000\000\000\000\r*\000\000\000\000\000\000\000\000\000\000\000\000\r:\000\000\002\"\000\000\000\000\000\000\002\150\rB\000\000\016F\000\000\000\000\016J\000\000\000\000\000\000\000\000\002*\000\000\016^\000\000\000\000\nY\000\000\000\000\000\000\000\000\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\022\016\162\000\000\000\000\000\000\018\026\029B\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\019*\018\"\000\000\000\000\000\000\016\186\002\214\018&\000\000\000\000\016\190\014n\002\222\000\000\000\000\000\000\016\194\016\198\rV\rZ\016\202\018*\000\000\000\000\000\000\000\000\018.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\016\206\000\000\000\000\0182\0186\016\210\018:\000\000\000\n\000\000\018N\000\000\000\000\000\000\000\000\000\000\018Z\016\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\018z\000\000\000\000\000\000\018~\018\202\000\000\r^\000\000\000\000\016\222\000\000\018\206\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\018\214\000\000\016\234\000\000\014\233\014\233\000\000\016\242\003\"\014\233\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\000\000\001&\000\000\001.\r\"\0016\002\014\002\022\002\026\r&\000\000\000\000\000\000\000\000\000\000\r*\000\000\000\000\000\000\000\000\000\000\000\000\r:\000\000\002\"\000\000\000\000\000\000\002\150\rB\000\000\016F\000\000\000\000\016J\000\000\000\000\000\000\000\000\002*\000\000\016^\000\000\000\000\nY\000\000\000\000\000\000\000\000\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\022\016\162\000\000\000\000\000\000\018\026\029B\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\019*\018\"\000\000\000\000\000\000\016\186\002\214\018&\000\000\000\000\016\190\014n\002\222\000\000\000\000\000\000\016\194\016\198\rV\rZ\016\202\018*\000\000\000\000\000\000\000\000\018.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\016\206\000\000\000\000\0182\0186\016\210\018:\000\000\000\n\000\000\018N\000\000\000\000\000\000\000\000\000\000\018Z\016\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\018z\000\000\000\000\000\000\018~\018\202\000\000\r^\000\000\000\000\016\222\000\000\018\206\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\018\214\000\000\016\234\000\000\014\229\014\229\000\000\016\242\003\"\014\229\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\000\000\001&\000\000\001.\r\"\0016\002\014\002\022\002\026\r&\000\000\000\000\000\000\000\000\000\000\r*\000\000\000\000\000\000\000\000\000\000\000\000\r:\000\000\002\"\000\000\000\000\000\000\002\150\rB\000\000\016F\000\000\000\000\016J\000\000\000\000\r\026\000\000\002*\000\000\016^\r\030\000\000\nY\000\000\000\000\029\014\000\000\r\"\002\166\000\000\000\000\000\000\r&\029\018\000\000\000\000\000\000\018\022\016\162\000\000\000\000\000\000\018\026\020\242\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\019*\018\"\000\000\000\000\000\000\016\186\002\214\018&\000\000\000\000\016\190\014n\002\222\000\000\019\150\000\000\016\194\016\198\rV\rZ\016\202\018*\000\000\000\000\000\000\000\000\018.\000\000\000\000\001>\019\154\000\000\000\000\000\000\000\000\000\000\000\000\r\198\016\206\000\000\000\000\0182\0186\016\210\018:\000\000\000\n\000\000\018N\000\000\000\000\015\198\r\149\r\149\018Z\016\218\001B\015\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\018z\000\000\000\000\000\000\018~\018\202\000\000\r^\000\000\000\000\016\222\000\000\018\206\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\n\018\214\000\000\016\234\000\000\005\133\000\000\000\000\016\242\003\"\000R\000V\000f\000\170\000\000\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\000\000\001&\000\000\001.\r\"\0016\002\014\002\022\002\026\r&\000\000\000\000\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\002\150\000\000\000\000\016F\000\000\000\000\016J\r\149\000\000\000\000\000\000\002*\000\000\021r\000\000\000\000\nY\000\000\r\149\000\000\000\000\000\000\002\166\000\000\r\149\r\149\000\000\000\000\000\000\000\000\006\181\021\130\016\162\000\000\000\000\006\181\000\000\000v\000\000\000\000\006\181\002\202\006\181\002\206\000\000\000\000\002>\006\181\006\181\000\022\000\000\000\000\016\186\002\214\000\000\000\000\r\149\016\190\001\150\002\222\000\000\r\149\r\149\016\194\016\198\rV\021\134\016\202\000\000\000\000\000\000\000\000\000\000\000\000\n\006\006\181\000\000\000\000\006\181\000\000\000\000\000\000\006\181\000\000\r\198\016\206\000\000\006\181\000\000\000\000\016\210\000\000\000\000\000\n\000\000\nZ\006\181\006\181\006\181\000\000\006\181\000\000\016\218\000\000\006\181\000\000\000\000\000Z\006\181\006\181\006\181\n\162\006\181\000\000\006\181\000\000\006\181\006\181\000\000\006\181\000\000\006\181\006\181\r^\006\181\006\181\016\222\006\181\021\138\006\181\000\000\000\000\016\230\000\000\006\181\006\181\000\000\006\181\006\181\021\146\000\000\016\234\006\181\006\181\000Z\006\181\016\242\003\"\006\181\006\181\006\181\006\181\006\181\000\000\006\181\000\000\006\181\000\000\006\181\006\181\n\214\000\000\000\000\000\000\006\181\000Z\000\000\006\181\000\000\000\000\006\181\006\181\006\181\000\000\006\181\006\181\011B\006\181\000\000\000\000\006\181\000Z\000\000\000\000\006\181\000\000\006\181\000\000\006\181\011\154\006\181\000\000\006\181\006\181\000Z\006\181\006\181\006\181\006\181\006\181\006\181\006\181\006\181\000\000\006\181\000\000\000\000\000\000\006\181\006\181\006\181\006\181\006\181\000\000\006\181\000\000\006\181\006\181\006\181\000\000\006\181\006\181\000\000\006\181\006\181\000\000\000\000\006\181\000\000\000\000\006\181\000\000\006\181\006\181\006\181\000\000\006\181\006\181\006\181\006\181\006\181\000\000\000\000\000\000\000\000\006\181\006\181\006\181\006\181\006\181\006\181\000\000\006\181\006\181\006\181\000\000\000\000\000\000\000\000\006\181\000\000\000\000\006\181\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\006\181\000\000\000\000\006\181\006\181\000\000\006\181\006\181\000\000\000\000\000\000\006\181\006\181\006\181\000\000\000\000\000\000\006\181\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\002\014\002\022\002\026\000\000\000\000\004\238\004\246\000\170\000\000\000\174\000\000\005:\005B\005J\005\142\000\000\005\150\005\158\002\"\005\174\000\000\005\182\002\150\005\190\005\234\002\174\005\242\000\000\002\178\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\005\250\000\000\002\166\000\000\000\000\002\170\000\000\000\000\000\000\000\000\000\000\003F\007B\000\000\002\194\006\002\000\000\007\178\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\000\000\000\000\000\000\007V\002\214\000\000\000\000\000\000\007Z\001\150\002\222\000\000\000\000\007\182\007^\007b\000\000\000\000\007f\002\238\000\000\006\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007j\000\000\000\000\000\000\000\000\007n\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\186\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007z\000\000\000\000\000\000\000\000\000\000\007\130\000\000\000\000\004\233\000\000\000\000\000\000\000\000\000\000\007\134\000\000\000\000\000\000\000\000\007\142\003\"\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\002\014\002\022\002\026\000\000\000\000\011\178\011\186\000\170\000\000\000\174\000\000\011\254\012\006\012\014\012R\000\000\012Z\012b\002\"\012r\000\000\012z\002\150\012\130\012\174\002\174\012\182\000\000\002\178\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\012\190\000\000\002\166\000\000\000\000\002\170\000\000\000\000\000\000\000\000\000\000\003F\007B\000\000\002\194\012\198\000\000\007\178\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\000\000\000\000\000\000\007V\002\214\000\000\000\000\000\000\007Z\001\150\002\222\000\000\000\000\007\182\007^\007b\000\000\000\000\007f\002\238\000\000\012\214\000\000\000\000\000\000\000\000\000\000\000\000\r\026\000\000\000\000\000\000\000\000\r\030\000\000\000\000\007j\000\000\029\014\000\000\r\"\007n\000\000\000\000\000\n\r&\029\018\000\000\000\000\000\000\000\000\000\000\000\000\007v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\026\000\000\000\000\007\186\000\000\r\030\000\000\000\000\000\000\000\000\029\014\000\000\r\"\000\000\000\000\000\000\007z\r&\029\018\000\000\000\000\000\000\007\130\000\000\000\000\t\021\000\000\000\000\000\000\000\000\000\000\007\134\000\000\000\000\001>\015\154\007\142\003\"\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\019\150\001&\000\000\001.\015\198\0016\002\014\002\022\002\026\001B\015\202\000\000\000\000\000\000\000\000\001>\019\154\000\000\000\000\001F\000\000\000\000\000\000\000\000\002\"\000\000\000\000\000\000\002\150\000\000\000\000\002\174\000\000\000\000\002\178\000\000\000\000\015\198\000\000\002*\000\000\000\000\001B\015\202\000\n\000\000\000\000\000\000\000\000\005\133\002\166\000\000\001F\002\170\000\000\000\000\000\000\000\000\r\026\003F\007B\000\000\002\194\r\030\000\000\007\178\000\000\000\000\029\014\002\202\r\"\002\206\000\000\000\000\002>\r&\029\018\000\n\000\000\000\000\007V\002\214\005\133\000\000\000\000\007Z\001\150\002\222\000\000\000\000\007\182\007^\007b\000\000\000\000\007f\002\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\019\150\000\000\000\000\007j\000\000\000\000\000\000\000\000\007n\000\000\000\000\000\n\000\000\000\000\000\000\001>\019\154\b\149\b\149\000\000\007v\000\000\b\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\186\000\000\000\000\000\000\000\000\000\000\015\198\000\000\000\000\000\000\000\000\001B\015\202\007z\000\000\000\000\000\000\000\000\000\000\007\130\000\000\001F\002Q\000\000\000\000\000\000\000\000\000\000\007\134\000\000\000\000\000\000\000\000\007\142\003\"\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\n\001\014\001\022\000\000\001&\005\133\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\"\000\000\000\000\000\000\002\150\000\000\000\000\002\174\000\000\000\000\002\178\000\000\000\000\000\000\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\197\n\197\000\000\002\166\000\000\n\197\002\170\000\000\000\000\000\000\000\000\000\000\003F\007B\000\000\002\194\000\000\000\000\007\194\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\000\000\000\000\000\000\007V\002\214\000\000\016E\000\000\007Z\001\150\002\222\000\000\000\000\007\182\007^\007b\000\000\000\000\007f\002\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016E\016E\000\000\000\000\000\000\000\000\007j\000\000\014\006\000\000\000\000\007n\000\000\000\000\000\n\016E\000\000\000\000\000\000\000\000\000\000\016E\016E\007v\000\000\014\014\000\000\000\000\014\026\000\000\000\000\016E\000\000\000\000\016E\000\000\016E\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007z\000\000\000\000\000\000\000\000\000\000\007\130\000\000\000\000\t%\000\000\000\000\000\000\000\000\000\000\007\134\016E\000\000\000\000\000\000\007\142\003\"\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\014&\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016E\000\000\000\000\000\000\002\"\014*\000\000\016E\002\150\000\000\000\000\002\154\000\000\000\000\002\158\000\000\0142\000\000\000\000\002*\000\000\016E\000\000\000\000\000\000\000\000\000\000\000\000\016E\000\000\002\166\000\000\000\000\002\170\000\000\000\000\016E\016E\000\000\002\190\002\186\000\000\002\194\000\000\000\000\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002>\000\000\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\000\000\000\000\002\234\002\238\000\000\000\000\000\000\000\000\000\000\000\000\016a\000\000\000\000\016a\000\000\000\000\000\000\000\000\000\000\000\000\002\242\000\000\000\000\000\000\000\000\002\246\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\016a\016a\000\000\002\254\000\000\000\000\000\000\000\000\007\166\000\000\000\000\000\000\000\000\000\000\003\002\016a\000\000\000\000\000\000\016a\000\000\016a\016a\000\000\000\000\007\174\000\000\003\006\b\178\000\000\000\000\016a\000\000\003\018\016a\000\000\016a\000\000\000\000\000\000\000\000\000\000\003*\000\000\000\000\000\000\000\000\003\026\003\"\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\016a\001\133\000\000\001\133\000\000\001\133\001\133\001\133\001\133\000\000\000\000\000\000\000\000\024\014\000\000\000\000\000\000\000\000\000\000\000\000\b\190\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\016a\016a\001\133\016a\000\000\b\194\001\133\016a\000\000\024\018\000\000\000\000\001\133\000\000\000\000\000\000\b\202\000\000\000\000\001\133\000\000\016a\000\000\000\000\001\133\016a\016a\000\000\001\225\000\000\000\000\001\225\016a\001\133\001\133\000\000\016a\016a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\225\001\225\000\000\000\000\001\133\000\000\000\000\001\133\000\000\000\000\001\133\000\000\000\000\000\000\000\000\001\225\000\000\000\000\000\000\001\225\000\000\001\225\001\225\001\133\000\000\000\000\000\000\000\000\001\133\000\000\001\133\001\225\000\000\001\133\001\225\024\022\001\225\000\000\000\000\000\000\001\133\000\000\001\133\000\000\000\000\001\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\133\001\133\000\000\001\225\000\000\001\133\001\133\000\000\000\000\000\000\000R\t\238\t\246\000\170\000\000\000\174\024\230\n:\nB\nJ\n\142\000\000\n\150\n\158\024\030\n\174\000\000\n\182\000\000\n\190\n\234\002\022\n\242\000\000\000\000\000\000\024\"\000\000\000\000\000\000\000\000\000\000\000\000\001\225\007\202\000\000\001\225\024&\n\250\024*\001\225\000\000\000\000\000\000\000\000\000\000\000\000\024.\000\000\000\000\000\000\000\000\000\000\0282\001\225\000\000\024:\000\000\001\225\001\225\024>\000\000\000\000\000\000\000\000\007\210\024B\000\000\000\000\001\225\001\225\000\000\000\000\011\018\000\000\000\000\000\000\000\000\025\210\000\000\000\000\000\000\024F\027>\000\000\000\000\000\000\000\000\011>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r*\000\000\000\000\000\000\000\000\000\000\000\000\r:\000\000\000\000\000\000\000\000\011V\002\150\rB\024J\016F\000\000\024N\016J\000\000\000\000\000\000\000\000\000\000\000\000\016^\000\000\000\000\nY\000\000\024R\000\000\000\000\000\000\002\166\024V\000\n\024Z\000\000\024^\024b\000\000\024f\018J\016\162\000\000\000\000\000\000\018\026\024j\000\000\000\000\024n\002\202\000\000\002\206\000\000\000\000\000\000\000\000\018\"\000\000\000\000\000\000\016\186\002\214\018&\024r\000\000\016\190\014n\002\222\024v\024z\000\000\016\194\016\198\000\000\000\000\016\202\018*\000\000\000\000\000\000\000\000\018.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\016\206\000\000\000\000\0182\0186\016\210\018:\000\000\000\n\000\000\018N\000\000\000\000\000\000\000\000\000\000\018Z\016\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\018z\000\000\000\000\000\000\018~\018\202\000\000\000\000\r*\000\000\016\222\000\000\018\206\000\000\000\000\r:\016\230\000\000\000\000\000\000\000\000\002\150\rB\018\214\016F\016\234\000\000\016J\000\000\000\000\016\242\003\"\000\000\000\000\016^\000\000\000\000\nY\000\000\000\000\000\000\000\000\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\182\016\162\000\000\000\000\000\000\018\026\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\018\"\000\000\000\000\000\000\016\186\002\214\018&\000\000\000\000\016\190\014n\002\222\000\000\000\000\000\000\016\194\016\198\000\000\000\000\016\202\018*\000\000\000\000\000\000\000\000\018.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\016\206\000\000\000\000\0182\0186\016\210\018:\000\000\000\n\000\000\018N\000\000\000\000\000\000\000\000\000\000\018Z\016\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\018z\000\000\000\000\000\000\018~\018\202\000\000\000\000\000\000\000\000\016\222\000\000\018\206\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\018\214\000\000\016\234\000\000\000\000\000\000\000\000\016\242\003\"\012Q\012Q\012Q\012Q\000\000\012Q\000\000\012Q\012Q\012Q\012Q\000\000\012Q\012Q\000\000\012Q\000\000\012Q\000\000\012Q\012Q\012Q\012Q\000\000\000\000\016\153\000\000\000\000\016\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012Q\012Q\012Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012Q\000\000\016\153\016\153\000\000\000\000\012Q\016\153\000\000\024\246\003:\016\153\000\000\024\254\000\000\000\000\000\000\016\153\000\000\012Q\016\153\016\153\000\000\016\153\016\153\000\000\012Q\003B\000\000\016\153\003V\012Q\000\000\016\153\000\000\000\000\016\153\000\000\016\153\016\153\012Q\012Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012Q\000\000\016\153\012Q\016\153\000\000\012Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\153\000\000\000\000\000\000\012Q\000\000\000\000\004\162\000\000\012Q\000\000\012Q\000\000\000\000\012Q\000\000\000\000\000\000\000\000\000\000\000\000\012Q\000\000\012Q\000\000\000\000\012Q\016\153\016\153\000\000\016\153\016\153\004\166\000\000\016\153\000\000\000\000\000\000\000\000\000\000\000\000\012Q\012Q\004\174\000\000\000\000\025R\012Q\016\153\000\000\000\000\016\153\016\153\016\153\016\153\016\153\000\000\000\000\000\000\016\153\016\153\016\153\000\000\016\153\016\153\016\153\016)\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\016)\016)\000\000\000\000\000\000\016)\000\000\000\000\003:\016)\000\000\000\000\000\000\000\000\000\000\016)\000\000\000\000\016)\016)\000\000\016)\016)\000\000\000\000\003B\000\000\016)\003V\000\000\000\000\016)\000\000\000\000\016)\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\016)\000\000\016)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016)\000\000\000\000\000\000\000\000\000\000\000\000\004\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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)\016)\000\000\016)\016)\004\166\000\000\016)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\004\174\000\000\005\233\000\000\000\000\016)\000\000\000\000\016)\016)\016)\016)\016)\000\000\000\000\000\000\016)\016)\016)\000\000\016)\016)\016)\005\233\005\233\000\000\000\000\000\000\005\233\000\000\000\000\005\233\005\233\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\005\233\000\000\005\233\005\233\000\000\001>\005\233\000\000\005\233\005\233\000\000\000\000\005\233\000\000\000\000\005\233\000\000\005\233\005\233\000\000\000\000\000\000\000\000\000\000\000\000\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\001F\000\000\005\233\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\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\000\000\005\233\005\233\000\000\005\233\bA\005\233\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\000\000\005\233\000\000\005\233\000\000\000\000\000\000\005\233\005\233\005\233\000\000\005\233\005\233\005\233\012A\012A\012A\012A\000\000\012A\000\000\012A\012A\012A\012A\000\000\012A\012A\000\000\012A\000\000\012A\000\000\012A\012A\012A\012A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012A\012A\012A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012A\000\000\000\000\000\000\000\000\000\000\012A\000\000\000R\t\238\t\246\000\170\000\000\000\174\000\000\n:\nB\nJ\n\142\012A\n\150\n\158\000\000\n\174\000\000\n\182\012A\n\190\n\234\002\022\n\242\012A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012A\012A\000\000\000\000\000\000\000\000\n\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\000\000\011\002\000\000\012A\000\000\000\000\012A\000\000\000\000\012A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\018\012A\000\000\000\000\000\000\000\000\012A\000\000\012A\000\000\000\000\012A\000\000\000\000\000\000\011>\000\000\000\000\012A\000\000\012A\000\000\000\000\012A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011V\012A\012A\000\000\000\000\000\000\024\250\012A\012E\012E\012E\012E\000\000\012E\000\000\012E\012E\012E\012E\000\000\012E\012E\000\000\012E\000\000\012E\000\000\012E\012E\012E\012E\000\000\000\000\005\237\000\000\000\000\005\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012E\012E\012E\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012E\000\000\005\237\005\237\000\000\000\000\012E\005\237\000\000\025V\005\237\005\237\000\000\000\000\000\000\000\000\000\000\005\237\000\000\012E\005\237\005\237\000\000\005\237\005\237\000\000\012E\005\237\000\000\005\237\005\237\012E\000\000\005\237\000\000\000\000\005\237\000\000\005\237\005\237\012E\012E\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012E\000\000\005\237\012E\005\237\000\000\012E\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\237\000\000\000\000\000\000\012E\000\000\000\000\005\237\000\000\012E\000\000\012E\000\000\000\000\012E\000\000\000\000\000\000\000\000\000\000\000\000\012E\000\000\012E\000\000\000\000\012E\005\237\005\237\000\000\005\237\bI\005\237\000\000\005\237\000\000\000\000\000\000\000\000\000\000\000\000\012E\012E\005\237\000\000\000\000\000\000\012E\005\237\000\000\000\000\005\237\000\000\005\237\000\000\005\237\000\000\000\000\000\000\005\237\005\237\005\237\000\000\005\237\005\237\005\237\000R\t\238\t\246\000\170\000\000\000\174\000\000\n:\nB\nJ\n\142\000\000\n\150\n\158\000\000\n\174\000\000\n\182\000\000\n\190\n\234\002\022\n\242\000\000\000\000\016}\000\000\000\000\016}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025^\n\250\025z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025\134\000\000\016}\016}\000\000\000\000\011\002\016}\000\000\000\000\017\n\016}\000\000\000\000\000\000\000\000\000\000\016}\000\000\025\158\016}\016}\000\000\016}\016}\000\000\011\018\017\018\000\000\016}\017\030\025\210\000\000\016}\000\000\000\000\016}\000\000\016}\016}\025\242\011>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011V\000\000\016}\025\254\016}\000\000\026V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016}\000\000\000\000\000\000\026n\000\000\000\000\017*\000\000\026\154\000\000\nA\000\000\000\000\026\202\000\000\000\000\000\000\000\000\000\000\000\000\026\214\000\000\027\002\000\000\000\000\027\254\016}\016}\000\000\016}\000\000\017.\000\000\016}\000\000\000\000\000\000\000\000\000\000\000\000\028\n\028\"\0176\000\000\000\000\002\150\028.\000\000\rz\000\000\016}\r~\016}\000\000\000\000\000\000\000\000\000\000\016}\016}\016}\000\000\016}\016}\016}\000\000\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\146\r\158\000\000\000\000\014F\014^\014b\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\178\002\214\000\000\014f\014j\r\182\014n\002\222\000\000\000\000\000\000\r\186\r\190\000\000\000\000\r\194\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\r\202\000\000\000\000\000\000\000\000\r\206\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\213\000\000\014r\000\000\014\142\000\000\002\150\000\000\000\000\rz\000\000\000\000\r~\000\000\000\000\r\218\000\000\000\000\000\000\000\000\000\000\r\226\000\000\000\000\000\000\000\000\000\000\004\249\002\166\000\000\r\230\000\000\000\000\000\000\000\000\r\238\003\"\r\146\r\158\000\000\000\000\014F\014^\014b\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\178\002\214\000\000\014f\014j\r\182\014n\002\222\000\000\000\000\000\000\r\186\r\190\000\000\000\000\r\194\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\198\r\202\000\000\000\000\000\000\000\000\r\206\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\213\000\000\014r\000\000\014\142\000\000\002\150\000\000\000\000\rz\000\000\000\000\r~\000\000\000\000\r\218\000\000\000\000\000\000\000\000\000\000\r\226\000\000\000\000\000\000\000\000\000\000\ti\002\166\000\000\r\230\000\000\000\000\000\000\000\000\r\238\003\"\r\146\r\158\000\000\000\000\014F\014^\014b\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\178\002\214\000\000\014f\014j\r\182\014n\002\222\000\000\000\000\000\000\r\186\r\190\000\000\000\000\r\194\001F\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\001\209\000\000\r\198\r\202\000\000\000\000\000\000\000\000\r\206\000\000\000\000\000\n\001\209\000\000\000\000\001\209\000\000\000\000\000\000\000\000\r\214\001\209\001\209\000\000\000\000\000\000\001\209\000\000\000\000\006\213\001\209\014r\000\000\014\142\000\000\000\000\001\209\001\209\000\000\001\209\001\209\001\209\001\209\001\209\r\218\001\209\000\000\000\000\001\209\000\000\r\226\001\209\001\209\000\000\001\209\001\209\002\129\001\209\001\209\r\230\000\000\000\000\000\000\001\209\r\238\003\"\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\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\000\000\001\209\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\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\001\209\003^\000\000\001\209\001\209\000\000\000\000\001\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\209\003f\000\000\001\209\001\209\000\000\001\209\001\209\000\000\001\209\001\209\001\209\001\209\000\000\000\000\000\000\000\000\004\146\001\209\001\209\000\000\001\209\001\209\001\209\001\209\001\209\001\209\001\209\000\000\000\000\000\000\000\000\004\134\001\209\001\209\000\000\001\209\001\209\001\209\002\150\000\000\000\000\rz\000\000\000\000\r~\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\002\166\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\r\146\r\158\000\000\000\000\014F\014^\015J\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\002\"\000\000\000\000\000\000\000\000\000\000\r\178\002\214\000\000\014f\014j\r\182\014n\002\222\000\000\002*\001Y\r\186\r\190\001Y\000\000\r\194\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002:\000\000\000\000\r\198\r\202\001Y\001Y\000\000\000\000\r\206\001Y\000\000\000\n\000\000\001Y\002>\000\000\000\000\000\000\000\000\003\158\r\214\000\000\001Y\001Y\000\000\001Y\001Y\000\000\000\000\006\213\000\000\001Y\000\000\014\142\000\000\001Y\011\022\000\000\003\166\000\000\003\182\001Y\000\000\000\000\r\218\000\000\000\000\000\000\000\000\000\000\r\226\000\000\000\000\000\000\000\000\000\000\ty\000\000\000\000\r\230\000\000\000\n\000\000\000\000\r\238\003\"\000\000\001Y\000\000\001Y\000\000\000\000\000\000\000\000\004\217\004\217\004\217\004\217\000\000\004\217\001Y\004\217\004\217\004\217\004\217\000\000\004\217\004\217\000\000\004\217\000\000\004\217\000\000\004\217\004\217\004\217\004\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002Z\001Y\000\000\000\000\001Y\001Y\004\217\001M\003\174\000\000\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\217\001Y\000\000\000\000\001Y\001Y\001Y\001Y\001Y\000\000\001M\001M\000\000\001Y\001Y\001M\001Y\001Y\001Y\001M\004\217\000\000\000\000\000\000\000\000\001M\004\217\000\000\001M\001M\000\000\001M\001M\000\000\000\000\004\217\000\000\001M\000\000\000\000\000\000\001M\000\000\000\000\003\166\000\000\001M\001M\000\000\004\217\004\217\000\000\000\000\000\000\000\000\000\000\000\000\004\217\000\000\000\000\000\000\000\000\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\001M\000\000\000\000\000\000\000\000\000\000\000\000\004\217\000\000\000\000\000\000\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\000\000\000\000\001M\001M\000\000\001Q\003\174\000\000\001Q\000\000\000\000\000\000\000\000\004\217\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\000\000\000\000\001Q\000\000\000\000\000\000\001Q\000\000\000\000\003\166\000\000\001Q\001Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\001Q\001.\001Q\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\001Q\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\001Q\000\000\000\000\001Q\001Q\000\000\001U\003\174\000\000\001U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002:\000\000\000\000\000\000\001Q\000\000\002F\001Q\001Q\001Q\001Q\001Q\000\000\001U\001U\002>\001Q\001Q\001U\001Q\001Q\001Q\001U\000\000\000\000\000\000\000\000\000\000\003\158\002J\002N\001U\001U\000\000\001U\001U\000\000\002R\000\000\000\000\001U\000\000\000\000\000\000\001U\000\000\000\000\003\166\000\000\003\182\001U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001U\000\000\001U\000\000\000\000\000\000\002V\000R\000V\000f\000\170\000\000\000\174\001U\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\014]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001U\000\000\000\000\001U\001U\002\"\001e\003\174\000\000\001e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002*\001U\000\000\000\000\001U\001U\001U\001U\001U\000\000\003\150\003\190\000\000\001U\001U\001e\001U\001U\001U\001e\002:\000\000\000\000\000\000\000\000\003\158\002F\000\000\001e\001e\000\000\001e\001e\000\000\000\000\002>\000\000\001e\000\000\000\000\000\000\001e\000\000\000\000\003\166\000\000\003\182\001e\000\000\002J\002N\000\000\000\000\000\000\000\000\000\000\000\000\002R\000\000\000\000\000\000\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\206\000\000\001e\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\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\000\000\000\000\000\000\000\000\002V\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\001]\003\174\000\000\001]\000\000\000\000\000\000\000\000\002\181\000\000\000\000\000\000\000\000\000\000\000\000\001e\000\000\000\000\001e\001e\001e\001e\001e\000\000\003\150\003\190\000\000\001e\001e\001]\001e\001e\001e\001]\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\001]\001]\000\000\001]\001]\000\000\000\000\000\000\000\000\001]\000\000\000\000\000\000\001]\000\000\000\000\003\166\000\000\003\182\001]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\001]\001.\001]\0016\002\014\002\022\002\026\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\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\001]\000\000\000\000\001]\001]\000\000\001a\003\174\000\000\001a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002:\000\000\000\000\000\000\001]\000\000\002F\001]\001]\001]\001]\001]\000\000\003\150\003\190\002>\001]\001]\001a\001]\001]\001]\001a\000\000\000\000\000\000\000\000\000\000\003\158\002J\002N\001a\001a\000\000\001a\001a\000\000\002R\000\000\000\000\001a\000\000\000\000\000\000\001a\000\000\000\000\003\166\000\000\003\182\001a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\001a\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\001a\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\002\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001a\000\000\000\000\001a\001a\002\"\001i\003\174\000\000\001i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002*\001a\000\000\000\000\001a\001a\001a\001a\001a\000\000\003\150\003\190\000\000\001a\001a\001i\001a\001a\001a\001i\002:\000\000\000\000\000\000\000\000\003\158\006J\000\000\001i\001i\000\000\001i\001i\000\000\000\000\002>\000\000\001i\000\000\006N\006R\003\198\000\000\000\000\003\166\000\000\003\182\001i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\003\206\000\000\001i\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\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\001i\001i\000\000\001q\003\174\000\000\001q\000\000\005\t\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\003\150\003\190\000\000\001i\001i\001q\001i\001i\001i\001q\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\001q\001q\000\000\001q\001q\000\000\000\000\000\000\000\000\001q\000\000\000\000\000\000\003\198\000\000\000\000\003\166\000\000\003\182\001q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\206\000\000\001q\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\001q\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\001q\001q\002\"\004&\003\174\000\000\001m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002*\001q\000\000\000\000\001q\001q\001q\001q\001q\000\000\003\150\003\190\000\000\001q\001q\001m\001q\003\222\001q\001m\002:\000\000\000\000\000\000\000\000\003\158\006J\000\000\001m\001m\000\000\001m\001m\000\000\000\000\002>\000\000\001m\000\000\006N\006R\003\198\000\000\000\000\003\166\000\000\003\182\001m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\003\206\000\000\001m\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\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\001m\001m\000\000\004&\003\174\000\000\001u\000\000\t\161\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\003\150\003\190\000\000\001m\001m\001u\001m\003\222\001m\001u\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\001u\001u\000\000\001u\004.\000\000\000\000\000\000\000\000\001u\000\000\000\000\000\000\003\198\000\000\000\000\003\166\000\000\003\182\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\000\000\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\206\000\000\001u\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\001u\001u\000\000\003\138\003\174\000\000\003\230\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\004\006\004\014\000\000\001u\001u\002-\001u\003\222\001u\002-\000\000\000\000\000\000\000\000\000\000\004\022\000\000\000\000\002-\002-\000\000\004\030\004>\000\000\000\000\000\000\000\000\002-\000\000\000\000\000\000\004F\000\000\nI\004N\000\000\004V\002-\000\000\000\000\000\000\000\000\000\000\000\000\000\129\nI\000\000\000\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nI\000\000\nI\000\000\000\000\000\000\000\000\004^\000\000\002-\nI\000\000\003\150\003\190\000\000\000\000\nI\000\129\000\000\nI\002-\000\129\000\000\nI\025\002\000\000\000\000\003\158\000\000\nI\000\129\000\129\000\000\000\129\000\129\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\000\003\198\000\000\nI\003\166\004f\003\182\000\129\002-\002-\000\000\000\000\004n\000\000\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\002-\002-\002-\002-\003\206\nI\000\129\000\000\nI\002-\002-\000\000\004v\004~\002-\000\000\000\000\000\129\000\000\000\000\000\000\nI\000\000\000\000\000\000\000\000\nI\nI\nI\000\000\nI\nI\000\000\nI\000\000\000\000\000\000\000\000\000\000\000\000\nI\000\000\000\000\nI\003\214\000\000\000\000\000\129\000\129\000\000\000i\003\174\000\000\000i\000\000\000\000\000\000\000\000\nI\000\000\000\000\000\000\000\000\nI\nI\000\129\000\000\000\000\000\129\000\129\000\129\000\129\000\000\000\000\000i\000i\000\000\000\129\000\129\000i\000\129\003\222\000\129\000i\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\000i\000i\000\000\000i\000i\000\000\000\000\000\000\000\000\000i\000\000\000\000\000\000\000i\000\000\024\030\003\166\000\000\003\182\000i\000\000\000\000\000\000\000\000\000\000\000\000\000e\024\"\000\000\000e\000\000\000\000\000\000\000\000\026\158\000\000\000\000\000\000\024&\000\000\024*\000\000\000\000\000\000\000\000\000i\000\000\000i\024.\000\000\000e\000e\000\000\000\000\0242\000e\000\000\024:\000i\000e\000\000\024>\000\000\000\000\000\000\003\158\000\000\024B\000e\000e\000\000\000e\000e\000\000\000\000\000\000\000\000\000e\000\000\026.\000\000\000e\000\000\024F\003\166\000i\003\182\000e\000i\000i\000\000\000\000\003\174\000\000\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\000e\024J\000e\000\000\024N\000i\000i\000\000\000i\000i\000i\000\000\000\000\000e\000\000\025\170\000\000\024R\000\000\000\000\000\000\000\000\024V\000\n\024Z\000\000\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\000\000\024j\000\000\000\000\024n\000e\000\000\000\000\000e\000e\000\000\000]\003\174\000\000\000]\000\000\000\000\000\000\000\000\024r\000\000\000\000\000\000\000\000\024v\024z\000e\000\000\000\000\000e\000e\000e\000e\000\000\000\000\000]\000]\000\000\000e\000e\000]\000e\000e\000e\000]\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000]\000\000\000]\000]\000\000\000\000\000\000\000\000\000]\000\000\000\000\000\000\000]\000\000\007\157\003\166\000\000\000]\000]\000\000\000\000\000\000\000\000\000\000\000\000\004&\007\157\000\000\000\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\157\000\000\007\157\000\000\000\000\000\000\000\000\000]\000\000\000]\007\157\000\000\003\150\003\190\000\000\000\000\007\157\000\137\000\000\007\157\000]\000\137\000\000\007\157\000\000\000\000\000\000\003\158\000\000\007\157\000\137\000\137\000\000\000\137\004.\000\000\000\000\000\000\000\000\000\137\028B\000\000\000\000\003\198\000\000\007\157\003\166\000]\003\182\000\137\000]\000]\000\000\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\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\206\007\157\000\137\000\000\007\157\000]\000]\000\000\000]\000]\000]\000\000\000\000\000\137\000\000\000\000\000\000\007\157\000\000\000\000\000\000\000\000\007\157\007\157\007\157\000\000\007\157\007\157\000\000\007\157\000\000\000\000\000\000\000\000\000\000\000\000\007\157\000\000\000\000\007\157\003\214\000\000\000\000\000\137\000\137\000\000\004&\003\174\000\000\000}\000\000\000\000\000\000\000\000\007\157\000\000\000\000\000\000\000\000\007\157\007\157\000\137\000\000\000\000\000\137\000\137\000\137\000\137\000\000\000\000\003\150\003\190\000\000\000\137\000\137\000}\0046\003\222\000\137\000}\000\000\000\000\000\000\000\000\000\000\003\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\003\198\000\000\025\138\003\166\000\000\003\182\000}\000\000\000\000\000\000\000\000\000\000\000\000\000u\024\"\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\000\000\000\000\000\000\000\000\003\206\000\000\000}\024.\000\000\003\150\003\190\000\000\000\000\0242\000u\000\000\024:\000}\000u\000\000\024>\000\000\000\000\000\000\003\158\000\000\024B\000u\000u\000\000\000u\000u\000\000\000\000\000\000\000\000\000u\000\000\000\000\000\000\000u\000\000\024F\003\166\003\214\003\182\000u\000}\000}\000\000\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\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\206\024J\000u\000\000\024N\000}\000}\000\000\000}\003\222\000}\000\000\000\000\000u\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\000\n\024Z\000\000\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\000\000\024j\000\000\000\000\024n\000u\000\000\000\000\000u\000u\000\000\000a\003\174\000\000\000a\000\000\000\000\000\000\000\000\024r\000\000\000\000\000\000\000\000\024v\024z\000u\000\000\000\000\000u\000u\000u\000u\000\000\000\000\000a\000a\000\000\000u\000u\000a\000u\000u\000u\000a\000\000\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\000\000a\000\000\000\000\000\000\000a\000\000\025\162\003\166\000\000\000a\000a\000\000\000\000\000\000\000\000\000\000\000\000\000m\024\"\000\000\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\000\000\000\000\000\000\000\000\000a\000\000\000a\024.\000\000\003\150\003\190\000\000\000\000\0242\000m\000\000\024:\000a\000m\000\000\024>\000\000\000\000\000\000\003\158\000\000\024B\000m\000m\000\000\000m\000m\000\000\000\000\000\000\000\000\000m\000\000\000\000\000\000\000m\000\000\024F\003\166\000a\003\182\000m\000a\000a\000\000\000\000\003\174\000\000\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\000a\000a\000m\024J\000m\000\000\024N\000a\000a\000\000\000a\000a\000a\000\000\000\000\000m\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\000\n\024Z\000\000\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\000\000\024j\000\000\000\000\024n\000m\000\000\000\000\000m\000m\000\000\000q\003\174\000\000\000q\000\000\000\000\000\000\000\000\024r\000\000\000\000\000\000\000\000\024v\024z\000m\000\000\000\000\000m\000m\000m\000m\000\000\000\000\003\150\003\190\000\000\000m\000m\000q\000m\000m\000m\000q\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\000q\000q\000\000\000q\000q\000\000\000\000\000\000\000\000\000q\000\000\000\000\000\000\000q\000\000\024\030\003\166\000\000\003\182\000q\000\000\000\000\000\000\000\000\000\000\000\000\004&\024\"\000\000\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\000\000\000\000\000\000\000\000\003\206\000\000\000q\024.\000\000\003\150\003\190\000\000\000\000\0242\000\133\000\000\024:\000q\000\133\000\000\024>\000\000\000\000\000\000\003\158\000\000\024B\000\133\000\133\000\000\000\133\004.\000\000\000\000\000\000\000\000\000\133\000\000\000\000\000\000\003\198\000\000\026Z\003\166\000q\003\182\000\133\000q\000q\000\000\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000q\000q\003\206\024J\000\133\000\000\024N\000q\000q\000\000\000q\000q\000q\000\000\000\000\000\133\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\000\n\024Z\000\000\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\000\000\024j\000\000\000\000\024n\003\214\000\000\000\000\000\133\000\133\000\000\000y\003\174\000\000\000y\000\000\000\000\000\000\000\000\024r\000\000\000\000\000\000\000\000\024v\024z\000\133\000\000\000\000\000\133\000\133\000\133\000\133\000\000\000\000\003\150\003\190\000\000\000\133\000\133\000y\000\133\003\222\000\133\000y\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\000y\000y\000\000\000y\000y\000\000\000\000\000\000\000\000\000y\000\000\000\000\000\000\003\198\000\000\000\000\003\166\000\000\003\182\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\206\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000y\000\000\000R\000V\000f\000\170\t\234\000\174\r\026\000\178\000\186\000\194\001\006\r\030\001\014\001\022\000\000\001&\028\250\001.\r\"\0016\002\014\002\022\002\026\r&\028\254\003\214\000\000\000\000\000y\000y\000\000\000\000\003\174\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\000y\000\000\000\000\000y\000y\000y\000y\002*\000\000\000\000\000\000\000\000\000y\000y\000\000\000y\000y\000y\000\000\003\213\000\000\000\000\000\000\000j\003\213\000\000\000r\002:\000\130\003\213\000\000\003\213\000\000\006J\000\000\000\138\003\213\003\213\000\000\000\000\000\000\000\000\002>\000\000\000\000\000\000\006N\006R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\rV\rZ\000\000\006V\000\000\000\146\003\213\000\000\000\000\000\000\003\213\000\000\000\000\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\213\003\213\003\209\000\n\000\000\000\000\000\198\003\209\005q\000\206\000\000\000\222\003\209\003\213\003\209\000\162\000\000\000\000\000\230\003\209\003\209\000\000\003\213\006Z\000\000\000\000\000\000\003\213\003\213\000\000\000\000\000\000\006\205\r^\000\000\000\000\000\000\003\213\000\000\000\000\000\000\003\213\000\000\006\205\000\000\002\161\000\000\000\000\006\205\000\238\003\209\000\000\003\213\000\000\003\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\213\000\000\000\000\000\000\000\000\003\213\000\000\003\209\003\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\209\000\000\000\254\000\000\000\000\000\000\000\000\000\000\000\000\003\209\011\202\006\181\000\000\000\000\003\209\003\209\000\000\000\000\003\213\000\000\000\000\003\213\003\213\006\181\003\209\003\213\000\000\000\000\003\209\000\000\003\213\003\213\000\000\000\000\006\181\003\213\006\181\012U\012U\003\209\000\000\012U\000\000\000\000\006\181\000\000\000\000\000\000\000\000\003\209\006\181\000\000\000\000\006\181\003\209\000\000\000\000\006\181\000\000\000\000\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\181\012\154\000\000\012U\000\000\006\181\000Z\000\000\000\000\000\000\000\000\006\181\000\000\003\209\000\000\000\000\003\209\003\209\000\000\000\000\003\209\000\000\000\000\000\000\000\000\003\209\003\209\000\000\000\000\000\000\003\209\000\000\000\000\006\181\012U\000\000\006\181\000\000\000\000\006\181\000\000\000\000\000\000\000\000\000\000\002\150\000\000\000\000\002\154\000\000\000\000\002\158\006\181\000\000\000\000\000\000\000\000\006\181\006\181\006\181\000\000\006\181\006\181\000\000\006\181\000\000\000\000\002\166\000\000\000\000\002\170\006\181\000\000\000\000\006\181\000\000\002\182\002\186\000\000\002\194\000\000\rv\000\000\000\000\000\000\000\000\002\202\000\000\002\206\006\181\000\000\000\000\000\000\000\000\006\181\006\181\012U\002\210\002\214\000\000\000\000\014~\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\000\000\000\000\002\234\002\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\233\000\000\000\000\001\233\000\000\000\000\000\000\000\000\000\000\002\242\000\000\000\000\000\000\000\000\002\246\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\001\233\001\233\002\254\000\000\000\000\001\233\000\000\000\000\000\000\001\233\000\000\000\000\000\000\003\002\nQ\001\233\000\000\000\000\001\233\001\233\000\000\001\233\001\233\000\000\000\000\000\000\003\006\001\233\000\000\000\000\000\000\001\233\003\018\000\000\001\233\nQ\001\233\001\233\000\000\000\000\000\000\003*\000\000\000\000\000\000\000\000\003\026\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\001\233\000\000\001\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\233\000\000\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\150\000\000\000\000\002\154\000\000\000\000\002\158\000\000\000\000\000\000\000\000\000\000\000\000\001\233\017J\000\000\001\233\000\000\000\000\000\000\001\233\000\000\002\166\000\000\000\000\002\170\000\000\000\000\000\000\000\000\000\000\002\182\002\186\000\000\002\194\000\000\000\000\001\233\000\000\001\233\000\000\002\202\000\000\002\206\000\000\017R\001\233\001\233\000\000\001\233\001\233\001\233\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\000\000\002\150\002\234\002\238\002\154\000\000\000\000\002\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016b\000\000\000\000\002\242\000\000\000\000\002\166\000\000\002\246\002\170\000\000\000\n\000\000\000\000\000\000\002\182\002\186\000\000\002\194\000\000\002\254\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\003\002\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\003\006\000\000\000\000\002\226\002\230\000\000\003\018\002\234\002\238\000\000\000\000\nQ\000\000\000\000\000\000\003*\002\150\000\000\000\000\002\154\003\026\003\"\002\158\000\000\000\000\002\242\000\000\000\000\000\000\000\000\002\246\000\000\nQ\000\n\000\000\000\000\000\000\000\000\002\166\000\000\000\000\002\170\002\254\000\000\000\000\000\000\000\000\002\182\002\186\000\000\002\194\000\000\000\000\003\002\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\003\006\000\000\002\210\002\214\000\000\000\000\003\018\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\003*\002\150\002\234\002\238\002\154\003\026\003\"\002\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021v\000\000\000\000\002\242\000\000\000\000\002\166\000\000\002\246\002\170\000\000\000\n\000\000\000\000\000\000\002\182\002\186\000\000\002\194\000\000\002\254\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\003\002\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\003\006\000\000\000\000\002\226\002\230\000\000\003\018\002\234\002\238\000\000\000\000\000\000\000\000\000\000\000\000\003*\002\150\000\000\000\000\002\154\003\026\003\"\002\162\000\000\000\000\002\242\000\000\000\000\000\000\000\000\002\246\000\000\000\000\000\n\000\000\000\000\000\000\000\000\002\166\000\000\000\000\002\170\002\254\000\000\000\000\000\000\000\000\002\182\tn\000\000\002\194\000\000\000\000\003\002\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\003\006\000\000\002\210\002\214\000\000\000\000\003\018\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\003*\002\150\002\234\002\238\002\154\003\026\003\"\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\000\000\000\000\002\166\000\000\003\n\002\170\000\000\000\n\000\000\000\000\000\000\002\182\t^\000\000\002\194\000\000\002\254\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\003\002\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\003\014\000\000\000\000\002\226\002\230\000\000\003\018\002\234\002\238\000\000\000\000\000\000\000\000\000\000\000\000\003\022\002\150\000\000\000\000\002\154\003\026\003\"\002\162\000\000\000\000\002\242\000\000\000\000\000\000\000\000\003\n\000\000\000\000\000\n\000\000\000\000\000\000\000\000\002\166\000\000\000\000\002\170\002\254\000\000\000\000\000\000\000\000\002\182\tF\000\000\002\194\000\000\000\000\003\002\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\003\014\000\000\002\210\002\214\000\000\000\000\003\018\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\003\022\002\150\002\234\002\238\002\154\003\026\003\"\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\000\000\000\000\002\166\000\000\003\n\002\170\000\000\000\n\000\000\000\000\000\000\002\182\002\250\000\000\002\194\000\000\002\254\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\003\002\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\003\014\000\000\000\000\002\226\002\230\000\000\003\018\002\234\002\238\000\000\000\000\000\000\000\000\000\000\000\000\003\022\t\018\000\000\000\000\000\000\003\026\003\"\000\000\000\000\000\000\002\242\004\193\000\000\000\000\004\193\003\n\000\000\004\193\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\254\000\000\000\000\000\000\000\000\000\000\004\193\000\000\000\000\004\193\000\000\003\002\000\000\000\000\000\000\004\193\004\193\000\000\004\193\000\000\000\000\000\000\000\000\000\000\003\014\004\193\000\000\004\193\000\000\000\000\003\018\000\000\000\000\000\000\000\000\000\000\004\193\004\193\000\000\003\022\000\000\004\193\004\193\004\193\003\026\003\"\000\000\004\193\004\193\012\030\006\181\004\193\004\193\000\000\000\000\000\000\000\000\000\000\012f\006\181\000\000\000\000\006\181\000\000\000\000\000\000\000\000\000\000\000\000\004\193\000\000\006\181\000\000\006\181\004\193\006\181\000\000\004\193\000\000\000\000\000\000\000\000\006\181\006\181\006\181\000\000\004\193\000\000\000\000\006\181\000\000\000\000\006\181\000\000\000\000\000\000\006\181\000\000\006\181\000\000\000\000\006\181\006\181\000\000\000\000\006\181\000\000\000\000\000\000\000\000\004\193\006\181\000\000\006\181\012\218\000\000\004\193\000\000\006\181\000Z\000\000\000\000\006\181\r\006\006\181\004\193\000\000\006\181\000Z\000\000\004\193\004\193\000\000\006\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\181\000\000\000\000\006\181\000\000\000\000\006\181\000\000\000\000\006\181\000\000\000\000\006\181\000\000\000\000\006\181\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\006\181\000\000\006\181\006\181\000\000\006\181\000\000\006\181\006\181\006\181\000\000\006\181\006\181\000\000\006\181\006\181\002\150\000\000\000\000\002\154\000\000\006\181\002\162\000\000\006\181\000\000\000\000\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\002\166\006\181\000\000\002\170\000\000\000\000\006\181\006\181\000\000\002\182\r\130\000\000\002\194\000\000\000\000\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\000\000\000\000\000\000\002\226\002\230\000\000\002\150\002\234\002\238\002\154\000\000\000\000\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\000\000\000\000\002\166\000\000\003\n\002\170\000\000\000\n\000\000\000\000\000\000\002\182\016N\000\000\002\194\000\000\002\254\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\003\002\000\000\000\000\000\000\000\000\002\210\002\214\000\000\000\000\000\000\002\218\001\150\002\222\003\014\000\000\000\000\002\226\002\230\000\000\003\018\002\234\002\238\000\000\000\000\000\000\000\000\000\000\000\000\003\022\017~\000\000\000\000\017\134\003\026\003\"\000\000\000\000\000\000\002\242\000\000\000\000\000\000\000\000\003\n\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\017\150\017\158\002\254\000\000\000\000\002=\000\000\000\000\000\000\002=\000\000\000\000\000\000\003\002\000\000\017\166\000\000\000\000\002=\002=\000\000\017\174\017\182\000\000\000\000\000\000\003\014\002=\000\000\000\000\000\000\017\190\003\018\000\000\017\198\0015\017\206\002=\0015\000\000\000\000\003\022\000\000\000\000\000\000\000\000\003\026\003\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\150\003\190\000\000\000\000\017\214\0015\002=\000\000\000\000\0015\000\000\000\000\000\000\000\000\000\000\003\158\000\000\002=\0015\0015\000\000\0015\0015\000\000\000\000\000\000\000\000\0015\000\000\000\000\000\000\003\198\000\000\000\000\003\166\000\000\003\182\0015\000\000\000\000\000\000\000\000\000\000\000\000\017\222\000\000\000\000\002=\000\000\000\000\000\000\017\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\0015\000\000\000\000\002=\000\000\002=\000\000\000\000\000\000\000\000\000\000\0015\002=\002=\000\000\017\238\017\246\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\003\214\000\000\000\000\0015\000\000\000\000\001\029\003\174\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\222\0015\001\029\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\001\029\001\029\000\000\001\029\001\029\000\000\000\000\000\000\000\000\001\029\000\000\000\000\000\000\001\029\000\000\000\000\003\166\001\025\003\182\001\029\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\001\025\000\000\000\000\001\029\001\025\001\029\000\000\000\000\001\025\000\000\000\000\000\000\000\000\000\000\003\158\000\000\001\029\001\025\001\025\000\000\001\025\001\025\000\000\000\000\000\000\000\000\001\025\000\000\000\000\000\000\001\025\000\000\000\000\003\166\000\000\003\182\001\025\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\003\174\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\001\029\000\000\001\029\000\000\000\000\000\000\000\000\000\000\001\025\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\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\003\174\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\000\000\000\000\001\017\000\000\000\000\000\000\001\017\000\000\000\000\003\166\004&\001\017\001\017\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\003\150\003\190\000\000\000\000\001\017\001=\001\017\000\000\000\000\001=\000\000\000\000\000\000\000\000\000\000\003\158\000\000\001\017\001=\001=\000\000\001=\004.\000\000\000\000\000\000\000\000\001=\000\000\000\000\000\000\003\198\000\000\000\000\003\166\000\000\003\182\001=\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\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\001=\000\000\000\000\001\017\000\000\001\017\000\000\000\000\000\000\000\000\000\000\001=\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\001=\000\000\000\000\004&\003\174\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\003\150\003\190\000\000\001=\001=\0011\0046\003\222\001=\0011\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\0011\0011\000\000\0011\0011\000\000\000\000\000\000\000\000\0011\000\000\000\000\000\000\003\198\000\000\000\000\003\166\001)\003\182\0011\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\003\150\003\190\000\000\000\000\003\206\001)\0011\000\000\000\000\001)\000\000\000\000\000\000\000\000\000\000\003\158\000\000\0011\001)\001)\000\000\001)\001)\000\000\000\000\000\000\000\000\001)\000\000\000\000\000\000\001)\000\000\000\000\003\166\000\000\003\182\001)\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\0011\000\000\000\000\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\001)\000\000\000\000\0011\000\000\0011\000\000\000\000\000\000\000\000\000\000\001)\0011\0011\000\000\0011\003\222\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\000\000\000\000\000\000\000\000\000\000\000\000\001)\000\000\000\000\001)\000\000\000\000\001\021\003\174\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\000\000\000\000\001\021\000\000\000\000\000\000\001\021\000\000\000\000\003\166\001!\001\021\001\021\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\003\150\003\190\000\000\000\000\001\021\001!\001\021\000\000\000\000\001!\000\000\000\000\000\000\000\000\000\000\003\158\000\000\001\021\001!\001!\000\000\001!\001!\000\000\000\000\000\000\000\000\001!\000\000\000\000\000\000\001!\000\000\000\000\003\166\000\000\003\182\001!\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\003\174\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\001\021\000\000\001\021\000\000\000\000\000\000\000\000\000\000\001!\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\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%\003\174\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\003\150\003\190\000\000\001!\001!\001%\001!\001!\001!\001%\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\001%\001%\000\000\001%\001%\000\000\000\000\000\000\000\000\001%\000\000\000\000\000\000\001%\000\000\000\000\003\166\004&\003\182\001%\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\150\003\190\000\000\000\000\003\206\0019\001%\000\000\000\000\0019\000\000\000\000\000\000\000\000\000\000\003\158\000\000\001%\0019\0019\000\000\0019\004.\000\000\000\000\000\000\000\000\0019\000\000\000\000\000\000\003\198\000\000\000\000\003\166\000\000\003\182\0019\000\000\000\000\000\000\000\000\000\000\000\000\001%\000\000\000\000\001%\000\000\000\000\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\0019\000\000\000\000\001%\000\000\001%\000\000\000\000\000\000\000\000\000\000\0019\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\0019\000\000\000\000\001-\003\174\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\003\150\003\190\000\000\0019\0019\001-\0019\003\222\0019\001-\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\001-\001-\000\000\001-\001-\000\000\000\000\000\000\000\000\001-\000\000\024\030\000\000\003\198\000\000\000\000\003\166\000\000\003\182\001-\000\000\000\000\000\000\024\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\012\169\012\169\000\000\000\000\000\000\000\000\000\000\024.\003\206\000\000\001-\000\000\000\000\0242\000\000\000\000\024:\000\000\000\000\000\000\024>\001-\000\000\000\000\000\000\000\000\024B\000\000\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\169\000\000\024F\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\001-\000\000\000\000\000\000\003\174\000\000\000\000\000\000\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\169\001-\024J\001-\000\000\024N\000\000\000\000\000\000\000\000\001-\001-\000\000\001-\001-\001-\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\000\n\024Z\024\030\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\000\000\024j\024\"\000\000\024n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\000\000\000\000\000\000\024r\012}\000\000\000\000\024.\024v\024z\012\169\000\000\000\000\0242\000\000\000\000\024:\000\000\000\000\000\000\024>\000\000\000\000\000\000\000\000\000\000\024B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\027\026\000\000\000\000\012}\000\000\024F\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\000\000\000\210\000\000\000\000\006\181\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\000\000\000\000\006\181\000\000\000\000\000\000\012}\006\181\024J\001\026\006\181\024N\006\181\000\000\006\181\006\181\000\000\005\006\000\000\006\181\006\181\000\000\006\181\000\000\024R\000\000\000\000\006\181\006\181\024V\000\n\024Z\006\181\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\000\000\024j\000\000\000\000\024n\006\181\006\181\000\000\006\181\000\000\001\250\006\181\006\181\000\000\000\000\000Z\006\181\000\000\006\181\024r\006\181\006\181\000\000\006\181\024v\024z\012}\006\181\006\181\006\181\000\000\000\000\006\181\006\181\000\000\006\181\006\181\000Z\000\000\000\000\006\181\000\000\006\181\000\000\000\000\000Z\006\181\000\000\006\181\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\006\181\000\000\006\181\000\000\000\000\006\181\006\181\006\181\000\000\005Z\006\181\006\181\006\181\000\000\006\181\006\181\000\000\000\000\000\000\006\181\006\181\006\181\006\181\000\000\000\000\000\000\002B\000\000\000\000\000\000\006\181\000Z\006\181\000\000\006\181\000\000\000\000\006\181\000\000\006\181\006\181\000\000\000\000\006\181\006\181\006\181\005\162\000\000\006\181\006\181\006\181\006\181\006\181\000\000\006\181\006\181\006\181\006\181\006\181\000\000\006\181\006\181\006\181\000\000\000\000\006\181\000\000\000\000\000\000\006\181\006\181\000\000\000\000\006\181\006\181\000\000\000\000\006\181\006\181\000Z\000\000\006\181\006\181\006\181\000\000\006\181\000\000\006\181\006\181\000\000\006\181\006\181\000\000\000\000\000\000\006\181\006\181\006\181\002\150\000\000\000\000\002\174\000\000\000\000\002\178\000\000\006\181\006\181\000\000\000\000\006\181\005\214\000\000\000\000\000\000\000\000\000Z\000\000\000\000\006\181\002\166\006\181\000\000\002\170\006\181\006\181\000\000\000\000\006\181\002\198\007B\006\181\002\194\006\181\006\181\000\000\006\181\000\000\006\181\002\202\000\000\002\206\000\000\006\181\000\000\000\000\000\000\006\181\000\000\000\000\007V\002\214\000\000\000\000\000\000\007Z\001\150\002\222\006\181\000\000\000\000\007^\007b\000\000\000\000\007f\002\238\000\000\006\181\006\181\000\000\000\000\006\181\006\181\006\181\006\181\006\181\000\000\000\000\006\181\006\181\006\181\006\181\007j\000\000\006\181\006\181\006\181\007n\000\000\000\000\000\n\006\181\006\181\000\000\000\000\000\000\000\000\000\000\000\000\007v\000\000\000\000\006\181\000\000\000\000\006\181\000\000\006\181\006\181\006\181\000\000\000\000\006\181\000\000\006\181\000\000\006\181\006\181\006\181\006\181\006\181\000\000\006\181\007z\000\000\000\000\006\181\000\000\000\000\007\130\000\000\000\000\000\000\000\000\000\000\006\181\006\181\000\000\007\134\000\000\006\022\006\181\006\181\007\142\003\"\000Z\007\n\000\000\006\181\000\000\006\181\000Z\000\000\000\000\006\181\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\000\000\000\000\000\000\006\181\006\181\006\181\000\000\006\181\000\000\t\150\000\000\006\181\000\000\006\181\000Z\000\000\000\000\006\181\000\000\000\000\000\000\000\000\006\181\000\000\000\000\000\000\006\181\000\000\006\181\000\000\000\000\006\181\006\181\000\000\000\000\000\000\000\000\006\181\006\181\000\000\000\000\006\181\000\000\006\181\000\000\006\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\181\000\000\000\000\000\000\006\181\006\181\000\000\006\181\006\181\000\000\006\181\006\181\000\000\006\181\006\181\000\000\006\181\006\181\000\000\000\000\000\000\006\181\006\181\006\181\027\006\000\000\027\014\006\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\027\022\000\000\000\000\006\181\000\000\0276\006\181\006\181\000\000\000\000\006\181\000\000\024\"\000\000\000\000\006\181\006\181\000\000\000\000\000\000\006\181\000\000\000\000\024&\000\000\024*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024.\000\000\000\000\000\000\000\000\000\000\0242\000\000\024\030\024:\000\000\000\000\000\000\024>\000\000\000\000\000\000\000\000\000\000\024B\024\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\000\000\024F\027>\000\000\000\000\000\000\000\000\024.\000\000\000\000\000\000\000\000\000\000\0242\000\000\000\000\024:\000\000\000\000\000\000\024>\000\000\000\000\000\000\000\000\000\000\024B\000\000\000\000\000\000\000\000\000\000\024J\000\000\000\000\024N\000\000\025\166\000\000\000\000\000\000\000\000\024F\000\000\000\000\000\000\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\000\n\024Z\000\000\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\000\000\024j\000\000\000\000\024n\012}\000\000\024J\000\000\000\000\024N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024r\000\000\000\000\000\000\024R\024v\024z\000\000\000\000\024V\000\n\024Z\024\030\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\000\000\024j\024\"\000\000\024n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\014\194\000\000\000\000\024r\000\000\000\000\000\000\024.\024v\024z\012}\000\000\000\000\0242\000\000\024\030\024:\000\000\000\000\000\000\024>\000\000\000\000\000\000\014\202\014\210\024B\024\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\026v\024&\014\218\024*\000\000\024F\000\000\000\000\014\226\014\234\000\000\024.\000\000\000\000\000\000\000\000\000\000\0242\014\242\000\000\024:\014\250\000\000\015\002\024>\000\000\000\000\000\000\000\000\000\000\024B\000\000\000\000\000\000\012}\000\000\024J\000\000\000\000\024N\000\000\026\222\000\000\000\000\000\000\000\000\024F\000\000\000\000\000\000\015\n\000\000\024R\000\000\000\000\000\000\000\000\024V\000\n\024Z\000\000\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\000\000\024j\000\000\000\000\024n\012}\000\000\024J\000\000\000\000\024N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024r\015\018\000\000\000\000\024R\024v\024z\012}\015\026\024V\000\n\024Z\000\000\024^\024b\000\000\024f\000\000\000\000\000\000\000\000\000\000\0065\024j\000\000\000\000\024n\000\000\000\000\0065\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\"\015*\000\000\000\000\024r\000\000\000\000\000\000\000\000\024v\024z\012}\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\002\014\002\022\002\026\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\002\"\001&\000\000\001.\000\000\0016\002\014\002\022\002\026\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\002\"\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\002*\000\000\029\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002>\000\000\000\000\000\000\029\186\006R\000\000\000\000\000\000\002:\000\000\000\000\000\000\000\000\000\000\029\182\000\000\000\000\000\000\000\000\000\000\000\000\006V\000\000\002>\000\000\000\000\000\000\029\186\006R\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&\006V\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\029\190\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\005\001\000\000\029\190\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\029\182\000\000\000\000\000\000\t\133\000\000\000\000\000\000\000\000\002>\000\000\000\000\000\000\029\186\006R\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&\006V\001.\000\000\0016\002\014\002\022\002\026\002\150\000\000\000\000\rz\000\000\000\000\r~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\"\000\000\000\000\000\000\000\000\000\000\000\000\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002*\r\146\r\158\000\000\000\000\000\000\000\000\000\000\029\190\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\002:\000\000\r\178\002\214\000\000\000\000\006b\r\182\001\150\002\222\002\145\000\000\000\000\r\186\r\190\002>\000\000\r\194\000\000\006N\006R\000\000\002\150\000\000\000\000\016F\000\000\000\000\016J\000\000\000\000\000\000\000\000\000\000\r\198\r\202\000\000\006V\000\000\000\000\r\206\000\000\000\000\000\n\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\214\016\182\016\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\202\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\186\002\214\r\218\000\000\000\000\016\190\001\150\002\222\r\226\000\000\000\000\016\194\016\198\000\000\000\000\016\202\000\000\r\230\000\000\000\000\000\000\000\000\r\238\003\"\000\000\000\000\000\000\000\000\000\000\000\000\t\177\000\000\r\198\016\206\000\000\000\000\000\000\000\000\016\210\000\000\000\000\000\n\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\016\218\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\t\t\001.\000\000\0016\002\014\002\022\002\026\000\000\000\000\000\000\000\000\000\000\t\t\000\000\016\222\000\000\000\000\000\000\000\000\000\000\016\230\000\000\002\"\t\t\000\000\t\t\000\000\000\000\000\000\016\234\000\000\000\000\000\000\t\t\016\242\003\"\000\000\002*\000\000\t\t\000\000\000\000\t\t\000\000\000\000\000\000\t\t\000\000\000\000\000\000\000\000\000\000\t\t\000\000\000\000\000\000\000\000\002:\000\000\000\000\000\000\000\000\000\000\029\198\000\000\000\000\000\000\026r\t\t\027>\000\000\000\000\002>\000\000\000\000\000\000\029\186\006R\000\000\024\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\000\000\006V\000\000\000\000\000\000\000\000\t\t\024.\000\000\t\t\000\000\000\000\000\000\0242\000\000\000\000\024:\000\000\000\000\000\000\024>\000\000\t\t\000\000\000\000\000\000\024B\t\t\t\t\t\t\000\000\t\t\t\t\000\000\t\t\000\000\000\000\000\000\026\218\000\000\000\000\t\t\024F\000\000\t\t\000\000\000\000\000\000\000\000\000\000\024\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\t\000\000\024&\000\000\024*\t\t\t\t\000\000\000\000\t\149\000\000\000\000\024.\000\000\024J\000\000\000\000\024N\0242\000\000\000\000\024:\000\000\000\000\000\000\024>\000\000\000\000\000\000\000\000\024R\024B\000\000\000\000\000\000\024V\000\n\024Z\000\000\024^\024b\024\030\024f\000\000\000\000\000\000\000\000\024F\000\000\024j\000\000\000\000\024n\024\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\024r\000\000\000\000\000\000\000\000\024v\024z\024.\000\000\000\000\000\000\024J\000\000\0242\024N\000\000\024:\000\000\000\000\000\000\024>\000\000\000\000\000\000\000\000\000\000\024B\024R\000\000\000\000\000\000\000\000\024V\000\n\024Z\024\030\024^\024b\000\000\024f\000\000\000\000\028\014\000\000\000\000\000\000\024j\024\"\000\000\024n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024&\000\000\024*\000\000\000\000\000\000\024r\000\000\000\000\000\000\024.\024v\024z\000\000\000\000\024J\000\000\000\000\024N\024:\000\000\000\000\000\000\024>\000\000\000\000\000\000\000\000\000\000\024B\000\000\024R\000\000\000\000\000\000\000\000\024V\000\n\024Z\000\000\024^\024b\000\000\024f\000\000\024F\000\000\000\000\000\000\000\000\024j\000\000\000\000\024n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\002\000\000\000\000\b\n\024r\000\000\000\000\000\000\000\000\024v\024z\000\000\024J\000\000\000\000\024N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\026\b\"\000\000\000\000\024R\000\000\000\000\000\000\000\000\024V\028:\024Z\000\000\024^\024b\b*\024f\000\000\000\000\0025\000\000\b2\b:\024j\000\000\000\249\024n\000\000\000\249\000\000\000\000\bB\000\000\000\000\bJ\000\000\bR\000\000\000\000\000\000\000\000\024r\000\000\000\000\000\000\000\000\024v\024z\000\000\003\150\003\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\bZ\003\158\000\000\000\000\000\000\000\249\000\000\000\249\000\249\000\000\000\000\000\000\000\225\000\000\000\000\000\225\000\000\003\198\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\225\000\225\000\000\000\000\bb\000\000\000\000\0025\000\000\000\000\000\000\bj\000\000\003\206\000\000\003\158\000\000\000\000\000\000\000\225\000\000\000\225\000\225\000\000\000\000\0025\000\000\000\000\000\000\0025\0025\000\225\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\br\bz\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\000\249\000\000\000\000\000\221\003\174\000\000\000\221\000\225\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\000\000\221\000\221\000\000\000\000\000\000\000\000\000\249\003\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\000\000\000\221\000\225\000\221\000\221\000\225\000\000\000\213\000\000\003\174\000\213\000\000\000\000\000\221\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\000\000\000\225\000\000\000\000\000\000\000\225\000\225\000\000\000\000\000\213\000\213\000\000\000\000\000\000\000\000\000\000\000\225\000\225\000\000\000\000\000\000\000\000\000\000\000\221\000\213\000\000\000\000\000\000\000\213\000\000\000\213\000\213\000\000\000\000\000\000\004&\000\000\000\000\001\001\000\000\000\213\000\000\000\000\003\166\000\000\000\213\000\000\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\150\003\190\000\000\000\000\000\221\000\000\000\000\000\221\000\000\000\000\000\000\003\174\000\000\000\213\000\000\003\158\000\000\000\000\000\000\001\001\000\000\001\001\004.\000\000\000\000\000\221\000\000\000\000\000\000\000\221\000\221\003\198\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\000\221\000\221\000\000\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\004&\003\174\000\000\000\245\003\206\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\000\000\213\000\213\000\000\000\000\000\000\003\150\003\190\000\000\000\000\000\000\000\000\000\213\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\000\000\000\245\003\214\000\245\000\245\001\001\000\000\000\237\000\000\003\174\000\237\000\000\000\000\003\198\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\000\000\001\001\000\000\000\000\000\000\001\001\001\001\000\000\000\000\003\150\003\190\000\000\000\000\000\000\000\000\000\000\0046\003\222\000\000\000\000\000\000\000\000\000\000\003\206\003\158\000\000\000\000\000\000\000\237\000\000\000\237\000\237\000\000\000\000\000\000\000\217\000\000\000\000\000\217\000\000\000\237\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\217\000\000\000\000\003\214\000\000\000\000\000\245\000\000\000\000\000\000\003\174\000\000\003\206\000\000\000\217\000\000\000\000\000\000\000\217\000\000\000\217\000\217\000\000\000\000\000\245\000\000\000\000\000\000\000\245\000\245\000\217\000\000\000\000\003\166\000\000\000\217\000\000\000\000\000\000\000\245\003\222\000\000\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\237\000\000\000\000\000\229\003\174\000\000\000\229\000\217\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\003\150\003\190\000\000\000\000\000\000\000\000\000\237\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\000\000\000\229\000\217\000\229\000\229\000\217\000\000\000\233\000\000\003\174\000\233\000\000\000\000\000\229\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\000\000\217\000\217\000\000\000\000\003\150\003\190\000\000\000\000\000\000\000\000\000\000\000\217\000\217\000\000\000\000\000\000\000\000\000\000\000\229\003\158\000\000\000\000\000\000\000\233\000\000\000\233\000\233\000\000\000\000\000\000\004&\000\000\000\000\000\253\000\000\000\233\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\150\003\190\000\000\000\000\000\229\000\000\000\000\000\229\000\000\000\000\000\000\003\174\000\000\003\206\000\000\003\158\000\000\000\000\000\000\000\253\000\000\000\253\004.\000\000\000\000\000\229\000\000\000\000\000\000\000\229\000\229\003\198\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\000\229\000\229\000\000\000\000\000\000\000\000\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\241\003\174\000\000\000\241\003\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\233\000\000\000\189\000\000\000\233\000\233\000\000\000\000\000\000\003\150\003\190\000\000\000\000\000\165\000\000\000\233\000\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\158\000\000\003\150\003\190\000\241\003\214\000\241\000\241\000\253\000\000\000\000\000\000\003\174\000\165\000\165\000\000\003\198\003\158\000\000\003\166\000\000\003\182\000\000\000\189\000\189\000\000\000\253\000\000\003\158\000\000\000\253\000\253\000\161\003\198\000\165\000\165\003\166\000\000\003\182\000\000\000\000\000\253\003\222\000\000\000\165\000\000\000\000\003\166\003\206\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\161\000\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\206\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\000\000\000\000\000\000\165\000\161\000\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\161\003\214\000\000\003\166\000\241\003\182\000\000\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\000\000\000\241\000\153\000\000\003\174\000\241\000\241\000\000\000\165\000\000\000\000\000\161\000\000\000\000\000\000\003\174\000\241\000\241\000\189\000\000\000\000\000\000\000\000\000\000\000\000\000\189\000\153\000\153\000\000\000\165\000\000\000\000\000\000\000\189\003\222\000\000\000\165\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\165\000\165\004&\000\153\000\153\000\000\000\000\000\161\000\000\000\000\000\000\000\000\000\000\000\153\003\174\000\000\003\166\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\150\003\190\000\161\000\000\000\000\000\000\000\000\000\000\000\000\000\161\000\000\000\000\000\000\000\000\000\000\003\158\000\000\000\161\000\161\000\153\000\000\000\197\004.\000\000\000\000\000\000\004&\000\000\000\000\000\000\000\177\003\198\000\000\000\000\003\166\000\000\003\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\150\003\190\000\000\000\000\003\150\003\190\000\000\000\000\000\000\000\153\000\000\000\000\000\000\003\206\000\000\003\158\003\174\000\000\000\000\003\158\000\000\000\185\000\185\000\000\000\000\000\177\000\177\000\000\000\000\000\000\000\153\003\198\000\000\000\157\003\166\000\177\003\182\000\153\003\166\000\000\003\182\000\000\000\000\000\000\000\000\000\153\000\153\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\000\000\000\157\000\157\000\000\003\174\000\000\000\000\003\206\000\000\000\000\000\000\003\206\000\000\000\000\000\000\000\000\000\157\000\000\000\197\000\000\000\000\000\000\000\157\000\157\000\000\000\197\000\000\000\000\000\000\000\000\000\000\000\169\000\157\0046\003\222\003\166\000\000\000\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\000\000\000\177\000\000\000\000\003\174\003\150\003\190\000\173\003\174\000\000\000\000\000\000\000\000\000\000\000\157\000\000\000\000\000\000\000\185\000\000\003\158\000\000\000\177\000\000\000\000\000\185\000\169\000\169\000\000\000\177\000\000\003\150\003\190\000\185\003\222\000\000\000\169\000\177\000\177\003\166\000\000\003\182\000\000\000\000\000\000\000\000\003\158\000\000\000\000\000\000\000\000\000\000\000\173\000\173\000\157\000\000\004&\000\000\000\000\000\000\000\000\003\174\000\173\000\000\000\000\003\166\000\000\003\182\000\169\000\000\000\000\000\000\000\000\000\181\000\000\000\157\000\000\000\000\000\000\000\000\003\150\003\190\000\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\157\000\157\000\000\000\000\003\206\003\158\000\000\003\150\003\190\000\000\000\000\000\193\004.\000\000\000\000\000\000\000\000\000\000\000\169\000\000\000\000\003\198\003\158\000\000\003\166\003\174\003\182\000\000\000\181\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\198\000\169\000\000\003\166\000\000\003\182\000\173\000\000\000\169\000\000\000\000\000\000\000\000\003\174\000\000\003\206\000\169\000\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\173\000\000\000\000\000\000\000\000\003\206\000\000\000\173\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\003\214\000\000\000\000\000\000\000\000\000\000\000\000\003\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\000\000\000\000\000\000\000\193\000\000\000\000\003\174\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\222\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(\001(\001(\001'\001'\001'\001'\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001\"\001\"\001\"\001\"\001\"\001\"\001\"\001\"\001\"\001\"\001\"\001\"\001\"\001\"\001!\001!\001!\001!\001 \001\031\001\031\001\031\001\030\001\030\001\030\001\029\001\029\001\029\001\028\001\028\001\028\001\027\001\026\001\025\001\024\001\024\001\023\001\023\001\022\001\022\001\021\001\021\001\020\001\020\001\019\001\018\001\017\001\016\001\015\001\014\001\r\001\012\001\011\001\n\001\t\001\b\001\007\001\006\001\005\001\004\001\004\001\003\001\003\001\002\001\002\001\001\001\001\001\000\001\000\001\000\001\000\000\255\000\255\000\255\000\255\000\254\000\254\000\254\000\254\000\253\000\253\000\253\000\253\000\252\000\252\000\252\000\252\000\251\000\251\000\251\000\251\000\250\000\250\000\250\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\249\000\248\000\247\000\247\000\247\000\247\000\247\000\246\000\246\000\245\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\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\240\000\239\000\239\000\238\000\238\000\238\000\237\000\237\000\236\000\236\000\236\000\235\000\234\000\233\000\233\000\232\000\232\000\231\000\230\000\230\000\229\000\229\000\228\000\228\000\227\000\227\000\226\000\225\000\224\000\224\000\223\000\223\000\222\000\222\000\221\000\221\000\220\000\220\000\219\000\218\000\218\000\217\000\217\000\217\000\217\000\217\000\217\000\216\000\216\000\216\000\215\000\214\000\213\000\213\000\213\000\213\000\212\000\212\000\211\000\210\000\210\000\210\000\209\000\209\000\209\000\209\000\209\000\208\000\208\000\208\000\208\000\207\000\207\000\207\000\207\000\206\000\206\000\206\000\206\000\205\000\204\000\204\000\203\000\203\000\203\000\202\000\201\000\201\000\201\000\200\000\199\000\199\000\198\000\198\000\197\000\197\000\196\000\196\000\196\000\196\000\195\000\195\000\194\000\194\000\194\000\194\000\194\000\194\000\193\000\193\000\193\000\192\000\192\000\192\000\192\000\192\000\192\000\191\000\190\000\189\000\189\000\188\000\188\000\187\000\187\000\186\000\186\000\185\000\185\000\184\000\184\000\183\000\183\000\183\000\183\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\173\000\173\000\172\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\150\000\149\000\149\000\148\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\147\000\146\000\146\000\146\000\145\000\144\000\143\000\142\000\141\000\140\000\139\000\138\000\137\000\136\000\135\000\134\000\134\000\134\000\133\000\133\000\133\000\132\000\132\000\132\000\132\000\131\000\130\000\129\000\128\000\127\000~\000}\000|\000{\000{\000z\000z\000z\000y\000y\000x\000x\000x\000w\000w\000w\000v\000u\000u\000u\000t\000s\000s\000r\000r\000r\000r\000r\000r\000r\000q\000q\000q\000q\000q\000q\000q\000p\000p\000p\000p\000p\000p\000p\000o\000o\000o\000o\000o\000o\000o\000n\000n\000n\000n\000n\000n\000n\000m\000m\000m\000m\000m\000m\000m\000l\000l\000k\000k\000j\000j\000i\000i\000h\000h\000g\000g\000f\000f\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000d\000d\000c\000c\000b\000b\000a\000a\000`\000`\000_\000_\000^\000^\000^\000^\000^\000]\000]\000\\\000\\\000\\\000\\\000[\000Z\000Y\000Y\000Y\000X\000X\000X\000W\000W\000W\000W\000W\000W\000V\000V\000V\000V\000V\000U\000U\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\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\000L\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000J\000J\000J\000I\000H\000G\000F\000F\000E\000E\000D\000C\000C\000C\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:\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!\000 \000\031\000\030\000\030\000\030\000\030\000\029\000\029\000\029\000\028\000\028\000\027\000\027\000\027\000\026\000\026\000\026\000\025\000\025\000\025\000\025\000\025\000\025\000\025\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\023\000\022\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") + (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)\001)\001)\001(\001(\001(\001(\001'\001'\001'\001'\001'\001'\001'\001'\001'\001'\001'\001'\001'\001'\001'\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001&\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001%\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001$\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001#\001\"\001\"\001\"\001\"\001!\001 \001 \001 \001\031\001\031\001\031\001\030\001\030\001\030\001\029\001\029\001\029\001\028\001\027\001\026\001\025\001\025\001\024\001\024\001\023\001\023\001\022\001\022\001\021\001\021\001\020\001\019\001\018\001\017\001\016\001\015\001\014\001\r\001\012\001\011\001\n\001\t\001\b\001\007\001\006\001\005\001\005\001\004\001\004\001\003\001\003\001\002\001\002\001\001\001\001\001\001\001\001\001\000\001\000\001\000\001\000\000\255\000\255\000\255\000\255\000\254\000\254\000\254\000\254\000\253\000\253\000\253\000\253\000\252\000\252\000\252\000\252\000\251\000\251\000\251\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\250\000\249\000\248\000\248\000\248\000\248\000\248\000\247\000\247\000\246\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\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\242\000\241\000\240\000\240\000\239\000\239\000\239\000\238\000\238\000\237\000\237\000\237\000\236\000\235\000\234\000\234\000\233\000\233\000\232\000\231\000\231\000\230\000\230\000\229\000\229\000\228\000\228\000\227\000\226\000\225\000\225\000\224\000\224\000\223\000\223\000\222\000\222\000\221\000\221\000\220\000\219\000\219\000\218\000\218\000\218\000\218\000\218\000\218\000\217\000\217\000\217\000\216\000\215\000\214\000\214\000\214\000\214\000\213\000\213\000\212\000\211\000\211\000\211\000\210\000\210\000\210\000\210\000\210\000\209\000\209\000\209\000\209\000\208\000\208\000\208\000\208\000\207\000\207\000\207\000\207\000\206\000\205\000\205\000\204\000\204\000\204\000\203\000\202\000\202\000\202\000\201\000\200\000\200\000\199\000\199\000\198\000\198\000\197\000\197\000\197\000\197\000\196\000\196\000\195\000\195\000\195\000\195\000\195\000\195\000\194\000\194\000\194\000\193\000\193\000\193\000\193\000\193\000\193\000\192\000\191\000\190\000\190\000\189\000\189\000\188\000\188\000\187\000\187\000\186\000\186\000\185\000\185\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\183\000\182\000\181\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\173\000\173\000\172\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\151\000\150\000\150\000\149\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\148\000\147\000\147\000\147\000\146\000\145\000\144\000\143\000\142\000\141\000\140\000\139\000\138\000\137\000\136\000\135\000\135\000\135\000\134\000\134\000\134\000\133\000\133\000\133\000\133\000\132\000\131\000\130\000\129\000\128\000\127\000~\000}\000|\000|\000{\000{\000{\000z\000z\000y\000y\000y\000x\000x\000x\000w\000v\000v\000v\000u\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\000n\000n\000n\000n\000n\000n\000n\000m\000m\000l\000l\000k\000k\000j\000j\000i\000i\000h\000h\000g\000g\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000f\000e\000e\000d\000d\000c\000c\000b\000b\000a\000a\000`\000`\000_\000_\000^\000^\000^\000^\000^\000]\000]\000\\\000\\\000\\\000\\\000[\000Z\000Y\000Y\000Y\000X\000X\000X\000W\000W\000W\000W\000W\000W\000V\000V\000V\000V\000V\000U\000U\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\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000P\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\000O\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000M\000M\000M\000M\000M\000L\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000J\000J\000J\000I\000H\000G\000F\000F\000E\000E\000D\000C\000C\000C\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;\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!\000 \000\031\000\030\000\030\000\030\000\030\000\029\000\029\000\029\000\028\000\028\000\027\000\027\000\027\000\026\000\026\000\026\000\025\000\025\000\025\000\025\000\025\000\025\000\025\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\023\000\022\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, "\001)\000\002\000\000\000\000\000\000\000\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\000\000\001m\002\242\000\000\001Q\001A\000\000\000\000\000\000\000\169\000\000\001\028\001x\000\000\000\000\002\158\000\000\003\210\000\000\000\000\000\000\003\248\000\000\004\"\000\000\000\000\000\000\004\166\000\000\004\212\000\000\000\000\005\"\000\000\005P\005\176\000\000\000\000\005\218\000\000\005\252\000\000\000\000\000\000\006\002\000\000\006(\000\000\006\136\000\000\007\146\000\000\007\148\007\160\000\000\000\000\b\002\000\000\b\020\000\000\0003\003\232\000\147\000\000\000\000\000\000\000\000\000\000\000\000\000\243\000}\000\000\000\142\000\000\000\000\t\186\000\000\000\000\004\196\000\000\000\000\000\000\001h\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\218\000\000\000\000\001P\011L\000\000\000\000\r,\000\000\000\000\000\000\000\000\bd\000\000\b\168\004\024\000\000\b\210\000\000\000\000\t\022\000\000\000\000\tT\000\000\t\\\000\000\000\000\000\000\td\000\000\002b\t\194\000\160\000\000\000\000\000\000\000\000\000\000\000\000\000\152\003\230\000\000\000\170\000\000\000\000\000\000\t\196\000\000\005F\000\000\000\137\001\023\000\r\000\000\000\000\003\136\003\156\000\000\004\172\000\000\b\132\000\224*\134\n0\026\164\007\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\174*\134\000\000\000\000\rh\r\130\016V\000\000\018\128\000\000\nf\018\184\000\000\000\000\000\000\000\140\000\000\005\198%H\011\208\000\000\000\0007P\000\000\001\254\000\000\030,\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006T\000\000\000\000\012b\000\000\rH\000\000\016.\000\000\016\144\000\000\016\228\000\000\019x\000\000\0210\000\000\023X\000\000\023\248\000\000\026V\000\000\031D\000\0007d\000\000\000\000\000\000\000\000\000\000\027\154\000\000 \028\000\000!\134\000\000\"\208\000\000'\252\000\000)\018\000\000>\182\000\000>\202\000\000?\018\000\000?<\000\000?\206\000\000?\232\000\000?\234\000\000@\014\000\000@\028\000\000@*\000\000\031\134\000\000\000\000!\188\000\000\000\000\000\000\000\000\003v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\0307|\000\000\001\172\000\000\000\000\002 \004\"\000\000\002n\t\200\000\000\000\000\t\220\000\000\t\228\t\254\000\000\000\000\n\"\000\000\n0\000\000\000\000\000\000\n6\000\000\n8\000\000\n:\000\000\nX\000\000\000\000\nf\000\000\nl\np\000\000\000\000\nv\000\000\n\160\000\000\000\000\000\000\n\162\000\000\n\164\000\000\n\168\000\000\n\182\000\000\n\190\n\194\000\000\000\000\n\196\000\000\n\222\000\000\000\018\004\128\000\000\n\226\000\000\n\232\bd\000\000\n\236\000\000\000\000\n\238\000\000\n\240\000\000\011\016\000\000\000\000\000\000\011\024\000\000\011\026\000\210\000\000\011$\000\000\r\228\014z\000\000\004\220\000\000\005\024\000\000\000\000\001\134\r\144\000\000\000\000\000\000\000\000\rl\018f\000\000\018\220\000\000\000\000\000\000\005\174\000\000\005\226\000\000\005L\000\000\000\000\000\000\000\000\000\000\000\000\005\210\000\000\000\000\000\228\000\000\001\n\000\000\000\000\000\000\025x\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002n\007:\005\144\000\000\011B\000\000\011J\nZ\000\000\011L\000\000\000\000\000\000\006h\000\000\000\000\000\000\000\000\002`\000\000\000\000*\198\000\000\000\000\000\000\025p\000\000\000\000\000\000\000\000\000\000\000\000\021\146\000\000\000\000\024.\000\000\000\000\025:\000\000\028\190\000\000\000\000\000\000\007\244\000\000\027\132(v\000\000\000\000(\250)\134\000\000-\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@D\000\000.\204\000\0007\128\000\000@\242\000\000A\000\000\000A\028\000\000A\134\000\000A\188\000\000A\216\000\000A\252\000\000B\n\000\000B\030\000\000B,\000\000Bf\000\000B\184\000\000B\224\000\000\000\000)\160\000\000\000\000\000\000)\242\000\000\000\000\000\000\000\000\000\000\000\0008\012\000\000\000\000\000\000\b\216\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\023\000\000\000\0008n\000\000\000\000\000\000\002\182\001\208\000\000\000\000\000\000\000\000\r\156\000\000+\020\000\000\000\000\000\000\000\000\000\000+f\000\000\000\000\000\000+\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011N\018\186\000\000\011P\000\000\000\000\000\000\000\000\000\000\011V\000\000\000\000\002H\004n\000\000\005\030\000\000\000\000\000\000\002\174\000\000\r\194\003<\011Z\000\000\000\000\011^\000\000\011b\011t\000\000\000\000\011v\000\000\011z\000\000\000\000\000\000\011\138\000\000\011\150\000\000\011\162\000\000\011\180\000\000\000\000\011\182\000\000\011\186\011\192\000\000\000\000\011\198\000\000\011\200\000\000\000\000\000\000\011\208\000\000\011\214\000\000\011\220\000\000\011\232\000\000\012\n\012\028\000\000\000\000\012 \000\000\0120\000\000\001\166\014\156\000\000\0124\000\000\0126\015\190\000\000\0128\000\000\000\000\012B\000\000\012P\000\000\012R\000\000\000\000\000\000\012X\000\000\002\220\000\000\000\000\000\000\003\020\005\174\000\000\000\000\003\176\000\000\000\000\012Z\021.\000\000\012\\\000\000\000\000\000\000\001\014\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\n\180\026\160\000\000\012h\000\000\012l\028\022\000\000\012p\000\000\000\000\r\150\012x\000\000\000\000\012\130\000\000\012\134\012\144\000\000\000\000\012\146\000\000\012\158\000\000\000\000\000\000\012\162\000\000\012\178\000\000\012\188\000\000\012\192\000\000\000\000\012\200\000\000\012\212\012\214\000\000\000\000\012\220\000\000\012\226\000\000\000\000\000\000\012\230\000\000\r\006\000\000\r\b\000\000\r\014\000\000\r\024\r(\000\000\000\000\r,\000\000\r0\000\000\004l\017T\000\000\r8\000\000\r>\0204\000\000\rF\000\000\000\000\rJ\000\000\rT\000\000\rd\000\000\000\000\000\000\rp\000\000\rv\029\232\000\000\r~\000\000\000\000\011\170#\244\000\000\r\132\000\000\r\134$\152\000\000\r\140\000\000\000\000\000\000\000\000\000\000\000\000\000\0008\210\000\000\014`\000\000\000\000\000\00096\000\000\000\000\000B\000\000\000\000\000\000\003.\006\196\000\000\000\000/4,N\000\000\027h,\172\000\000\000\000\000\000/8\000\000\000\000-F\000\000\000\000\000\000\000(\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\000\000\000\000\000\030\212\000\000\000\000 \000\000\000\t\236\000\000\000\000\000\000\t\216\000\000#h\000\000\000\0009`\000\000\000\000\000\000\011\194\000\000\000\000\000\000\000\000\000\000\000\0009\196\000\0009\200\000\000\000\000\000\000-h\026\002\000\000\000\000\000\000\000\000\000\000/\160\000\000\000\000\000\000\000\000\r0\000\000\000\000\000\000\000\000\011\134\000\000\015\218\000\000\000\222\000\000\000\000\000\000CF\000\000Cf\000\000C\204\000\000C\236\000\000C\238\000\000C\250\000\000D\028\000\000DT\000\000D\162\000\000D\196\000\000E\n\000\000E\014\000\000E\030\000\000E*\000\000\000\000\000\0000\n\000\000\000\000\002V0v\000\000\000\0001\030\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\003\130\000\000\b.\000\000\000\000\012\154\000\000\000\000\000\0000\142\000\000\000\000\000\000\000\000\000\000\016\250\000\000\000\000\000\000\001\023\000\0001b\000\000\000\000\000\000\000\000\004\182\016\152\000\0001\132\000\000\000\000\000\000\000\000\020n\000\0001\196\000\000\000\000\000\000\000\000\002\148\000\000\007Z\000\000 \024-v\000\000\000\000\000\0009\228\000\000\000\000\000\000\003\196\000\000:\014\000\000\000\000\000\000:\182\000\000\000\000\000\230\000\000\025*\000!.\016\000\000\000\000\000\000\004d\007\130\000\000\000\000\000\000\000\000\000\000\000\000&\n\000\000\000\000-\014\000\000\000\000/\232\000\000\007\190\000\000\000\000\000\000\r\134\000\000#\234\000\000\000\000;\014\000\000\000\000\000\000\014\002\000\000\000\000\000\000\000\000\000\000\000\000><\000\000>V\000\000\000\000\000\000\005Z\000\000\000\000\000\000\000\000\000\000\000\000E\164\000\0001\224\000\000;\156\000\000E\196\000\000E\212\000\000E\228\000\000F\022\000\000F>\000\000F~\000\000F\230\000\000F\244\000\000G\030\000\000G\142\000\000G\156\000\000G\196\000\000G\244\000\000\000\000\004\130\000\000\005f\000\000\r\252\0026\b\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000;\182\000\000\019\"\007&\014F\000\000\000\000\000\0002P\000\0002\152\000\0002\232\000\000%\172&\168\000\145\t \000\000\000\142\012\138\000\000\000\000\000\000\r~\000\000\000\000\015\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;\252\000\000\000\000\000\000\000\000\000\000\000\000$~\000\000&\208\000\000\000\000\000\000\000\000\015~\000\000\000\000\007\234\000\000\000\000\000\000\026\140\001P\000\000\027\026\000\000\000\000\020n\000\000\002\170\000\000\000\000\016\016\000\000\027\156\000\000\000\000$\150\000\000\000\000\000\000\n\020\000\000\000\000\011\168\000\000\000\000#R\000\000\000\000\000\0003$\000\000\000\000\000\000-~\000\000\000\000\000\000\000\0003\180\000\000\000\000\000\000\000\000\004\204\021\202\000\0003\204\000\000\000\000\000\000\000\000\000\000\000\000\016|\000\000\000\000\003J\000\000\016\164\000\000\n\020\000\000\000\000\005~*@\000\000\005\250\000\000\000\000\000\000\000\000\005Z\000\000'\014\000\000\028\152\005\192\029\026\000\000\0066\000\000\017\246\000\000\018x\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\250\029T\003\224\030l\000\000\000\000\000\000\005\204\000\000\018\160\000\000\006\"\000\000\000\000\n\166\003\188\031\000\000\000\005\226\000\000\020\030\031\146\000\000\000\000\020\160\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006.\tT\000\000\006\184\000\000\000\000\000\000\000\000\004\228\000\000\020\200\000\000\000\000\000\000!\234<\000\000\000\000\000\000\000\"\198\000\000\000\000\000\000\000\000\000\000\003\180\014\190\000\000\000\0004@\000\000\000\000\004\"\000\000\015\024\000\000\000\000/\\\000\000\000\000\000\0004b\000\000\000\000\000\000\000\0004z\000\000\000\000\007\176\017\188\000\000\000\0004\210\000\000\000\000\006\234#\210\000\000\018D\000\000\000\0005z\000\000\000\000\000\000\000\000\000\000\000\000\000\000%\194\000\000\000\000\000\000\003\226\000\000\000\000\018\166\000\000\000\000/\218\000\000\000\000\000\0005\164\000\000\000\000\000\000\000\00062\000\000\000\000\007\200\019N\000\000\000\0006\138\000\000\000\000\007\014\000\000\000\000\000\000\000\000\005Z\003\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\030\000\000\021J\000\000\000\000\000\000\001\238\007\162\006\200\006\203\006*\006+\0019\001\249\000\153\002m\006\216\001\204\001\250\007Z\007\157\004\252\001\251\0019\002\202\000z\001\187\000k\001\252\0049\005\184\000k\000V\004:\000V\000V\006l\001\187\006\213\000\218\006\206\000S\000\219\005N\0019\003\224\007?\006,\003\238\000\218\006\224\0068\000\219\003\250\001\206\004\203\004\206\000$\0049\000V\002\232\004\183\004:\000k\000V\001)\001\228\0047\003\251\004J\001\229\003\243\007\164\000\220\0069\000S\000(\000z\000\153\004\245\006<\006*\006+\000\220\006,\000\153\003\244\000S\006)\005*\007Z\007\157\004\252\004z\004{\004\185\004\233\000*\000\153\000\156\000\162\000\153\000\161\002<\006'\004G\001\244\000o\000{\004\190\003\248\000V\005e\000\218\004\207\007\163\004H\000S\000r\003\243\005v\001\198\000c\006\219\007_\004}\004\183\004\206\003\238\0049\004\191\000o\000\128\004:\005\156\000\153\000\156\000\157\001\189\000\161\000\163\004G\000r\007\166\001\226\000V\000c\001\238\006\225\000\218\000\153\003\243\004H\003\"\004\193\006,\004\253\000V\007\165\006\214\004\185\004\215\000\153\000.\007\167\005\022\005q\0018\000\153\001\152\004G\005(\004\244\004S\004\190\0019\001\162\000\163\000\218\004\207\007\163\004H\0055\000o\001p\000\218\0000\000V\001\245\007_\001\155\004T\000S\006\233\000r\004\191\004U\004\183\000c\005\204\004V\002R\006\243\0013\000k\002o\004W\001\228\006\212\005\195\0047\001\229\004J\0019\005\206\000\209\005\011\000a\000S\004\193\000\210\004\253\002?\007\165\005\022\0003\004\215\004x\000\153\007\167\006\213\004\185\000c\007Z\007\157\004\252\001\152\004\244\004S\004|\004R\004G\002%\001\162\000\164\004\190\001\248\001\244\0007\000\218\004\207\007\163\004H\005\r\000\153\007.\004T\001\155\007/\001\184\007_\004U\000V\0058\001\249\004V\004\191\002\199\006H\001\250\004\206\004W\0049\001\251\000\164\000k\004:\0073\005\011\001\252\000\203\0047\0050\004J\000\211\000S\007\174\001\163\000V\001\142\004\193\001\136\004\253\002q\007\165\007\145\0006\004\215\007\146\000\153\007\167\0019\0050\000\153\007Z\007\157\004\252\005H\004\244\004S\003W\001\164\005\194\001\139\001\156\005\012\001\157\0009\000\217\0052\0047\001\186\004J\007p\0019\006B\000\218\004T\001\136\001\245\005\030\000S\004U\007,\000;\005-\004V\000?\001\192\0051\004\183\004\206\004W\0049\005J\005\b\0047\004:\004J\001\171\001\139\006\214\002&\0022\001\163\000V\000A\007\178\001\186\006\132\006*\006+\007\150\001\246\000\153\002\200\0047\0060\004J\003U\005\020\004\252\007h\0019\004\185\001\166\005H\001\247\001\169\007o\003\160\001\156\0049\001\157\004G\0019\004:\001\248\004\190\005\025\000S\0019\000\218\004\207\007\163\004H\0047\000\218\0048\005\168\000\219\000V\0061\007_\000C\001\249\004\206\001\187\0049\004\191\001\250\004\183\004:\005I\001\251\004z\004{\005\168\007,\001\187\001\252\006@\000\209\005\207\002\029\006\217\000k\000\213\0049\006\024\006\025\000\220\004:\004\193\006,\004\253\005\170\007\165\005\206\000\153\004\215\005\014\000\164\007\167\0076\004\185\004O\007;\000\153\005w\004\183\004\244\004S\003U\005\169\004G\000k\001\200\0049\004\190\000V\005\162\004:\000\218\004\207\007\163\004H\007k\000\153\007l\004T\005\214\007s\0076\007_\004U\004\183\0019\000\226\004V\004\191\007\027\000k\000S\004\185\004W\005\216\000\203\000\164\000\227\004\002\000\211\004O\000S\004G\000\200\002Q\007\204\004\190\006a\006*\006+\000\218\003X\004\193\004H\004\253\007\241\007\165\0062\004\185\004\215\000S\007\154\007\167\000\153\007k\007;\007l\005\016\004G\007\242\004\244\004S\004\190\000\217\0019\003\222\000\218\004\207\000\153\004H\005\187\005\"\0047\003U\004J\000E\000I\000S\004G\004T\007G\004\193\000H\004\191\004U\001\198\000\218\001,\004V\004H\000\153\000V\004\203\000k\004W\003U\005\020\004\252\000\203\004\197\004S\000V\000\204\004Q\007\169\004z\004{\004\193\004G\004\253\004\002\005\028\006,\000z\004\215\005\217\000\218\004\220\004T\004H\000V\006b\007h\004U\007\029\004\244\004S\004V\005\220\007u\005\216\000K\004\206\004W\0049\000S\000\217\0047\004:\004J\000M\005\228\000\218\005\216\004T\000\219\004S\000V\005\231\004U\007\226\004\207\007A\004V\007=\000\153\005\230\004z\004{\004W\003U\005\020\004\252\005\230\004T\007a\0047\005\234\004J\004U\0010\000S\005\242\004V\000\005\007\196\000\220\007\196\001\231\004W\000}\007@\005\216\006\160\000\153\004z\004{\005\244\007|\003U\005\020\004\252\0078\005\239\004I\007\250\007\207\004\206\004\215\0049\0019\004\220\004\183\004:\000\252\000V\006\161\000\164\004\166\004\244\006\164\006*\006+\003x\000\131\000\218\006w\003y\000\219\000o\001u\0078\003\227\000\222\007<\007\154\004\206\000\253\0049\0019\000r\000\254\004:\004\207\000c\000\130\004\185\006N\000\224\006x\007v\004\158\006{\006*\006+\007\154\004G\000\209\000S\000\220\004\190\007C\000\213\007\224\000\218\004\207\007;\004H\005 \005\"\006O\006*\006+\000S\007w\000\153\007k\004\183\007l\000\133\007J\004\191\003W\000k\000\209\005\241\0019\003z\007\160\000\210\004\215\003{\004\203\004\220\000n\006,\000\153\000\156\000\157\001\194\000\161\004\244\002.\000S\005\245\004\193\004\183\004\253\007\176\005\028\000\136\004\185\004\215\007Q\000\138\004\220\007\245\000k\000\142\005\244\005\248\004G\000\203\004\244\004S\004\190\000\211\006,\000V\000\218\004\207\002\226\004H\005G\005\"\005\216\004\159\007\203\000\163\007\197\004\185\007V\004T\000V\000k\006,\004\191\004U\007\227\000\203\004G\004V\007~\000\211\004\190\003W\b\026\004W\000\218\004\207\000\217\004H\005\191\005\"\004\203\002l\000\160\0047\001;\004J\004\193\b\027\004\253\000V\005\028\004\191\000S\004\215\001>\007\246\004\220\007\235\001B\000S\002I\000\153\001.\000\217\004\244\004S\003U\005\020\004\252\007\253\007\196\001A\0047\003\136\004J\004\193\000o\004\253\000S\005\028\007\252\000\218\004\215\004T\003\137\004\220\006\166\000r\004U\001D\000\153\000c\004V\004\244\004S\007Z\001F\004\205\004W\001J\001L\001N\007\234\004\206\003x\0049\003}\001\204\003y\004:\007\235\007?\004T\004\233\000q\000\218\001P\004U\000\219\006\137\007\196\004V\000V\001S\000\200\002;\001W\004W\001V\000V\003=\001Y\004\206\007\234\0049\000S\003\243\0047\004:\004J\006R\000\209\000\218\0010\001\206\000\219\000\210\007\234\000V\000\220\007\170\004\238\001[\001_\001a\000\153\001c\006a\006*\006+\007Z\003\138\004\205\001e\003\160\001\136\0016\001i\003z\001h\001k\000u\003{\004\183\0019\004\242\000\220\000\252\006a\006*\006+\000S\000S\001m\000k\001r\004\233\001\139\001x\000\203\001w\001z\001|\000\204\000S\001\186\000\222\004\206\007\235\0049\000\253\000k\004\183\004:\000\254\000V\000\203\004\185\001~\003\243\000\211\000\224\001\130\001\203\000\209\007\155\001\198\004G\001\135\000\210\000o\004\190\007\199\0024\004\238\000\218\004\207\000\217\004H\007z\005\"\000r\006,\001\191\003\162\000c\004\185\001\197\001\196\002f\002e\006\148\004\191\002k\000\217\002y\004G\002|\004\242\002\128\004\190\000V\000V\006,\000\218\004\207\007\156\004H\002\127\002\130\000\153\002\132\006\174\003\164\000V\007_\004\193\004\183\004\253\002\136\005\028\007\159\007\201\004\215\000k\002\138\004\220\000o\003\136\000\203\003\199\002\140\000\153\000\211\004\244\004S\000\218\0076\000r\003\137\002\142\002\145\000c\002\149\000S\004\193\002\148\004\210\007\161\002\151\002\153\004\185\004\215\004T\002\157\007\167\000\218\002\159\004U\000\219\002\161\004G\004V\004\244\004S\004\190\002\163\000\217\004W\000\218\004\207\007\156\004H\000\218\003\167\0047\000\219\004J\001\152\000\209\007_\004\157\004T\002\167\000\210\001\162\007\159\004U\000\164\001\198\000\220\004V\002\166\000\153\002\169\000\200\0028\004W\007Z\001\155\004\205\003\134\002\171\004\224\002\176\002\182\002\181\000\220\000\200\0027\004\193\002\184\004\210\007\161\004\158\000\153\003\169\004\215\002\186\002\188\007\167\000\209\002\192\002\209\002\208\000S\000\210\000S\004\244\004S\002\225\003\170\002\231\000\153\002\230\004\206\0038\0049\002\234\000k\0047\004:\004J\002\237\000\203\002\241\000\218\004T\000\211\000\219\002\240\002\243\004U\007\158\001+\000k\004V\002\245\000\153\002\249\000\203\000x\004W\003U\000\204\004\205\000S\002\251\000k\0047\000S\004J\002\253\000\203\002\255\000\153\000\156\000\204\003\002\001\137\000\220\000k\000\217\001\176\003\006\003\005\000\203\000\153\003\b\006\226\000\211\003\n\003U\003\014\004\205\000V\001\163\000V\000\217\004\159\004\206\001\152\0049\004\161\001\155\004\183\004:\0077\001\180\003\016\003\018\000\217\006\227\003\020\006\230\006*\006+\000\163\003\024\0047\003\230\004J\001\155\001\156\000\217\001\157\003\023\000\226\003\026\004\206\003\028\0049\000S\0019\003!\004:\004\158\003'\000\229\004\185\000V\003&\005\199\003)\004\176\005\198\005B\0078\003+\004G\000\153\000\156\001\138\004\190\000\161\0019\003-\000\218\004\207\007\156\004H\000\218\0031\006N\000\219\0037\000S\000o\007_\0036\004\183\005@\003<\003B\007\159\005B\003A\000\218\000r\003\160\000\219\0049\000c\006#\003\159\004:\006O\006*\006+\006,\000\218\006L\000\163\000\219\0067\000\220\006E\006q\004\193\004\183\004\210\007\161\000V\000\218\004\185\004\215\000\219\006\159\007\167\000S\006\184\000\220\006\186\006\196\004G\006\198\004\244\004S\004\190\006\208\006\235\004\159\000\218\004\207\000\220\004H\000S\004<\001\156\007\135\001\157\007\181\001\179\004\185\007\185\004T\000V\000\220\0019\0057\004U\007\205\000\226\004G\004V\000z\001\156\004\190\001\157\004\183\004W\000\218\004\207\000\231\004H\007\211\0019\007\212\007\217\007\218\007\223\006,\0047\004\193\004J\004\210\0059\007\222\0057\007\230\004\215\000S\004\198\004\220\007\232\007\238\007\239\007\243\007\244\000V\000\153\004\244\004S\004\185\002M\003U\004\200\004\205\007\247\004E\001\139\001\202\004\193\004G\004\210\0059\000V\004\190\001\186\004\215\004T\000\218\004\220\007\248\004H\004U\006\246\006\199\003x\004V\004\244\004S\003y\007\251\007\254\004W\007\255\b\016\004\191\b\005\b\014\b\n\004\206\004\141\0049\b\r\b\022\000\153\004:\004T\006\200\006\203\006*\006+\004U\0047\b\020\004J\004V\b\024\b\029\000V\004\193\001\136\004W\000\000\004\212\006a\006*\006+\000\209\000o\002\174\000\153\000S\000\210\000\000\000\000\003U\004\213\004\252\004S\000r\000\000\000\000\001\139\000c\000\000\003\160\000\000\000\200\0026\003z\001\186\000\000\000\000\003{\000\000\000\000\004T\006U\000\000\000\000\000\164\004U\000\000\000S\000\000\004V\0047\000z\004J\004\183\000\000\004W\004\206\007h\0049\005`\000\209\004\255\004:\000\000\007j\000\210\000\000\006,\000\153\000\000\0047\000k\004J\003U\004\213\004\252\000\203\000\000\000\000\000\000\000\211\005\004\000\000\006,\004\164\000V\000\000\004\185\000\153\000\164\000\000\000k\006\189\003U\004\213\004\252\000\203\004G\000\000\003\162\000\204\004\190\000\209\003W\005h\000\218\004\207\000\210\004H\000\000\004\206\000\000\0049\000\000\000\217\006\226\004:\004\158\000\000\000\000\000k\000\000\005\001\000\000\000S\000\203\004\183\000\000\003\164\000\211\004\206\000\153\0049\000\000\000\217\000\000\004:\000\000\006\227\000\000\006\230\006*\006+\003\136\000\000\003\166\004\193\000\000\004\210\005\003\006\226\000\218\000\000\004\215\003\137\000\000\005\005\000o\002\179\000\000\004\185\000\000\000k\000\217\004\244\004S\000\000\000\203\000r\000\000\004G\000\211\000c\006\227\004\190\006\230\006*\006+\000\218\004\207\004\183\004H\000\000\004T\000\000\007\024\000\000\000\000\004U\003\167\000\000\000\000\004V\000\218\000V\004\191\000\219\000\000\004W\001\152\004\183\007k\004\159\007l\000\000\000\217\001\162\000\000\000\000\000\000\000\153\0019\000\000\000\218\004\185\006,\000\219\000\000\000S\004\193\001\155\004\253\000\000\004\254\004G\000\000\004\215\000\220\004\190\004\220\000\000\003\169\000\218\004\207\004\185\004H\000\000\004\244\004S\0047\000\000\004J\000\218\000\000\004G\000\219\003\170\000\220\004\190\004\191\006,\000\000\000\218\004\207\000z\004H\004T\000\153\000\000\000\000\000\000\004U\003U\005\020\004\252\004V\000\000\000\000\000\000\004\191\000S\004W\000\000\004\193\000\226\004\253\000\220\004\254\000\000\007h\004\215\000\164\000\000\004\220\000\218\000\233\007r\000\219\000V\000\000\000\000\004\244\004S\004\193\000\000\004\253\003\252\004\254\000\000\004\206\004\215\0049\000\000\004\220\0047\004:\004J\000\000\000\200\0025\004T\004\244\004S\000\153\000\000\004U\000\000\001\163\000\220\004V\004\000\000\000\000\153\000\226\0047\004W\004J\003U\005\020\004\252\004T\000\000\007\t\000\000\000\235\004U\000\200\000\202\000S\004V\000V\003\240\000\153\000\000\001\156\004W\001\157\003U\005\020\004\252\000\000\000\000\000\000\000\000\0019\000\153\000\156\000\157\002c\000\161\000o\003\031\000\000\000\000\004\206\000\226\0049\007\016\000k\004\183\004:\000r\000\153\000\203\000\000\000c\000\237\000\204\000\000\000\000\000\000\001\152\000\000\000\000\004\206\000\000\0049\000S\001\175\0047\004:\004J\000\000\000\000\000\000\000\000\000k\000\163\000\000\000\000\000\000\000\203\001\155\004\185\000\000\000\204\000\000\000\000\000V\000\000\000\000\000\217\000\000\004G\004\176\005\017\000\000\004\190\000\000\000\000\000\000\000\218\004\207\007k\004H\007l\005\027\000\164\000\000\000\000\000\000\000\000\000\209\0019\004\183\000\000\000\000\000\210\004\191\000\217\001\152\000\000\005x\000\000\000\000\000\000\000\000\001\154\000\000\003\160\006\229\0049\000\000\000\000\004\183\004:\000\000\000V\000\000\000\000\006N\001\155\004\193\000\000\004\253\000\000\005\028\000\000\004\185\004\215\000\000\000S\004\220\006\227\000\000\006\230\006*\006+\004G\000\000\004\244\004S\004\190\006O\006*\006+\000\218\004\207\004\185\004H\000\218\005\029\000k\000\219\000\000\000\164\000\000\000\203\004G\004T\000\000\000\211\004\190\004\191\004U\000\000\000\218\004\207\004V\004H\005\129\005/\000\000\000\000\004W\0047\000\000\004J\000\218\004\183\000\000\000\219\000\000\004\191\000\220\000\000\001\156\004\193\001\157\004\253\000\000\005\028\006\026\000\153\004\215\000\217\0019\004\220\003U\005:\004\252\000V\000\000\000\000\000\164\004\244\004S\004\193\001\136\004\253\006,\005\028\000\220\004\185\004\215\006\027\000\000\004\220\006,\005\147\006\030\006*\006+\004G\004T\004\244\004S\004\190\000\000\004U\001\139\000\218\000\000\004V\004H\004\206\000\000\0049\001\186\004W\0047\004:\004J\000\000\004T\001\156\000S\001\157\004\191\004U\000\000\000\000\000\000\004V\003W\0019\000\000\000\000\000\153\004W\0047\000\000\004J\003U\005:\004\252\000\000\006\226\000\000\000\000\000\000\005P\004\193\000\000\000\218\000S\000\000\000\219\000\153\005<\000\000\000\000\000z\003U\004\213\004\252\000\000\000\000\000\164\000\000\006\227\004S\006\230\006*\006+\006,\000\000\000\000\000\000\000\000\004\206\000\000\0049\005\163\000\000\004\183\004:\000\000\000\220\004T\000\000\000\000\000\209\000\000\004U\000\000\000V\000\210\004V\000\000\004\206\000\000\0049\000\000\004W\0047\004:\004J\000\000\000\153\000\156\000\157\002\206\000\161\000\000\000\000\000\000\006[\000\000\004\185\000\000\000\000\000\000\000\153\005>\000V\000\000\000\000\003U\004G\004\205\000\000\000\000\004\190\000\000\000\226\006w\000\218\004\207\000\000\004H\000\200\001\219\000\000\000\000\000\000\000\239\006,\000\000\000\000\004\183\000\163\000k\000\000\004\191\000\000\000\000\000\203\000\000\006x\000\000\000\211\006{\006*\006+\004\206\000\000\0049\000o\003$\004\183\004:\000\000\000\000\000\000\000\000\000\000\000\000\004\193\000r\004\253\000\000\005=\000c\004\185\004\215\000\000\000\000\004\220\006-\000\000\000\000\000\000\000\000\004G\000\217\004\244\004S\004\190\000\000\000\000\000k\000\218\004\207\004\185\004H\000\203\005\185\003W\000\000\000\204\005B\000\164\000\000\004G\004T\000\000\000\000\004\190\004\191\004U\000\000\000\218\004\207\004V\004H\000\000\004\003\000\000\000S\004W\0047\000\000\004J\000\000\004\183\000\000\006,\000\000\004\191\000\000\000\000\000\000\004\193\000\217\004\253\000\000\005=\000\000\000\153\004\215\004\007\000\000\004\220\003U\000\000\004\205\000\000\000\000\000\000\000\000\004\244\004S\004\193\007\019\004\253\000\000\004\254\000\000\004\185\004\215\000\000\000\000\004\220\000\218\000\000\000\000\000\219\000\000\004G\004T\004\244\004S\004\190\000\000\004U\000\000\000\218\004\207\004V\004H\004\206\000\000\0049\000\000\004W\0047\004:\004J\000V\004T\000\000\001\136\000\000\0057\004U\000\000\000\000\000\220\004V\000\000\000\000\000\000\000\000\000\153\004W\0047\000\000\004J\003U\000\000\004\205\000\000\000\218\001\139\000\000\000\219\000\000\004\193\000\000\004\210\0059\001\186\005\201\000\153\004\215\000\000\005B\004\220\003U\000\000\004\205\000\000\000\000\000\000\000\000\004\244\004S\000\000\000\000\000\000\000\000\000\000\006\143\000\000\000\226\004\206\000\220\0049\000\000\000\000\004\183\004:\000\000\000\000\004T\000\241\000\000\000\209\006N\004U\000\000\000\000\000\210\004V\000\000\004\206\000\000\0049\000\000\004W\0047\004:\004J\000\000\000\000\000\164\000\000\000\000\000\000\000\000\000\000\006O\006*\006+\004\185\000\000\000\000\005\203\000\153\000\000\004\246\005B\000\000\003U\004G\004\205\000\000\000\000\004\190\000\000\000\000\000\000\000\218\004\207\000\000\004H\000\000\007D\000\000\000\000\000\000\005B\000\000\000\000\004\250\004\183\000\000\000k\000\000\0057\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\000\004\206\000\000\0049\000\000\000\000\004\183\004:\000\209\000\000\000\000\000\000\000\000\000\210\004\193\000\000\004\210\0059\000\000\000\000\004\185\004\215\000\000\000\000\004\220\000\000\000\000\006,\000\000\000\000\004G\000\217\004\244\004S\004\190\000\200\001\222\000\000\000\218\004\207\004\185\004H\000\000\007R\000\000\000\000\000\000\005B\000\000\000\000\004G\004T\000\000\000\000\004\190\0057\004U\000\000\000\218\004\207\004V\004H\000\000\000\000\000\000\000\000\004W\0047\000k\004J\000\000\004\183\000\000\000\203\000\000\0057\000\000\000\211\007L\004\193\000\000\004\210\0059\000\000\000\000\000\153\004\215\000\000\000\000\004\220\003U\004\213\004\252\000\000\000\000\000k\000\000\004\244\004S\004\193\000\203\004\210\0059\000\000\000\204\004\185\004\215\000\000\000\000\004\220\000\218\000\217\000\000\000\219\000\000\004G\004T\004\244\004S\004\190\000\000\004U\000\000\000\218\004\207\004V\004H\004\206\000\000\0049\000\000\004W\0047\004:\004J\000\000\004T\000\000\000\217\000\000\0057\004U\000\000\007\128\000\220\004V\006Y\000\000\000\000\000\000\000\153\004W\000\000\000\000\000\000\003U\004\213\004\252\000\000\000\000\005K\0047\000\000\004J\004\193\000\000\004\210\0059\000\000\000\200\001\225\004\215\000\000\000\000\004\220\000\000\000\000\000\000\000\000\000\153\000\000\000\000\004\244\004S\003U\000\000\004\252\000\000\000\000\006N\000\218\000\226\004\206\000\219\0049\000\000\001\226\004\183\004:\001\227\000\000\004T\000\243\000\000\000\000\000\000\004U\000\000\000\000\000\000\004V\000\000\006O\006*\006+\000\000\004W\000\218\000\153\000\000\000\219\004\206\000\000\0049\000\220\000\000\000\000\004:\000\000\000k\006N\004\185\000\000\000\000\000\203\000\000\000\000\000\000\000\204\000\000\000\000\004G\000\000\000\000\000\000\004\190\000\000\000\000\000\000\000\218\004\207\000\220\004H\006O\006*\006+\000k\000\000\000\000\001\228\006N\000\000\004\183\001\229\000\000\000\000\004\191\000\000\000\000\003x\000\000\000\226\000\217\003y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\245\006O\006*\006+\001\152\006,\000\000\000\000\004\193\004\183\004\253\001\178\004\254\000\000\004\185\004\215\006N\001\244\004\220\000\000\000\000\000\000\000\000\000\000\004G\001\155\004\244\004S\004\190\000\209\000\000\000\000\000\218\004\207\000\210\004H\000\000\000\000\000\000\006O\006*\006+\006N\004\185\000\000\004T\006,\003\160\000\000\004\191\004U\003z\000\000\004G\004V\003{\0047\004\190\004J\000\000\004W\000\218\004\207\000\000\004H\006O\006*\006+\001\226\000\218\005\000\001\238\000\219\004\193\000\153\004\253\006,\004\254\005M\003U\004\215\004\205\003\161\004\220\000\153\000\156\000\157\002\223\000\161\000k\000\000\004\244\004S\000\000\000\203\000\000\000\218\000\000\000\211\001\245\000\000\000\000\004\193\000\220\004\253\000\000\005O\000\000\000\000\004\215\004T\000\000\004\220\000\000\006,\004U\004\206\003\162\0049\004V\004\244\004S\004:\000\000\006h\004W\000\163\0047\000k\004J\000\000\001\228\000\217\000\000\000\000\001\229\000\000\000\000\000\000\004T\006,\004\204\000\000\000\000\004U\000\153\003\164\000\000\004V\001\156\003U\001\157\004\205\000\000\004W\000\000\000\000\000\000\000\000\0019\000\000\003\136\000\000\003\200\000\000\006f\000\200\003`\002<\000\218\000\000\001\244\003\137\000\000\000\000\0021\000\000\000\000\000\000\000\000\001\226\000\000\000\000\001\238\000\000\000\000\004\183\004\206\000\000\0049\000\000\000\209\0047\004:\004J\006d\000\210\000\000\000\153\003\203\000\000\000\000\000\000\000\000\000\000\000\000\004\214\003\167\000\000\000\000\000\153\000\218\000\000\000\000\000\219\003U\000\000\004\205\000\000\000\000\004\185\000\000\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\000\004G\000\203\000\000\006s\004\190\000\204\000\000\000\000\000\218\004\207\000k\004H\000\000\001\228\000\000\000\220\000\000\001\229\000\000\003\169\000\218\000k\004\206\001\245\0049\004\208\000\203\004\183\004:\006\130\000\211\000\000\000\000\000\000\003\170\000\000\002=\000\000\000\000\000\217\000\000\000\153\000\156\000\157\002\228\000\161\000\000\001\136\002%\004\193\000\000\004\210\004\211\001\244\000\000\000\000\004\215\002?\000\000\004\220\000\000\004\185\000\226\000\000\000\217\000\000\000\000\004\244\004S\001\139\000\000\004G\000\000\000\247\000\000\004\190\000\000\001\186\000\000\000\218\004\207\001\248\004H\000\163\000\000\000\000\004T\000\000\0047\006w\004J\004U\004\183\000\000\000\000\004V\004\208\000\000\000\000\001\249\000\000\004W\000\000\000\000\001\250\000\000\000\153\001\226\001\251\000\000\001\227\003U\006x\004\205\001\252\006{\006*\006+\000\218\000\000\004\193\000\219\004\210\004\211\000\000\000\000\004\185\004\215\000\000\000\000\004\220\000\000\000\218\000\000\000\000\001\245\004G\006w\004\244\004S\004\190\000\000\000\000\000\218\000\218\004\207\000\219\004H\004\206\000\000\0049\000\000\000\220\0047\004:\004J\006N\004T\002&\002'\006x\004\208\004U\006{\006*\006+\004V\000k\000\000\001\246\001\228\000\153\004W\000\000\001\229\000\000\003U\000\220\004\205\006O\006*\006+\0047\001\247\004J\004\193\000\000\004\210\004\211\000\000\006,\0019\004\215\001\248\000\000\004\220\000\000\000\000\000\000\000\000\000\153\000\000\000\000\004\244\004S\003U\000\000\004\205\000\000\000\000\001\244\001\249\000\000\004\206\000\000\0049\001\250\000\000\004\183\004:\001\251\000\000\004T\000\000\000\226\000\000\001\252\004U\000\000\000\000\002\029\004V\000\000\000\000\001\136\001\001\000\000\004W\006,\000\000\000\000\000\000\004\206\000\000\0049\000\000\000\000\000\000\004:\000\000\000\000\000\000\004\185\000\000\006,\000\000\001\139\000\000\000\000\000\000\000\000\000\000\004G\000\000\001\186\000\000\004\190\000\000\000\200\003q\000\218\004\207\000\000\004H\000\153\000\156\000\157\0034\000\161\005\031\000\000\000\000\000\000\004\183\000\000\000\000\000\000\005\024\000\000\000\218\000\209\000\000\001\245\000\000\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\169\000\000\000\000\000\000\000\000\004\193\004\183\004\210\005\026\000\000\000\163\004\185\004\215\000\000\000\000\004\220\0047\000\000\004J\000\000\000\000\004G\000k\004\244\004S\004\190\000\000\000\203\000\000\000\218\004\207\000\204\004H\000\000\000\153\000\000\000\000\000\000\005\023\003U\004\185\004\205\004T\000\000\000k\000\000\005\024\004U\006\252\000\203\004G\004V\000\000\000\211\004\190\000\000\000\000\004W\000\218\004\207\006N\004H\0020\000\000\000\000\000\217\005+\006\141\000\200\003t\004\193\000\000\004\210\005\026\000\000\005,\004\206\004\215\0049\000\000\004\220\000\000\004:\006O\006*\006+\000\000\000\217\004\244\004S\0047\000\000\004J\000\000\000\000\000\000\000\000\000\000\000\000\004\193\000\000\004\210\005.\000\000\000\000\000\000\004\215\004T\000\153\004\220\000\000\000\000\004U\003U\000\000\004\205\004V\004\244\004S\000\000\000\000\000\000\004W\000\000\000\209\000\000\000\000\000\000\000k\000\213\000\000\000\000\000\000\000\203\000\000\000\000\004T\000\204\000\000\000\000\000\000\004U\000\000\000\000\000\218\004V\004\183\000\219\000\000\000\000\004\206\004W\0049\000\000\000\000\000\000\004:\000\209\006,\000\000\000\000\001\136\000\215\0047\000\000\004J\000\218\000\000\000\000\000\219\000\000\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\220\000\000\004\185\000\153\000\000\001\139\000k\000\000\003U\000\000\004\205\000\203\004G\001\186\000\000\000\211\004\190\000\000\0056\000\000\000\218\004\207\000\220\004H\000\000\000\000\000\000\000\000\000\249\005)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\024\000\000\000k\000\200\003w\004\183\000\000\000\203\004\206\000\000\0049\000\211\000\217\000\221\004:\000\200\004\017\000\209\000\000\000\000\000\000\000\000\000\210\000\000\004\193\000\000\004\210\005\026\000\000\000\000\000\000\004\215\000\222\000\000\004\220\000\218\000\000\000\223\000\219\004\185\000\000\000\000\004\244\004S\000\000\000\217\000\000\000\224\000\000\004G\000\000\000\000\000\000\004\190\005;\000\000\000\000\000\218\004\207\000\000\004H\004T\006\154\000k\006N\000\000\004U\000\000\000\203\000\220\004V\000\000\000\204\000\000\0057\000k\004W\000k\004\183\0047\000\203\004J\000\203\000\000\000\204\000\000\000\211\006O\006*\006+\000\000\000\218\007H\000\000\000\219\000\000\000\000\000\153\004\193\000\000\004\210\0059\003U\000\000\004\205\004\215\000\217\000\000\004\220\000\000\000\000\000\000\004\185\000\000\000\000\000\000\004\244\004S\000\217\000\255\000\217\000\000\004G\000\000\000\218\000\220\004\190\000\219\000\000\000\000\000\218\004\207\000\000\004H\000\000\004T\006N\000\000\000\000\004\206\004U\0049\000\000\000\000\004V\004:\000\000\0057\000\000\000\000\004W\000\000\0047\000\252\004J\000\000\000\000\000\000\000\220\006O\006*\006+\006,\000\000\000\000\007T\000\000\000\000\000\000\000\000\000\153\004\193\000\222\004\210\0059\003U\000\253\004\205\004\215\000\000\000\254\004\220\000\000\000\000\000\000\000\218\000\221\000\224\000\219\004\244\004S\000\000\000\000\000\000\000\000\000\000\000\000\000\218\000\209\000\218\000\219\000\000\000\219\000\210\000\000\000\222\000\000\000\000\004T\004\183\001!\000\000\004\206\004U\0049\000\000\000\000\004V\004:\000\220\000\224\000\000\000\000\004W\000\000\000\209\0047\000\000\004J\000\000\000\215\000\220\000\000\000\220\006,\000\000\000\000\000\000\000\000\007W\000\000\000\000\000\000\004\185\000\153\006N\000\000\000\000\0047\003U\004J\004\205\000\000\004G\000\000\000\000\000\000\004\190\000k\000\000\000\000\000\218\004\207\000\203\004H\000\000\000\153\000\211\006O\006*\006+\005^\000\000\000\000\000\000\000\000\000\000\000\000\007I\000\000\000\226\006\152\004\183\000\000\000\000\000k\004\206\000\000\0049\000\000\000\203\001\003\004:\000\000\000\211\005\175\000\000\000\000\000\000\006N\000\000\000\217\004\193\000\000\004\210\007K\000\000\000\000\005\128\004\215\0049\000\000\004\220\000\000\004:\000\000\004\185\006N\000\000\000\000\004\244\004S\006O\006*\006+\000\000\004G\000\000\000\217\000\000\004\190\000\000\000\000\005\134\000\218\004\207\000\000\004H\000\000\004T\006O\006*\006+\006,\004U\000\000\006N\000\000\004V\000\000\000\000\007I\000\000\006\150\004W\000\000\004\183\000\000\0047\000\000\004J\000\000\000\000\000\209\000\000\000\000\000\000\000\000\000\210\006O\006*\006+\000\000\000\000\000\000\004\193\000\153\004\210\007K\000\000\000\218\005^\004\215\000\219\000\000\004\220\000\000\000\000\000\000\000\000\004\185\000\000\000\000\004\244\004S\000\000\000\000\006,\000\000\000\000\004G\000\000\000\000\000\000\004\190\005}\000\000\000\218\000\218\004\207\000\219\004H\004T\006N\000\220\006,\000\000\004U\005\128\000\000\0049\004V\004G\000k\004:\007I\000\000\004W\000\203\000\000\000\218\005\135\000\211\004H\000\000\000\000\006O\006*\006+\001\226\000\000\000\220\001\238\005\134\006,\000\000\000\153\005\136\000\000\004\193\000\000\004\210\007K\000\000\000\000\000\000\004\215\000\153\000\000\004\220\000\000\000\226\006\180\000\000\000\000\000\000\000\217\004\244\004S\000\221\000\000\000\000\001\005\000\000\000\000\000\000\000\000\000\000\005\138\000\000\005\171\005\143\000\000\000\000\004O\000\000\004T\001.\000\222\005\161\004S\004U\0047\001$\004J\004V\000\000\000\000\000\000\000k\000\000\004W\001\228\000\224\001\226\000\000\001\229\001\238\004T\000\000\000\153\006,\000\000\004U\001\152\005^\006\178\004V\000\000\000\000\000\000\001\162\000\153\004W\000\000\000\000\000\000\000\153\000\156\000\157\003:\000\161\004G\000\000\006\176\001\155\006N\002%\000\000\005\127\000\218\005\135\001\244\004H\000\000\000\218\000\000\000\000\000\219\000\000\000\000\006N\005\128\000\000\0049\000\000\000\000\005\173\004:\006O\006*\006+\000\000\006\193\000k\000\000\000\000\001\228\000\000\000\163\000\000\001\229\000\000\000\000\006O\006*\006+\005\134\001\226\000\220\000\000\001\238\000\000\000\000\000\000\000\000\000\000\000\000\005\138\000\000\001\226\005\174\000\000\001\238\000\000\000\000\000\153\000\000\000\000\005\161\004S\000\000\002%\000\000\000\000\000\000\000\000\001\244\000\153\000\153\000\156\000\157\003?\000\161\000\000\000\000\000\000\000\000\004T\000\000\000\000\000\218\000\000\004U\001\245\000\000\000\226\004V\000\000\000\000\006\191\000\000\001\163\004W\006,\000\000\000\000\001\007\000k\000\000\000\000\001\228\000\000\000\000\000\000\001\229\000\000\002&\003\127\006,\000k\000\163\000\000\001\228\000\000\000\000\004\227\001\229\001\246\001\156\000\000\001\157\000\000\000\000\000\000\000\000\004G\000\000\000\000\0019\000\000\000\000\001\247\000\000\000\218\005\135\002%\004H\000\000\000\209\0019\001\244\001\248\000\000\000\213\000\000\000\218\000\000\002%\001\245\000\000\005\136\000\000\001\244\000\000\000\000\000\000\000\153\000\000\000\000\001\249\000\000\000\000\000\000\000\000\001\250\000\000\000\000\000\000\001\251\000\000\000\000\002&\004>\000\000\001\252\000\000\000\000\000\000\002\029\001\136\000\000\005\138\001\246\000\000\005\143\000\000\000\000\000\000\0047\000\000\004J\000\000\005\161\004S\000\000\000\000\001\247\000\000\000k\001\226\000\000\001\139\001\238\000\203\0019\000\000\001\248\000\211\000\000\001\186\000\000\004T\006\250\004\176\005\007\000\000\004U\000\153\000\000\000\218\004V\000\000\001\245\000\000\001\249\000\000\004W\006\255\000\000\001\250\000\000\000\218\000\000\001\251\001\245\000\200\0040\000\000\000\000\001\252\000\000\000\217\000\000\002\029\000\000\002&\004\187\000\000\003\160\000\000\0049\000\000\000\000\000\000\004:\000\000\001\246\002&\004\217\000k\000\000\001\136\001\228\000\000\000\000\001,\001\229\001.\001\246\000\000\001\247\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0019\000\000\001\248\000\000\001\247\001\139\000\000\000\000\000\000\000\000\000\000\000\000\0019\001\186\001\248\000\000\000\000\000k\000\000\002%\001\249\000\000\000\203\000\000\001\244\001\250\000\204\000\000\000\000\001\251\000\000\000\000\001\249\000\000\000\000\001\252\0047\001\250\004J\002\029\004\183\001\251\000\218\000\000\000\000\000\219\000\000\001\252\000\000\000\000\000\000\002\029\000\000\000\000\000\000\000\000\0047\000\000\004J\000\000\000\217\004\176\004\177\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0010\000\000\000\000\000\000\004\185\000\000\000\220\000\000\000\000\000\000\000\000\004\176\004\189\000\000\004G\000\000\000\000\0047\004\190\004J\000\000\000\000\000\218\0016\000\000\004H\003\160\000\000\0049\000\000\000\000\0019\004:\000\218\000\252\000\000\001\245\000\000\000\000\004\191\000\000\000\000\004\176\005\019\000\000\000\000\003\160\000\000\0049\000\000\000\000\000\000\004:\000\222\000\000\000\000\000\000\000\253\000\000\002&\005\140\000\254\000\000\004\193\000\000\000\000\000\000\000\000\000\224\000\218\001\246\000\000\000\219\000\000\000\000\000\000\000\000\003\160\000\000\0049\000\000\000\000\004S\004:\001\247\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0019\000\000\001\248\000\000\004\183\000\000\000\000\000\000\004T\000\000\000\000\000\220\000\000\004U\000\000\000\000\000\000\004V\000\000\000\000\001\249\000\000\000\000\004W\004\183\001\250\000\000\000\000\0047\001\251\004J\000\000\000\000\000\000\000\000\001\252\000\000\000\000\004\185\002\029\0047\000\000\004J\000\000\000\209\000\000\000\000\000\000\004G\000\210\000\000\000\000\004\190\004\176\005\223\004\183\000\218\000\000\004\185\004H\000\000\000\000\000\000\000\000\000\000\004\176\005\225\000\000\004G\000\000\000\000\000\000\004\190\004\191\000\000\000\000\000\218\000\000\000\000\004H\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\160\004\185\0049\000\000\000\000\004\191\004:\000\000\000\000\004\193\000\000\004G\003\160\000\000\0049\004\190\000k\001\226\004:\000\218\001\238\000\203\004H\000\000\000\000\000\211\000\000\000\000\004S\004\193\000\000\000\000\000\000\000\000\000\000\000\153\004\191\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004T\000\000\004S\000\000\000\000\004U\000\000\000\000\000\000\004V\000\000\000\000\000\000\000\217\004\193\004W\000\000\000\000\000\000\000\000\004T\0047\000\000\004J\004\183\004U\000\000\000\000\000\000\004V\000\000\000k\000\000\004S\001\228\004W\004\183\001\226\001\229\000\000\001\238\000\000\000\000\000\000\000\000\000\000\004\176\005\227\000\000\000\209\000\000\004T\000\000\000\000\000\210\000\153\004U\000\000\004\185\000\000\004V\000\000\000\000\000\000\000\000\000\000\004W\000\000\004G\002$\004\185\000\000\004\190\000\000\001\244\000\000\000\218\000\000\000\000\004H\004G\003\160\000\000\0049\004\190\000\000\000\000\004:\000\218\000\000\000\000\004H\000\218\004\191\000\000\000\219\000\000\000k\000\000\000\000\001\228\000\000\000\000\000\000\001\229\004\191\000\000\001\226\000\000\000k\001\238\000\000\000\000\000\000\000\203\000\000\000\000\004\193\000\211\000\000\001\226\000\000\000\000\001\238\000\000\000\153\000\220\000\000\000\000\004\193\000\000\000\000\000\000\000\000\000\000\000\000\004S\000\000\000\153\000\000\001\244\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004S\000\000\000\000\004\183\000\217\000\218\004T\000\000\001\245\000\000\000\000\004U\000\000\001\226\000\000\004V\001\238\000\000\004T\000k\000\000\004W\001\228\004U\000\000\000\226\001\229\004V\000\000\000\000\000\000\000\153\000k\004W\000\000\001\228\001\t\004\185\000\000\001\229\000\000\000\000\001\246\000\000\000\000\000\000\000\000\004G\000\000\000\000\000\000\004\190\0047\000\000\004J\000\218\001\247\001\243\004H\000\000\000\000\000\000\001\244\000\000\0019\000\000\001\248\000\000\000\000\000\000\002\031\000\218\004\191\000k\001\245\001\244\001\228\005\n\000\000\000\000\001\229\000\000\000\000\000\218\001\249\000\000\000\219\000\209\000\000\001\250\000\000\000\000\000\213\001\251\000\000\000\000\004\193\000\000\000\000\001\252\000\000\000\000\000\000\002\029\000\000\000\153\000\000\000\000\001\246\000\000\000\000\002#\003\160\000\000\0049\004S\001\244\000\220\004:\000\209\000\000\000\000\001\247\000\000\000\213\000\000\000\000\000\000\000\000\002 \0019\000\000\001\248\004T\000\000\000\000\000\000\000\153\004U\000\000\000\000\000\218\004V\000\000\001\245\000\000\000\000\000k\004W\000\000\001\249\000\000\000\203\000\000\000\218\001\250\000\211\001\245\000\209\001\251\000\000\000\000\000\000\000\213\000\226\001\252\000\000\000\000\000\000\002!\000\000\000\000\000\000\000\000\000\000\001\011\000\153\000\000\001\246\000k\000\000\000\000\004\183\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\217\001\246\001\247\000\000\000\000\000\218\000\000\000\000\001\245\000\209\0019\000\000\001\248\000\000\000\213\001\247\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0019\000\000\001\248\004\185\000\153\000k\000\000\001\249\000\000\000\217\000\203\000\000\001\250\004G\000\211\000\000\001\251\004\190\000\209\001\246\001\249\000\218\001\252\000\213\004H\001\250\002\029\000\000\000\000\001\251\000\000\000\000\000\000\001\247\000\000\001\252\000\153\000\000\004\191\002\029\000\000\0019\000\000\001\248\000\000\000\000\000k\000\000\000\217\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\218\000\000\000\000\000\219\000\000\001\249\004\193\000\000\000\000\000\000\001\250\000\000\000\000\000\000\001\251\000\000\000\000\000\000\000\000\000\000\001\252\000\000\000k\000\000\002\029\004S\000\000\000\203\0029\000\000\000\000\000\211\000\218\000\217\000\220\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004T\000\000\000\000\003x\000\000\004U\000\000\003y\002K\004V\000\000\000\000\000\000\000\000\000\000\004W\0019\001\208\000\000\000\252\000\000\000\000\000\217\000\220\000\000\000\000\000\000\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\222\000\000\001\210\000\000\000\253\000\000\000\000\000\000\000\254\000\000\0019\000\000\000\209\000\252\000\000\000\224\000\000\000\213\0029\000\000\000\000\000\000\000\000\000\000\000\220\003\160\000\000\000\000\000\000\003z\000\153\000\218\000\222\003{\000\219\000\000\000\253\000\000\000\000\000\000\000\254\002O\000\000\000\000\000\000\000\000\000\000\000\224\000\000\0019\000\000\000\000\000\252\000\000\000\000\000\000\000\000\000\000\000\000\0029\003\211\000\200\0043\000\218\000\000\000\220\000\219\000\000\000\000\000\209\000\000\000\222\000k\000\000\000\215\000\253\000\000\000\203\000\000\000\254\000\000\000\211\002U\000\000\000\000\000\000\000\224\000\000\000\000\000\209\0019\0029\000\000\000\252\000\213\003\162\000\000\000\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003x\000\153\000\000\000\000\003y\000\000\000\222\000\209\002Y\000\217\000\253\000\000\000\213\000\000\000\254\000k\0019\000\000\003\164\000\252\000\203\000\224\000\000\000k\000\204\000\153\000\000\000\000\000\203\000\153\000\000\000\000\000\211\003\136\003\215\003\200\000\000\000\000\000\222\000\000\000\000\000\218\000\253\000k\003\137\000\000\000\254\000\000\000\203\000\000\000\000\000\000\000\211\000\224\000\000\000\000\000\000\000\000\000\217\000\000\003\160\000\000\000\000\000\000\003z\003\214\000\217\000k\003{\000\000\000\000\003\203\000\203\000\000\000\000\000\000\000\211\000\000\000\000\003\167\000\000\000\000\000\000\000\000\000\209\000\000\000\217\000\000\000\218\000\213\000\000\000\219\000\000\000\000\000\000\003\211\000\000\001\152\000\209\000\000\000\000\000\000\000\153\000\215\001\162\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\000\000\000\000\000\0029\000\000\001\155\000\000\000\000\003\169\000\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\000\000\000\000\000\000\003x\000\000\003\170\000\218\003y\003^\000\219\000\000\000\000\000\000\000k\000\218\000\000\0019\000\219\000\203\000\252\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000k\003\164\000\000\000\000\000\000\000\203\000\000\000\218\000\000\000\211\000\219\000\222\000\000\000\220\000\000\000\253\003\136\003\212\003\200\000\254\000\209\000\220\000\000\000\000\000\218\000\213\000\224\003\137\000\000\000\217\000\000\000\218\000\000\000\000\000\219\003e\003\160\000\000\000\000\000\000\003z\000\220\000\000\000\217\003{\000\000\000\000\000\000\003\214\000\221\000\000\000\000\000\000\000\000\003\203\000\000\000\000\001\163\003g\0029\000\000\000\000\003\167\000\000\000\000\000\220\0019\000\000\000\222\000\252\000\000\003\211\000\209\001\240\000\209\000\000\000\000\000\213\000\000\000\213\000k\004\235\004\015\000\224\001\156\000\203\001\157\000\000\000\222\000\211\0019\000\000\000\253\000\252\0019\000\000\000\254\000\000\000\000\000\000\000\000\000\000\002\000\000\224\003\169\000\000\003\162\000\000\000\218\000\000\000\153\000\219\000\222\000\000\000\000\000\000\000\253\000\000\000\000\003\170\000\254\000\000\000\218\000\217\000\000\000\219\000\209\000\224\000\000\000\000\000\000\000\213\000k\000\000\000k\003\164\004$\000\203\000\000\000\203\000\000\000\211\000\220\000\211\000\000\000\000\000\000\000\000\000\000\000\000\003\136\007N\003\200\000\000\000\000\000\000\000\220\000\000\000\218\004&\000\000\003\137\000\200\0046\000\000\000\000\000\000\0019\000\000\000\000\000\252\000\000\000\000\000\153\000\000\000\217\000\000\000\217\001\152\003x\000\000\000\000\003\214\003y\000\221\001\162\000k\000\000\003\203\000\222\000\000\000\203\000\000\000\253\000\000\000\211\003\167\000\254\000\000\001\155\000\000\003b\000\218\000\222\000\224\000\219\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\224\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\203\000\000\000\217\000\255\000\204\000\000\003x\000\000\000\000\000\220\003y\003\169\003\160\000\000\001\152\000\000\003z\000\000\000\209\000\000\003{\001\162\003\217\000\213\000\000\000\000\003\170\000\218\000\000\000\218\000\219\000\000\000\219\000\000\000\000\001\155\000\000\000\252\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\157\000\222\0010\000\000\000\000\000\253\000\220\000\000\000\220\000\254\000\000\003\160\000\000\000\000\001\163\003z\000\224\000\000\000\000\003{\000\000\003\155\000\000\000k\000\000\000\000\000\218\003\162\000\203\000\219\000\000\000\000\000\211\000\000\000\252\003x\000\252\000\000\005k\003y\000\000\001\156\000\000\001\157\000\000\000\000\003\206\000\000\000\000\000\000\000\000\0019\000\000\000\222\003\157\000\222\003\164\000\253\000\000\000\253\000\220\000\254\000\218\000\254\000\000\000\219\000\217\000\000\000\224\000\209\000\224\003\136\000\000\003\200\000\213\000\000\000\000\001\163\000\000\000\218\000\000\003\162\003\137\000\000\000\000\000\000\000\209\000\000\000\252\000\000\000\000\000\213\000\000\000\000\000\000\003\160\000\220\000\000\000\000\003z\000\000\005\150\000\000\003{\001\156\000\000\001\157\000\222\000\000\003\203\003\164\000\253\000\000\000\000\0019\000\254\000\000\003\167\000\209\000\000\000\000\000\000\000\224\000\213\000\000\003\136\000\000\003\200\000\000\000k\003\209\000\000\000\209\000\218\000\203\000\000\003\137\000\213\000\211\000\000\003\234\000\000\000\000\000\000\000\000\000\218\000k\000\000\000\219\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\000\003\169\000\000\000\000\000\000\003\203\000\000\003\162\000\000\000\000\000\000\000\000\000\000\003\167\000\217\003\157\003\170\000\000\000\000\000\000\000k\000\220\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\209\000\217\000\000\000\000\000k\000\213\003\164\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\000\000\252\000\000\003\136\000\000\003\200\000\000\003\169\004[\000\000\000\000\000\218\000\000\000\000\003\137\000\217\000\000\000\000\000\209\000\000\000\222\000\000\003\170\000\213\000\253\000\000\000\000\000\000\000\254\000\217\000\000\000\000\000\000\000\000\000\000\000\224\000\000\000\000\000\000\000\000\003\246\003\203\000k\000\000\000\000\000\218\000\000\000\203\000\219\003\167\000\000\000\211\000\000\000\000\000\000\000\000\000\000\003\254\000\209\000\000\000\000\000\000\000\218\000\213\004\145\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\157\000\000\000\000\000\000\000\000\000k\000\220\000\000\000\000\000\000\000\203\000\000\000\217\000\000\000\211\000\209\004\005\003\157\003\169\000\000\000\213\000\218\000\000\000\220\000\219\000\000\000\000\004\147\000\000\000\000\000\000\000\000\000\000\003\170\000\252\000\218\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\217\003\157\000\203\000\252\000\000\000\222\000\211\000\220\000\000\000\253\000\000\000\000\000\000\000\254\000\000\000\255\000\000\000\000\000\000\004\149\000\224\000\220\000\222\000\000\000\000\000\000\000\253\000k\000\000\000\000\000\254\000\000\000\203\000\000\000\000\000\252\000\211\000\224\000\000\000\209\000\217\000\000\000\000\000\218\000\213\000\000\000\219\000\000\000\000\000\252\000\000\000\209\000\000\000\000\000\222\000\000\000\213\000\000\000\253\000\000\000\000\000\000\000\254\000\000\000\000\000\000\000\000\000\000\000\222\000\224\000\217\000\255\000\253\000\000\000\000\000\000\000\254\000\220\000\000\000\218\000\000\000\000\000\219\000\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\000\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\203\000\252\000\000\000\255\000\211\000\209\000\000\000k\000\000\000\220\000\213\000\000\000\203\000\000\000\000\000\218\000\211\000\000\000\219\000\000\000\222\000\000\000\209\000\000\000\253\000\000\000\000\000\213\000\254\000\000\000\000\000\000\000\000\000\000\000\209\000\224\000\000\000\252\000\217\000\213\004\231\000\000\000\000\000\255\000\000\000\218\000\000\000\000\000\219\000\220\000\217\000\000\000\000\000\000\000\000\000\000\000\222\000\000\000\000\000\000\000\253\000\000\000\000\000\000\000\254\000k\000\000\000\000\000\000\000\000\000\203\000\224\000\000\003\157\000\211\000\000\000\000\000\252\000\209\000\220\000\000\000\000\000k\000\213\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000k\000\000\000\222\000\000\000\000\000\203\000\253\000\000\000\000\000\211\000\254\000\000\000\000\000\252\000\217\000\000\000\000\000\224\004\240\000\000\000\000\000\000\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\000\004\248\000\217\000\222\000\000\000\000\000\218\000\253\000\000\000\219\000\000\000\254\000\000\000\000\000\217\000k\000\000\000\000\000\224\000\000\000\203\000\000\003\157\000\000\000\211\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\000\003\157\000\000\000\000\000\000\000\000\000\209\000\220\000\000\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\252\000\000\000\217\005c\000\209\000\000\000\000\000\000\000\218\000\213\000\000\000\219\000\252\000\000\000\000\000\000\000\000\000\000\000\000\000\222\005o\000\000\000\000\000\253\000\000\000\218\000\000\000\254\000\219\000\000\000\000\000\222\005t\000\000\000\224\000\253\003\157\000\218\000\000\000\254\000\219\000\000\000\220\000k\000\000\000\000\000\224\000\000\000\203\000\000\000\000\000\000\000\211\003\157\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000k\003\157\000\000\000\000\000\000\000\203\000\252\000\220\000\000\000\211\000\000\000\209\005{\000\000\000\000\000\000\000\213\000\218\000\000\000\000\000\219\000\000\000\217\000\252\000\000\000\222\000\000\000\000\000\000\000\253\000\000\000\000\000\000\000\254\000\000\000\252\000\000\000\000\000\000\000\000\000\224\000\000\000\222\000\217\000\000\003\157\000\253\000\000\000\000\000\000\000\254\000\220\000\000\000\000\000\222\000\209\000\000\000\224\000\253\000\000\000\213\000\000\000\254\000\000\000\000\000\000\000\000\000\209\000\000\000\224\000\000\000k\000\213\000\000\000\000\000\000\000\203\000\209\000\000\000\252\000\211\000\000\000\213\007*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\143\000\000\000\000\005\132\000\000\000\222\000\000\000\000\000\218\000\253\000\000\000\219\000\000\000\254\000\000\000\000\000\000\000\000\000\000\000\000\000\224\000\217\000k\000\000\005\154\000\000\000\000\000\203\000\000\000\218\000\000\000\211\000\219\000\000\000k\000\000\003\157\000\000\000\000\000\203\000\000\000\000\000\220\000\211\000k\000\000\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\000\003\157\000\000\000\000\000\000\000\209\000\000\000\220\000\000\000\217\000\213\000\000\000\000\000\000\000\252\000\209\000\000\000\000\000\000\000\000\000\213\000\217\000\000\000\000\000\000\000\000\000\000\000\209\000\000\000\209\000\000\000\217\000\213\000\222\000\213\000\252\000\000\000\253\000\000\005\159\000\000\000\254\000\000\000\000\000\218\000\000\000\000\000\219\000\224\000\000\000\000\000\000\000\000\000\000\000\222\000\000\000\000\000\000\000\253\000\000\000\000\000\000\000\254\000\000\000\000\000k\000\000\000\000\000\000\000\224\000\203\000\000\003\157\000\000\000\211\000k\000\000\000\000\000\220\000\000\000\203\000\000\000\000\005\166\000\211\000\000\000\000\000k\000\218\000k\000\000\000\219\000\203\000\000\000\203\000\000\000\211\000\000\000\211\000\209\000\218\000\000\000\000\000\219\000\213\000\000\000\252\000\000\000\217\000\000\000\218\000\000\000\000\000\219\000\000\000\000\003\157\000\000\000\217\000\000\000\000\000\000\000\220\000\000\000\000\000\222\000\000\000\000\007+\000\253\000\217\000\000\000\217\000\254\000\220\000\000\000\000\000\000\007+\000\000\000\224\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\209\000\000\000\252\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\252\000\000\000\203\000\000\000\000\000\000\000\211\000\222\000\000\000\000\000\252\000\253\000\000\000\000\000\000\000\254\000\000\000\000\000\000\000\222\000\000\000\000\000\224\000\253\000\000\000\218\000\000\000\254\000\219\000\222\000\000\000\000\000\000\000\253\000\224\000\218\000\209\000\254\000\219\000\000\000\217\000\213\000\000\000\000\000\224\000\000\000k\000\218\000\000\000\218\000\219\000\203\000\219\001%\000\000\000\211\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\251\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\000\0012\000\000\002\002\000\000\000\000\000\000\000\220\000\000\000\220\000\000\000\000\000\209\000\252\000\000\000\217\000\000\000\213\000\000\000\000\000\000\000\000\000k\000\252\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\222\000\209\000\000\000\252\000\253\000\252\000\213\000\000\000\254\000\000\000\222\000\000\000\000\000\218\000\253\000\224\000\219\000\000\000\254\000\000\000\000\000\000\000\222\000\000\000\222\000\224\000\253\000\000\000\253\000\000\000\254\000\000\000\254\000\217\000\000\000\000\000\000\000\224\000\000\000\224\000k\002*\000\000\000\000\000\000\000\203\000\000\000\220\000\000\000\211\000\000\000\209\000\000\000\209\000\000\000\000\000\213\000\000\000\213\000\000\000\000\000k\000\218\000\000\000\000\000\219\000\203\000\209\000\000\000\000\000\211\000\000\000\213\000\000\000\000\000\252\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\000\000\000\000\209\000\000\002C\000\000\000\000\000\213\000\222\000\000\000\220\000\000\000\253\000\000\000\000\000\000\000\254\000\000\000\217\000\000\000\000\000\000\000\000\000\224\000\000\000k\000\218\000k\000\000\000\219\000\203\000\000\000\203\000\000\000\211\000\000\000\211\000\000\000\252\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\000\003I\000\000\000\000\000\222\000\000\000\000\000\220\000\253\000k\000\000\000\000\000\254\000\000\000\203\000\217\000\000\000\217\000\211\000\224\000\000\000\000\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\217\000\000\000\209\000\000\000\252\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\000\003O\000\217\000\000\000\222\000\000\000\000\000\220\000\253\000\000\000\000\000\000\000\254\000\000\000\000\000\000\000\000\000\000\000\000\000\224\000\000\000\000\003\130\000\000\000\000\000\000\000\000\000\209\000\220\000\000\000\000\000\000\000\213\000\000\000\000\000\252\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000k\000\218\000\000\000\218\000\219\000\203\000\219\000\000\000\000\000\211\000\000\000\222\000\000\000\252\000\000\000\253\000\000\000\218\000\000\000\254\000\219\000\000\000\000\000\000\000\000\000\000\000\224\000\000\000\000\003\141\000\000\003\143\000\222\000\000\000\000\000\220\000\253\000\220\000\218\000\000\000\254\000\219\000\000\000\217\000k\004\020\000\000\000\224\000\000\000\203\000\000\000\220\000\000\000\211\000\000\000\209\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\252\000\000\000\252\004\025\000\000\000\209\000\000\000\000\000\000\000\220\000\213\000\000\000\000\000\000\000\000\000\000\000\252\000\000\000\000\000\222\000\000\000\222\000\000\000\253\000\217\000\253\000\000\000\254\000\000\000\254\000\000\000\000\000\000\000\000\000\224\000\222\000\224\000\252\000\000\000\253\000\209\000\000\000\209\000\254\000\000\000\213\000\000\000\213\000\000\000\000\000\224\000\000\000k\000\000\000\000\000\000\000\222\000\203\000\000\000\218\000\253\000\211\000\219\000\000\000\254\000k\000\000\000\000\000\000\000\000\000\203\000\224\000\000\000\000\000\211\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\029\000\000\000\000\000\000\000\000\000\209\000\220\000\000\000\217\000\000\000\213\000\000\000\000\000k\000\000\000k\000\218\000\000\000\203\000\219\000\203\000\217\000\211\000\000\000\211\000\000\000\209\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\252\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004A\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\222\000\000\000\000\000\217\000\253\000\217\000\000\000\000\000\254\000\000\000\000\000\000\000k\000\000\000\000\000\224\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\209\000\000\000\252\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000k\000\218\000\000\000\000\000\219\000\203\000\000\000\000\000\000\000\211\000\000\000\222\000\000\000\000\000\218\000\253\000\000\000\219\000\000\000\254\000\000\000\000\000\217\000\000\000\000\000\000\000\224\000\000\000\000\004]\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\209\000\000\004\137\000\217\000\000\000\213\000\000\000\000\000\220\000\218\000k\000\218\000\219\000\000\000\219\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\252\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\252\004\180\000\000\005V\000\000\000\000\000\222\000\220\000\209\000\220\000\253\000\000\000\000\000\213\000\254\000\000\000\000\000\217\000\000\000\222\000\000\000\224\000\000\000\253\000k\000\218\000\000\000\254\000\219\000\203\000\000\000\000\000\000\000\211\000\224\000\252\000\000\000\252\000\209\000\000\000\209\000\000\000\000\000\213\000\000\000\213\000\218\000\000\000\000\000\219\000\000\000\000\000\000\005\189\000\222\000\000\000\222\000\000\000\253\000\220\000\253\000\000\000\254\000\000\000\254\000\000\000\000\000\217\000k\000\224\000\000\000\224\000\000\000\203\005\209\000\000\000\000\000\211\000\000\000\209\000\220\000\000\000\000\000\000\000\215\000\000\000\000\000\252\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\000\000\218\000\215\000k\000\219\000k\000\000\000\000\000\203\000\000\000\203\000\222\000\211\000\252\000\211\000\253\000\217\000\000\000\000\000\254\000\000\000\000\000\000\000\000\000\000\000\000\000\224\000\000\000\000\005\211\000\000\000\000\000\222\000\000\000\000\000\220\000\253\000\000\000\000\000\000\000\254\000\000\000\000\000\000\000k\000\209\000\217\000\224\000\217\000\203\000\210\000\218\000\000\000\211\000\219\000\209\000\000\000k\000\000\000\000\000\210\000\000\000\203\000\252\000\000\000\000\000\211\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\213\000\000\000\000\000\222\000\000\000\000\000\220\000\253\000\217\000\000\000\000\000\254\000\209\000\000\000\000\000\000\000\218\000\210\000\224\000\219\000\000\000\217\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\203\000\000\000\209\000\252\000\211\000k\000\000\000\210\000\000\000\000\000\203\000\000\000\000\005\219\000\211\000\218\000\000\000\218\000\219\000\220\000\219\000\000\000\222\000\000\000\000\000\000\000\253\000\000\000\000\000\000\000\254\000\000\000\000\000\000\000\000\000\000\000\000\000\224\000\217\000\000\000\000\000k\000\000\005\233\000\000\005\247\000\203\000\252\000\217\000\220\000\211\000\220\000\000\000\000\000\000\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000k\000\000\000\000\000\000\000\222\000\203\000\000\000\218\000\253\000\211\000\219\000\000\000\254\000\209\000\000\000\252\000\000\000\252\000\210\000\224\000\000\000\000\000\217\000\000\000\000\000\000\000\209\000\209\000\220\000\000\000\000\000\210\000\210\000\000\000\222\000\000\000\222\000\000\000\253\000\000\000\253\000\220\000\254\000\217\000\254\000\209\000\000\000\000\000\000\000\224\000\210\000\224\000\209\000\000\000\000\000\218\000\221\000\210\000\219\000\209\000\000\000\000\000\000\000\000\000\210\000\218\000\000\000\000\000\219\000\221\000\000\000\000\000\209\000k\000\000\000\222\000\000\000\210\000\203\000\000\004L\000\000\000\211\000\000\000\000\000\000\000k\000k\000\222\000\220\000\224\000\203\000\203\004N\000\000\000\211\000\211\000\000\000\000\000\220\000\000\000\218\000\000\000\224\000\219\000k\000\000\000\000\000\000\000\000\000\203\000\000\000k\000\000\000\211\000\000\000\217\000\203\000\000\000k\000\000\000\211\000\218\000\000\000\203\000\219\000\000\000\000\000\211\000\217\000\217\000\000\000k\000\000\000\000\000\220\000\226\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\226\001\r\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\220\001\015\000\000\000\209\000\000\000\000\000\217\000\000\000\210\000\000\000\209\000\000\000\000\000\000\000\000\000\210\000\000\000\000\000\000\000\217\000\000\000\000\000\000\000\000\000\209\000\000\000\226\000\000\000\000\000\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\000\000\000\000\218\000\218\000\000\000\219\000\219\000\000\001\019\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\203\000\000\000k\000\218\000\211\000\220\000\219\000\203\000\000\000\209\000\218\000\211\000\000\000\219\000\210\000\000\000k\000\218\000\220\000\220\000\219\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\209\000\220\000\217\000\000\000\000\000\210\000\000\000\000\000\220\000\217\000\000\000\000\000\000\000\000\000\209\000\220\000\226\000\000\000\000\000\210\000\000\000\000\000\000\000\217\000\000\000\000\000\000\001\021\000\220\000\226\000\226\000\000\000\209\000k\000\000\000\000\000\000\000\210\000\203\000\209\001\023\001\025\000\211\000\000\000\210\000\000\000\000\000\000\000\226\000\209\000\000\000\000\000\000\000\000\000\210\000\226\000\209\000\000\000\000\001\027\000k\000\210\000\226\000\000\000\000\000\203\001\029\000\000\000\000\000\211\000\000\000\000\000\000\001\031\000k\000\226\000\217\000\000\000\000\000\203\000\000\000\218\000\000\000\211\000\219\000\209\001\254\000\000\000\218\000\000\000\210\000\219\000k\000\000\000\000\000\000\000\000\000\203\000\000\000k\000\000\000\211\000\218\000\217\000\203\000\219\000\000\000\000\000\211\000k\000\000\000\000\000\000\000\000\000\203\000\220\000k\000\217\000\211\000\000\000\000\000\203\000\220\000\000\000\000\000\211\000\209\000\000\000\000\000\000\000\000\000\210\000\000\000\000\000\000\000\217\000\220\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000k\000\209\000\000\000\000\000\000\000\203\000\210\000\217\000\000\000\211\000\218\000\000\000\000\000\219\000\217\000\000\000\000\000\226\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\000\002\004\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\218\000\226\000\000\000\219\000k\000\000\000\217\000\220\000\000\000\203\000\000\000\000\002\b\000\211\000\218\000\209\000\000\000\219\000\000\000\000\000\210\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\203\000\000\000\209\000\218\000\211\000\220\000\219\000\210\000\000\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\217\000\220\000\218\000\000\000\000\000\219\000\000\000\226\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\000\002\n\000\220\000\217\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000k\000\000\000\000\000\000\000\000\000\203\000\226\000\209\000\220\000\211\000\218\000\000\000\210\000\219\000\000\000\220\000k\002\012\000\000\000\000\000\226\000\203\000\000\000\209\000\209\000\211\000\000\000\000\000\210\000\210\000\209\002\014\000\000\000\000\000\000\000\210\000\000\000\000\000\226\000\000\000\000\000\000\000\000\000\217\000\220\000\226\000\000\000\209\000\000\002\016\000\000\000\218\000\210\000\000\000\219\000\226\002\018\000\000\000\000\000\217\000\000\000\000\000\226\000\000\000\000\000\000\002\020\000k\000\000\000\000\000\000\000\218\000\203\002\022\000\219\000\209\000\211\000\000\000\000\000\000\000\210\000\000\000\000\000k\000k\000\220\000\000\000\000\000\203\000\203\000k\000\226\000\211\000\211\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\000\002\024\000\000\000\000\000\220\000\000\000k\000\000\000\000\000\217\000\000\000\203\000\000\000\209\000\000\000\211\000\000\000\000\000\210\000\000\000\000\000\218\000\000\000\000\000\219\000\217\000\217\000\000\000\000\000\000\000\209\000\226\000\217\000\000\000k\000\210\000\000\000\218\000\000\000\203\000\219\000\000\002\026\000\211\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\226\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\000\000\000\002\028\000\000\000\000\000\209\000\000\000\209\000\000\000\000\000\210\000\220\000\210\000k\000\000\000\209\000\000\000\217\000\203\000\000\000\210\000\209\000\211\000\000\000\000\000\000\000\210\000\000\000\218\000\000\000k\000\219\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\226\000\000\000\218\000\218\000\000\000\219\000\219\000\000\000\000\000\218\000\000\003\172\000\219\000\000\000\217\000\000\000\226\000\000\000\000\000\000\000\220\000\000\000\000\000k\000\000\000k\000\218\003\174\000\203\000\219\000\203\000\217\000\211\000k\000\211\000\000\000\220\000\220\000\203\000k\000\209\000\000\000\211\000\220\000\203\000\210\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\000\000\218\000\000\000\209\000\219\000\000\000\000\000\220\000\210\000\000\000\000\000\209\000\000\000\217\000\226\000\217\000\210\000\000\000\000\000\209\000\000\000\000\000\000\000\217\000\210\003\176\000\000\000\000\000\000\000\217\000\226\000\226\000\000\000\000\000\000\000\220\000\000\000\226\000\000\000\000\000\218\003\178\003\180\000\219\000\209\000\000\000\000\000k\003\182\000\210\000\000\000\000\000\203\000\000\000\226\000\000\000\211\000\218\000\000\000\000\000\219\000\000\000\000\000k\000\209\003\184\000\000\000\000\000\203\000\210\000\000\000k\000\211\000\000\000\220\000\000\000\203\000\000\000\000\000k\000\211\000\000\000\226\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\217\000\220\000\218\003\186\000\218\000\219\000\209\000\219\000\000\000\000\000\000\000\210\000\218\000\000\000k\000\219\000\217\000\000\000\218\000\203\000\000\000\219\000\000\000\211\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\217\000\000\000k\000\000\000\220\000\000\000\220\000\203\000\000\000\000\003\188\000\211\000\000\000\000\000\220\000\000\000\226\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\217\000\209\003\190\000\000\000\000\000\000\000\210\000\000\000\209\000k\000\000\000\000\000\000\000\210\000\203\000\000\000\000\000\000\000\211\000\000\000\217\000\000\000\218\000\000\000\000\000\219\000\226\000\000\000\226\000\209\000\000\000\000\000\000\000\000\000\210\000\000\000\226\003\192\000\218\003\194\000\000\000\219\000\226\000\000\000\000\000\000\000\218\003\196\000\000\000\219\000\000\000\000\000\217\003\198\000\218\000\000\000\220\000\219\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\203\000\000\000k\000\000\000\211\000\000\000\220\000\203\000\000\000\000\000\000\000\211\000\000\000\218\000\220\000\000\000\219\000\000\000\000\000\209\000\000\000\000\000\220\000k\000\210\000\000\000\209\000\000\000\203\000\000\000\000\000\210\000\211\000\218\000\000\000\000\000\219\000\226\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\209\000\220\004Y\000\000\000\000\000\210\000\000\000\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\000\004_\000\218\000\217\000\220\000\219\000\226\000\209\000\000\004a\000\000\000\000\000\210\000\000\000\000\000\000\000k\004c\000\000\000\000\000\000\000\203\000\000\000k\000\000\000\211\000\000\000\000\000\203\000\000\000\000\000\226\000\211\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\000\004e\000k\000\000\000\000\000\000\000\000\000\203\000\000\000\000\000\226\000\211\000\000\000\218\000\000\000\000\000\219\000\000\000\217\000\000\000\218\004g\000\000\000\219\000\000\000\217\000k\000\000\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\000\000\218\000\226\000\000\000\219\000\217\000\000\000\220\000\000\000\000\000\000\000\000\000\000\004i\000\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\218\000\000\000\000\000\219\000\226\000\000\000\000\000\218\004k\000\000\000\219\000\000\000\000\000\000\000\000\004m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\000\000\220\000\000\004o\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\218\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\000\000\220\000\000\000\000\000\226\000\000\000\000\000\000\004q\000\000\000\000\000\000\000\000\000\000\000\000\004s\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004w")) + ((16, "\001\184\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\001I\000\000\001G\000\176\000\000\001-\000\207\000\000\000\000\000\000\000\161\000\000\000\153\001^\000\000\000\000\002\186\000\000\003B\000\000\000\000\000\000\003\250\000\000\004@\000\000\000\000\000\000\005$\000\000\005P\000\000\000\000\005\218\000\000\006\020\006T\000\000\000\000\006\144\000\000\006\162\000\000\000\000\000\000\006\178\000\000\006\182\000\000\006\230\000\000\007\n\000\000\007~\007\136\000\000\000\000\007\140\000\000\007\154\000\000\001\002\000O\003(\000\000\000\000\000\000\000\000\000\000\000\000\000\185\003@\000\000\000\028\000\000\000\000\002\216\000\000\000\000\001\184\000\000\000\000\000\000\001\236\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\230\000\000\000\000\003.\b\202\000\000\000\000\0112\000\000\000\000\000\000\000\000\007\198\000\000\007\224\000\004\000\000\007\244\000\000\000\000\bp\000\000\000\000\b\156\000\000\b\184\000\000\000\000\000\000\b\242\000\000\002\242\n\024\000d\000\000\000\000\000\000\000\000\000\000\000\000\003\026\004\024\000\000\000\202\000\000\000\000\000\000\nR\000\000\000:\000\000\bv\000\141\007F\000\000\000\000\000\250\001\188\000\000\027`\000\000\004h\012\206\005\172\018\210\029\026\022\\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\198\005\172\000\000\000\000\n\004\015\030\015\196\000\000\018\186\001\214\000\000\000\000\003`\021\198\000\000\000\000\000\000\004$\000\000\000\174\022\\\017\164\000\000\000\0004\168\000\000 \220\000\000*R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\000\000\000\000\007Z\000\000\012\202\000\000\020\004\000\000\020\130\000\000\021\248\000\000\022X\000\000\024\148\000\000\026N\000\000\031\154\000\000!\012\000\000\030z\000\0005\142\000\000\000\000\000\000\000\000\000\000&\192\000\000)\234\000\000*\006\000\000,\018\000\000,\\\000\0001\220\000\000=\234\000\000>\b\000\000>\"\000\000>$\000\000>>\000\000>n\000\000>\148\000\000>\168\000\000>\184\000\000?<\000\000<\024\000\000\000\000\000\000\000\000\000\000\012F\000\000\012N\000\000\012^\000\000\012l\000\000\000\000\012t\000\000\012|\012~\000\000\000\000\012\138\000\000\012\150\000\000\000\000\000\000\012\152\000\000\012\154\000\000\012\158\000\000\012\166\000\000\012\172\012\174\000\000\000\000\012\178\000\000\012\180\000\000\005\000\b.\000\000\012\204\000\000\012\208\012\184\000\000\012\210\000\000\000\000\012\222\000\000\012\224\000\000\012\232\000\000\000\000\000\000\012\236\000\000\000v\000\000\000\000\000\000\004\172\003\144\000\000\000\000\004\236\000\000\000\000\012\238\017\218\000\000\r\004\000\000\000\000\000\000\000\176\000\000\000\000\000\000\003:\000\000\000\000\000\000\000\000\000\000\n\n\023x\000\000\r\022\000\000\r\"\028\182\000\000\r*\000\000\000\000\014V\r@\000\000\000\000\rH\000\000\rR\rb\000\000\000\000\rh\000\000\rn\000\000\000\000\000\000\rx\000\000\r~\000\000\r\138\000\000\r\142\000\000\000\000\r\172\000\000\r\174\r\178\000\000\000\000\r\188\000\000\r\190\000\000\000\000\000\000\r\224\000\000\r\228\000\000\r\232\000\000\r\236\000\000\r\252\014\002\000\000\000\000\014\006\000\000\014\b\000\000\005,\r\166\000\000\014\012\000\000\014\020\0188\000\000\014\022\000\000\000\000\014\030\000\000\014*\000\000\014,\000\000\000\000\000\000\0146\000\000\0148 \142\000\000\014:\000\000\000\000\n\224$$\000\000\014>\000\000\014@$z\000\000\014F\000\000\000\000\000\000\000\000\000\000\000\000\000\0006\226\000\000$\150\000\000\000\000\000\0007\022\000\000\000\000\000\228\000\000\000\000\000\000\0042\t\132\000\000\000\000%\186\003\254\000\000\027\250+\208\000\000\000\000\000\000.\b\000\000\000\000,&\000\000\000\000\000\000\r\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\028N\000\000\000\000\029>\000\000\000\000 \n\000\000\005\234\000\000\017\154\000\000\000\000\000\000\t~\000\000\007\170\000\000\000\0007\210\000\000\000\000\000\000\011\128\000\000\000\000\000\000\000\000\000\000\000\0007\244\000\0007\246\000\000\000\000\000\000,\184\011\130\000\000\000\000\000\000\000\000\000\000.R\000\000\000\000\000\000\000\000\011\246\000\000\000\000\000\000\000\0006\012\000\000<<\000\000\004\240\000\000\000\000\000\000BD\000\000B\158\000\000B\174\000\000B\200\000\000B\212\000\000B\238\000\000B\240\000\000C\b\000\000C*\000\000CD\000\000C\150\000\000C\194\000\000Dh\000\000D\144\000\000\000\000\000\000#t\000\000\000\000\b\210.\152\000\000\000\000/\028\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\210\000\000\000\000\000\000\000\000\003t\000\000\012\210\000\000\000\000\023v\000\000\000\000\000\000.\226\000\000\000\000\000\000\000\000\000\000\031.\000\000\000\000\000\000\000\141\000\000/\194\000\000\000\000\000\000\000\000\002\234\014\006\000\000/\226\000\000\000\000\000\000\000\000\016&\000\000/\230\000\000\000\000\000\000\000\000\000(\000\000\b:\000\000\"\018,\214\000\000\000\000\000\0008\014\000\000\000\000\000\000\000\019\000\0008X\000\000\000\000\000\0008\220\000\000\000\000\003\170\000\000\025\226\000!-\006\000\000\000\000\000\000#\190\007\016\000\000\000\000\000\000\000\000\000\000\000\000)4\000\000\000\000/F\000\000\000\0000\170\000\000\006L\000\000%\172\000\000\000\000\000\000\012\236\000\000$\146\000\000\000\0008\254\000\000\000\000\000\000\r\\\000\000\000\000\000\000\000\000\000\000\000\000=V\000\000=\150\000\000\000\000\000\000\005\176\000\000\000\000\000\000\000\000\000\000\000\000D\170\000\0000\150\000\0009\022\000\000D\200\000\000D\204\000\000D\230\000\000E(\000\000EX\000\000Ex\000\000E\154\000\000E\206\000\000F.\000\000F^\000\000F\154\000\000F\170\000\000F\190\000\000\000\000\000\r\000\000\005\028\000\000\r\182\002X\b\228\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\00098\000\000$\244#\218\014R\000\000\000\000\000\0000\154\000\0000\236\000\0001(\000\000%\232&T\006\220\002\180\000\000\000Q\007\224\000\000\000\000\000\000\n>\000\000\000\000\np\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0009P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000&j\000\000&\242\000\000\000\000\000\000\014\158\000\000\000\000\006\022\000\000\000\000\000\000\026t\007\232\000\000\0270\000\000\000\000\016&\000\000\007\252\000\000\000\000\0152\000\000\027\156\000\000\000\000'\006\000\000\000\000\000\000\005\150\000\000\000\000\017\024\000\000\000\000(\186\000\000\000\000\000\0001\184\000\000\000\000\000\000.\016\000\000\000\000\000\000\000\0001\224\000\000\000\000\000\000\000\000\003\220\017\018\000\0002n\000\000\000\000\000\000\000\000\000\000\000\000\015\158\000\000\000\000\b\006\000\000\016\134\000\000\005\150\000\000\000\000\006$)\226\000\000\006\210\000\000\000\000\000\000\000\000\005\176\000\000(\018\000\000\028.\002\140\029V\000\000\004\170\000\000\017\026\000\000\017\184\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\144\029\232\007\028\030T\000\000\000\000\000\000\007x\000\000\018L\000\000\007\214\000\000\000\000\005\150\000l\031\016\000\000\002`\000\000\0194 *\000\000\000\000\019\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\026\t\244\000\000\b\152\000\000\000\000\000\000\000\000\b\196\000\000\020\170\000\000\000\000\000\000\"\168:(\000\000\000\000\000\000\"X\000\000\000\000\000\000\000\000\000\000\nD\0172\000\000\000\0002\184\000\000\000\000\t^\000\000\0178\000\000\000\0002Z\000\000\000\000\000\0002\226\000\000\000\000\000\000\000\0003<\000\000\000\000\005F\017\172\000\000\000\0003p\000\000\000\000\t\142#v\000\000\018\020\000\000\000\0003\144\000\000\000\000\000\000\000\000\000\000\000\000\000\000(&\000\000\000\000\000\000\011\254\000\000\000\000\018J\000\000\000\0003\158\000\000\000\000\000\0003\176\000\000\000\000\000\000\000\0003\228\000\000\000\000\005\188\019\170\000\000\000\0004H\000\000\000\000\t\192\000\000\000\000\000\000\000\000\014\248\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\254\000\000\021<\000\000\000\000\000\000:H\000\000\n\158\000\000\000\000\000\000\001\196\000\000\002\202\000\000\000\000\006\228\022 \000\000\022\178\000\000\000\000\000\000\007\230\000\000:d\b4; \000\000;8\000\000\000\000\000\000\b^\000\000;<\tZ\000\000\000\000)\012\nt)H\000\000)\166\000\000\000\000\000\000\n\160\000\000;T\011\030\000\000\000\000\006\180\011&\007\216\000\000\n\150\000\000\000\000\000\000\0116\000\000;\132\011T\000\000\000\000\000\000\000\175\000\000\000\000\000\000\000E\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002l\000\000\015\024\000\000\000\000\000\000\015\028\000\000\000\000\000\000\000\000\000\000\003\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\030\000\000\000\000\014\254\000\000\006\146\000\000\000\000\001\158\000\000\000\t\014\160\002\206\000\000\000\000\t\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\234\005\168\000\000\000\000\000a\000\000\000\000\000\000\006B\000\000\000\000\b\026\012\242\000\000\000\000\000\000\000\000\r\020\014\244\020x\000\000\000\000\000\000\015\188\000\000\000\000\000\000\000\000\000\000\000\000\002\174\000\000\000\000\006\020\000\000\000\000\014h\000\000\017z\000\000\000\000\000\000\0005\000\000\000\000\025T\000\000\007\168\000\000\000\000\000\000\000\000\004\222\019\216\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018`\024\174\000\000\000\000\000\000\000\000\029\216\029\250\020\238\000\000\030\148\000\000\000\000\000\000\000\000\000\000\000\000\000\194\000\000\015D\000\000\000\000\000\000\001\180\000\000\n\136\000\000\000\000\000\000\019\026\000\000\000\000 \248\"\244\021\n\000\000#\028\000\000\000\000\000\000\000\000\000\000\000\000\027\176\014\146\000\000\014\148\000\000#\156\025f\000\000#\228\000\000\000\000\000\000\000\000\014\154\000\000\015\028\000\000\000\000\000\000\002r\000\000\000(\014\222\002\254\000\000\000\000\000\000\t\212\001\230\000\000\000\000\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\r\208\000\000\002>\015t\001\138\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\0210%\006\000\000\000\000\000\000\000\000%\160\000\000\000\000\015\176\000\000\000\n\012\236\000\000\000\000\000\000\022\166\000\000\000\000\000\000\000\000\000\000\000#\025<\000\000\000\000\029h\000\000\000\000\000\000\000\000\028B\000\000\000\000\007\n\000\000\000\000\000\000\000I\000\000\000\000\000M\000\000\000\000\000\000\000\000\000\000\000\000\000\0004\188\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\000\000\026\003\214\005\142\011\140\000\000\002L\006\224\007\132\007\248\000\000\000\000\000\000\000\000\000\000\000\000\006F\023D\000\000 \190\n\142\000\000\000\000\011\030\000\000\024(\000\000-\238\000\000\000\000\t\210\024\186\000\000!*\000\000\t\244!\200\000\000\000\000\000\000\0003\t\238\000\000\000\000\000\000\000\000\t\216\000\000\002t\003t\000\000\000\000\b\198\t\194\000\000\020\024\000\000\000\000\004\238\000\000\007\022\000\000\000\000\0214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\216\000\000\000\000\000\000\011\180\000\000\025v\000\000\011\024\015(\000\000\000\000\000\000\000\000\000\000\rX\000\000\000\000\000\000\000\000\000\0004\252\000\000\006>\000\000\000\000\000\000\000\000\000\000\001\200\000\000\011\174\tr\012\146\000\000\002\236\r$\000\000\t\224\000\000\004\030\000\000\005\002\000\000\005\028\000\000\011\024\000\000\000\000\000\000\000\000\000\000\006\128\000\000\n\178\000\000\007<\000\000\011\024\015\176\000\000\bh\000\000\015\156\005\242\000\000\001D\000\000\005\184\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\024\000\000\t\b\000\000\000\000\000\000\014\\\000\000\000\000\000\000\000\000\000\000\015\164\014b\000\000\000\000\014\162\000\000\000\000\014z\b\238\015\230\000\000\015\236\000\000\000\000\004T\004@\000\000\014\178\000\000\000\000\014\236\000\000\000\000\000\000\000\000\000\000\000\000\015\210\014\144\000\000\000\000\000\000\014\198\014\150\t\028\t\184\014\198\015\000\000\000\000\000\014\170\nx\n~\014\214\015\014\000\000\000\000\0126\015\246\000\000\015\248\000\000\016\030\000\000\000\000\016\000\000\000\000\000\016\b\000\000\000\000\000\000\000\000\016\016\000\000\0166\000\000\000\000\000\000\016>\000\000\000\000\000\000\016B\000\000\000\000\000\000"), (16, "\004?\002v\004R\006\\\004\130\004\131\007\016\004\130\004\131\000\153\000\211\000\018\006\"\002I\007A\000\212\002x\002\225\000\153\000\004\002L\006\002\006\130\003Y\005\029\005\005\006Z\0065\0066\004?\000\025\004R\006\237\000\017\006\227\006#\000S\000S\007c\000Z\006&\0065\0066\000\005\007d\006\131\006\237\000\153\006\134\0065\0066\003Z\007e\006\231\004\214\006\238\006\224\006\241\0065\0066\004\215\006;\004A\000\153\000\156\000\162\004B\000\161\000\007\006\238\000k\006\241\0065\0066\000z\000\205\000\\\000\024\000S\000\213\006 \006!\004\191\002J\000\153\000\156\000\157\002m\000\161\004\215\002J\004A\000\005\000\153\005>\004B\006<\007/\0070\007\026\000\028\006Q\0067\001\230\000 \000\163\001\242\004\166\000V\002b\002\218\004\191\007*\007+\000\219\000z\0067\006\232\0074\000\153\000\156\000\153\000\153\001\139\0067\005L\000\163\004W\006\233\006\234\0010\004\193\002\222\0067\007\029\000\153\000\156\000\157\000\158\000\161\0079\000\202\002_\007:\006\171\000Z\007g\0067\000\153\000V\006R\005\192\0015\003Y\004\133\000\153\000\156\000\157\001\135\000\161\004\193\000\163\007>\000k\002\221\004\195\001\232\006\172\007h\000\153\001\233\006\175\0065\0066\0077\004O\005H\000\163\006\225\004\200\000o\000{\000[\000\220\004\216\007B\004P\005N\005+\0017\004\b\000r\004\170\000\220\004\195\000c\000\221\000\163\005\200\002\199\005\025\000k\002)\006=\004O\000k\000\205\001\248\004\200\001\189\000\206\002\201\000\220\004\216\007i\004P\004\173\001\230\0077\001\175\001\242\000o\000\128\007j\004\202\007f\005\006\000\222\005%\007\136\0068\004\224\000r\004\000\005<\000\153\000c\000\b\000\202\002[\006\148\002\236\004\253\004[\004?\000\219\004R\0067\007\207\000\004\007 \001\201\006F\004\202\006=\004\219\007\138\001\138\000\153\007\162\004\224\004\\\000\153\007\140\006\252\006\174\004]\007e\007\163\004\214\004^\004\253\004[\000\005\000\228\006D\004_\000k\001\138\001\141\001\232\006G\0065\0066\001\233\000\229\000\220\001\188\006\172\001\249\004\\\004\015\006\175\0065\0066\004]\000S\006\223\000k\004^\001\141\005\202\006%\000\205\004\215\004_\004A\000\206\001\188\002\204\004B\000k\002*\0026\004\216\007\182\004?\001;\004R\006\224\006\247\001\248\000k\001\250\000\220\006#\004\191\000\221\000~\001\138\006&\0065\0066\007F\000\153\001\141\001\204\001\251\002q\003Y\005\029\005\005\000\219\001\188\005>\001;\001;\001\252\000\153\001\138\002\223\001\141\006\248\0061\006\249\000\031\005\204\0067\000\222\001\188\0015\004\224\006\177\006\213\004\229\001\253\005\031\000V\0067\0062\001\254\001\141\004\253\001\206\001\255\004\193\004\215\000\153\004A\001\188\002\000\007\183\004B\006\250\002!\001:\006\211\006\214\0065\0066\004?\000\153\004R\001;\006\251\000\r\003Y\0016\004\191\006v\000\220\007\214\001\230\001\249\005\203\001\242\0067\001\189\000\153\004\195\001\208\000\153\006J\007e\007\168\005\005\000\016\000\017\007s\004O\000\153\000\220\000S\004\200\000\221\007\128\005A\000\220\004\216\007\184\004P\000\153\002k\004\b\000\200\002\218\006J\001\250\007j\000a\000S\006\225\005,\004W\007\186\000l\0010\004\193\000\211\004\001\004\215\001\251\004A\000\212\000c\000\222\004B\002\220\002$\001;\004\174\001\252\000k\0067\000m\001\232\007\179\006\244\004\202\001\233\004\219\007\188\004\191\000\163\002s\004\224\000\153\000n\007\190\001\253\000S\004\195\001;\000S\001\254\000S\004\253\004[\001\255\002\221\000\153\004O\000S\004\166\002\000\004\200\0064\003[\002%\000\220\004\216\002)\004P\007J\005.\004\\\001\248\005\202\000k\006K\004]\000V\0062\000\205\004^\006\228\005\025\000\213\000S\000k\004_\004\193\000z\0010\007\016\000\153\005\186\003~\001\189\000\"\007A\003\127\005'\006K\005\205\002\225\007\129\000\153\000\156\001\140\004\202\000\161\005\006\004?\005%\004R\007s\004\224\002e\000T\005<\000V\000\219\007\127\000V\004\195\000V\004\216\004\253\004[\007\130\000\153\007v\000V\007w\004O\007e\007\168\005\005\004\200\004\254\000\153\001;\000\220\004\216\007\174\004P\004\\\004\167\000\163\000\202\002U\004]\000o\007j\000\220\004^\003\166\001\249\000V\004\201\003\128\004_\006w\000r\003\129\007\237\000$\000c\005\204\000S\001;\007\024\004\215\004\224\004A\000S\004\229\002\203\004B\001\174\002*\002+\003Z\004\202\004\253\005\006\006z\007\176\007\173\000\005\004\224\001\250\003\217\007\178\004\191\000v\0018\000o\001r\006N\000\220\004\253\004[\000\221\001;\001\251\005\031\000W\000r\000k\000c\001u\000c\001;\000\205\001\252\001\141\001\206\000\206\000Y\004\\\007\"\003\244\006\217\001\188\004]\004?\003\168\004R\004^\000k\000y\002y\001\253\000\222\004_\004\130\004\131\001\254\004?\000V\004R\001\255\004\193\000\153\003\249\000V\002x\002\000\007e\007\168\005\005\002!\000\219\001\207\001\176\003\170\000\153\000(\007v\003\250\007w\007e\007\168\005\005\005\191\006\143\0065\0066\001;\007L\003\142\003\221\003\206\000S\002\204\000S\004\195\001\189\000\220\007\238\0028\003\143\001;\003\254\000k\004\215\004O\004A\001\175\000\153\004\200\004B\000*\002\205\000\220\004\216\007\174\004P\004\215\001\138\004A\007\175\003\220\000S\004B\007j\000k\004\191\003\209\007C\000\211\004\201\005\187\000\153\007\177\000\215\003\173\001;\007A\005\128\004\191\001\141\000\153\000\202\002?\002\205\001\200\002\236\000\153\001\188\002\207\000\220\000\208\005\189\000\221\004\202\001\189\005\006\003[\007\176\000z\0067\004\224\006Y\000V\007\178\000V\000\153\000\156\000\157\001\191\000\161\001\229\004\253\004[\003\230\004\193\007\245\003\175\000S\004\130\004\131\002\206\004\000\001\175\000\222\006Z\0065\0066\004\193\000k\005\"\004\\\003\176\000V\000\205\003\174\004]\005\171\000\213\000\153\004^\004\132\000k\004\130\004\131\007\207\004_\000\205\000\163\004\195\001\154\000\206\000\153\000\156\000\157\001\196\000\161\001\182\000S\004O\000k\006y\004\195\004\200\007\215\000.\002\181\000\220\004\216\007\174\004P\001\157\004O\000\219\001\206\004?\004\200\004R\007j\006Y\000\220\004\216\007\174\004P\004\201\0015\000\219\0000\003&\000V\001+\007j\001\173\000\153\000\163\000q\003\173\004\201\007e\007\168\005\005\0067\006Z\0065\0066\000o\001w\006\237\004\202\000k\005\006\001\208\007\176\006C\007\156\004\224\000r\007\157\007\178\000\153\000c\004\202\004Z\005\006\003Y\007\176\004\253\004[\004\224\000V\006\238\007\178\006\241\0065\0066\004\215\006D\004A\005\020\004\253\004[\004B\006G\0065\0066\004\\\007F\004?\007K\004R\004]\007\185\000\220\004\242\004^\000\221\0003\004\191\004\\\002\215\004_\004\b\005\189\004]\002u\000\220\004\206\004^\000\221\004?\002\225\004R\001;\004_\000\211\005\022\003\249\0051\0067\000\215\002=\000S\007\161\003}\000\211\0007\000\222\000\153\007C\000\212\007N\004\247\007e\007\168\005\005\001\158\001;\001\159\007\208\000\222\001\138\000o\000\153\002O\007&\001;\004\193\000k\0067\004A\000S\001;\000r\004B\000\254\004\251\000c\0006\0067\004\175\006]\007\207\001\141\0051\001\230\005\020\007\218\001\242\007F\004\215\001\188\004A\004>\000\224\000k\004B\000\153\000\255\0077\000\205\004\195\001\000\000\153\000\213\000k\007\189\001\138\0009\000\226\000\205\004O\004\191\004\166\000\213\004\200\006w\000;\002`\000\220\004\216\007\174\004P\005\021\001;\000?\000\153\000A\004\211\001\141\007j\003Y\001\178\006\144\006\145\004W\004\201\001\188\004\218\000\219\004\212\005\212\000V\005\011\003\226\000k\004\216\007F\001\232\000\219\004\212\000C\001\233\001\157\000S\004\212\005\214\004?\006`\004R\004\202\004\193\005\006\006\146\007\176\000S\001\154\004\224\004\b\000E\007\178\007(\000S\001\177\006\147\000\153\006Y\007I\004\253\004[\003Y\005\029\005\005\004O\002)\0059\007\001\001\157\005\245\001\248\004\176\000\220\006S\004\224\004P\004\195\004\229\004\\\004\167\006Z\0065\0066\004]\0053\004\253\004O\004^\004\177\004Y\004\200\004\165\000S\004_\000\220\004\216\007\174\004P\004\215\000\220\004A\0059\000\221\005;\004B\007j\000V\007\252\000I\000\220\001\168\004\201\000\221\000H\003~\000K\007\210\000V\003\127\005W\004\191\007\253\000M\004?\004\166\004R\000\153\001\001\000S\000z\0056\004\212\004[\000\222\005Q\004\202\002\236\005\006\005:\007\176\007H\000\153\004\224\000\222\000}\007\178\003Y\005\029\005\005\000\220\004\\\005\215\001\249\004\253\004[\004]\0067\000\131\001\158\004^\001\159\000\254\001\181\000V\001\194\004_\005\214\000\130\001;\004\193\000S\005S\004\\\004\216\003\166\002*\003\133\004]\003\128\006M\000\224\004^\003\129\004\215\000\255\004A\001\250\004_\001\000\004B\000\228\005\222\001\158\001\235\001\159\000\226\007{\005Q\007G\000V\001\251\000\231\001;\004\195\000\164\004\191\005\224\000u\001;\004\167\001\252\007\207\005\225\004O\000S\005\247\000S\004\200\007\165\003\227\004\224\000\220\004\216\004\229\004P\005\195\005+\005\224\001\253\000\133\004?\004\253\004R\001\254\005R\000o\002\178\001\255\004\201\004\130\004\131\000V\003[\002\000\000S\003\168\000r\002!\000\153\000S\000c\000\136\000\153\003Y\004\193\004\214\004\130\004\131\b\005\004?\000S\004R\004\202\000S\005\006\000\138\005%\000\202\002<\004\224\007\235\007\180\004\229\007\165\003\170\006f\006K\000\153\002\230\007F\004\253\004[\003Y\005\029\005\005\000V\000\164\000V\004\195\003\142\004\215\003\213\004A\b\000\000\142\003[\004B\000\220\004O\004\\\003\143\002c\004\200\006\224\004]\000S\000\220\004\216\004^\004P\005)\005+\004\191\000o\004_\000V\000S\000\153\005\177\004\215\000V\004A\007s\004\201\000r\004B\007\171\000k\000c\007z\000S\000V\000\205\005\207\000V\003\173\000\206\005K\005\228\000\153\007v\004\191\007w\005\177\004?\007~\004R\004\202\007R\005\006\001;\005%\003\216\005\224\004\224\005\179\000S\004\229\000\153\005h\004\212\004\193\000\153\003Y\007\212\004\253\004[\003Y\005\029\005\005\b\001\000\219\0022\004?\001\200\004R\000V\003\175\007\165\003\244\005\178\000S\006\144\006\145\004\\\003A\007\\\000V\007\246\004]\004\193\000\153\003\176\004^\004\169\004\195\003Y\005\029\005\005\004_\004\b\000V\003\249\007a\004\215\004O\004A\000\164\001\154\004\200\004B\007\246\006\176\000\220\004\216\001\156\004P\005z\003\131\004\172\007U\000\164\001\186\006\147\004\195\006\230\004\191\004\166\007F\001\157\005@\007\187\004\212\004\215\004O\004A\003\\\000S\004\200\004B\007l\002p\000\220\004\216\003[\004P\005P\005+\007\245\007J\000\220\003\244\004\166\000\221\004\202\004\191\004\219\005B\003~\004\201\003\228\004\224\003\127\007\135\004\229\000S\007v\b\007\007w\b\b\000\160\001=\004\253\004[\003\249\004\193\001;\005\236\000S\000S\004?\000\153\004R\004\202\000\222\005\006\007A\005%\001\200\003\250\004\224\004\\\005\238\004\229\001@\007\137\004]\001D\000\153\005\239\004^\004\253\004[\007e\004\193\004\214\004_\004\212\000V\004\195\000S\001C\004\167\003\254\005\238\000x\001F\000S\003\166\004O\004\\\001H\003\128\004\200\004\216\004]\003\129\000\220\004\216\004^\004P\005\199\005+\005n\001L\004_\000V\004\167\004\195\001N\004\215\005\127\004A\001P\004\201\001R\004B\007\245\004O\000V\000V\001U\004\200\001\158\003\167\001\159\000\220\004\216\007\181\004P\007\133\005+\004\191\001;\005\242\001Y\005\249\001X\004\202\005\250\005\006\004\224\005%\004\201\004\229\004\224\000S\005\253\004\229\005\224\000S\000V\004\253\001[\005\252\007\246\004\253\004[\000V\003\168\001]\006\000\005\252\b%\004?\001\200\004R\004\202\007J\005\006\004\242\005%\001a\001c\004\224\004\\\005\224\004\229\b&\001e\004]\004\193\000\153\001g\004^\004\253\004[\007e\003\170\004\214\004_\000o\000\211\003\249\000\211\001k\001j\000\212\001m\000\215\001o\001t\000r\003\142\004\\\003\206\000c\000\164\004\247\004]\001z\000\220\001y\004^\003\143\004\195\001|\000V\001~\004_\001\128\000V\001\144\001\132\004\215\004O\004A\007B\001\205\004\200\004B\000\153\004\251\000\220\004\216\007\167\004P\004?\000\164\004R\001\137\003\209\007\166\000S\007j\003\140\004\191\006Y\001\193\003\173\007\170\001\199\000k\001\202\000k\000\153\000S\000\205\001\198\000\205\007e\000\213\004\214\000\213\006Y\002j\002i\007C\002o\000S\006Z\0065\0066\002}\004\202\001;\004\219\007\172\002\128\002\132\000z\004\224\002\131\002\134\007\178\004\242\002\136\006Z\0065\0066\002\140\003\175\004\253\004[\002\142\004\193\000\219\004\215\000\219\004A\001\154\003~\002\144\004B\003\165\003\127\003\176\001\164\003\249\002\146\004?\004\\\004R\002\149\000V\007\169\004]\002\153\002\152\004\191\004^\001\157\002M\005\165\002\155\000S\004_\000V\000\153\004\195\002\157\002\161\002\163\003Y\002\165\004\214\007\148\007\149\002\167\004O\000V\002\171\002\170\004\200\002\173\002\175\0067\000\220\004\216\007\167\004P\000\153\000\156\000\157\002g\000\161\006\240\002\180\007j\002\186\002\185\000k\000S\0067\007\170\003\128\002\188\002\190\004\193\003\129\004\215\002\192\004A\002\196\002\213\000\220\004B\000\220\000\221\006\238\000\221\006\241\0065\0066\000\153\002\212\000o\002\183\004\202\003[\004\219\007\172\004\191\000\163\002\229\004\224\000V\000r\007\178\000z\002\235\000c\004\195\007\153\002\234\0012\004\253\004[\003<\000\222\000S\000\222\004O\005I\000\164\002\238\004\200\005K\001\165\002\241\000\220\004\216\007\167\004P\002\245\004\\\004?\004D\004R\003\233\004]\007j\002\244\000V\004^\002\247\004\207\007\170\002\249\000\254\004_\004\193\001\183\002\253\000\153\001\158\002\255\001\159\000S\003Y\004\209\004\214\003\001\001\154\003\003\001;\000\228\0067\000\224\0077\001\180\004\202\000\255\004\219\007\172\006d\001\000\000\233\004\224\003\006\003\n\007\178\003\t\000\226\001\157\004\195\003\142\003\012\003\014\004\253\004[\000V\006s\004M\000\220\004O\004\215\003\143\004A\004\200\000\202\002;\004B\000\220\004\216\003\018\004P\003\020\004\\\003\022\004?\003\024\004R\004]\006Y\000o\003#\004^\004\191\003\028\005@\004\221\003\027\004_\003\030\003 \000r\003%\000\153\000V\000c\003+\003*\003Y\004\222\005\005\003-\006Z\0065\0066\000\211\000S\003/\0031\004\202\000\215\004\219\005B\0035\003;\003:\004\224\003@\003F\004\229\001\138\003E\006*\000\153\006.\000k\006W\004\253\004[\004?\000\205\004R\004\193\006B\000\206\004\215\006P\004A\006|\003\145\005\b\004B\001\141\000\164\006\170\007\016\004\\\000\153\000\202\002:\001\188\004]\003Y\004\222\005\005\004^\002\225\004\191\004\002\006\195\006\197\004_\001\206\006\207\006\209\000k\004\195\006\219\006\246\000\219\000\205\006\237\007\146\001\158\000\213\001\159\004O\000V\0067\006Y\004\200\004\149\004\006\001;\000\220\004\216\007\192\004P\007\196\004\215\007\216\004A\007\222\007\223\006\238\004B\006\241\0065\0066\001\208\007\228\005\n\006Z\0065\0066\007\229\004\193\007\234\000k\000\219\007\233\004\191\007\241\000\205\007\243\007\249\007\250\000\206\007\254\007\255\001\230\000\211\b\002\001\231\b\003\004\202\000\215\004\219\005\012\b\006\b\t\b\n\004\224\b\027\b\016\005\014\003[\b\025\b\021\000\153\004\195\004\242\b\024\004\253\004[\004?\b!\004R\000\220\b\031\004O\000\221\000\219\b#\004\200\b(\005\r\000S\000\220\004\216\004\193\004P\004\\\000\153\003\249\000\000\000\000\004]\003Y\004\222\005\005\004^\0067\007\019\000\000\004\201\000\000\004_\0067\005\165\000k\000k\000\222\001\232\000\000\000\000\000\205\001\233\000\220\000\000\000\213\000\221\000\000\000\000\004\195\000\000\000\000\006q\000\000\004\202\000\000\005\006\000\000\005\007\004O\004\215\004\224\004A\004\200\004\229\000\000\004B\000\220\004\216\000\000\004P\001\210\004\253\004[\004?\000\000\004R\000\222\000\000\001\248\000\219\000\000\004\191\000V\004\201\000\000\000\220\000\000\000\000\000\221\000\000\004\\\000\153\000\000\001\212\000\000\004]\003Y\005\029\005\005\004^\000\000\001;\000\000\000\000\000\254\004_\000\000\004\202\003[\005\006\000\000\005\007\000\000\000\000\004\224\000\000\000\000\004\229\000\000\000\222\000\000\000\000\000\000\000\224\000\000\004\253\004[\000\255\000\000\000S\004\193\001\000\000S\004\215\002\236\004A\000\000\003~\000\226\004B\000\000\003\127\000\211\007\022\004\\\000S\000\000\000\212\000S\004]\000\000\006o\004?\004^\004R\004\191\006Y\000\220\000\220\004_\001\249\000\221\000\000\000\000\004\195\000\000\000\000\000\000\000\000\000\164\000\153\000\000\000\000\000\000\004O\003Y\005\029\005\005\004\200\006Z\0065\0066\000\220\004\216\004\t\004P\002=\000\153\000\156\000\157\002\210\000\161\000\222\000\000\000\000\000\000\000\000\000k\000\000\004\201\000V\003\128\000k\000V\004\193\003\129\000S\000\205\004\r\002S\000\000\000\213\004\215\000\000\004A\000\000\000V\001;\004B\000V\000\254\000\000\000\000\004\202\000\000\005\006\004?\005\007\004R\000\163\004\224\000\000\000\000\004\229\004\191\000\000\0025\000\000\004\195\000\224\000\000\004\253\004[\000\255\000\153\000\000\000\219\001\000\004O\003Y\005\029\005\005\004\200\000\000\000\226\0067\000\220\004\216\000S\004P\004\\\005$\000\000\000\000\000\000\004]\000\000\000\000\006\130\004^\000\000\000\000\000\000\004\201\000\000\004_\000S\000V\000\000\000\153\000\000\000\202\0029\004\193\000\000\000S\004\215\000\164\004A\000\000\000\164\006\131\004B\000\211\006\134\0065\0066\004\202\000\215\005\006\000\000\005%\004\255\000\164\004\224\004\233\000\164\004\229\004\191\000\000\000\000\000\153\003\142\000z\000\000\004\253\004[\004\195\005i\000\000\000\220\005q\000\000\003\143\000\000\000\220\005\003\004O\000\221\000V\000\000\004\200\000\000\000\000\004\\\000\220\004\216\000\000\004P\004]\005&\000k\004?\004^\004R\000\000\000\205\000V\001\154\004_\000\206\000\000\004\201\000k\000\000\001\164\000V\004\193\000\205\000\222\000\153\006\130\000\213\000\000\000\164\003Y\005C\005\005\000\000\001\157\0067\000\000\000\153\000\000\006~\000\000\004\202\000\000\005\006\005\129\005%\001\138\000\000\004\224\006\131\000\219\004\229\006\134\0065\0066\000\000\004\195\000\000\000\000\004\253\004[\000\000\000\219\000\000\000\000\003\144\004O\004\215\001\141\004A\004\200\001-\000\000\004B\000\220\004\216\001\188\004P\004\\\0058\004?\000\164\004R\004]\000o\003(\002M\004^\0010\004\191\000\000\004\201\000\000\004_\000\000\000r\005\138\000\000\000\153\000c\000\000\000\000\000\000\003Y\005C\005\005\001\154\000\000\000\164\000\000\000\000\000\211\005E\001\164\000\000\004\202\000\212\005\006\000\000\005%\000\000\000\000\004\224\005\156\006Y\004\229\000S\001\157\0067\000\220\000\000\001\165\000\221\004\253\004[\000\000\000\000\000\000\004\193\000\153\004\215\000\220\004A\000\000\000\221\000\000\004B\006Z\0065\0066\000\000\006\154\004\\\000\000\000\000\001\166\000\000\004]\001\158\000\000\001\159\004^\004\191\000\222\000\000\000\000\000\000\004_\001;\0012\000\000\000k\004\195\000\000\000\211\000\222\000\205\000\000\000\000\000\212\000\213\000\000\004O\000\000\000\000\005G\004\200\000\000\000\000\000\000\000\220\004\216\0018\004P\004?\000\000\004R\000V\000\000\000\000\001;\000\000\000\000\000\254\000\000\005Y\000\000\004\201\000\000\007s\000\000\004\193\000\153\000\000\000\000\000\219\007u\003Y\004\222\005\005\000\000\000\000\000\224\0067\001\165\000\000\000\255\006l\0065\0066\001\000\004\202\000\000\005\006\000k\005F\000\000\000\226\004\224\000\205\000\000\004\229\000\000\000\213\006\180\004\195\000\000\000\000\001\171\004\253\004[\001\158\000\000\001\159\004\215\004O\004A\000\000\000\000\004\200\004B\001;\000\000\000\220\004\216\000\000\004P\004?\004\\\004R\000\000\000\000\000\000\004]\000\000\000\000\004\191\004^\000\219\000\000\004\201\000\153\000\000\004_\000\164\000\153\006l\0065\0066\000\000\003Y\000\000\004\214\006\130\000\220\000\000\000\000\000\221\000\000\005\172\006l\0065\0066\0067\004\202\000\000\005\006\000\000\005F\000\000\000\000\004\224\006m\000\000\004\229\000\000\006\131\000\000\000\000\006\134\0065\0066\004\253\004[\000\000\004\193\000\000\004\215\000\222\004A\000\000\000\000\000\000\004B\000\000\000\000\000\202\000\204\000\000\000\000\001\230\004\\\006\141\001\231\000\000\000\000\004]\000\000\000\000\004\191\004^\007s\000\000\007v\000\000\007w\004_\000\220\007}\004\195\000\221\000\211\0067\001;\000\000\000\000\000\212\000\000\000\000\004O\005\193\006\159\000\000\004\200\005K\000\228\0067\000\220\004\216\000\000\004P\004?\000\000\004R\000\000\006\185\000\235\000\000\000\000\000\000\000\000\000\222\000\000\000\000\004\201\0067\000k\000\000\004\193\000\153\000k\000\205\000\000\001\232\003Y\000\206\004\214\001\233\000\000\000\211\000\000\000\211\000\000\000\000\000\212\000\000\000\215\000\000\004\202\000\000\005\006\000k\005\007\000\000\000\000\004\224\000\205\000\000\004\229\000\153\000\213\000\000\004\195\000\000\000\000\000\000\004\253\004[\000\228\000\000\000\219\004\215\004O\004A\001\248\000\000\004\200\004B\000\000\000\237\000\220\004\216\000\000\004P\004?\004\\\004R\000\000\000\000\000\000\004]\000\000\000\000\004\191\004^\000\219\000\000\005@\000\000\000k\004_\000k\000\153\000\000\000\205\000\000\000\205\003Y\000\213\004\214\000\213\006\237\000\000\000\000\005\209\000\000\000\000\000\000\005K\000\000\000\000\004\202\000\000\004\219\005B\007v\000\000\007w\004\224\000\000\000\000\004\229\000\000\000\000\006\238\001;\006\241\0065\0066\004\253\004[\007\007\004\193\000\219\004\215\000\219\004A\000\000\000\000\000\220\004B\000\000\000\221\000\220\000\000\000\000\001\249\004?\004\\\004R\000\000\000\000\000\000\004]\000\000\000\000\004\191\004^\000\000\001.\000\000\0010\000\000\004_\000\220\000\153\004\195\000\221\000\000\000\000\003Y\000\000\004\214\000\222\000\000\000\000\004O\005\211\000\000\000\000\004\200\005K\000\000\000\000\000\220\004\216\000\000\004P\000\000\000\000\000\153\000\153\000\156\000\157\002\227\000\161\000\000\000\000\000\222\000\000\000\000\005@\0067\000\000\000\000\004\193\000\000\004\215\000\000\004A\000\000\000\000\000\220\004B\000\220\000\221\000\000\000\221\000\000\000\000\000\000\000\000\0024\000\000\000\000\004\202\000\000\004\219\005B\004\191\000\000\000\000\004\224\000\163\000\000\004\229\000\000\000\000\000\000\004\195\000\000\000\000\0012\004\253\004[\000\228\000\222\000\000\000\222\004O\007O\000\000\000\000\004\200\005K\000\000\000\239\000\220\004\216\001\154\004P\004?\004\\\004R\000\000\0018\001\164\004]\000\000\000\000\000\000\004^\007W\001;\005@\000\000\000\254\004_\004\193\000\153\001\157\000\000\000\000\000\000\003Y\004\222\005\005\000\000\000\000\000\211\000\000\000\202\001\221\000\228\000\212\000\224\000\000\000\000\004\202\000\255\004\219\005B\000\000\001\000\000\241\004\224\000\000\000\000\004\229\000\000\000\226\000\000\004\195\000\000\000\000\000\211\004\253\004[\000\000\007\020\000\212\004\215\004O\004A\000\000\000\000\004\200\004B\000\000\000\000\000\220\004\216\000\000\004P\004?\004\\\004R\000\000\000\000\000\000\004]\000\000\000\000\004\191\004^\000\000\000\000\005@\000\000\000k\004_\000k\000\153\000\000\000\205\000\000\000\205\003Y\000\213\004\214\000\206\000\000\000\000\006Y\001\230\000\000\000\000\001\242\000\000\000\000\000\000\004\202\000\000\004\219\005B\000k\000\000\001\165\004\224\000\000\000\205\004\229\000\153\000\000\000\213\001\138\006Z\0065\0066\004\253\004[\000\000\004\193\000\219\004\215\000\219\004A\000\000\000\000\000\000\004B\003\236\000\000\000\000\001\158\000\000\001\159\001\141\004\\\000\000\000\000\000\000\000\000\004]\001;\001\188\004\191\004^\000\000\000\219\000\000\000\000\000\000\004_\000k\000\000\004\195\001\232\004?\000\000\004R\001\233\006\237\000\000\000\000\000\000\004O\007]\000\000\007\139\004\200\005K\000\000\006\133\000\220\004\216\000\153\004P\000\000\000\000\000\000\003Y\004\222\005\005\000\000\006\238\000\000\006\241\0065\0066\000\000\004\201\0067\002(\000\000\004\193\006\131\000\000\001\248\006\134\0065\0066\000\220\000\000\000\220\000\221\000\000\000\221\006l\0065\0066\005T\004?\000\000\004R\004\202\000\000\005\006\004\215\005\007\004A\000\000\004\224\000\000\004B\004\229\000\000\000\000\000\220\004\195\000\153\000\221\000\000\004\253\004[\003Y\000\222\005\005\000\222\004O\004\191\000\000\000\000\004\200\000\000\000\000\000\000\000\220\004\216\000\000\004P\000\000\004\\\000\000\000\000\000\000\000\000\004]\000\000\000\000\000\000\004^\000\222\0067\005@\000\000\000\211\004_\000\000\000\000\000\000\000\212\004\215\000\000\004A\0067\000\000\000\220\004B\000\000\001\249\000\000\000\000\002Q\0067\004?\000\000\004R\004\202\004\193\004\219\005B\000\000\006\200\004\191\004\224\000\000\000\000\004\229\005\t\000\000\000\000\000\000\000\153\000\202\001\224\004\253\004[\003Y\000\228\004\214\006\152\000\000\000\000\001\250\000\000\000\000\000\000\000\000\000\000\000\243\000\000\000\000\004\195\000\000\004\\\000k\000\000\001\251\000\000\004]\000\205\000\000\004O\004^\000\213\001;\004\200\001\252\000\000\004_\000\220\004\216\004\193\004P\004\215\000\000\004A\000\000\000\000\000\000\004B\000\000\000\202\001\227\000\000\001\253\000\000\004\201\000\000\000\000\001\254\000\000\000\000\000k\001\255\000\000\004\191\000\000\000\205\000\219\002\000\000\000\000\206\000\000\002!\000\000\004\195\000\000\004?\007\027\004R\004\202\000\000\005\006\000\000\005\007\004O\000\000\004\224\000\000\004\200\004\229\004\213\000\000\000\220\004\216\000\153\004P\000\000\004\253\004[\003Y\001\230\004\214\000\000\001\242\000\000\000\219\000\000\000\000\000\000\005V\000k\000\000\000\000\004\193\000\000\000\205\004\\\000\000\000\000\000\206\000\000\004]\000\000\000\000\000\000\004^\000\000\000\000\000\000\000\000\004?\004_\004R\004\202\000\000\005\006\004\215\005X\004A\000\000\004\224\000\000\004B\004\229\004\223\000\000\000\220\004\195\000\153\000\221\000\000\004\253\004[\003Y\000\219\004\214\000\000\004O\004\191\000\000\000k\004\200\000\000\001\232\000\000\000\220\004\216\001\233\004P\000\000\004\\\000\000\000\000\000\000\006\210\004]\000\000\000\202\003d\004^\000\222\000\000\004\217\000\000\000\220\004_\000\000\000\221\000\000\000\000\004\215\000\000\004A\000\000\000\000\000\000\004B\006\211\006\214\0065\0066\002@\000\000\004?\001\248\004R\004\202\004\193\004\219\004\220\000\000\000\000\004\191\004\224\000\000\000\000\004\229\000\000\000\222\000\202\003u\000\153\000\000\000\000\004\253\004[\003Y\000\228\004\214\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\221\000k\000\245\000\000\006\235\004\195\000\205\004\\\000\000\000\000\000\206\006\210\004]\000\000\000\000\004O\004^\000\000\000\000\004\200\000\000\000\000\004_\000\220\004\216\004\193\004P\004\215\000\000\004A\000\000\000\222\000\000\004B\006\211\006\214\0065\0066\0067\000\000\004\217\000\000\000\000\000k\000\000\000\219\000\000\000\220\000\205\004\191\001\249\000\000\000\206\000\153\000\156\000\157\002\232\000\161\000\000\004\195\000\000\000\000\000\000\002V\004\202\000\000\004\219\004\220\000\000\004O\000\000\004\224\000\000\004\200\004\229\000\000\000\000\000\220\004\216\000\000\004P\000\000\004\253\004[\002C\001\230\000\000\000\219\001\242\000\000\000\000\000\000\000\000\000\000\004\217\000\163\000\000\000\000\004\193\000\000\000\000\004\\\006\236\000\202\003x\000\000\004]\000\000\001\252\000\000\004^\0067\000\000\000\000\000\000\004?\004_\004R\004\202\000\000\004\219\004\220\000\000\000\000\000\220\004\224\001\253\000\221\004\229\000\000\000\000\001\254\004\195\000\153\000\000\001\255\004\253\004[\003Y\000\000\004\214\002\000\004O\000\000\000\000\000k\004\200\000\000\001\232\000\000\000\220\004\216\001\233\004P\000\000\004\\\006\254\006\237\000\222\005(\004]\000\000\000\000\000k\004^\000\000\000\220\005!\000\205\000\221\004_\000\000\000\206\000\000\000\000\004\215\000\000\004A\000\000\000\000\006\238\004B\006\241\0065\0066\000\000\002@\000\000\004?\001\248\004R\004\202\000\000\004\219\005#\000\000\000\000\004\191\004\224\000\000\000\222\004\229\000\000\000\000\000\000\000\000\000\153\000\219\000\000\004\253\004[\003Y\000\000\004\214\000\000\006Y\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\215\000\000\000\000\000\000\000\000\004\\\007#\000\000\000\000\006Y\004]\000\000\000\000\000\153\004^\006Z\0065\0066\000\000\004?\004_\004R\000\000\004\193\001\138\004\215\000\000\004A\000\000\000\000\000\000\004B\006Z\0065\0066\0067\000\000\000\153\000\211\000\000\000\000\000\000\003Y\000\215\004\214\000\220\001\141\004\191\001\249\000\000\000\000\000\000\000\000\000\000\001\188\000k\000\000\004\195\000\000\000\000\000\205\002A\000\000\000\220\000\213\000\000\000\221\004O\000\000\000\000\000\000\004\200\000\000\000\000\000\000\000\220\004\216\000\000\004P\004\215\000\000\004A\002C\000\000\005 \004B\006Y\000\000\000\000\000\000\000\000\0067\005!\000\000\000\000\000\000\004\193\000\222\000k\000\219\000\000\004\191\000\000\000\205\000\000\000\000\001\252\000\213\0067\006Z\0065\0066\000\000\004?\000\000\004R\004\202\000\000\004\219\005#\000\000\000\251\000\000\004\224\001\253\000\000\004\229\000\000\000\000\001\254\004\195\000\153\000\000\001\255\004\253\004[\003Y\000\000\004\214\002\000\004O\000\000\000\219\000\000\004\200\000\000\000\153\000\000\000\220\004\216\004\193\004P\007\030\004\\\000\000\000\000\0054\000\000\004]\000\000\000\000\000\000\004^\000\000\000\000\0055\000\000\000\000\004_\000\000\000\000\000\000\000\000\004\215\000\000\004A\000\000\000\000\000\220\004B\000\000\000\221\000\211\000\000\004\195\0067\000\000\000\212\000\000\004\202\000\000\004\219\0057\000\000\004O\004\191\004\224\000\000\004\200\004\229\000\000\000\000\000\220\004\216\000\000\004P\002=\004\253\004[\000\000\006\165\0052\000\222\000\000\000\000\001\154\000\000\000\000\000\000\005!\005?\000\220\001\164\000\000\000\221\000\000\004\\\006\163\000\000\002Y\000\000\004]\000\000\000\000\000\000\004^\001\157\001;\000\202\003{\000\254\004_\000k\004\202\004\193\004\219\005#\000\205\000\000\001\001\004\224\000\213\000\000\004\229\004?\000\222\004R\000\000\000\000\000\224\000\000\004\253\004[\000\255\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\153\000\000\000\226\000\000\000\000\003Y\004\195\004\214\004\\\000\000\000\000\000\254\000\000\004]\000\219\000\000\004O\004^\000\000\000\000\004\200\000\000\000\000\004_\000\220\004\216\000k\004P\000\000\000\000\000\224\000\205\006\161\000\000\000\255\000\206\000\000\000\000\001\000\000\000\000\000\005@\004\215\000\000\004A\000\226\000\000\000\000\004B\000\000\000\153\000\156\000\157\0038\000\161\000\000\004?\000\000\004R\000\000\000\000\001\165\000\000\000\000\004\191\004\202\000\000\004\219\005B\007S\000\219\000\211\004\224\000\000\000\153\004\229\000\217\000\000\000\000\003Y\000\000\004\214\000\000\004\253\004[\003\246\000\000\000\000\001\158\005D\001\159\000\000\000\163\000\220\000\000\000\211\000\221\000\000\001;\000\000\000\212\000\000\004\\\000\000\000\000\000\000\000\000\004]\000\000\000\000\004?\004^\004R\004\193\000\000\000\000\004\215\004_\004A\000\000\006Y\000\000\004B\007_\000\000\000\000\000\000\000\222\000\153\000\000\000\000\000k\000\000\003Y\000\000\004\214\000\205\000\000\004\191\000\000\000\213\000\000\000\000\006Z\0065\0066\000\000\004\195\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000k\000\000\004O\000\000\000\000\000\205\004\200\000\000\000\000\000\213\000\220\004\216\000\000\004P\000\000\004\215\000\000\004A\000\000\000\228\000\219\004B\000\000\000\000\000\000\000\000\000\000\005@\000\222\000\000\000\247\000\000\004\193\000\000\004?\000\000\004R\004\191\000\000\000\000\000\000\000\000\000\000\000\000\000\219\000\000\000\000\007b\000\000\000\000\000\000\004\202\000\153\004\219\005B\000\000\000\000\003Y\004\224\004\214\000\000\004\229\000\000\000\000\0067\000\000\004\195\000\000\000\000\004\253\004[\000\202\004\023\000\000\000\000\000\000\004O\000\000\000\000\000\000\004\200\000\000\000\000\000\000\000\220\004\216\004\193\004P\004\\\001\138\000\000\000\000\000\000\004]\004\215\000\000\004A\004^\000\000\000\220\004B\007T\000\221\004_\000\000\000\000\004?\000\000\004R\000\000\000\000\001\141\000\000\000\000\000\000\000\000\004\191\000\000\000\000\001\188\004\195\000\000\000\000\000\220\000\153\004\202\000\221\004\219\007V\005g\004O\000k\004\224\000\222\004\200\004\229\000\205\000\000\000\220\004\216\000\206\004P\000\000\004\253\004[\000\000\004?\000\000\004R\000\000\000\000\000\000\000\000\005\134\000\000\007T\000\000\000\222\000\000\000\000\000\000\000\223\004\\\000\000\000\153\004\193\005\137\004]\004A\005g\000\000\004^\004B\000\000\000\000\000\219\000\000\004_\000\000\004\202\000\224\004\219\007V\006\191\000\000\001$\004\224\000\000\005\143\004\229\000\000\000\000\005\145\005\183\000\000\000\226\000\000\004\253\004[\004\195\000\000\000\000\000\000\000\000\000\228\000\000\005\137\000\000\004A\004O\000\000\000\000\004B\004\200\000\000\000\249\004\\\000\220\004\216\006Y\004P\004]\000\000\000\000\000\000\004^\000\000\000\000\005\143\005\180\000\000\004_\005\145\004W\007T\000\000\0010\000\000\000\000\006Y\000\000\000\000\006Z\0065\0066\000\000\000\000\000\000\003~\004?\000\000\004R\003\127\000\000\000\220\000\000\000\000\000\221\004\202\000\000\004\219\007V\006Z\0065\0066\004\224\000\000\000\153\004\229\000\000\000\000\000\000\005g\000\000\000\000\000\000\004\253\004[\000\000\000\000\000\000\004O\000\000\000\000\000\000\004?\000\000\004@\000\222\000\220\005\146\000\000\004P\000\000\000\000\004\\\005\136\000\000\000\000\004?\004]\004R\000\000\006Y\004^\000\000\005\025\000\000\003\166\005\137\004_\004A\003\128\000\000\000\000\004B\003\129\000\000\0067\000\000\000\000\004O\000\000\000\000\005\017\000\000\006Z\0065\0066\000\220\005\146\005\143\004P\000\000\000\000\005\145\000\000\005\147\0067\006Y\005\182\000\000\000\000\000\000\003\208\000k\004\201\004A\005\170\004[\000\000\004B\000\000\000\000\000\153\000\156\000\157\003>\000\161\003\166\000\000\004A\006Z\0065\0066\004B\000\000\004\\\000\000\000\000\000\000\000\000\004]\000\000\000\000\000\000\004^\005\147\000\000\003\168\005\152\004\191\004_\000\000\000\000\000\000\000\000\000\000\005\170\004[\000\000\001\230\000\000\004?\001\242\004R\000\163\000\153\000\156\000\157\003C\000\161\0067\000\000\000\000\000\000\000\000\004\\\003\170\000\153\000\000\000\000\004]\000\000\000\000\000\000\004^\000\000\004\184\005\206\000\000\005\023\004_\003\142\004O\003\206\004W\000\000\000\000\000\000\004\193\000\220\000\220\005\146\003\143\004P\000\000\006\189\0067\000\163\004?\000\000\004R\000\000\000\000\000\000\000\000\000\000\000\000\004\201\000\000\000k\000\000\003\166\001\232\004A\000\000\006\187\001\233\004B\004O\003\209\000\000\000\000\004\195\004\184\005\026\000\000\000\220\003\173\000\000\004P\000\000\000\000\004O\004\191\000\000\000\000\004\200\000\000\005\147\000\000\000\220\005\152\006Y\004P\000\000\000\000\000\000\000\000\002)\005\170\004[\000\000\000\000\001\248\000\000\000\000\000\000\005\025\003\166\000\000\004A\000\000\000\000\000\000\004B\006Z\0065\0066\004\\\003\175\000\000\000\000\000\000\004]\000\000\000\000\000\000\004^\000\000\006\204\004\191\004\202\004\193\004_\003\176\000\000\000\000\000\000\000\000\000\000\004?\000\000\004@\000\000\000\000\000\000\000\000\000\211\000\000\000\000\004[\000\000\000\215\000\000\004\128\000\000\001\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\202\004\195\000\000\004\\\006Y\004?\000\000\004R\004]\000\000\000\000\004O\004^\001\141\004\193\004\200\000\000\000\220\004_\000\220\001\249\001\188\004P\000\000\000\000\000\000\0067\006Z\0065\0066\004\184\005\016\000\000\000\000\001\138\000k\004\201\004A\000\000\000\000\000\000\004B\000k\002*\004F\000\000\000\000\000\205\004\195\000\000\000\000\000\213\000\000\000\000\001\250\000\000\001\141\000\000\004O\004?\004\202\004R\004\200\000\000\001\188\003\166\000\220\004A\001\251\004P\001\230\004B\000\000\001\242\000\000\000\000\001;\000\000\001\252\004[\000\000\000\000\000\000\004\201\004\184\004\185\000\219\004\191\000\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\253\004\\\000\000\000\000\000\000\001\254\004]\0067\000\000\001\255\004^\004\202\000\000\000\000\000\000\002\000\004_\000\211\000\000\002!\000\000\000\000\000\212\003\166\000\000\004A\000\000\000\000\000\000\004B\004[\000\000\000\000\000\000\000k\000\000\000\000\001\232\000\000\000\000\004\193\001\233\004?\000\000\004R\004\191\000\000\000\000\004\\\007\005\000\000\000\000\001\230\004]\004O\001\242\000\000\004^\000\000\000\000\000\000\000\000\000\220\004_\003\223\004P\000\000\004\184\004\199\000\220\000\153\000\000\000\221\002)\004\195\000\000\000\000\000k\001\248\000\000\000\000\000\000\000\205\000\000\004O\000\000\000\213\000\000\004\200\000\000\000\000\000\000\000\220\000\000\004\193\004P\000\000\003\163\000\000\000\000\000\000\000\000\003\166\000\222\004A\000\000\000\000\000\000\004B\004\201\000\000\000\000\000k\000\000\000\000\001\232\000\000\000\000\000\000\001\233\000\000\000\219\000\000\000\000\004\191\000\000\007\n\000\000\004\195\000\000\000\000\000\254\000\000\004\202\000\000\000\000\000\000\000\000\004O\000\000\004Q\000\000\004\200\000\000\000\000\000\000\000\220\000\000\000\000\004P\000\224\002)\004[\000\000\000\255\000\000\001\248\000\220\001\000\000\000\001\249\000\000\000\000\004\201\000\000\000\226\000\000\000\000\000\000\000\000\004\\\000\000\000\000\004\193\000\000\004]\000\000\000\000\000\000\004^\000\000\000\000\000\000\002*\004\197\004_\004?\004\202\004R\000\000\000\000\000\000\000\000\000\000\001\250\000\000\001\230\000\000\000\000\001\242\000\220\000\000\000\000\000\221\000\000\000\000\004[\004\195\001\251\000\000\000\000\004\184\005\028\000\000\000\153\000\000\001;\004O\001\252\000\000\000\000\004\200\000\000\000\000\004\\\000\220\000\000\000\000\004P\004]\000\000\000\000\000\000\004^\000\222\000\220\001\253\000\000\001\249\004_\000\000\001\254\004\201\000\000\000\000\001\255\003\166\000\000\004A\000\000\000\000\002\000\004B\000\000\000\000\002!\000k\000\000\000\000\001\232\000\000\002*\004\226\001\233\000\000\000\000\004\202\000\000\004\191\000\000\000\000\000\000\001\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\228\000\000\000\000\000\000\004[\001\251\000\000\000\153\000\000\000\000\000\000\001\003\000\000\001;\002)\001\252\000\000\000\000\000\000\001\248\000\000\000\000\004\\\000\000\000\000\000\000\000\000\004]\000\000\000\000\004?\004^\004R\001\253\000\000\000\000\004\193\004_\001\254\000\000\000\000\000\000\001\255\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\202\0046\002!\000\000\000\000\004\184\005\231\000\000\000\000\000\000\004?\000\000\004R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\195\000\000\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\004O\000\000\000\000\001\164\004\200\004\184\005\233\000\000\000\220\000\000\003\166\004P\004A\000\000\000\000\000\000\004B\001\157\000\220\000\000\000\000\001\249\000\000\000\000\000\000\004\201\000\000\004?\000\000\004R\000k\000\000\004\191\000\000\000\000\000\205\000\000\000\000\000\000\000\206\003\166\000\000\004A\000\000\002*\005\149\004B\000\000\000\000\004\202\000\000\000\000\004\184\005\235\000\000\001\250\000\000\004?\000\000\004R\000\000\000\211\004\191\000\000\000\000\000\000\000\212\000\000\004[\001\251\000\000\000\000\000\000\000\000\000\219\000\211\000\000\001;\000\000\001\252\000\212\004\193\005\019\000\000\000\000\000\000\004\\\003\166\000\000\004A\000\000\004]\000\000\004B\000\000\004^\000\000\001\253\000\000\000\000\000\000\004_\001\254\000\000\001\230\000\000\001\255\001\242\000\000\004\191\000\000\004\193\002\000\000\211\001\165\004\195\002!\003\166\000\217\004A\000\000\000k\000\153\004B\000\000\004O\000\205\000\000\000\000\004\200\000\213\000\000\000\000\000\220\001\230\000k\004P\001\242\004\236\004\191\000\205\001\158\000\000\001\159\000\213\004\195\000\000\000\000\000\000\000\000\004\201\001;\000\153\000\220\000\000\004O\000\221\000\000\004\193\004\200\000\000\000\000\000\000\000\220\000k\000\219\004P\001\232\000\000\000\000\000\000\001\233\000\000\000k\004\202\000\000\000\000\000\000\000\205\000\219\004\201\000\000\000\213\000\000\000\000\000\000\000\000\000\222\004\193\000\000\000\000\000\000\004\195\004[\000k\000\000\000\000\001\232\000\000\000\000\000\000\001\233\004O\001\247\004\202\000\000\004\200\000\000\001\248\000\000\000\220\004\\\001\230\004P\000\000\001\242\004]\000\219\000\000\000\000\004^\000\000\004\195\004[\000\000\000\000\004_\004\201\000\000\000\000\000\153\000\000\004O\002#\000\000\000\000\004\200\000\000\001\248\000\000\000\220\004\\\000\000\004P\000\220\000\000\004]\000\221\000\000\000\000\004^\004\202\000\000\000\000\000\000\000\000\004_\004\201\000\220\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004[\000\000\000k\000\000\000\000\001\232\000\000\000\000\000\222\001\233\000\211\004\202\000\000\000\000\000\000\000\215\000\000\000\220\004\\\000\000\001\249\000\000\000\222\004]\000\000\000\000\000\220\004^\000\153\000\221\004[\000\000\000\000\004_\000\211\000\000\000\000\000\000\000\000\000\215\000\000\002'\000\000\000\000\000\000\000\000\001\248\000\220\004\\\000\000\001\249\000\000\000\153\004]\001\250\000\228\000\000\004^\000\000\000\000\000\222\000\000\000\000\004_\000\000\000\000\001\005\000\211\001\251\000\228\000k\000\000\000\212\000\000\000\000\000\205\001;\000\211\001\252\000\213\001\007\000\000\000\215\000\000\001\250\000\000\000\000\000\000\000\223\000\000\000\000\000\000\000\000\000\000\000k\000\153\001\253\000\000\001\251\000\205\000\000\001\254\000\000\000\213\000\211\001\255\001;\000\224\001\252\000\212\000\000\002\000\000\225\000\000\000\219\002!\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\220\001\253\000k\001\249\000\000\000\000\001\254\000\205\000\000\000\000\001\255\000\213\000k\000\219\000\000\000\000\002\000\000\205\000\000\000\000\002!\000\213\000\000\000\000\000\000\003~\000\000\000\000\000\000\003\127\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\250\000\000\000k\000\211\000\000\000\000\000\000\000\205\000\215\000\219\000\000\000\213\000\000\000\000\001\251\000\000\000\000\000\000\000\000\000\219\000\000\000\153\001;\000\000\001\252\000\000\000\000\000\211\000\000\000\000\000\000\000\220\000\215\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\253\000\000\000\000\000\153\000\219\001\254\003\166\000\000\000\000\001\255\003\128\000\000\000\000\000\220\003\129\002\000\000\221\002=\000\000\002!\000\000\000k\000\000\000\222\000\000\000\000\000\205\000\211\000\000\000\000\000\213\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002]\002=\003\217\000\000\000\000\000k\000\220\000\222\001;\000\221\000\205\000\254\000\000\000\000\000\213\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000\000\000\000\003b\000\219\000\000\000\000\000\000\000\000\000\224\000\000\001;\000\000\000\255\000\254\000\000\003\168\001\000\000\000\000\222\000\000\000\000\000\220\003i\000\226\000\221\000k\000\000\000\219\000\222\000\000\000\205\000\000\000\224\000\000\000\213\000\000\000\255\000\000\000\000\003~\001\000\000\000\000\000\003\127\003\170\003k\000\000\000\226\002\004\000\000\000\000\000\000\000\211\001;\000\000\000\222\000\254\000\215\000\000\003\142\003\218\003\206\000\000\000\000\000\000\000\228\000\000\000\220\000\000\000\219\003\143\000\000\000\000\000\000\000\153\000\224\001\t\000\000\000\000\000\255\000\000\000\000\000\220\001\000\000\000\000\221\000\000\000\000\000\000\000\211\000\226\003\220\000\000\000\000\000\215\000\000\000\000\003\209\000\000\003\166\000\000\000\000\000\228\003\128\000\000\003\173\000\220\003\129\000\000\000\221\002=\000\000\000k\001\011\000\000\000\000\000\222\000\205\000\000\000\000\000\000\000\213\000\000\000\000\003~\000\000\000\000\000\000\003\127\000\000\000\000\000\000\000\000\004\021\004*\003\217\000\000\000\000\000\000\000\000\000\222\001;\000\000\001\154\000\254\000\000\000\000\003\175\000\220\000k\001\164\000\221\000\000\000\000\000\205\000\000\000\219\004,\000\213\000\000\000\000\000\211\003\176\000\224\001\157\001;\000\215\000\255\000\254\000\000\003\168\001\000\000\000\000\000\000\000\000\000\001\001\000\000\000\226\000\000\003f\000\000\000\222\000\000\003\166\000\000\000\000\000\224\003\128\000\000\003~\000\255\003\129\000\219\003\127\001\000\000\000\000\000\000\000\003\170\000\000\000\000\000\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\254\000\202\0049\000\000\003\142\007Y\003\206\000\000\000\000\000\000\003\212\000k\000\220\000\000\000\000\003\143\000\205\000\000\000\000\000\224\000\213\000\000\000\000\000\255\000\000\000\220\000\000\001\000\000\221\000\000\000\000\000\000\000\000\000\000\000\226\000\000\003\220\000\000\000\000\000\000\003\166\000\000\003\209\000\000\003\128\003\168\000\000\000\000\003\129\000\000\003\173\001\165\000\000\0012\000\000\000\219\000\000\003\161\000\000\000\222\000\000\000k\000\220\000\211\000\000\000\221\000\205\000\000\000\215\000\000\000\206\000\000\000\000\000\000\003\170\004\244\003\215\000\000\001\158\000\211\001\159\000\211\000\000\000\000\000\215\000\000\000\215\000\254\001;\003\142\003\163\003\206\003\175\000\000\000\000\000\000\000\222\000\220\000\000\000\000\003\143\000\000\000\000\000\000\000\000\000\219\000\224\003\176\000\000\000\000\000\255\003\168\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000k\000\254\000\000\000\000\003\209\000\205\003\240\000\000\000\000\000\213\000\000\000\220\003\173\000\000\000\221\000\000\000k\003\170\000k\000\000\000\224\000\205\000\000\000\205\000\255\000\213\000\000\000\213\001\000\000\000\000\000\000\000\003\142\000\000\003\206\000\226\000\000\000\000\000\000\003\163\000\220\000\000\000\000\003\143\000\219\000\222\000\211\000\000\000\211\000\000\000\000\000\215\000\000\000\215\003\175\000\000\000\202\004<\000\000\000\000\000\219\000\220\000\219\000\000\000\221\000\000\000\000\000\000\000\000\003\176\003\209\000\000\000\000\000\254\000\000\000\000\000\000\000\000\003\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\211\000\000\000\000\000\224\000\000\000\215\000\222\000\255\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000k\000\226\000k\000\000\000\000\000\205\000\000\000\205\000\000\000\213\000k\000\213\003\252\000\211\003\175\000\205\000\000\000\220\000\215\000\206\000\221\000\000\000\000\004c\000\000\004\153\000\000\000\000\004\004\003\176\004\011\000\000\000\000\000\220\000\000\000\220\000\221\000\000\000\221\000\000\000\000\000\000\000\000\000k\000\219\003\163\000\219\000\000\000\205\000\000\000\000\000\222\000\213\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\003\163\000\000\003\163\000\000\000\000\004\155\000\222\000\000\000\222\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\205\000\254\000\000\000\000\000\213\000\000\000\000\000\211\000\000\000\219\000\000\001\230\000\215\000\000\001\242\000\000\000\000\000\254\004\157\000\254\000\224\000\000\000\000\000\000\000\255\000\211\000\000\000\211\001\000\000\000\000\212\000\000\000\215\000\000\000\000\000\226\000\224\000\000\000\224\000\219\000\255\000\000\000\255\000\000\001\000\000\220\001\000\000\220\000\221\000\000\000\221\000\226\000\000\000\226\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\000\000k\000\205\001\001\001\232\001\001\000\213\000\000\001\233\000\222\000\000\000\222\000\000\000\000\000\000\000k\000\000\000k\000\220\000\222\000\205\000\221\000\205\000\000\000\213\000\000\000\213\000\000\000\211\000\000\000\000\000\000\000\000\000\215\000\000\000\000\000\153\000\254\000\000\000\254\000\000\000\219\000\000\000\000\000\000\001\248\001\001\000\000\000\220\000\000\000\000\000\221\000\222\000\000\000\000\000\000\000\224\000\000\000\224\000\219\000\255\000\219\000\255\000\000\001\000\000\211\001\000\000\000\000\000\000\000\000\215\000\226\000\000\000\226\000\000\000\000\001\001\000\000\000\000\000\000\000\254\000\000\000\222\000\000\000\000\000\000\000\211\000\000\000k\000\000\000\000\000\215\000\000\000\205\000\000\000\000\000\000\000\213\000\000\000\224\000\000\000\000\000\000\000\255\000\000\001\154\000\000\001\000\000\000\000\000\000\254\000\000\001\164\000\000\000\226\004\240\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\221\000\220\000k\001\157\001\249\000\000\000\224\000\205\000\211\000\219\000\255\000\213\004\249\000\215\001\000\000\220\000\000\000\220\000\221\000\000\000\221\000\226\000\000\000k\000\000\003\163\000\000\000\000\000\205\000\000\000\000\000\222\000\213\000\000\000\211\000\000\000\000\000\000\002K\000\215\000\000\000\000\000\000\000\000\000\000\003\163\000\219\000\000\000\000\000\222\000\211\000\222\000\000\000\000\000\000\000\215\000\000\000\000\000\000\000\254\000\000\000\000\001\252\000\000\000\000\000\000\000\211\000\219\000k\000\000\000\000\000\215\000\000\000\205\000\000\000\153\000\000\000\213\000\224\000\254\001\253\000\000\000\255\005\001\000\000\001\254\001\000\000\000\000\220\001\255\000\000\000\221\000\211\000\226\000k\002\000\000\228\000\215\000\224\000\205\001\165\000\000\000\255\000\213\000\000\000\000\001\000\001\r\000\000\000\000\000k\000\000\000\219\000\226\000\000\000\205\003\163\000\000\000\000\000\213\005l\000\000\000\222\000\000\005t\000\220\000k\001\158\000\221\001\159\000\000\000\205\000\000\000\000\000\000\000\213\000\000\001;\000\219\000\000\000\000\005x\000\211\000\000\001\154\000\000\000\220\000\215\000\000\000\221\000\254\001\164\000k\003\163\000\219\000\000\000\000\000\205\000\000\000\222\000\000\000\213\000\000\000\000\000\000\001\157\000\000\000\000\000\000\000\224\000\219\000\000\000\000\000\255\003\163\000\000\000\000\001\000\000\000\000\000\000\222\000\000\000\000\000\000\000\226\000\000\005}\000\254\000\000\000\000\000\211\000\220\000\000\000\000\000\221\000\215\000\219\000\000\000\000\000\000\000\211\000\000\000k\000\000\000\000\000\215\000\224\000\205\000\254\000\000\000\255\000\213\005\132\000\000\001\000\000\000\0075\000\220\000\000\003\163\000\221\000\226\000\000\000\000\000\000\000\222\000\000\000\224\005\141\000\000\000\000\000\255\000\211\000\220\000\000\001\000\000\221\000\215\000\000\000\000\000\000\000\000\000\226\000\000\005\163\003\163\000\219\000\000\007\154\000\220\000k\000\222\000\221\000\254\000\000\000\205\000\000\000\000\000\000\000\213\000k\003\163\001\165\000\000\000\000\000\205\000\000\000\222\000\000\000\213\005\168\000\000\000\224\000\000\000\000\000\220\000\255\003\163\000\221\000\254\001\000\000\000\000\000\000\222\000\000\000\000\005\159\000\226\000\000\001\158\000\000\001\159\000k\000\000\000\219\000\254\000\000\000\205\000\224\001;\000\000\000\213\000\255\003\163\000\219\000\211\001\000\000\000\000\000\000\222\000\215\000\254\000\000\000\226\000\224\000\000\000\000\000\000\000\255\000\211\005\175\000\000\001\000\000\000\000\215\000\220\000\000\000\000\000\221\000\226\000\224\000\000\000\000\000\000\000\255\000\211\000\219\000\254\001\000\000\000\000\215\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\163\000\000\000\000\000\224\000\000\000\000\000\222\000\255\000\000\000\000\000\000\001\000\000k\000\000\000\000\003~\000\000\000\205\000\226\003\127\000\220\000\213\000\000\000\221\000\211\000\000\000k\000\000\000\000\000\215\000\220\000\205\000\000\000\221\000\254\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\205\001'\000\000\000\000\000\213\000\000\000\224\000\222\000\000\000\219\000\255\0076\000\000\000\000\001\000\000\220\000\000\000\222\000\221\000\000\000\000\000\226\000\000\000\219\000\000\000\211\000\000\000\000\003\166\000\000\000\215\000\000\003\128\000\000\000\000\000\254\003\129\000k\000\000\000\219\000\000\000\000\000\205\0076\000\000\000\254\000\213\000\000\000\000\000\222\000\000\000\000\000\000\000\000\000\224\000\000\000\000\000\000\000\255\000\000\000\000\000\000\001\000\000\000\000\224\000\000\000\000\000\000\000\255\000\226\000\000\000\000\001\000\000\000\000\000\000\211\000\000\000\254\000\000\000\226\000\215\000\219\000\000\000\000\000\000\000k\000\000\000\000\000\220\000\000\000\205\000\221\000\000\000\000\000\213\000\000\000\224\000\000\000\000\003\168\000\255\000\211\000\220\000\000\001\000\000\221\000\215\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\000\000\000\000\253\000\000\000\220\000\000\000\000\000\221\000\222\000\000\000\000\000\000\000\000\000\000\003\170\000\219\0014\000\000\000\000\000\000\000\000\000k\000\222\000\000\000\000\000\000\000\205\000\000\000\000\003\142\000\213\003\205\002\006\000\000\000\000\000\000\000\254\000\220\000\222\000\000\003\143\000\000\000\000\000\000\000\000\000\000\000\220\000k\000\000\000\221\000\254\000\000\000\205\000\000\000\000\000\224\000\213\000\000\000\000\000\255\000\000\000\000\000\000\001\000\000\000\000\219\000\254\000\000\000\000\000\224\000\226\000\000\000\000\000\255\002.\003\173\000\000\001\000\000\000\000\000\000\222\000\211\000\000\000\000\000\226\000\224\000\215\000\000\000\000\000\255\000\000\000\219\000\000\001\000\000\220\000\000\000\000\000\221\000\211\000\211\000\226\000\000\000\000\000\215\000\215\000\000\000\000\000\000\000\254\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\215\003\175\000\000\000\000\000\000\000\000\002G\000\000\000\000\000\000\000\000\000\224\000\222\000\000\000\000\000\255\003\176\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000k\000\226\000\000\000\220\000\000\000\205\000\221\000\211\000\000\000\213\000\000\000\000\000\215\000\000\000\000\000\254\000\000\000k\000k\000\000\000\000\000\000\000\205\000\205\000\000\000\000\000\213\000\213\000\000\000\220\000k\003M\000\221\000\000\000\224\000\205\000\000\000\222\000\255\000\213\000\000\000\000\001\000\000\000\000\219\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003S\000\000\000\000\000\000\000\219\000\219\000\222\000\000\000\254\000\000\000k\000\000\000\000\000\000\000\000\000\205\000\211\000\219\000\000\000\213\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\224\000\000\000\000\000\000\000\255\000\000\000\211\000\254\001\000\000\000\000\000\000\215\000\000\000\000\000\000\000\226\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\215\000\000\000\000\000\224\000\219\000\000\000\000\000\255\000\000\000\000\000\000\001\000\000\211\000\000\000\000\000\000\000\220\000\215\000\226\000\221\000\000\000\000\000\000\000\000\000\211\000\000\000k\000\000\000\000\000\215\000\000\000\205\000\000\000\220\000\220\000\213\000\221\000\221\000\000\000\000\000\000\000\000\000\000\000k\003\136\000\000\000\220\000\000\000\205\000\221\000\222\000\000\000\213\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\205\003\147\003\149\000\000\000\213\000\000\000\000\000\222\000\222\000\000\000\219\000\000\000k\000\000\004\026\000\000\000\000\000\205\000\254\000\000\000\222\000\213\000\000\000\220\000k\000\000\000\221\000\219\000\000\000\205\000\000\000\000\000\000\000\213\000\000\000\254\000\254\000\224\000\000\000\219\000\000\000\255\000\000\000\000\000\000\001\000\000\000\000\000\000\254\000\000\000\000\004\031\000\226\000\000\000\224\000\224\000\219\000\222\000\255\000\255\000\000\000\000\001\000\001\000\000\000\000\000\000\000\000\224\000\219\000\226\000\226\000\255\000\211\000\000\000\000\001\000\000\000\000\215\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\254\000\000\000\000\000\211\000\220\000\000\000\000\000\221\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\211\000\000\000\224\000\000\000\220\000\215\000\255\000\221\000\000\000\000\001\000\000\000\000\000\000\000\000\000\004#\000\220\000\226\000\000\000\221\000\000\000\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000k\000\000\004I\000\220\000\000\000\205\000\221\000\000\000\222\000\213\000\000\000\000\000\000\000\000\004e\000\220\000k\000\000\000\221\000\254\000\222\000\205\000\000\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000k\004\145\000\000\000\000\000\000\000\205\000\254\000\222\000\224\000\213\000\000\000\000\000\255\004\188\000\219\000\000\001\000\000\000\000\254\000\222\000\000\000\000\000\000\000\226\000\000\000\224\000\000\000\000\000\000\000\255\000\219\000\000\000\000\001\000\000\211\000\254\000\000\000\224\000\000\000\215\000\226\000\255\000\000\000\000\000\219\001\000\000\211\000\254\000\211\000\000\000\000\000\215\000\226\000\215\000\224\000\000\000\000\000\000\000\255\000\000\000\211\000\000\001\000\000\000\000\000\000\215\000\224\000\000\000\000\000\226\000\255\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\215\000\000\000\000\000\000\000\220\000k\000\000\000\221\000\000\000\000\000\205\000\000\000\000\000\000\000\213\000\000\000\000\000k\000\000\000k\000\220\000\000\000\205\000\221\000\205\000\000\000\213\000\000\000\213\000\000\000\000\000k\005_\000\000\000\220\000\000\000\205\000\221\000\222\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\197\000\219\000\000\000\000\000\000\000\000\000\222\000k\000\000\000\000\000\000\000\000\000\205\000\219\005\217\000\219\000\213\000\000\000\254\000\000\000\222\000\211\000\000\000\000\000\000\000\000\000\217\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\254\000\000\000\000\000\224\000\000\003~\000\000\000\255\000\000\003\127\000\000\001\000\000\000\000\000\000\254\000\000\000\000\000\219\000\226\000\224\000\000\000\000\000\000\000\255\000\211\000\000\000\000\001\000\000\000\000\217\000\000\000\000\000\000\000\224\000\226\000\000\000\000\000\255\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\220\000k\000\226\000\221\000\000\000\000\000\205\000\000\000\000\000\000\000\213\000\000\000\220\000\000\000\220\000\221\000\000\000\221\000\000\003\166\000\000\000\000\000\000\003\128\000\000\000\000\000\220\003\129\005\219\000\221\000\000\000\000\000\000\000\000\000\222\000\000\000\000\000\000\000k\000\000\005\221\000\000\005\227\000\205\000\211\000\219\000\222\000\213\000\222\000\217\000\220\000\000\000\000\000\221\005\241\000\000\000\000\000\000\000\000\000\000\000\222\000\000\000\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\254\000\000\000\254\000\000\005\255\000\000\000\000\000\224\000\219\000\000\000\222\000\255\000\000\000\211\000\254\001\000\003\168\000\000\000\217\000\224\000\000\000\224\000\226\000\255\000\000\000\255\000\211\001\000\000\000\001\000\000k\000\217\000\000\000\224\000\226\000\205\000\226\000\255\000\254\000\213\000\000\001\000\000\000\000\000\000\000\003\170\000\000\000\000\000\226\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000\000\000\224\000\211\000\000\003\142\000\255\003\172\000\217\000\000\001\000\000\000\000\000\000\220\000\000\000\000\003\143\000\226\000k\000\219\000\000\000\000\000\000\000\205\000\000\000\000\000\000\000\213\000\000\000\222\000\000\000k\000\220\000\000\000\000\000\221\000\205\000\000\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\212\003\173\000\000\000\000\000\000\000\000\000\000\000\223\000\000\000\000\000\211\000\000\000\219\000k\000\000\000\212\000\222\000\000\000\205\000\000\000\000\000\000\000\213\000\211\000\211\000\219\000\224\000\000\000\212\000\212\000\000\001#\000\000\000\000\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\226\000\212\003\175\000\223\000\000\000\000\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000\000\000k\000\000\000\219\003\176\000\000\000\205\000\211\000\000\000\224\000\213\000\000\000\212\000\000\001&\000\000\000k\000\000\000\000\000\000\000\000\000\205\000\000\000\000\000\226\000\213\000\211\000\000\000\222\000k\000k\000\212\000\000\000\000\000\205\000\205\000\211\000\220\000\213\000\213\000\221\000\212\000\000\000k\000\211\000\219\000\000\000\000\000\205\000\212\000\220\000\000\000\213\000\221\000\000\000\000\000\223\000\000\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\222\000\205\000\219\000\219\000\224\000\213\000\000\000\000\000\000\001\244\000\000\000\220\000\000\000\222\000\221\000k\000\219\000\000\000\000\000\226\000\205\000\000\000\000\000\000\000\213\000k\000\000\000\000\000\223\000\000\000\205\000\000\000\000\000k\000\213\000\000\000\000\000\000\000\205\000\211\000\219\000\223\000\213\000\000\000\212\000\222\000\000\000\224\000\000\000\000\000\000\000\000\001\246\000\220\000\000\000\000\000\221\000\000\000\000\000\219\000\224\000\211\000\226\000\000\000\000\004T\000\212\000\211\000\220\000\219\000\000\000\221\000\212\000\223\000\000\000\226\000\000\000\219\000\000\000\000\000\000\000\220\000\220\000\000\000\221\000\221\000\000\000\222\000\000\000\000\000\000\000\000\000\224\000\000\000\000\000\220\000\000\004V\000\221\000k\000\000\000\000\000\222\000\000\000\205\000\000\000\000\000\226\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\222\000\222\000\000\000\000\000\220\000\000\000k\000\221\000\211\000\000\000\000\000\205\000k\000\212\000\222\000\213\000\000\000\205\000\000\000\228\000\000\000\213\000\211\000\220\000\000\000\000\000\221\000\212\000\219\000\000\001\015\000\000\000\211\000\220\000\228\000\000\000\221\000\212\000\222\000\000\000\000\000\220\000\000\000\000\000\221\001\017\000\000\000\228\000\228\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\219\000\222\001\019\001\021\000\000\000\228\000\000\000\000\000\000\000\000\000\000\000\222\000k\000\000\000\000\000\000\001\023\000\205\000\211\000\222\000\000\000\213\000\000\000\212\000\000\000\000\000k\000\000\000\000\000\228\000\000\000\205\000\211\000\000\000\000\000\213\000k\000\212\000\000\000\000\001\025\000\205\000\000\000\000\000\000\000\213\000\000\000\000\000\228\000\000\000\000\000\220\000\000\000\000\000\221\000\000\000\219\000\000\000\228\001\027\000\211\000\000\000\000\000\000\000\000\000\212\000\228\000\000\000\000\001\029\000\219\000\000\000\000\000\220\000\000\000\000\000\221\001\031\000k\000\220\000\219\000\211\000\221\000\205\000\000\000\222\000\212\000\213\000\211\000\000\000\000\000\000\000k\000\212\000\000\000\000\000\000\000\205\000\211\000\000\000\000\000\213\000\000\000\212\000\000\000\000\000\000\000\222\000\000\000\000\000\000\000\000\000\000\000\222\000\000\000\000\000\000\000\000\000\000\000\000\000k\000\000\000\219\000\000\000\000\000\205\000\000\000\000\000\000\000\213\000\000\000\000\000\228\000\000\000\211\000\220\000\219\000\000\000\221\000\212\000\211\000k\000\000\001!\000\000\000\212\000\205\000\000\000k\000\220\000\213\000\000\000\221\000\205\000\228\000\000\000\000\000\213\000k\000\220\000\228\000\000\000\221\000\205\000\219\002\002\000\000\000\213\000\000\000\222\000\000\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\222\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\219\000\222\000k\000\000\000\000\000\000\000\000\000\205\000k\000\220\000\219\000\213\000\221\000\205\000\000\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\220\000\228\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\n\000\000\000\000\000\228\000\000\000\000\000\000\000\211\000\222\000\000\000\000\000\219\000\212\000\228\002\012\000\000\000\220\000\219\000\000\000\221\000\000\000\000\000\222\000\000\002\014\000\000\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\000\000\212\000\000\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000\222\000\000\000\000\000\000\000\220\000\228\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\016\000k\000\000\000\228\000\000\000\222\000\205\000\000\000\211\000\000\000\213\000\000\000\222\000\212\002\018\000\000\000\211\000\000\000\000\000\000\000\000\000\212\000\222\000k\000\220\000\000\000\000\000\221\000\205\000\211\000\220\000\228\000\213\000\221\000\212\000\211\000\000\000\000\000\000\000\000\000\212\000\000\002\020\000\000\000\000\000\219\000\000\000\000\000\211\000\211\000\000\000\000\000\228\000\212\000\212\000\000\000\000\000\000\000\222\000\228\000\000\000\211\000\000\002\022\000\222\000\000\000\212\000\219\000k\000\228\002\024\000\000\000\000\000\205\000\000\000\000\000k\000\213\000\211\000\000\002\026\000\205\000\000\000\212\000\000\000\213\000\000\000\000\000\000\000k\000\000\000\211\000\000\000\000\000\205\000k\000\212\000\000\000\213\000\000\000\205\000\000\000\000\000\000\000\213\000\228\000\000\000\000\000k\000k\000\000\000\228\000\219\000\205\000\205\000\000\002\028\000\213\000\213\000\000\000\219\000k\002\030\000\000\000\220\000\000\000\205\000\221\000\000\000\000\000\213\000\000\000\211\000\219\000\000\000\000\000\000\000\212\000k\000\219\000\000\000\000\000\000\000\205\000\000\000\000\000\220\000\213\000\000\000\221\000\000\000k\000\219\000\219\000\211\000\000\000\205\000\000\000\222\000\212\000\213\000\000\000\000\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\222\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\220\000k\000\000\000\221\000\219\000\000\000\205\000\000\000\220\000\000\000\213\000\221\000\000\000\000\000\228\000\000\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000k\000\221\002 \000\000\000\220\000\205\000\000\000\221\000\000\000\213\000\000\000\222\000\000\000\228\000\000\000\000\000\000\000\220\000\220\000\222\000\221\000\221\000\219\000\211\003\178\000\000\000\000\000\000\000\212\000\000\000\220\000\000\000\222\000\221\000\000\000\000\000\000\000\000\000\222\000\000\000\000\000\000\000\000\000\211\000\219\000\000\000\000\000\220\000\212\000\000\000\221\000\222\000\222\000\000\000\000\000\000\000\211\000\000\000\228\000\000\000\220\000\212\000\000\000\221\000\222\000\000\000\228\000\000\000\000\003\180\000\000\000\211\000\000\000\211\000\000\000\000\000\212\003\182\000\212\000\228\000\000\000\222\000\000\000k\000\000\000\228\000\211\000\000\000\205\000\000\003\184\000\212\000\213\000\000\000\222\000\000\003\186\000\000\000\228\000\228\000\000\000\220\000\000\000k\000\221\000\000\000\000\000\000\000\205\003\188\003\190\000\228\000\213\000\000\000\000\000\000\000k\000\000\000\000\000\211\000\000\000\205\003\192\000\220\000\212\000\213\000\221\000\219\000\228\000\000\000\000\000k\000\000\000k\000\000\000\222\000\205\000\000\000\205\003\194\000\213\000\228\000\213\000\211\000\000\000\000\000k\000\219\000\212\000\000\000\000\000\205\003\196\000\000\000\000\000\213\000\000\000\222\000\000\000\211\000\219\000\000\000\000\000\000\000\212\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\219\000\211\000\219\000\000\000k\000\000\000\212\000\228\000\000\000\205\000\000\000\000\000\000\000\213\000\000\000\219\000\000\000\000\003\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\211\000k\000\228\000\000\000\220\000\212\000\205\000\221\000\000\000\000\000\213\000\000\000\000\003\200\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\219\000\205\000\000\000\220\000\000\000\213\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\220\000\222\000\205\000\221\000\000\000\000\000\213\000\000\000\219\000\000\000\000\000\211\000\000\000\000\000\000\000\220\000\212\000\220\000\221\000\000\000\221\000\222\000\000\000k\000\219\000\000\000\000\000\000\000\205\000\000\000\220\000\000\000\213\000\221\000\222\000\211\000\000\000\000\000\000\000\000\000\212\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\228\000\222\000\000\000\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\202\000\000\000\000\000\000\000\220\000\222\000\211\000\221\000\219\000\228\000\000\000\212\000k\000\000\000\211\000\000\000\000\000\205\000\000\000\212\003\204\000\213\000\228\000\000\000\211\000\000\000\000\000\000\000\220\000\212\000\000\000\221\000\000\004a\000\000\000\000\000k\000\228\000\222\000\228\000\000\000\205\000\000\000\000\000\220\000\213\000\000\000\221\004g\000\000\004i\000\000\000\228\000\000\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\220\000\222\004k\000\221\000\000\000k\000\000\000\000\000\000\000\000\000\205\000\000\000\000\000k\000\213\000\000\000\000\000\222\000\205\000\219\000\000\000\000\000\213\000k\000\228\000\000\000\220\000\000\000\205\000\221\000\000\000\000\000\213\000\000\000\222\004m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\228\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\219\000\000\004o\000\222\000\000\000\000\000\000\000\228\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\220\004q\000\000\000\221\000\000\000\000\000\000\000\228\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004s\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\228\000\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\221\000\222\000\000\000\000\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\228\000\000\000\000\000\000\000\000\000\000\000\000\000\222\000\000\000\000\000\000\004w\000\000\000\000\000\000\000\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\228\000\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\228\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\228\000\000\000\000\004{\000\000\000\000\000\000\000\000\000\000\000\000\000\228\004}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\127")) let semantic_action = [| @@ -1739,7 +1739,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_aexpr = -# 2210 "parser_cocci_menhir.mly" +# 2224 "parser_cocci_menhir.mly" ( Ast0.set_arg_exp _1 ) # 1745 "parser_cocci_menhir.ml" in @@ -1760,14 +1760,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 133 "parser_cocci_menhir.mly" +# 134 "parser_cocci_menhir.mly" (Parse_aux.list_info) # 1766 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_aexpr = -# 2212 "parser_cocci_menhir.mly" +# 2226 "parser_cocci_menhir.mly" ( let (nm,lenname,pure,clt) = _1 in let nm = P.clt2mcode nm clt in let lenname = @@ -1798,7 +1798,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_aexpr = -# 2221 "parser_cocci_menhir.mly" +# 2235 "parser_cocci_menhir.mly" ( Ast0.set_arg_exp(Ast0.wrap(Ast0.TypeExp(_1))) ) # 1804 "parser_cocci_menhir.ml" in @@ -1820,7 +1820,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_any_strict = -# 2257 "parser_cocci_menhir.mly" +# 2271 "parser_cocci_menhir.mly" ( Ast.WhenAny ) # 1826 "parser_cocci_menhir.ml" in @@ -1842,7 +1842,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_any_strict = -# 2258 "parser_cocci_menhir.mly" +# 2272 "parser_cocci_menhir.mly" ( Ast.WhenStrict ) # 1848 "parser_cocci_menhir.ml" in @@ -1864,7 +1864,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_any_strict = -# 2259 "parser_cocci_menhir.mly" +# 2273 "parser_cocci_menhir.mly" ( Ast.WhenForall ) # 1870 "parser_cocci_menhir.ml" in @@ -1886,7 +1886,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_any_strict = -# 2260 "parser_cocci_menhir.mly" +# 2274 "parser_cocci_menhir.mly" ( Ast.WhenExists ) # 1892 "parser_cocci_menhir.ml" in @@ -1910,7 +1910,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1467 "parser_cocci_menhir.mly" +# 1470 "parser_cocci_menhir.mly" ( _1 ) # 1916 "parser_cocci_menhir.ml" in @@ -1942,7 +1942,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 1948 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -1950,7 +1950,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1469 "parser_cocci_menhir.mly" +# 1472 "parser_cocci_menhir.mly" ( P.arith_op Ast.Mul _1 _2 _3 ) # 1956 "parser_cocci_menhir.ml" in @@ -1982,7 +1982,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 165 "parser_cocci_menhir.mly" +# 166 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 1988 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -1990,7 +1990,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1471 "parser_cocci_menhir.mly" +# 1474 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 1996 "parser_cocci_menhir.ml" in @@ -2022,7 +2022,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 2028 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2030,7 +2030,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1473 "parser_cocci_menhir.mly" +# 1476 "parser_cocci_menhir.mly" ( P.arith_op Ast.Plus _1 _2 _3 ) # 2036 "parser_cocci_menhir.ml" in @@ -2062,7 +2062,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 2068 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2070,7 +2070,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1475 "parser_cocci_menhir.mly" +# 1478 "parser_cocci_menhir.mly" ( P.arith_op Ast.Minus _1 _2 _3 ) # 2076 "parser_cocci_menhir.ml" in @@ -2102,7 +2102,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 2108 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2110,7 +2110,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1477 "parser_cocci_menhir.mly" +# 1480 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 2116 "parser_cocci_menhir.ml" in @@ -2142,7 +2142,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 2148 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2150,7 +2150,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1479 "parser_cocci_menhir.mly" +# 1482 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 2156 "parser_cocci_menhir.ml" in @@ -2182,7 +2182,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 163 "parser_cocci_menhir.mly" +# 164 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) # 2188 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2190,7 +2190,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1481 "parser_cocci_menhir.mly" +# 1484 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) # 2196 "parser_cocci_menhir.ml" in @@ -2222,7 +2222,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 2228 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2230,7 +2230,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1483 "parser_cocci_menhir.mly" +# 1486 "parser_cocci_menhir.mly" ( P.logic_op Ast.Eq _1 _2 _3 ) # 2236 "parser_cocci_menhir.ml" in @@ -2262,7 +2262,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 2268 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2270,7 +2270,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1485 "parser_cocci_menhir.mly" +# 1488 "parser_cocci_menhir.mly" ( P.logic_op Ast.NotEq _1 _2 _3 ) # 2276 "parser_cocci_menhir.ml" in @@ -2302,7 +2302,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 161 "parser_cocci_menhir.mly" +# 162 "parser_cocci_menhir.mly" (Data.clt) # 2308 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2310,7 +2310,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1487 "parser_cocci_menhir.mly" +# 1490 "parser_cocci_menhir.mly" ( P.arith_op Ast.And _1 _2 _3 ) # 2316 "parser_cocci_menhir.ml" in @@ -2342,7 +2342,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 159 "parser_cocci_menhir.mly" +# 160 "parser_cocci_menhir.mly" (Data.clt) # 2348 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2350,7 +2350,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1489 "parser_cocci_menhir.mly" +# 1492 "parser_cocci_menhir.mly" ( P.arith_op Ast.Or _1 _2 _3 ) # 2356 "parser_cocci_menhir.ml" in @@ -2382,7 +2382,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 160 "parser_cocci_menhir.mly" +# 161 "parser_cocci_menhir.mly" (Data.clt) # 2388 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2390,7 +2390,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1491 "parser_cocci_menhir.mly" +# 1494 "parser_cocci_menhir.mly" ( P.arith_op Ast.Xor _1 _2 _3 ) # 2396 "parser_cocci_menhir.ml" in @@ -2422,7 +2422,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 158 "parser_cocci_menhir.mly" +# 159 "parser_cocci_menhir.mly" (Data.clt) # 2428 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2430,7 +2430,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1493 "parser_cocci_menhir.mly" +# 1496 "parser_cocci_menhir.mly" ( P.logic_op Ast.AndLog _1 _2 _3 ) # 2436 "parser_cocci_menhir.ml" in @@ -2462,7 +2462,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 157 "parser_cocci_menhir.mly" +# 158 "parser_cocci_menhir.mly" (Data.clt) # 2468 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2470,7 +2470,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1495 "parser_cocci_menhir.mly" +# 1498 "parser_cocci_menhir.mly" ( P.logic_op Ast.OrLog _1 _2 _3 ) # 2476 "parser_cocci_menhir.ml" in @@ -2494,7 +2494,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1467 "parser_cocci_menhir.mly" +# 1470 "parser_cocci_menhir.mly" ( _1 ) # 2500 "parser_cocci_menhir.ml" in @@ -2526,7 +2526,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 2532 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2534,7 +2534,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1469 "parser_cocci_menhir.mly" +# 1472 "parser_cocci_menhir.mly" ( P.arith_op Ast.Mul _1 _2 _3 ) # 2540 "parser_cocci_menhir.ml" in @@ -2566,7 +2566,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 165 "parser_cocci_menhir.mly" +# 166 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 2572 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2574,7 +2574,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1471 "parser_cocci_menhir.mly" +# 1474 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 2580 "parser_cocci_menhir.ml" in @@ -2606,7 +2606,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 2612 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2614,7 +2614,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1473 "parser_cocci_menhir.mly" +# 1476 "parser_cocci_menhir.mly" ( P.arith_op Ast.Plus _1 _2 _3 ) # 2620 "parser_cocci_menhir.ml" in @@ -2646,7 +2646,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 2652 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2654,7 +2654,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1475 "parser_cocci_menhir.mly" +# 1478 "parser_cocci_menhir.mly" ( P.arith_op Ast.Minus _1 _2 _3 ) # 2660 "parser_cocci_menhir.ml" in @@ -2686,7 +2686,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 2692 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2694,7 +2694,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1477 "parser_cocci_menhir.mly" +# 1480 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 2700 "parser_cocci_menhir.ml" in @@ -2726,7 +2726,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 2732 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2734,7 +2734,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1479 "parser_cocci_menhir.mly" +# 1482 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 2740 "parser_cocci_menhir.ml" in @@ -2766,7 +2766,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 163 "parser_cocci_menhir.mly" +# 164 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) # 2772 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2774,7 +2774,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1481 "parser_cocci_menhir.mly" +# 1484 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) # 2780 "parser_cocci_menhir.ml" in @@ -2806,7 +2806,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 2812 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2814,7 +2814,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1483 "parser_cocci_menhir.mly" +# 1486 "parser_cocci_menhir.mly" ( P.logic_op Ast.Eq _1 _2 _3 ) # 2820 "parser_cocci_menhir.ml" in @@ -2846,7 +2846,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 2852 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2854,7 +2854,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1485 "parser_cocci_menhir.mly" +# 1488 "parser_cocci_menhir.mly" ( P.logic_op Ast.NotEq _1 _2 _3 ) # 2860 "parser_cocci_menhir.ml" in @@ -2886,7 +2886,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 161 "parser_cocci_menhir.mly" +# 162 "parser_cocci_menhir.mly" (Data.clt) # 2892 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2894,7 +2894,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1487 "parser_cocci_menhir.mly" +# 1490 "parser_cocci_menhir.mly" ( P.arith_op Ast.And _1 _2 _3 ) # 2900 "parser_cocci_menhir.ml" in @@ -2926,7 +2926,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 159 "parser_cocci_menhir.mly" +# 160 "parser_cocci_menhir.mly" (Data.clt) # 2932 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2934,7 +2934,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1489 "parser_cocci_menhir.mly" +# 1492 "parser_cocci_menhir.mly" ( P.arith_op Ast.Or _1 _2 _3 ) # 2940 "parser_cocci_menhir.ml" in @@ -2966,7 +2966,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 160 "parser_cocci_menhir.mly" +# 161 "parser_cocci_menhir.mly" (Data.clt) # 2972 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -2974,7 +2974,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1491 "parser_cocci_menhir.mly" +# 1494 "parser_cocci_menhir.mly" ( P.arith_op Ast.Xor _1 _2 _3 ) # 2980 "parser_cocci_menhir.ml" in @@ -3006,7 +3006,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 158 "parser_cocci_menhir.mly" +# 159 "parser_cocci_menhir.mly" (Data.clt) # 3012 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3014,7 +3014,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1493 "parser_cocci_menhir.mly" +# 1496 "parser_cocci_menhir.mly" ( P.logic_op Ast.AndLog _1 _2 _3 ) # 3020 "parser_cocci_menhir.ml" in @@ -3046,7 +3046,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 157 "parser_cocci_menhir.mly" +# 158 "parser_cocci_menhir.mly" (Data.clt) # 3052 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3054,7 +3054,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1495 "parser_cocci_menhir.mly" +# 1498 "parser_cocci_menhir.mly" ( P.logic_op Ast.OrLog _1 _2 _3 ) # 3060 "parser_cocci_menhir.ml" in @@ -3078,7 +3078,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1467 "parser_cocci_menhir.mly" +# 1470 "parser_cocci_menhir.mly" ( _1 ) # 3084 "parser_cocci_menhir.ml" in @@ -3110,7 +3110,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 3116 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3118,7 +3118,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1469 "parser_cocci_menhir.mly" +# 1472 "parser_cocci_menhir.mly" ( P.arith_op Ast.Mul _1 _2 _3 ) # 3124 "parser_cocci_menhir.ml" in @@ -3150,87 +3150,87 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 165 "parser_cocci_menhir.mly" - (Ast_cocci.arithOp * Data.clt) -# 3156 "parser_cocci_menhir.ml" - ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in - let _startpos = _startpos__1_ in - let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1471 "parser_cocci_menhir.mly" - ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 3164 "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 : ( -# 166 "parser_cocci_menhir.mly" - (Data.clt) -# 3196 "parser_cocci_menhir.ml" - ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in - let _startpos = _startpos__1_ in - let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1473 "parser_cocci_menhir.mly" - ( P.arith_op Ast.Plus _1 _2 _3 ) -# 3204 "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 : ( # 166 "parser_cocci_menhir.mly" + (Ast_cocci.arithOp * Data.clt) +# 3156 "parser_cocci_menhir.ml" + ) = Obj.magic _2 in + let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__3_ in + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1474 "parser_cocci_menhir.mly" + ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) +# 3164 "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 : ( +# 167 "parser_cocci_menhir.mly" + (Data.clt) +# 3196 "parser_cocci_menhir.ml" + ) = Obj.magic _2 in + let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__3_ in + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1476 "parser_cocci_menhir.mly" + ( P.arith_op Ast.Plus _1 _2 _3 ) +# 3204 "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 : ( +# 167 "parser_cocci_menhir.mly" (Data.clt) # 3236 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3238,7 +3238,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1475 "parser_cocci_menhir.mly" +# 1478 "parser_cocci_menhir.mly" ( P.arith_op Ast.Minus _1 _2 _3 ) # 3244 "parser_cocci_menhir.ml" in @@ -3270,7 +3270,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 3276 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3278,7 +3278,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1477 "parser_cocci_menhir.mly" +# 1480 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 3284 "parser_cocci_menhir.ml" in @@ -3310,7 +3310,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 3316 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3318,7 +3318,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1479 "parser_cocci_menhir.mly" +# 1482 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 3324 "parser_cocci_menhir.ml" in @@ -3350,7 +3350,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 163 "parser_cocci_menhir.mly" +# 164 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) # 3356 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3358,7 +3358,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1481 "parser_cocci_menhir.mly" +# 1484 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) # 3364 "parser_cocci_menhir.ml" in @@ -3390,7 +3390,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 3396 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3398,7 +3398,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1483 "parser_cocci_menhir.mly" +# 1486 "parser_cocci_menhir.mly" ( P.logic_op Ast.Eq _1 _2 _3 ) # 3404 "parser_cocci_menhir.ml" in @@ -3430,7 +3430,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 3436 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3438,7 +3438,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1485 "parser_cocci_menhir.mly" +# 1488 "parser_cocci_menhir.mly" ( P.logic_op Ast.NotEq _1 _2 _3 ) # 3444 "parser_cocci_menhir.ml" in @@ -3470,7 +3470,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 161 "parser_cocci_menhir.mly" +# 162 "parser_cocci_menhir.mly" (Data.clt) # 3476 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3478,7 +3478,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1487 "parser_cocci_menhir.mly" +# 1490 "parser_cocci_menhir.mly" ( P.arith_op Ast.And _1 _2 _3 ) # 3484 "parser_cocci_menhir.ml" in @@ -3510,7 +3510,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 159 "parser_cocci_menhir.mly" +# 160 "parser_cocci_menhir.mly" (Data.clt) # 3516 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3518,7 +3518,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1489 "parser_cocci_menhir.mly" +# 1492 "parser_cocci_menhir.mly" ( P.arith_op Ast.Or _1 _2 _3 ) # 3524 "parser_cocci_menhir.ml" in @@ -3550,7 +3550,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 160 "parser_cocci_menhir.mly" +# 161 "parser_cocci_menhir.mly" (Data.clt) # 3556 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3558,7 +3558,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1491 "parser_cocci_menhir.mly" +# 1494 "parser_cocci_menhir.mly" ( P.arith_op Ast.Xor _1 _2 _3 ) # 3564 "parser_cocci_menhir.ml" in @@ -3590,7 +3590,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 158 "parser_cocci_menhir.mly" +# 159 "parser_cocci_menhir.mly" (Data.clt) # 3596 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3598,7 +3598,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1493 "parser_cocci_menhir.mly" +# 1496 "parser_cocci_menhir.mly" ( P.logic_op Ast.AndLog _1 _2 _3 ) # 3604 "parser_cocci_menhir.ml" in @@ -3630,7 +3630,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 157 "parser_cocci_menhir.mly" +# 158 "parser_cocci_menhir.mly" (Data.clt) # 3636 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3638,7 +3638,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1495 "parser_cocci_menhir.mly" +# 1498 "parser_cocci_menhir.mly" ( P.logic_op Ast.OrLog _1 _2 _3 ) # 3644 "parser_cocci_menhir.ml" in @@ -3662,7 +3662,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1467 "parser_cocci_menhir.mly" +# 1470 "parser_cocci_menhir.mly" ( _1 ) # 3668 "parser_cocci_menhir.ml" in @@ -3694,7 +3694,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 3700 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3702,7 +3702,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1469 "parser_cocci_menhir.mly" +# 1472 "parser_cocci_menhir.mly" ( P.arith_op Ast.Mul _1 _2 _3 ) # 3708 "parser_cocci_menhir.ml" in @@ -3734,7 +3734,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 165 "parser_cocci_menhir.mly" +# 166 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 3740 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3742,7 +3742,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1471 "parser_cocci_menhir.mly" +# 1474 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 3748 "parser_cocci_menhir.ml" in @@ -3774,7 +3774,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 3780 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3782,7 +3782,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1473 "parser_cocci_menhir.mly" +# 1476 "parser_cocci_menhir.mly" ( P.arith_op Ast.Plus _1 _2 _3 ) # 3788 "parser_cocci_menhir.ml" in @@ -3814,7 +3814,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 3820 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3822,7 +3822,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1475 "parser_cocci_menhir.mly" +# 1478 "parser_cocci_menhir.mly" ( P.arith_op Ast.Minus _1 _2 _3 ) # 3828 "parser_cocci_menhir.ml" in @@ -3854,7 +3854,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 3860 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3862,7 +3862,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1477 "parser_cocci_menhir.mly" +# 1480 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 3868 "parser_cocci_menhir.ml" in @@ -3894,7 +3894,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 3900 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3902,7 +3902,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1479 "parser_cocci_menhir.mly" +# 1482 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 3908 "parser_cocci_menhir.ml" in @@ -3934,7 +3934,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 163 "parser_cocci_menhir.mly" +# 164 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) # 3940 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3942,7 +3942,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1481 "parser_cocci_menhir.mly" +# 1484 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) # 3948 "parser_cocci_menhir.ml" in @@ -3974,7 +3974,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 3980 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -3982,7 +3982,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1483 "parser_cocci_menhir.mly" +# 1486 "parser_cocci_menhir.mly" ( P.logic_op Ast.Eq _1 _2 _3 ) # 3988 "parser_cocci_menhir.ml" in @@ -4014,7 +4014,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 4020 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4022,7 +4022,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1485 "parser_cocci_menhir.mly" +# 1488 "parser_cocci_menhir.mly" ( P.logic_op Ast.NotEq _1 _2 _3 ) # 4028 "parser_cocci_menhir.ml" in @@ -4054,7 +4054,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 161 "parser_cocci_menhir.mly" +# 162 "parser_cocci_menhir.mly" (Data.clt) # 4060 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4062,7 +4062,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1487 "parser_cocci_menhir.mly" +# 1490 "parser_cocci_menhir.mly" ( P.arith_op Ast.And _1 _2 _3 ) # 4068 "parser_cocci_menhir.ml" in @@ -4094,7 +4094,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 159 "parser_cocci_menhir.mly" +# 160 "parser_cocci_menhir.mly" (Data.clt) # 4100 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4102,7 +4102,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1489 "parser_cocci_menhir.mly" +# 1492 "parser_cocci_menhir.mly" ( P.arith_op Ast.Or _1 _2 _3 ) # 4108 "parser_cocci_menhir.ml" in @@ -4134,7 +4134,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 160 "parser_cocci_menhir.mly" +# 161 "parser_cocci_menhir.mly" (Data.clt) # 4140 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4142,7 +4142,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1491 "parser_cocci_menhir.mly" +# 1494 "parser_cocci_menhir.mly" ( P.arith_op Ast.Xor _1 _2 _3 ) # 4148 "parser_cocci_menhir.ml" in @@ -4174,7 +4174,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 158 "parser_cocci_menhir.mly" +# 159 "parser_cocci_menhir.mly" (Data.clt) # 4180 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4182,7 +4182,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1493 "parser_cocci_menhir.mly" +# 1496 "parser_cocci_menhir.mly" ( P.logic_op Ast.AndLog _1 _2 _3 ) # 4188 "parser_cocci_menhir.ml" in @@ -4214,7 +4214,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 157 "parser_cocci_menhir.mly" +# 158 "parser_cocci_menhir.mly" (Data.clt) # 4220 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4222,7 +4222,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_expr_invalid_ = -# 1495 "parser_cocci_menhir.mly" +# 1498 "parser_cocci_menhir.mly" ( P.logic_op Ast.OrLog _1 _2 _3 ) # 4228 "parser_cocci_menhir.ml" in @@ -4246,7 +4246,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arith_expr_bis = -# 1500 "parser_cocci_menhir.mly" +# 1503 "parser_cocci_menhir.mly" ( _1 ) # 4252 "parser_cocci_menhir.ml" in @@ -4278,7 +4278,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 4284 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4286,7 +4286,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1502 "parser_cocci_menhir.mly" +# 1505 "parser_cocci_menhir.mly" ( P.arith_op Ast.Mul _1 _2 _3 ) # 4292 "parser_cocci_menhir.ml" in @@ -4318,7 +4318,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 165 "parser_cocci_menhir.mly" +# 166 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 4324 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4326,7 +4326,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1504 "parser_cocci_menhir.mly" +# 1507 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 4332 "parser_cocci_menhir.ml" in @@ -4358,7 +4358,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 4364 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4366,7 +4366,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1506 "parser_cocci_menhir.mly" +# 1509 "parser_cocci_menhir.mly" ( P.arith_op Ast.Plus _1 _2 _3 ) # 4372 "parser_cocci_menhir.ml" in @@ -4398,7 +4398,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) # 4404 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4406,7 +4406,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1508 "parser_cocci_menhir.mly" +# 1511 "parser_cocci_menhir.mly" ( P.arith_op Ast.Minus _1 _2 _3 ) # 4412 "parser_cocci_menhir.ml" in @@ -4438,7 +4438,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 4444 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4446,7 +4446,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1510 "parser_cocci_menhir.mly" +# 1513 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 4452 "parser_cocci_menhir.ml" in @@ -4478,7 +4478,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 164 "parser_cocci_menhir.mly" +# 165 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) # 4484 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4486,7 +4486,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1512 "parser_cocci_menhir.mly" +# 1515 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) # 4492 "parser_cocci_menhir.ml" in @@ -4518,7 +4518,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 163 "parser_cocci_menhir.mly" +# 164 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) # 4524 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4526,7 +4526,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1514 "parser_cocci_menhir.mly" +# 1517 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) # 4532 "parser_cocci_menhir.ml" in @@ -4558,7 +4558,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 4564 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4566,7 +4566,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1516 "parser_cocci_menhir.mly" +# 1519 "parser_cocci_menhir.mly" ( P.logic_op Ast.Eq _1 _2 _3 ) # 4572 "parser_cocci_menhir.ml" in @@ -4598,7 +4598,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 162 "parser_cocci_menhir.mly" +# 163 "parser_cocci_menhir.mly" (Data.clt) # 4604 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4606,7 +4606,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1518 "parser_cocci_menhir.mly" +# 1521 "parser_cocci_menhir.mly" ( P.logic_op Ast.NotEq _1 _2 _3 ) # 4612 "parser_cocci_menhir.ml" in @@ -4638,7 +4638,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 161 "parser_cocci_menhir.mly" +# 162 "parser_cocci_menhir.mly" (Data.clt) # 4644 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4646,7 +4646,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1520 "parser_cocci_menhir.mly" +# 1523 "parser_cocci_menhir.mly" ( P.arith_op Ast.And _1 _2 _3 ) # 4652 "parser_cocci_menhir.ml" in @@ -4678,7 +4678,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 159 "parser_cocci_menhir.mly" +# 160 "parser_cocci_menhir.mly" (Data.clt) # 4684 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4686,7 +4686,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1522 "parser_cocci_menhir.mly" +# 1525 "parser_cocci_menhir.mly" ( P.arith_op Ast.Or _1 _2 _3 ) # 4692 "parser_cocci_menhir.ml" in @@ -4718,7 +4718,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 160 "parser_cocci_menhir.mly" +# 161 "parser_cocci_menhir.mly" (Data.clt) # 4724 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4726,7 +4726,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1524 "parser_cocci_menhir.mly" +# 1527 "parser_cocci_menhir.mly" ( P.arith_op Ast.Xor _1 _2 _3 ) # 4732 "parser_cocci_menhir.ml" in @@ -4758,7 +4758,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 158 "parser_cocci_menhir.mly" +# 159 "parser_cocci_menhir.mly" (Data.clt) # 4764 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4766,7 +4766,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_arith_expr_bis = -# 1526 "parser_cocci_menhir.mly" +# 1529 "parser_cocci_menhir.mly" ( P.logic_op Ast.AndLog _1 _2 _3 ) # 4772 "parser_cocci_menhir.ml" in @@ -4788,7 +4788,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arity = -# 620 "parser_cocci_menhir.mly" +# 621 "parser_cocci_menhir.mly" ( Ast.UNIQUE ) # 4794 "parser_cocci_menhir.ml" in @@ -4810,7 +4810,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arity = -# 621 "parser_cocci_menhir.mly" +# 622 "parser_cocci_menhir.mly" ( Ast.OPT ) # 4816 "parser_cocci_menhir.ml" in @@ -4832,7 +4832,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arity = -# 622 "parser_cocci_menhir.mly" +# 623 "parser_cocci_menhir.mly" ( Ast.MULTI ) # 4838 "parser_cocci_menhir.ml" in @@ -4849,7 +4849,7 @@ 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 = -# 623 "parser_cocci_menhir.mly" +# 624 "parser_cocci_menhir.mly" ( Ast.NONE ) # 4855 "parser_cocci_menhir.ml" in @@ -4880,20 +4880,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let r : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) # 4886 "parser_cocci_menhir.ml" ) = Obj.magic r in let i : 'tv_option_eexpr_ = Obj.magic i in let l : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) # 4892 "parser_cocci_menhir.ml" ) = Obj.magic l in let _startpos = _startpos_l_ in let _endpos = _endpos_r_ in let _v : 'tv_array_dec = -# 1279 "parser_cocci_menhir.mly" +# 1282 "parser_cocci_menhir.mly" ( (l,i,r) ) # 4899 "parser_cocci_menhir.ml" in @@ -4917,7 +4917,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_assign_expr_eexpr_dot_expressions_ = -# 1439 "parser_cocci_menhir.mly" +# 1442 "parser_cocci_menhir.mly" ( _1 ) # 4923 "parser_cocci_menhir.ml" in @@ -4949,7 +4949,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_assign_expr_bis = Obj.magic _3 in let _2 : ( -# 176 "parser_cocci_menhir.mly" +# 177 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) # 4955 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4957,7 +4957,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_assign_expr_eexpr_dot_expressions_ = -# 1441 "parser_cocci_menhir.mly" +# 1444 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt, Ast0.set_arg_exp _3,false)) ) @@ -4991,7 +4991,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_assign_expr_bis = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 4997 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -4999,7 +4999,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_assign_expr_eexpr_dot_expressions_ = -# 1445 "parser_cocci_menhir.mly" +# 1448 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Assignment (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) ) @@ -5025,7 +5025,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_assign_expr_eexpr_nest_expressions_ = -# 1439 "parser_cocci_menhir.mly" +# 1442 "parser_cocci_menhir.mly" ( _1 ) # 5031 "parser_cocci_menhir.ml" in @@ -5057,7 +5057,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_assign_expr_bis = Obj.magic _3 in let _2 : ( -# 176 "parser_cocci_menhir.mly" +# 177 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) # 5063 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -5065,7 +5065,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_assign_expr_eexpr_nest_expressions_ = -# 1441 "parser_cocci_menhir.mly" +# 1444 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt, Ast0.set_arg_exp _3,false)) ) @@ -5099,7 +5099,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_assign_expr_bis = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 5105 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -5107,7 +5107,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_assign_expr_eexpr_nest_expressions_ = -# 1445 "parser_cocci_menhir.mly" +# 1448 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Assignment (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) ) @@ -5133,7 +5133,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_assign_expr_expr_invalid_ = -# 1439 "parser_cocci_menhir.mly" +# 1442 "parser_cocci_menhir.mly" ( _1 ) # 5139 "parser_cocci_menhir.ml" in @@ -5165,7 +5165,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_assign_expr_bis = Obj.magic _3 in let _2 : ( -# 176 "parser_cocci_menhir.mly" +# 177 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) # 5171 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -5173,7 +5173,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_assign_expr_expr_invalid_ = -# 1441 "parser_cocci_menhir.mly" +# 1444 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt, Ast0.set_arg_exp _3,false)) ) @@ -5207,7 +5207,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_assign_expr_bis = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 5213 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -5215,7 +5215,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_assign_expr_expr_invalid_ = -# 1445 "parser_cocci_menhir.mly" +# 1448 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Assignment (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) ) @@ -5241,7 +5241,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_assign_expr_bis = -# 1450 "parser_cocci_menhir.mly" +# 1453 "parser_cocci_menhir.mly" ( _1 ) # 5247 "parser_cocci_menhir.ml" in @@ -5273,7 +5273,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_assign_expr_bis = Obj.magic _3 in let _2 : ( -# 176 "parser_cocci_menhir.mly" +# 177 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) # 5279 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -5281,7 +5281,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_assign_expr_bis = -# 1452 "parser_cocci_menhir.mly" +# 1455 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt, Ast0.set_arg_exp _3,false)) ) @@ -5315,7 +5315,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_assign_expr_bis = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 5321 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -5323,7 +5323,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_assign_expr_bis = -# 1456 "parser_cocci_menhir.mly" +# 1459 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Assignment (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) ) @@ -5349,7 +5349,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_basic_expr_eexpr_dot_expressions_ = -# 1436 "parser_cocci_menhir.mly" +# 1439 "parser_cocci_menhir.mly" ( _1 ) # 5355 "parser_cocci_menhir.ml" in @@ -5373,7 +5373,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_basic_expr_eexpr_nest_expressions_ = -# 1436 "parser_cocci_menhir.mly" +# 1439 "parser_cocci_menhir.mly" ( _1 ) # 5379 "parser_cocci_menhir.ml" in @@ -5397,7 +5397,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_basic_expr_expr_invalid_ = -# 1436 "parser_cocci_menhir.mly" +# 1439 "parser_cocci_menhir.mly" ( _1 ) # 5403 "parser_cocci_menhir.ml" in @@ -5429,7 +5429,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_fun_start = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 5435 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -5441,7 +5441,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_case_line = -# 1148 "parser_cocci_menhir.mly" +# 1151 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Default(P.clt2mcode "default" _1,P.clt2mcode ":" _2,_3)) ) # 5448 "parser_cocci_menhir.ml" @@ -5479,7 +5479,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _4 : 'tv_fun_start = Obj.magic _4 in let _3 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 5485 "parser_cocci_menhir.ml" ) = Obj.magic _3 in @@ -5492,7 +5492,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_case_line = -# 1151 "parser_cocci_menhir.mly" +# 1154 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Case(P.clt2mcode "case" _1,_2,P.clt2mcode ":" _3,_4)) ) # 5498 "parser_cocci_menhir.ml" in @@ -5516,7 +5516,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cast_expr_eexpr_dot_expressions_ = -# 1531 "parser_cocci_menhir.mly" +# 1534 "parser_cocci_menhir.mly" ( _1 ) # 5522 "parser_cocci_menhir.ml" in @@ -5553,20 +5553,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let e : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic e in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 5559 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 5565 "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_ = -# 1533 "parser_cocci_menhir.mly" +# 1536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t, P.clt2mcode ")" rp, e)) ) # 5573 "parser_cocci_menhir.ml" @@ -5591,7 +5591,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cast_expr_eexpr_invalid_ = -# 1531 "parser_cocci_menhir.mly" +# 1534 "parser_cocci_menhir.mly" ( _1 ) # 5597 "parser_cocci_menhir.ml" in @@ -5628,20 +5628,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let e : 'tv_cast_expr_eexpr_invalid_ = Obj.magic e in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 5634 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 5640 "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_ = -# 1533 "parser_cocci_menhir.mly" +# 1536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t, P.clt2mcode ")" rp, e)) ) # 5648 "parser_cocci_menhir.ml" @@ -5666,7 +5666,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cast_expr_eexpr_nest_expressions_ = -# 1531 "parser_cocci_menhir.mly" +# 1534 "parser_cocci_menhir.mly" ( _1 ) # 5672 "parser_cocci_menhir.ml" in @@ -5703,20 +5703,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let e : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic e in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 5709 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 5715 "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_ = -# 1533 "parser_cocci_menhir.mly" +# 1536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t, P.clt2mcode ")" rp, e)) ) # 5723 "parser_cocci_menhir.ml" @@ -5741,7 +5741,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cast_expr_expr_invalid_ = -# 1531 "parser_cocci_menhir.mly" +# 1534 "parser_cocci_menhir.mly" ( _1 ) # 5747 "parser_cocci_menhir.ml" in @@ -5778,20 +5778,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let e : 'tv_cast_expr_expr_invalid_ = Obj.magic e in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 5784 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 5790 "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_ = -# 1533 "parser_cocci_menhir.mly" +# 1536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t, P.clt2mcode ")" rp, e)) ) # 5798 "parser_cocci_menhir.ml" @@ -5820,7 +5820,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_choose_iso = -# 307 "parser_cocci_menhir.mly" +# 308 "parser_cocci_menhir.mly" ( List.map P.id2name _2 ) # 5826 "parser_cocci_menhir.ml" in @@ -5844,7 +5844,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_any_strict_ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 5850 "parser_cocci_menhir.ml" in @@ -5868,7 +5868,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_ctype_ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 5874 "parser_cocci_menhir.ml" in @@ -5892,7 +5892,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_d_ident_ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 5898 "parser_cocci_menhir.ml" in @@ -5916,7 +5916,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_ident_or_const_ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 5922 "parser_cocci_menhir.ml" in @@ -5940,7 +5940,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_meta_ident_ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 5946 "parser_cocci_menhir.ml" in @@ -5964,7 +5964,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_pure_ident_ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 5970 "parser_cocci_menhir.ml" in @@ -5988,7 +5988,7 @@ 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_ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 5994 "parser_cocci_menhir.ml" in @@ -6012,7 +6012,7 @@ 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__ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 6018 "parser_cocci_menhir.ml" in @@ -6036,7 +6036,7 @@ 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__ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 6042 "parser_cocci_menhir.ml" in @@ -6060,7 +6060,7 @@ 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__ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 6066 "parser_cocci_menhir.ml" in @@ -6084,7 +6084,7 @@ 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__ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 6090 "parser_cocci_menhir.ml" in @@ -6108,7 +6108,7 @@ 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_ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 6114 "parser_cocci_menhir.ml" in @@ -6132,7 +6132,7 @@ 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__ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 6138 "parser_cocci_menhir.ml" in @@ -6156,7 +6156,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_typedef_ident_ = -# 2235 "parser_cocci_menhir.mly" +# 2249 "parser_cocci_menhir.mly" ( _1 ) # 6162 "parser_cocci_menhir.ml" in @@ -6180,7 +6180,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cond_expr_eexpr_dot_expressions_ = -# 1461 "parser_cocci_menhir.mly" +# 1464 "parser_cocci_menhir.mly" ( _1 ) # 6186 "parser_cocci_menhir.ml" in @@ -6222,13 +6222,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let r : 'tv_eexpr = Obj.magic r in let dd : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 6228 "parser_cocci_menhir.ml" ) = Obj.magic dd in let t : 'tv_option_eexpr_ = Obj.magic t in let w : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 6234 "parser_cocci_menhir.ml" ) = Obj.magic w in @@ -6236,7 +6236,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_l_ in let _endpos = _endpos_r_ in let _v : 'tv_cond_expr_eexpr_dot_expressions_ = -# 1463 "parser_cocci_menhir.mly" +# 1466 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t, P.clt2mcode ":" dd, r)) ) # 6243 "parser_cocci_menhir.ml" @@ -6261,7 +6261,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cond_expr_eexpr_nest_expressions_ = -# 1461 "parser_cocci_menhir.mly" +# 1464 "parser_cocci_menhir.mly" ( _1 ) # 6267 "parser_cocci_menhir.ml" in @@ -6303,13 +6303,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let r : 'tv_eexpr = Obj.magic r in let dd : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 6309 "parser_cocci_menhir.ml" ) = Obj.magic dd in let t : 'tv_option_eexpr_ = Obj.magic t in let w : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 6315 "parser_cocci_menhir.ml" ) = Obj.magic w in @@ -6317,7 +6317,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_l_ in let _endpos = _endpos_r_ in let _v : 'tv_cond_expr_eexpr_nest_expressions_ = -# 1463 "parser_cocci_menhir.mly" +# 1466 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t, P.clt2mcode ":" dd, r)) ) # 6324 "parser_cocci_menhir.ml" @@ -6342,7 +6342,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cond_expr_expr_invalid_ = -# 1461 "parser_cocci_menhir.mly" +# 1464 "parser_cocci_menhir.mly" ( _1 ) # 6348 "parser_cocci_menhir.ml" in @@ -6384,13 +6384,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let r : 'tv_eexpr = Obj.magic r in let dd : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 6390 "parser_cocci_menhir.ml" ) = Obj.magic dd in let t : 'tv_option_eexpr_ = Obj.magic t in let w : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 6396 "parser_cocci_menhir.ml" ) = Obj.magic w in @@ -6398,7 +6398,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_l_ in let _endpos = _endpos_r_ in let _v : 'tv_cond_expr_expr_invalid_ = -# 1463 "parser_cocci_menhir.mly" +# 1466 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t, P.clt2mcode ":" dd, r)) ) # 6405 "parser_cocci_menhir.ml" @@ -6427,7 +6427,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_const_vol = -# 1056 "parser_cocci_menhir.mly" +# 1059 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Const _1 ) # 6433 "parser_cocci_menhir.ml" in @@ -6455,7 +6455,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_const_vol = -# 1057 "parser_cocci_menhir.mly" +# 1060 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Volatile _1 ) # 6461 "parser_cocci_menhir.ml" in @@ -6479,7 +6479,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_list_aexpr_TEllipsis_ = -# 2011 "parser_cocci_menhir.mly" +# 2025 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) # 6485 "parser_cocci_menhir.ml" in @@ -6505,7 +6505,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 6511 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -6513,7 +6513,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_aexpr_TEllipsis_ = -# 2013 "parser_cocci_menhir.mly" +# 2027 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) # 6520 "parser_cocci_menhir.ml" @@ -6546,7 +6546,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 6552 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -6554,7 +6554,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_continue_list_aexpr_TEllipsis_ = -# 2016 "parser_cocci_menhir.mly" +# 2030 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) @@ -6584,7 +6584,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_aexpr_TEllipsis_ = -# 2019 "parser_cocci_menhir.mly" +# 2033 "parser_cocci_menhir.mly" ( _2 ) # 6590 "parser_cocci_menhir.ml" in @@ -6608,7 +6608,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_list_dparam_TEllipsis_ = -# 2011 "parser_cocci_menhir.mly" +# 2025 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) # 6614 "parser_cocci_menhir.ml" in @@ -6634,7 +6634,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 6640 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -6642,7 +6642,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_dparam_TEllipsis_ = -# 2013 "parser_cocci_menhir.mly" +# 2027 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) # 6649 "parser_cocci_menhir.ml" @@ -6675,7 +6675,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 6681 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -6683,7 +6683,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_continue_list_dparam_TEllipsis_ = -# 2016 "parser_cocci_menhir.mly" +# 2030 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) @@ -6713,7 +6713,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_dparam_TEllipsis_ = -# 2019 "parser_cocci_menhir.mly" +# 2033 "parser_cocci_menhir.mly" ( _2 ) # 6719 "parser_cocci_menhir.ml" in @@ -6737,7 +6737,7 @@ 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__ = -# 2011 "parser_cocci_menhir.mly" +# 2025 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) # 6743 "parser_cocci_menhir.ml" in @@ -6763,7 +6763,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 6769 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -6771,7 +6771,7 @@ 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__ = -# 2013 "parser_cocci_menhir.mly" +# 2027 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) # 6778 "parser_cocci_menhir.ml" @@ -6804,7 +6804,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 6810 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -6812,7 +6812,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 2016 "parser_cocci_menhir.mly" +# 2030 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) @@ -6842,7 +6842,7 @@ 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__ = -# 2019 "parser_cocci_menhir.mly" +# 2033 "parser_cocci_menhir.mly" ( _2 ) # 6848 "parser_cocci_menhir.ml" in @@ -6866,7 +6866,7 @@ 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__ = -# 2011 "parser_cocci_menhir.mly" +# 2025 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) # 6872 "parser_cocci_menhir.ml" in @@ -6892,7 +6892,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 6898 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -6900,7 +6900,7 @@ 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__ = -# 2013 "parser_cocci_menhir.mly" +# 2027 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) # 6907 "parser_cocci_menhir.ml" @@ -6933,7 +6933,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 6939 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -6941,7 +6941,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ = -# 2016 "parser_cocci_menhir.mly" +# 2030 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) @@ -6971,7 +6971,7 @@ 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__ = -# 2019 "parser_cocci_menhir.mly" +# 2033 "parser_cocci_menhir.mly" ( _2 ) # 6977 "parser_cocci_menhir.ml" in @@ -6995,7 +6995,7 @@ 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_ = -# 2011 "parser_cocci_menhir.mly" +# 2025 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) # 7001 "parser_cocci_menhir.ml" in @@ -7021,7 +7021,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 7027 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -7029,7 +7029,7 @@ 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_ = -# 2013 "parser_cocci_menhir.mly" +# 2027 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) # 7036 "parser_cocci_menhir.ml" @@ -7062,7 +7062,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 7068 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -7070,7 +7070,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ = -# 2016 "parser_cocci_menhir.mly" +# 2030 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) @@ -7100,7 +7100,7 @@ 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_ = -# 2019 "parser_cocci_menhir.mly" +# 2033 "parser_cocci_menhir.mly" ( _2 ) # 7106 "parser_cocci_menhir.ml" in @@ -7124,7 +7124,7 @@ 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_ = -# 2011 "parser_cocci_menhir.mly" +# 2025 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) # 7130 "parser_cocci_menhir.ml" in @@ -7150,7 +7150,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 7156 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -7158,7 +7158,7 @@ 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_ = -# 2013 "parser_cocci_menhir.mly" +# 2027 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) # 7165 "parser_cocci_menhir.ml" @@ -7191,7 +7191,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 7197 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -7199,7 +7199,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ = -# 2016 "parser_cocci_menhir.mly" +# 2030 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) @@ -7229,7 +7229,7 @@ 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_ = -# 2019 "parser_cocci_menhir.mly" +# 2033 "parser_cocci_menhir.mly" ( _2 ) # 7235 "parser_cocci_menhir.ml" in @@ -7246,7 +7246,7 @@ 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 = -# 766 "parser_cocci_menhir.mly" +# 767 "parser_cocci_menhir.mly" ( [] ) # 7252 "parser_cocci_menhir.ml" in @@ -7276,7 +7276,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_struct_decl_list = -# 767 "parser_cocci_menhir.mly" +# 768 "parser_cocci_menhir.mly" ( _1@_2 ) # 7282 "parser_cocci_menhir.ml" in @@ -7300,7 +7300,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_struct_decl_list = -# 768 "parser_cocci_menhir.mly" +# 769 "parser_cocci_menhir.mly" ( _1 ) # 7306 "parser_cocci_menhir.ml" in @@ -7349,13 +7349,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) # 7355 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 7361 "parser_cocci_menhir.ml" @@ -7368,7 +7368,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 7374 "parser_cocci_menhir.ml" in @@ -7417,13 +7417,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) # 7423 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 7429 "parser_cocci_menhir.ml" @@ -7436,7 +7436,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 7442 "parser_cocci_menhir.ml" in @@ -7485,13 +7485,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) # 7491 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 7497 "parser_cocci_menhir.ml" @@ -7504,7 +7504,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 7510 "parser_cocci_menhir.ml" in @@ -7536,7 +7536,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 7542 "parser_cocci_menhir.ml" ) = Obj.magic p00 in @@ -7553,14 +7553,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) # 7560 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 7566 "parser_cocci_menhir.ml" @@ -7573,7 +7573,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 7579 "parser_cocci_menhir.ml" in @@ -7638,7 +7638,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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 *) @@ -7649,7 +7649,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 7655 "parser_cocci_menhir.ml" @@ -7662,7 +7662,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 7668 "parser_cocci_menhir.ml" in @@ -7711,13 +7711,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) # 7717 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 7723 "parser_cocci_menhir.ml" @@ -7730,7 +7730,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 7736 "parser_cocci_menhir.ml" in @@ -7791,7 +7791,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, @@ -7800,7 +7800,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 7806 "parser_cocci_menhir.ml" @@ -7813,7 +7813,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 7819 "parser_cocci_menhir.ml" in @@ -7862,13 +7862,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) # 7868 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 7874 "parser_cocci_menhir.ml" @@ -7881,7 +7881,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 7887 "parser_cocci_menhir.ml" in @@ -7930,13 +7930,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) # 7936 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 7942 "parser_cocci_menhir.ml" @@ -7949,7 +7949,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 7955 "parser_cocci_menhir.ml" in @@ -7998,13 +7998,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) # 8004 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 8010 "parser_cocci_menhir.ml" @@ -8017,7 +8017,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8023 "parser_cocci_menhir.ml" in @@ -8049,7 +8049,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 8055 "parser_cocci_menhir.ml" ) = Obj.magic p00 in @@ -8066,14 +8066,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) # 8073 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 8079 "parser_cocci_menhir.ml" @@ -8086,7 +8086,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8092 "parser_cocci_menhir.ml" in @@ -8151,7 +8151,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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 *) @@ -8162,7 +8162,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 8168 "parser_cocci_menhir.ml" @@ -8175,7 +8175,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8181 "parser_cocci_menhir.ml" in @@ -8224,13 +8224,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) # 8230 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 8236 "parser_cocci_menhir.ml" @@ -8243,7 +8243,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8249 "parser_cocci_menhir.ml" in @@ -8304,7 +8304,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, @@ -8313,7 +8313,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 8319 "parser_cocci_menhir.ml" @@ -8326,7 +8326,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8332 "parser_cocci_menhir.ml" in @@ -8364,13 +8364,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) # 8370 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 8376 "parser_cocci_menhir.ml" @@ -8383,7 +8383,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8389 "parser_cocci_menhir.ml" in @@ -8421,13 +8421,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) # 8427 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 8433 "parser_cocci_menhir.ml" @@ -8440,7 +8440,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8446 "parser_cocci_menhir.ml" in @@ -8478,13 +8478,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) # 8484 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 8490 "parser_cocci_menhir.ml" @@ -8497,7 +8497,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8503 "parser_cocci_menhir.ml" in @@ -8524,7 +8524,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 8530 "parser_cocci_menhir.ml" ) = Obj.magic p00 in @@ -8535,14 +8535,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) # 8542 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 8548 "parser_cocci_menhir.ml" @@ -8555,7 +8555,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8561 "parser_cocci_menhir.ml" in @@ -8609,7 +8609,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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 *) @@ -8620,7 +8620,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 8626 "parser_cocci_menhir.ml" @@ -8633,7 +8633,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8639 "parser_cocci_menhir.ml" in @@ -8671,13 +8671,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) # 8677 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 8683 "parser_cocci_menhir.ml" @@ -8690,7 +8690,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8696 "parser_cocci_menhir.ml" in @@ -8740,7 +8740,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, @@ -8749,7 +8749,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 8755 "parser_cocci_menhir.ml" @@ -8762,7 +8762,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8768 "parser_cocci_menhir.ml" in @@ -8800,13 +8800,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 656 "parser_cocci_menhir.mly" +# 657 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) ) # 8806 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 8812 "parser_cocci_menhir.ml" @@ -8819,7 +8819,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8825 "parser_cocci_menhir.ml" in @@ -8857,13 +8857,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 658 "parser_cocci_menhir.mly" +# 659 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) ) # 8863 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 8869 "parser_cocci_menhir.ml" @@ -8876,7 +8876,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8882 "parser_cocci_menhir.ml" in @@ -8914,13 +8914,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 660 "parser_cocci_menhir.mly" +# 661 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) ) # 8920 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 8926 "parser_cocci_menhir.ml" @@ -8933,7 +8933,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8939 "parser_cocci_menhir.ml" in @@ -8971,13 +8971,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 662 "parser_cocci_menhir.mly" +# 663 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) ) # 8977 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 8983 "parser_cocci_menhir.ml" @@ -8990,7 +8990,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 8996 "parser_cocci_menhir.ml" in @@ -9028,13 +9028,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 664 "parser_cocci_menhir.mly" +# 665 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) ) # 9034 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9040 "parser_cocci_menhir.ml" @@ -9047,7 +9047,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9053 "parser_cocci_menhir.ml" in @@ -9085,13 +9085,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 666 "parser_cocci_menhir.mly" +# 667 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) ) # 9091 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9097 "parser_cocci_menhir.ml" @@ -9104,7 +9104,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9110 "parser_cocci_menhir.ml" in @@ -9150,13 +9150,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 668 "parser_cocci_menhir.mly" +# 669 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) ) # 9156 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9162 "parser_cocci_menhir.ml" @@ -9169,7 +9169,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9175 "parser_cocci_menhir.ml" in @@ -9211,13 +9211,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9217 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9223 "parser_cocci_menhir.ml" ) = Obj.magic l00 in @@ -9246,7 +9246,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 670 "parser_cocci_menhir.mly" +# 671 "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)), @@ -9255,7 +9255,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9261 "parser_cocci_menhir.ml" @@ -9268,7 +9268,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9274 "parser_cocci_menhir.ml" in @@ -9315,13 +9315,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9321 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9327 "parser_cocci_menhir.ml" ) = Obj.magic l00 in @@ -9354,7 +9354,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 670 "parser_cocci_menhir.mly" +# 671 "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)), @@ -9363,7 +9363,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9369 "parser_cocci_menhir.ml" @@ -9376,7 +9376,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9382 "parser_cocci_menhir.ml" in @@ -9418,13 +9418,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 675 "parser_cocci_menhir.mly" +# 676 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) ) # 9424 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9430 "parser_cocci_menhir.ml" @@ -9437,7 +9437,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9443 "parser_cocci_menhir.ml" in @@ -9479,13 +9479,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9485 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9491 "parser_cocci_menhir.ml" ) = Obj.magic l00 in @@ -9510,7 +9510,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 678 "parser_cocci_menhir.mly" +# 679 "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)), @@ -9520,7 +9520,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9526 "parser_cocci_menhir.ml" @@ -9533,7 +9533,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9539 "parser_cocci_menhir.ml" in @@ -9580,13 +9580,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9586 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9592 "parser_cocci_menhir.ml" ) = Obj.magic l00 in @@ -9615,7 +9615,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 678 "parser_cocci_menhir.mly" +# 679 "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)), @@ -9625,7 +9625,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9631 "parser_cocci_menhir.ml" @@ -9638,7 +9638,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9644 "parser_cocci_menhir.ml" in @@ -9680,18 +9680,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9686 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 9692 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 9697 "parser_cocci_menhir.ml" ) = Obj.magic s00 in @@ -9708,7 +9708,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let l = l0 in let s = s0 in -# 684 "parser_cocci_menhir.mly" +# 685 "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)) ) @@ -9716,7 +9716,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9722 "parser_cocci_menhir.ml" @@ -9729,7 +9729,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9735 "parser_cocci_menhir.ml" in @@ -9767,13 +9767,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 688 "parser_cocci_menhir.mly" +# 689 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) ) # 9773 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 9779 "parser_cocci_menhir.ml" @@ -9786,7 +9786,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9792 "parser_cocci_menhir.ml" in @@ -9841,13 +9841,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) # 9847 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 9853 "parser_cocci_menhir.ml" @@ -9861,7 +9861,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9867 "parser_cocci_menhir.ml" in @@ -9916,13 +9916,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) # 9922 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 9928 "parser_cocci_menhir.ml" @@ -9936,7 +9936,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 9942 "parser_cocci_menhir.ml" in @@ -9991,13 +9991,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) # 9997 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 10003 "parser_cocci_menhir.ml" @@ -10011,7 +10011,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10017 "parser_cocci_menhir.ml" in @@ -10048,7 +10048,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 10054 "parser_cocci_menhir.ml" ) = Obj.magic p00 in @@ -10066,14 +10066,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) # 10073 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 10079 "parser_cocci_menhir.ml" @@ -10087,7 +10087,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10093 "parser_cocci_menhir.ml" in @@ -10158,7 +10158,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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 *) @@ -10169,7 +10169,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 10175 "parser_cocci_menhir.ml" @@ -10183,7 +10183,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10189 "parser_cocci_menhir.ml" in @@ -10238,13 +10238,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) # 10244 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 10250 "parser_cocci_menhir.ml" @@ -10258,7 +10258,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10264 "parser_cocci_menhir.ml" in @@ -10325,7 +10325,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, @@ -10334,7 +10334,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) # 10340 "parser_cocci_menhir.ml" @@ -10348,7 +10348,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10354 "parser_cocci_menhir.ml" in @@ -10403,13 +10403,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) # 10409 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 10415 "parser_cocci_menhir.ml" @@ -10423,7 +10423,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10429 "parser_cocci_menhir.ml" in @@ -10478,13 +10478,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) # 10484 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 10490 "parser_cocci_menhir.ml" @@ -10498,7 +10498,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10504 "parser_cocci_menhir.ml" in @@ -10553,13 +10553,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) # 10559 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 10565 "parser_cocci_menhir.ml" @@ -10573,7 +10573,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10579 "parser_cocci_menhir.ml" in @@ -10610,7 +10610,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 10616 "parser_cocci_menhir.ml" ) = Obj.magic p00 in @@ -10628,14 +10628,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) # 10635 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 10641 "parser_cocci_menhir.ml" @@ -10649,7 +10649,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10655 "parser_cocci_menhir.ml" in @@ -10720,7 +10720,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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 *) @@ -10731,7 +10731,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 10737 "parser_cocci_menhir.ml" @@ -10745,7 +10745,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10751 "parser_cocci_menhir.ml" in @@ -10800,13 +10800,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) # 10806 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 10812 "parser_cocci_menhir.ml" @@ -10820,7 +10820,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10826 "parser_cocci_menhir.ml" in @@ -10887,7 +10887,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, @@ -10896,7 +10896,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) # 10902 "parser_cocci_menhir.ml" @@ -10910,7 +10910,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10916 "parser_cocci_menhir.ml" in @@ -10954,13 +10954,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) # 10960 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 10966 "parser_cocci_menhir.ml" @@ -10974,7 +10974,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 10980 "parser_cocci_menhir.ml" in @@ -11018,13 +11018,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) # 11024 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 11030 "parser_cocci_menhir.ml" @@ -11038,7 +11038,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11044 "parser_cocci_menhir.ml" in @@ -11082,13 +11082,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) # 11088 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 11094 "parser_cocci_menhir.ml" @@ -11102,7 +11102,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11108 "parser_cocci_menhir.ml" in @@ -11134,7 +11134,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 11140 "parser_cocci_menhir.ml" ) = Obj.magic p00 in @@ -11146,14 +11146,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) # 11153 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 11159 "parser_cocci_menhir.ml" @@ -11167,7 +11167,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11173 "parser_cocci_menhir.ml" in @@ -11227,7 +11227,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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 *) @@ -11238,7 +11238,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 11244 "parser_cocci_menhir.ml" @@ -11252,7 +11252,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11258 "parser_cocci_menhir.ml" in @@ -11296,13 +11296,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) # 11302 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 11308 "parser_cocci_menhir.ml" @@ -11316,7 +11316,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11322 "parser_cocci_menhir.ml" in @@ -11372,7 +11372,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, @@ -11381,7 +11381,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) # 11387 "parser_cocci_menhir.ml" @@ -11395,7 +11395,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11401 "parser_cocci_menhir.ml" in @@ -11439,13 +11439,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 656 "parser_cocci_menhir.mly" +# 657 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) ) # 11445 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 11451 "parser_cocci_menhir.ml" @@ -11459,7 +11459,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11465 "parser_cocci_menhir.ml" in @@ -11503,13 +11503,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 658 "parser_cocci_menhir.mly" +# 659 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) ) # 11509 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 11515 "parser_cocci_menhir.ml" @@ -11523,7 +11523,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11529 "parser_cocci_menhir.ml" in @@ -11567,13 +11567,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 660 "parser_cocci_menhir.mly" +# 661 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) ) # 11573 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 11579 "parser_cocci_menhir.ml" @@ -11587,7 +11587,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11593 "parser_cocci_menhir.ml" in @@ -11631,13 +11631,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 662 "parser_cocci_menhir.mly" +# 663 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) ) # 11637 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 11643 "parser_cocci_menhir.ml" @@ -11651,7 +11651,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11657 "parser_cocci_menhir.ml" in @@ -11695,13 +11695,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 664 "parser_cocci_menhir.mly" +# 665 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) ) # 11701 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 11707 "parser_cocci_menhir.ml" @@ -11715,7 +11715,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11721 "parser_cocci_menhir.ml" in @@ -11759,13 +11759,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 666 "parser_cocci_menhir.mly" +# 667 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) ) # 11765 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 11771 "parser_cocci_menhir.ml" @@ -11779,7 +11779,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11785 "parser_cocci_menhir.ml" in @@ -11831,13 +11831,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 668 "parser_cocci_menhir.mly" +# 669 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) ) # 11837 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 11843 "parser_cocci_menhir.ml" @@ -11851,7 +11851,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11857 "parser_cocci_menhir.ml" in @@ -11898,13 +11898,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 11904 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 11910 "parser_cocci_menhir.ml" ) = Obj.magic l00 in @@ -11934,7 +11934,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 670 "parser_cocci_menhir.mly" +# 671 "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)), @@ -11943,7 +11943,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 11949 "parser_cocci_menhir.ml" @@ -11957,7 +11957,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 11963 "parser_cocci_menhir.ml" in @@ -12009,13 +12009,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 12015 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 12021 "parser_cocci_menhir.ml" ) = Obj.magic l00 in @@ -12049,7 +12049,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 670 "parser_cocci_menhir.mly" +# 671 "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)), @@ -12058,7 +12058,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 12064 "parser_cocci_menhir.ml" @@ -12072,7 +12072,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 12078 "parser_cocci_menhir.ml" in @@ -12120,13 +12120,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 675 "parser_cocci_menhir.mly" +# 676 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) ) # 12126 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 12132 "parser_cocci_menhir.ml" @@ -12140,7 +12140,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 12146 "parser_cocci_menhir.ml" in @@ -12187,13 +12187,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 12193 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 12199 "parser_cocci_menhir.ml" ) = Obj.magic l00 in @@ -12219,7 +12219,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 678 "parser_cocci_menhir.mly" +# 679 "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)), @@ -12229,7 +12229,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 12235 "parser_cocci_menhir.ml" @@ -12243,7 +12243,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 12249 "parser_cocci_menhir.ml" in @@ -12295,13 +12295,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 12301 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 12307 "parser_cocci_menhir.ml" ) = Obj.magic l00 in @@ -12331,7 +12331,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 678 "parser_cocci_menhir.mly" +# 679 "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)), @@ -12341,7 +12341,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 12347 "parser_cocci_menhir.ml" @@ -12355,7 +12355,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 12361 "parser_cocci_menhir.ml" in @@ -12402,18 +12402,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 12408 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) # 12414 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 12419 "parser_cocci_menhir.ml" ) = Obj.magic s00 in @@ -12431,7 +12431,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let l = l0 in let s = s0 in -# 684 "parser_cocci_menhir.mly" +# 685 "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)) ) @@ -12439,7 +12439,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 12445 "parser_cocci_menhir.ml" @@ -12453,7 +12453,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 12459 "parser_cocci_menhir.ml" in @@ -12497,13 +12497,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 688 "parser_cocci_menhir.mly" +# 689 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) ) # 12503 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) # 12509 "parser_cocci_menhir.ml" @@ -12517,7 +12517,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 701 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) # 12523 "parser_cocci_menhir.ml" in @@ -12545,7 +12545,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_r_ in let _endpos = _endpos_r_ in let _v : 'tv_ctype = -# 703 "parser_cocci_menhir.mly" +# 704 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,None)) ) # 12551 "parser_cocci_menhir.ml" in @@ -12573,7 +12573,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_r_ in let _endpos = _endpos_r_ in let _v : 'tv_ctype = -# 705 "parser_cocci_menhir.mly" +# 706 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,None)) ) # 12579 "parser_cocci_menhir.ml" in @@ -12604,20 +12604,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 12610 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 12616 "parser_cocci_menhir.ml" ) = Obj.magic lp in let _startpos = _startpos_lp_ in let _endpos = _endpos_rp_ in let _v : 'tv_ctype = -# 707 "parser_cocci_menhir.mly" +# 708 "parser_cocci_menhir.mly" ( let (mids,code) = t in Ast0.wrap (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) ) @@ -12649,7 +12649,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_d_ident = -# 1277 "parser_cocci_menhir.mly" +# 1280 "parser_cocci_menhir.mly" ( (_1, function t -> P.arrayify t _2) ) # 12655 "parser_cocci_menhir.ml" in @@ -12685,7 +12685,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_a_ in let _v : 'tv_decl = -# 1029 "parser_cocci_menhir.mly" +# 1032 "parser_cocci_menhir.mly" ( let t = P.arrayify t a in Ast0.wrap(Ast0.Param(t, Some i)) ) # 12691 "parser_cocci_menhir.ml" in @@ -12709,7 +12709,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_t_ in let _v : 'tv_decl = -# 1030 "parser_cocci_menhir.mly" +# 1033 "parser_cocci_menhir.mly" ( (*verify in FunDecl*) Ast0.wrap(Ast0.Param(t, None)) ) # 12715 "parser_cocci_menhir.ml" in @@ -12765,29 +12765,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 12771 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 12777 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 12782 "parser_cocci_menhir.ml" ) = Obj.magic rp in let i : 'tv_disj_ident = Obj.magic i in let s : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 12788 "parser_cocci_menhir.ml" ) = Obj.magic s in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 12793 "parser_cocci_menhir.ml" ) = Obj.magic lp in @@ -12795,7 +12795,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_rp1_ in let _v : 'tv_decl = -# 1033 "parser_cocci_menhir.mly" +# 1036 "parser_cocci_menhir.mly" ( let fnptr = Ast0.wrap (Ast0.FunctionPointer @@ -12821,14 +12821,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 12827 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl = -# 1040 "parser_cocci_menhir.mly" +# 1043 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = _1 in Ast0.wrap(Ast0.MetaParam(P.clt2mcode nm clt,pure)) ) # 12835 "parser_cocci_menhir.ml" @@ -12850,14 +12850,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) # 12856 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl = -# 1042 "parser_cocci_menhir.mly" +# 1045 "parser_cocci_menhir.mly" ( tmeta_to_param _1 ) # 12863 "parser_cocci_menhir.ml" in @@ -12885,7 +12885,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_ident = -# 1935 "parser_cocci_menhir.mly" +# 1949 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) ) # 12891 "parser_cocci_menhir.ml" in @@ -12906,16 +12906,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 129 "parser_cocci_menhir.mly" +# 130 "parser_cocci_menhir.mly" (Parse_aux.idinfo) # 12912 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_ident = -# 1937 "parser_cocci_menhir.mly" +# 1951 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) ) + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,Ast.NoVal,pure)) ) # 12920 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { @@ -12938,7 +12938,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_list_decl_ = -# 1959 "parser_cocci_menhir.mly" +# 1973 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.DOTS (_1 @@ -12966,7 +12966,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_list_name_opt_decl_ = -# 1959 "parser_cocci_menhir.mly" +# 1973 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.DOTS (_1 @@ -12991,14 +12991,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 12997 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement = -# 1340 "parser_cocci_menhir.mly" +# 1343 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = _1 in [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] ) # 13005 "parser_cocci_menhir.ml" @@ -13023,7 +13023,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement = -# 1343 "parser_cocci_menhir.mly" +# 1346 "parser_cocci_menhir.mly" ( List.map (function x -> Ast0.wrap @@ -13051,7 +13051,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement = -# 1348 "parser_cocci_menhir.mly" +# 1351 "parser_cocci_menhir.mly" ( [_1] ) # 13057 "parser_cocci_menhir.ml" in @@ -13082,20 +13082,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 13088 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let t : 'tv_midzero_list_fun_start_fun_start_ = Obj.magic t in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 13094 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_decl_statement = -# 1357 "parser_cocci_menhir.mly" +# 1360 "parser_cocci_menhir.mly" ( let (mids,code) = t in if List.for_all (function x -> @@ -13124,14 +13124,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) # 13130 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement_expr = -# 1370 "parser_cocci_menhir.mly" +# 1373 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = _1 in [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] ) # 13138 "parser_cocci_menhir.ml" @@ -13156,7 +13156,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement_expr = -# 1373 "parser_cocci_menhir.mly" +# 1376 "parser_cocci_menhir.mly" ( List.map (function x -> Ast0.wrap @@ -13184,7 +13184,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement_expr = -# 1378 "parser_cocci_menhir.mly" +# 1381 "parser_cocci_menhir.mly" ( [_1] ) # 13190 "parser_cocci_menhir.ml" in @@ -13215,20 +13215,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 13221 "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 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 13227 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_decl_statement_expr = -# 1387 "parser_cocci_menhir.mly" +# 1390 "parser_cocci_menhir.mly" ( let (mids,code) = t in if List.for_all (function [] -> true | _ -> false) code then [] @@ -13261,7 +13261,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13267 "parser_cocci_menhir.ml" ) = Obj.magic pv in @@ -13269,7 +13269,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_pv_ in let _v : 'tv_decl_var = -# 1163 "parser_cocci_menhir.mly" +# 1166 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv))] ) # 13275 "parser_cocci_menhir.ml" in @@ -13290,14 +13290,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) # 13296 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_var = -# 1164 "parser_cocci_menhir.mly" +# 1167 "parser_cocci_menhir.mly" ( [P.meta_decl _1] ) # 13303 "parser_cocci_menhir.ml" in @@ -13328,7 +13328,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13334 "parser_cocci_menhir.ml" ) = Obj.magic pv in @@ -13344,7 +13344,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1166 "parser_cocci_menhir.mly" +# 1169 "parser_cocci_menhir.mly" ( List.map (function (id,fn) -> Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))) @@ -13383,7 +13383,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13389 "parser_cocci_menhir.ml" ) = Obj.magic pv in @@ -13401,7 +13401,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1166 "parser_cocci_menhir.mly" +# 1169 "parser_cocci_menhir.mly" ( List.map (function (id,fn) -> Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))) @@ -13428,7 +13428,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_f_ in let _v : 'tv_decl_var = -# 1170 "parser_cocci_menhir.mly" +# 1173 "parser_cocci_menhir.mly" ( [f] ) # 13434 "parser_cocci_menhir.ml" in @@ -13469,13 +13469,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13475 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13481 "parser_cocci_menhir.ml" ) = Obj.magic q in @@ -13491,7 +13491,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1172 "parser_cocci_menhir.mly" +# 1175 "parser_cocci_menhir.mly" (let (id,fn) = d in [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))]) # 13498 "parser_cocci_menhir.ml" @@ -13538,13 +13538,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13544 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13550 "parser_cocci_menhir.ml" ) = Obj.magic q in @@ -13562,7 +13562,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1172 "parser_cocci_menhir.mly" +# 1175 "parser_cocci_menhir.mly" (let (id,fn) = d in [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))]) # 13569 "parser_cocci_menhir.ml" @@ -13594,7 +13594,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13600 "parser_cocci_menhir.ml" ) = Obj.magic pv in @@ -13617,7 +13617,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1177 "parser_cocci_menhir.mly" +# 1180 "parser_cocci_menhir.mly" ( List.map (function (id,fn) -> let idtype = @@ -13658,7 +13658,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13664 "parser_cocci_menhir.ml" ) = Obj.magic pv in @@ -13683,7 +13683,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1177 "parser_cocci_menhir.mly" +# 1180 "parser_cocci_menhir.mly" ( List.map (function (id,fn) -> let idtype = @@ -13724,7 +13724,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13730 "parser_cocci_menhir.ml" ) = Obj.magic pv in @@ -13749,7 +13749,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1177 "parser_cocci_menhir.mly" +# 1180 "parser_cocci_menhir.mly" ( List.map (function (id,fn) -> let idtype = @@ -13795,7 +13795,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13801 "parser_cocci_menhir.ml" ) = Obj.magic pv in @@ -13822,7 +13822,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1177 "parser_cocci_menhir.mly" +# 1180 "parser_cocci_menhir.mly" ( List.map (function (id,fn) -> let idtype = @@ -13868,13 +13868,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13874 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13880 "parser_cocci_menhir.ml" ) = Obj.magic q in @@ -13897,7 +13897,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1185 "parser_cocci_menhir.mly" +# 1188 "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 @@ -13947,13 +13947,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13953 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 13959 "parser_cocci_menhir.ml" ) = Obj.magic q in @@ -13978,7 +13978,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1185 "parser_cocci_menhir.mly" +# 1188 "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 @@ -14028,13 +14028,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14034 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14040 "parser_cocci_menhir.ml" ) = Obj.magic q in @@ -14059,7 +14059,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1185 "parser_cocci_menhir.mly" +# 1188 "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 @@ -14114,13 +14114,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14120 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14126 "parser_cocci_menhir.ml" ) = Obj.magic q in @@ -14147,7 +14147,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1185 "parser_cocci_menhir.mly" +# 1188 "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 @@ -14212,34 +14212,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14218 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 14223 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 14229 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 14234 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 14240 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 14245 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in @@ -14254,7 +14254,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1195 "parser_cocci_menhir.mly" +# 1198 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -14326,34 +14326,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14332 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 14337 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 14343 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 14348 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 14354 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 14359 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in @@ -14370,7 +14370,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1195 "parser_cocci_menhir.mly" +# 1198 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -14417,18 +14417,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _5 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14423 "parser_cocci_menhir.ml" ) = Obj.magic _5 in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 14428 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 14434 "parser_cocci_menhir.ml" ) = Obj.magic _2 in @@ -14436,7 +14436,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : 'tv_decl_var = -# 1203 "parser_cocci_menhir.mly" +# 1206 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3, P.clt2mcode ")" _4,P.clt2mcode ";" _5))] ) # 14443 "parser_cocci_menhir.ml" @@ -14508,40 +14508,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14514 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14520 "parser_cocci_menhir.ml" ) = Obj.magic q in let rp2 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 14525 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 14531 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 14536 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 14542 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 14547 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in @@ -14556,7 +14556,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1209 "parser_cocci_menhir.mly" +# 1212 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -14638,40 +14638,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14644 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14650 "parser_cocci_menhir.ml" ) = Obj.magic q in let rp2 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 14655 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 14661 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) # 14666 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) # 14672 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) # 14677 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in @@ -14688,7 +14688,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct in -# 1209 "parser_cocci_menhir.mly" +# 1212 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -14730,7 +14730,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) # 14736 "parser_cocci_menhir.ml" ) = Obj.magic pv in @@ -14744,7 +14744,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_s_ in let _endpos = _endpos_pv_ in let _v : 'tv_decl_var = -# 1217 "parser_cocci_menhir.mly" +# 1220 "parser_cocci_menhir.mly" ( let s = P.clt2mcode "typedef" s in List.map (function id -> @@ -14772,7 +14772,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_define_param_list_option = -# 952 "parser_cocci_menhir.mly" +# 955 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.DOTS (_1 @@ -14797,14 +14797,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 149 "parser_cocci_menhir.mly" +# 150 "parser_cocci_menhir.mly" (Data.clt * token) # 14803 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_defineop = -# 903 "parser_cocci_menhir.mly" +# 904 "parser_cocci_menhir.mly" ( let (clt,ident) = _1 in let aft = P.get_aft clt in (* move stuff after the define to the ident *) function body -> @@ -14812,9 +14812,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct (Ast0.Define (P.clt2mcode "#define" (P.drop_aft clt), (match ident with - TMetaId((nm,constraints,pure,clt)) -> + TMetaId((nm,constraints,seed,pure,clt)) -> let clt = P.set_aft aft clt in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) + Ast0.wrap + (Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) | TIdent((nm,clt)) -> let clt = P.set_aft aft clt in Ast0.wrap(Ast0.Id(P.clt2mcode nm clt)) @@ -14824,7 +14825,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct "unexpected name for a #define")), Ast0.wrap Ast0.NoParams, body)) ) -# 14828 "parser_cocci_menhir.ml" +# 14829 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14853,20 +14854,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 14859 "parser_cocci_menhir.ml" +# 14860 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_define_param_list_option = Obj.magic _2 in let _1 : ( -# 150 "parser_cocci_menhir.mly" +# 151 "parser_cocci_menhir.mly" (Data.clt * token * int * int) -# 14865 "parser_cocci_menhir.ml" +# 14866 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_defineop = -# 923 "parser_cocci_menhir.mly" +# 925 "parser_cocci_menhir.mly" ( let (clt,ident,parenoff,parencol) = _1 in let aft = P.get_aft clt in (* move stuff after the define to the ( *) (* clt is the start of the #define itself *) @@ -14879,8 +14880,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct (Ast0.Define (P.clt2mcode "#define" (P.drop_aft clt), (match ident with - TMetaId((nm,constraints,pure,clt)) -> - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) + TMetaId((nm,constraints,seed,pure,clt)) -> + Ast0.wrap + (Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) | TIdent((nm,clt)) -> Ast0.wrap(Ast0.Id(P.clt2mcode nm clt)) | _ -> @@ -14889,7 +14891,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct "unexpected name for a #define")), (let clt = P.set_aft aft _3 in Ast0.wrap (Ast0.DParams (lp,_2,P.clt2mcode ")" clt))),body)) ) -# 14893 "parser_cocci_menhir.ml" +# 14895 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14911,9 +14913,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_dep = -# 295 "parser_cocci_menhir.mly" +# 296 "parser_cocci_menhir.mly" ( _1 ) -# 14917 "parser_cocci_menhir.ml" +# 14919 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14945,9 +14947,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_dep = -# 296 "parser_cocci_menhir.mly" +# 297 "parser_cocci_menhir.mly" ( Ast.AndDep(_1, _3) ) -# 14951 "parser_cocci_menhir.ml" +# 14953 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14979,9 +14981,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_dep = -# 297 "parser_cocci_menhir.mly" +# 298 "parser_cocci_menhir.mly" ( Ast.OrDep (_1, _3) ) -# 14985 "parser_cocci_menhir.ml" +# 14987 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14996,9 +14998,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_depends = -# 291 "parser_cocci_menhir.mly" +# 292 "parser_cocci_menhir.mly" ( Ast.NoDep ) -# 15002 "parser_cocci_menhir.ml" +# 15004 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15028,9 +15030,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_parents_ in let _v : 'tv_depends = -# 292 "parser_cocci_menhir.mly" +# 293 "parser_cocci_menhir.mly" ( parents ) -# 15034 "parser_cocci_menhir.ml" +# 15036 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15055,16 +15057,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_disj_ident = Obj.magic _2 in let _1 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 15061 "parser_cocci_menhir.ml" +# 15063 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_designator = -# 1326 "parser_cocci_menhir.mly" +# 1329 "parser_cocci_menhir.mly" ( Ast0.DesignatorField (P.clt2mcode "." _1,_2) ) -# 15068 "parser_cocci_menhir.ml" +# 15070 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15093,22 +15095,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 15099 "parser_cocci_menhir.ml" +# 15101 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 15105 "parser_cocci_menhir.ml" +# 15107 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_designator = -# 1328 "parser_cocci_menhir.mly" +# 1331 "parser_cocci_menhir.mly" ( Ast0.DesignatorIndex (P.clt2mcode "[" _1,_2,P.clt2mcode "]" _3) ) -# 15112 "parser_cocci_menhir.ml" +# 15114 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15147,29 +15149,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _5 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 15153 "parser_cocci_menhir.ml" +# 15155 "parser_cocci_menhir.ml" ) = Obj.magic _5 in let _4 : 'tv_eexpr = Obj.magic _4 in let _3 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15159 "parser_cocci_menhir.ml" +# 15161 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 15165 "parser_cocci_menhir.ml" +# 15167 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : 'tv_designator = -# 1330 "parser_cocci_menhir.mly" +# 1333 "parser_cocci_menhir.mly" ( Ast0.DesignatorRange (P.clt2mcode "[" _1,_2,P.clt2mcode "..." _3, _4,P.clt2mcode "]" _5) ) -# 15173 "parser_cocci_menhir.ml" +# 15175 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15191,9 +15193,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_dexpr = -# 1409 "parser_cocci_menhir.mly" +# 1412 "parser_cocci_menhir.mly" ( _1 ) -# 15197 "parser_cocci_menhir.ml" +# 15199 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15219,9 +15221,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_disable = -# 310 "parser_cocci_menhir.mly" +# 311 "parser_cocci_menhir.mly" ( List.map P.id2name _2 ) -# 15225 "parser_cocci_menhir.ml" +# 15227 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15243,9 +15245,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_disj_ident = -# 1923 "parser_cocci_menhir.mly" +# 1937 "parser_cocci_menhir.mly" ( _1 ) -# 15249 "parser_cocci_menhir.ml" +# 15251 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15274,24 +15276,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 15280 "parser_cocci_menhir.ml" +# 15282 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_midzero_list_disj_ident_disj_ident_ = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 15286 "parser_cocci_menhir.ml" +# 15288 "parser_cocci_menhir.ml" ) = Obj.magic lp in let _startpos = _startpos_lp_ in let _endpos = _endpos_rp_ in let _v : 'tv_disj_ident = -# 1925 "parser_cocci_menhir.mly" +# 1939 "parser_cocci_menhir.mly" ( let (mids,code) = t in Ast0.wrap (Ast0.DisjId(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) ) -# 15295 "parser_cocci_menhir.ml" +# 15297 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15310,16 +15312,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15316 "parser_cocci_menhir.ml" +# 15318 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_dot_expressions = -# 1418 "parser_cocci_menhir.mly" +# 1421 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Edots(P.clt2mcode "..." _1,None)) ) -# 15323 "parser_cocci_menhir.ml" +# 15325 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15341,9 +15343,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_dot_expressions = -# 1419 "parser_cocci_menhir.mly" +# 1422 "parser_cocci_menhir.mly" ( _1 ) -# 15347 "parser_cocci_menhir.ml" +# 15349 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15365,9 +15367,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_dparam = -# 948 "parser_cocci_menhir.mly" +# 951 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DParam _1) ) -# 15371 "parser_cocci_menhir.ml" +# 15373 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15386,16 +15388,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15392 "parser_cocci_menhir.ml" +# 15394 "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_ = -# 2245 "parser_cocci_menhir.mly" +# 2259 "parser_cocci_menhir.mly" ( (d,None) ) -# 15399 "parser_cocci_menhir.ml" +# 15401 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15432,16 +15434,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let w : 'tv_eexpr = Obj.magic w in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15438 "parser_cocci_menhir.ml" +# 15440 "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_ = -# 2246 "parser_cocci_menhir.mly" +# 2260 "parser_cocci_menhir.mly" ( (d,Some w) ) -# 15445 "parser_cocci_menhir.ml" +# 15447 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15460,16 +15462,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15466 "parser_cocci_menhir.ml" +# 15468 "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_ = -# 2245 "parser_cocci_menhir.mly" +# 2259 "parser_cocci_menhir.mly" ( (d,None) ) -# 15473 "parser_cocci_menhir.ml" +# 15475 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15506,16 +15508,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let w : 'tv_enum_decl_one = Obj.magic w in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15512 "parser_cocci_menhir.ml" +# 15514 "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_ = -# 2246 "parser_cocci_menhir.mly" +# 2260 "parser_cocci_menhir.mly" ( (d,Some w) ) -# 15519 "parser_cocci_menhir.ml" +# 15521 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15534,16 +15536,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15540 "parser_cocci_menhir.ml" +# 15542 "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_ = -# 2245 "parser_cocci_menhir.mly" +# 2259 "parser_cocci_menhir.mly" ( (d,None) ) -# 15547 "parser_cocci_menhir.ml" +# 15549 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15580,16 +15582,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let w : 'tv_initialize = Obj.magic w in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15586 "parser_cocci_menhir.ml" +# 15588 "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_ = -# 2246 "parser_cocci_menhir.mly" +# 2260 "parser_cocci_menhir.mly" ( (d,Some w) ) -# 15593 "parser_cocci_menhir.ml" +# 15595 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15608,16 +15610,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15614 "parser_cocci_menhir.ml" +# 15616 "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_ = -# 2245 "parser_cocci_menhir.mly" +# 2259 "parser_cocci_menhir.mly" ( (d,None) ) -# 15621 "parser_cocci_menhir.ml" +# 15623 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15654,16 +15656,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let w : 'tv_struct_decl_one = Obj.magic w in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 15660 "parser_cocci_menhir.ml" +# 15662 "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_ = -# 2246 "parser_cocci_menhir.mly" +# 2260 "parser_cocci_menhir.mly" ( (d,Some w) ) -# 15667 "parser_cocci_menhir.ml" +# 15669 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15685,9 +15687,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_eexpr = -# 1407 "parser_cocci_menhir.mly" +# 1410 "parser_cocci_menhir.mly" ( _1 ) -# 15691 "parser_cocci_menhir.ml" +# 15693 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15709,13 +15711,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_eexpr_list_option = -# 2225 "parser_cocci_menhir.mly" +# 2239 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.DOTS (_1 (fun _ d -> Ast0.wrap(Ast0.Edots(P.clt2mcode "..." d,None))) (fun c -> Ast0.EComma c))) ) -# 15719 "parser_cocci_menhir.ml" +# 15721 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15730,9 +15732,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_ = -# 1987 "parser_cocci_menhir.mly" +# 2001 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 15736 "parser_cocci_menhir.ml" +# 15738 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15754,9 +15756,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_ = -# 1988 "parser_cocci_menhir.mly" +# 2002 "parser_cocci_menhir.mly" ( _1 ) -# 15760 "parser_cocci_menhir.ml" +# 15762 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15771,9 +15773,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_ = -# 1987 "parser_cocci_menhir.mly" +# 2001 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 15777 "parser_cocci_menhir.ml" +# 15779 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15795,9 +15797,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_ = -# 1988 "parser_cocci_menhir.mly" +# 2002 "parser_cocci_menhir.mly" ( _1 ) -# 15801 "parser_cocci_menhir.ml" +# 15803 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15812,9 +15814,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__ = -# 1987 "parser_cocci_menhir.mly" +# 2001 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 15818 "parser_cocci_menhir.ml" +# 15820 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15836,9 +15838,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__ = -# 1988 "parser_cocci_menhir.mly" +# 2002 "parser_cocci_menhir.mly" ( _1 ) -# 15842 "parser_cocci_menhir.ml" +# 15844 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15853,9 +15855,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_ = -# 1987 "parser_cocci_menhir.mly" +# 2001 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 15859 "parser_cocci_menhir.ml" +# 15861 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15877,9 +15879,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_ = -# 1988 "parser_cocci_menhir.mly" +# 2002 "parser_cocci_menhir.mly" ( _1 ) -# 15883 "parser_cocci_menhir.ml" +# 15885 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15894,9 +15896,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_ = -# 1987 "parser_cocci_menhir.mly" +# 2001 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 15900 "parser_cocci_menhir.ml" +# 15902 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15918,9 +15920,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_ = -# 1988 "parser_cocci_menhir.mly" +# 2002 "parser_cocci_menhir.mly" ( _1 ) -# 15924 "parser_cocci_menhir.ml" +# 15926 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15942,9 +15944,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_decl_list = -# 804 "parser_cocci_menhir.mly" +# 805 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1 P.mkedots (fun c -> Ast0.EComma c))) ) -# 15948 "parser_cocci_menhir.ml" +# 15950 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15966,9 +15968,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_decl_one = -# 775 "parser_cocci_menhir.mly" +# 776 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 15972 "parser_cocci_menhir.ml" +# 15974 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15998,21 +16000,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_enum_val = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 16004 "parser_cocci_menhir.ml" +# 16006 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_disj_ident = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_enum_decl_one = -# 777 "parser_cocci_menhir.mly" +# 778 "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)) ) -# 16016 "parser_cocci_menhir.ml" +# 16018 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16034,9 +16036,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 784 "parser_cocci_menhir.mly" +# 785 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 16040 "parser_cocci_menhir.ml" +# 16042 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16055,17 +16057,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 16061 "parser_cocci_menhir.ml" +# 16063 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 786 "parser_cocci_menhir.mly" +# 787 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 16069 "parser_cocci_menhir.ml" +# 16071 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16084,16 +16086,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 16090 "parser_cocci_menhir.ml" +# 16092 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 788 "parser_cocci_menhir.mly" +# 789 "parser_cocci_menhir.mly" ( tmeta_to_exp _1 ) -# 16097 "parser_cocci_menhir.ml" +# 16099 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16112,18 +16114,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 16118 "parser_cocci_menhir.ml" +# 16120 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 790 "parser_cocci_menhir.mly" +# 791 "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)) ) -# 16127 "parser_cocci_menhir.ml" +# 16129 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16142,18 +16144,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 16148 "parser_cocci_menhir.ml" +# 16150 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 794 "parser_cocci_menhir.mly" +# 795 "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)) ) -# 16157 "parser_cocci_menhir.ml" +# 16159 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16172,18 +16174,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 16178 "parser_cocci_menhir.ml" +# 16180 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 798 "parser_cocci_menhir.mly" +# 799 "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)) ) -# 16187 "parser_cocci_menhir.ml" +# 16189 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16203,9 +16205,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_exists = -# 313 "parser_cocci_menhir.mly" +# 314 "parser_cocci_menhir.mly" ( Ast.Exists ) -# 16209 "parser_cocci_menhir.ml" +# 16211 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16225,9 +16227,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_exists = -# 314 "parser_cocci_menhir.mly" +# 315 "parser_cocci_menhir.mly" ( Ast.Forall ) -# 16231 "parser_cocci_menhir.ml" +# 16233 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16242,9 +16244,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_exists = -# 315 "parser_cocci_menhir.mly" +# 316 "parser_cocci_menhir.mly" ( Ast.Undetermined ) -# 16248 "parser_cocci_menhir.ml" +# 16250 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16266,9 +16268,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_expr = -# 1405 "parser_cocci_menhir.mly" +# 1408 "parser_cocci_menhir.mly" ( _1 ) -# 16272 "parser_cocci_menhir.ml" +# 16274 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16290,9 +16292,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_r_ in let _endpos = _endpos_r_ in let _v : 'tv_expr_dots_TEllipsis_ = -# 1642 "parser_cocci_menhir.mly" +# 1648 "parser_cocci_menhir.mly" ( r ) -# 16296 "parser_cocci_menhir.ml" +# 16298 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16314,9 +16316,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_m_ in let _endpos = _endpos_m_ in let _v : 'tv_expression_type = -# 569 "parser_cocci_menhir.mly" +# 570 "parser_cocci_menhir.mly" ( P.ty_pointerify Type_cocci.Unknown m ) -# 16320 "parser_cocci_menhir.ml" +# 16322 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16342,9 +16344,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_m_ in let _v : 'tv_expression_type = -# 571 "parser_cocci_menhir.mly" +# 572 "parser_cocci_menhir.mly" ( P.ty_pointerify (Type_cocci.EnumName Type_cocci.NoName) m ) -# 16348 "parser_cocci_menhir.ml" +# 16350 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16370,10 +16372,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_m_ in let _v : 'tv_expression_type = -# 573 "parser_cocci_menhir.mly" +# 574 "parser_cocci_menhir.mly" ( P.ty_pointerify (Type_cocci.StructUnionName (Type_cocci.Struct,Type_cocci.NoName)) m ) -# 16377 "parser_cocci_menhir.ml" +# 16379 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16399,10 +16401,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_m_ in let _v : 'tv_expression_type = -# 576 "parser_cocci_menhir.mly" +# 577 "parser_cocci_menhir.mly" ( P.ty_pointerify (Type_cocci.StructUnionName (Type_cocci.Union,Type_cocci.NoName)) m ) -# 16406 "parser_cocci_menhir.ml" +# 16408 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16417,9 +16419,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_extends = -# 286 "parser_cocci_menhir.mly" +# 287 "parser_cocci_menhir.mly" ( () ) -# 16423 "parser_cocci_menhir.ml" +# 16425 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16444,14 +16446,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let parent : ( # 112 "parser_cocci_menhir.mly" (string) -# 16448 "parser_cocci_menhir.ml" +# 16450 "parser_cocci_menhir.ml" ) = Obj.magic parent in let _startpos = _startpos__1_ in let _endpos = _endpos_parent_ in let _v : 'tv_extends = -# 288 "parser_cocci_menhir.mly" +# 289 "parser_cocci_menhir.mly" ( !Data.install_bindings (parent) ) -# 16455 "parser_cocci_menhir.ml" +# 16457 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16475,23 +16477,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 151 "parser_cocci_menhir.mly" +# 152 "parser_cocci_menhir.mly" (string * Data.clt) -# 16481 "parser_cocci_menhir.ml" +# 16483 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( -# 151 "parser_cocci_menhir.mly" +# 152 "parser_cocci_menhir.mly" (string * Data.clt) -# 16486 "parser_cocci_menhir.ml" +# 16488 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_filespec = -# 841 "parser_cocci_menhir.mly" +# 842 "parser_cocci_menhir.mly" ( [Ast0.wrap (Ast0.FILEINFO(P.id2mcode _1, P.id2mcode _2))] ) -# 16495 "parser_cocci_menhir.ml" +# 16497 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16513,9 +16515,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_fn_ident = -# 1900 "parser_cocci_menhir.mly" +# 1914 "parser_cocci_menhir.mly" ( _1 ) -# 16519 "parser_cocci_menhir.ml" +# 16521 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16534,17 +16536,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 128 "parser_cocci_menhir.mly" +# 129 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 16540 "parser_cocci_menhir.ml" +# 16542 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_fn_ident = -# 1902 "parser_cocci_menhir.mly" +# 1916 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) ) -# 16548 "parser_cocci_menhir.ml" +# 16550 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16563,18 +16565,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 128 "parser_cocci_menhir.mly" +# 129 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 16569 "parser_cocci_menhir.ml" +# 16571 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_fn_ident = -# 1905 "parser_cocci_menhir.mly" +# 1919 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) ) -# 16578 "parser_cocci_menhir.ml" +# 16580 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16589,9 +16591,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 = -# 984 "parser_cocci_menhir.mly" +# 987 "parser_cocci_menhir.mly" ( [] ) -# 16595 "parser_cocci_menhir.ml" +# 16597 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16619,13 +16621,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo = -# 986 "parser_cocci_menhir.mly" +# 989 "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 ) -# 16629 "parser_cocci_menhir.ml" +# 16631 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16653,9 +16655,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_r_ in let _v : 'tv_fninfo = -# 991 "parser_cocci_menhir.mly" +# 994 "parser_cocci_menhir.mly" ( (Ast0.FType(t))::r ) -# 16659 "parser_cocci_menhir.ml" +# 16661 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16682,17 +16684,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 119 "parser_cocci_menhir.mly" (Data.clt) -# 16686 "parser_cocci_menhir.ml" +# 16688 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo = -# 993 "parser_cocci_menhir.mly" +# 996 "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 ) -# 16696 "parser_cocci_menhir.ml" +# 16698 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16719,17 +16721,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 121 "parser_cocci_menhir.mly" (string * Data.clt) -# 16723 "parser_cocci_menhir.ml" +# 16725 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo = -# 998 "parser_cocci_menhir.mly" +# 1001 "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 ) -# 16733 "parser_cocci_menhir.ml" +# 16735 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16744,9 +16746,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 = -# 1004 "parser_cocci_menhir.mly" +# 1007 "parser_cocci_menhir.mly" ( [] ) -# 16750 "parser_cocci_menhir.ml" +# 16752 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16774,13 +16776,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo_nt = -# 1006 "parser_cocci_menhir.mly" +# 1009 "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 ) -# 16784 "parser_cocci_menhir.ml" +# 16786 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16807,17 +16809,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 119 "parser_cocci_menhir.mly" (Data.clt) -# 16811 "parser_cocci_menhir.ml" +# 16813 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo_nt = -# 1012 "parser_cocci_menhir.mly" +# 1015 "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 ) -# 16821 "parser_cocci_menhir.ml" +# 16823 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16844,17 +16846,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 121 "parser_cocci_menhir.mly" (string * Data.clt) -# 16848 "parser_cocci_menhir.ml" +# 16850 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo_nt = -# 1017 "parser_cocci_menhir.mly" +# 1020 "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 ) -# 16858 "parser_cocci_menhir.ml" +# 16860 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16869,9 +16871,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 = -# 2158 "parser_cocci_menhir.mly" +# 2172 "parser_cocci_menhir.mly" ([]) -# 16875 "parser_cocci_menhir.ml" +# 16877 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16897,9 +16899,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots = -# 2159 "parser_cocci_menhir.mly" +# 2173 "parser_cocci_menhir.mly" (_2) -# 16903 "parser_cocci_menhir.ml" +# 16905 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16927,9 +16929,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots = -# 2160 "parser_cocci_menhir.mly" +# 2174 "parser_cocci_menhir.mly" (Ast0.wrap(Ast0.Exp(_1))::_2) -# 16933 "parser_cocci_menhir.ml" +# 16935 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16957,9 +16959,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots = -# 2161 "parser_cocci_menhir.mly" +# 2175 "parser_cocci_menhir.mly" (_1@_2) -# 16963 "parser_cocci_menhir.ml" +# 16965 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16974,9 +16976,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 = -# 2168 "parser_cocci_menhir.mly" +# 2182 "parser_cocci_menhir.mly" ([]) -# 16980 "parser_cocci_menhir.ml" +# 16982 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17002,9 +17004,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots_or = -# 2169 "parser_cocci_menhir.mly" +# 2183 "parser_cocci_menhir.mly" (_2) -# 17008 "parser_cocci_menhir.ml" +# 17010 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17032,9 +17034,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots_or = -# 2170 "parser_cocci_menhir.mly" +# 2184 "parser_cocci_menhir.mly" (Ast0.wrap(Ast0.Exp(_1))::_2) -# 17038 "parser_cocci_menhir.ml" +# 17040 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17062,9 +17064,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots_or = -# 2171 "parser_cocci_menhir.mly" +# 2185 "parser_cocci_menhir.mly" (_1@_2) -# 17068 "parser_cocci_menhir.ml" +# 17070 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17092,9 +17094,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_exp = -# 2164 "parser_cocci_menhir.mly" +# 2178 "parser_cocci_menhir.mly" (_1::_2) -# 17098 "parser_cocci_menhir.ml" +# 17100 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17109,9 +17111,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 = -# 2174 "parser_cocci_menhir.mly" +# 2188 "parser_cocci_menhir.mly" ([]) -# 17115 "parser_cocci_menhir.ml" +# 17117 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17139,9 +17141,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_exp_or = -# 2175 "parser_cocci_menhir.mly" +# 2189 "parser_cocci_menhir.mly" (_1::_2) -# 17145 "parser_cocci_menhir.ml" +# 17147 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17156,9 +17158,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 = -# 2153 "parser_cocci_menhir.mly" +# 2167 "parser_cocci_menhir.mly" ([]) -# 17162 "parser_cocci_menhir.ml" +# 17164 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17186,9 +17188,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_stm = -# 2154 "parser_cocci_menhir.mly" +# 2168 "parser_cocci_menhir.mly" (_1::_2) -# 17192 "parser_cocci_menhir.ml" +# 17194 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17216,9 +17218,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_stm = -# 2155 "parser_cocci_menhir.mly" +# 2169 "parser_cocci_menhir.mly" (_1@_2) -# 17222 "parser_cocci_menhir.ml" +# 17224 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17240,9 +17242,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_fun_start = -# 2150 "parser_cocci_menhir.mly" +# 2164 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1)) ) -# 17246 "parser_cocci_menhir.ml" +# 17248 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17264,9 +17266,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_func_ident = -# 1891 "parser_cocci_menhir.mly" - ( _1 ) -# 17270 "parser_cocci_menhir.ml" +# 1905 "parser_cocci_menhir.mly" + ( _1 ) +# 17272 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17285,17 +17287,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 128 "parser_cocci_menhir.mly" +# 129 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 17291 "parser_cocci_menhir.ml" +# 17293 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_func_ident = -# 1893 "parser_cocci_menhir.mly" +# 1907 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) ) -# 17299 "parser_cocci_menhir.ml" +# 17301 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17314,18 +17316,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 128 "parser_cocci_menhir.mly" +# 129 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 17320 "parser_cocci_menhir.ml" +# 17322 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_func_ident = -# 1896 "parser_cocci_menhir.mly" +# 1910 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) ) -# 17329 "parser_cocci_menhir.ml" +# 17331 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17383,33 +17385,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rb : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 17389 "parser_cocci_menhir.ml" +# 17391 "parser_cocci_menhir.ml" ) = Obj.magic rb in let b : 'tv_fun_start = Obj.magic b in let lb : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 17395 "parser_cocci_menhir.ml" +# 17397 "parser_cocci_menhir.ml" ) = Obj.magic lb in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 17400 "parser_cocci_menhir.ml" +# 17402 "parser_cocci_menhir.ml" ) = Obj.magic rp in let d : 'tv_decl_list_decl_ = Obj.magic d in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 17406 "parser_cocci_menhir.ml" +# 17408 "parser_cocci_menhir.ml" ) = Obj.magic lp in let i : 'tv_fn_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 = -# 975 "parser_cocci_menhir.mly" +# 978 "parser_cocci_menhir.mly" ( P.verify_parameter_declarations (Ast0.undots d); Ast0.wrap(Ast0.FunDecl((Ast0.default_info(),Ast0.context_befaft()), f, i, @@ -17417,7 +17419,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.clt2mcode ")" rp, P.clt2mcode "{" lb, b, P.clt2mcode "}" rb)) ) -# 17421 "parser_cocci_menhir.ml" +# 17423 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17461,20 +17463,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pt : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 17467 "parser_cocci_menhir.ml" +# 17469 "parser_cocci_menhir.ml" ) = Obj.magic pt in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 17472 "parser_cocci_menhir.ml" +# 17474 "parser_cocci_menhir.ml" ) = Obj.magic rp in let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 17478 "parser_cocci_menhir.ml" +# 17480 "parser_cocci_menhir.ml" ) = Obj.magic lp in let id : 'tv_fn_ident = Obj.magic id in let t : 'tv_ctype = Obj.magic t in @@ -17484,11 +17486,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 17488 "parser_cocci_menhir.ml" +# 17490 "parser_cocci_menhir.ml" in -# 963 "parser_cocci_menhir.mly" +# 966 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.UnInit (s, @@ -17496,7 +17498,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct (Ast0.FunctionType(Some t, P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)), id, P.clt2mcode ";" pt)) ) -# 17500 "parser_cocci_menhir.ml" +# 17502 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17545,20 +17547,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pt : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 17551 "parser_cocci_menhir.ml" +# 17553 "parser_cocci_menhir.ml" ) = Obj.magic pt in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 17556 "parser_cocci_menhir.ml" +# 17558 "parser_cocci_menhir.ml" ) = Obj.magic rp in let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 17562 "parser_cocci_menhir.ml" +# 17564 "parser_cocci_menhir.ml" ) = Obj.magic lp in let id : 'tv_fn_ident = Obj.magic id in let t : 'tv_ctype = Obj.magic t in @@ -17570,11 +17572,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 17574 "parser_cocci_menhir.ml" +# 17576 "parser_cocci_menhir.ml" in -# 963 "parser_cocci_menhir.mly" +# 966 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.UnInit (s, @@ -17582,7 +17584,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct (Ast0.FunctionType(Some t, P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)), id, P.clt2mcode ";" pt)) ) -# 17586 "parser_cocci_menhir.ml" +# 17588 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17604,9 +17606,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_ident = -# 1910 "parser_cocci_menhir.mly" +# 1924 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) ) -# 17610 "parser_cocci_menhir.ml" +# 17612 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17626,16 +17628,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _1 : ( # 128 "parser_cocci_menhir.mly" - (Parse_aux.idinfo) -# 17631 "parser_cocci_menhir.ml" + (Parse_aux.midinfo) +# 17633 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_ident = -# 1912 "parser_cocci_menhir.mly" - ( let (nm,constraints,pure,clt) = _1 in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) ) -# 17639 "parser_cocci_menhir.ml" +# 1926 "parser_cocci_menhir.mly" + ( let (nm,constraints,seed,pure,clt) = _1 in + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) ) +# 17641 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17657,9 +17659,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_i_ in let _endpos = _endpos_i_ in let _v : 'tv_ident_or_const = -# 1865 "parser_cocci_menhir.mly" +# 1878 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))) ) -# 17663 "parser_cocci_menhir.ml" +# 17665 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17678,17 +17680,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 17684 "parser_cocci_menhir.ml" +# 17686 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_ident_or_const = -# 1867 "parser_cocci_menhir.mly" +# 1880 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 17692 "parser_cocci_menhir.ml" +# 17694 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17707,16 +17709,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 148 "parser_cocci_menhir.mly" +# 149 "parser_cocci_menhir.mly" (string * Data.clt) -# 17713 "parser_cocci_menhir.ml" +# 17715 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_incl = -# 326 "parser_cocci_menhir.mly" +# 327 "parser_cocci_menhir.mly" ( let (x,_) = _1 in Data.Include(x) ) -# 17720 "parser_cocci_menhir.ml" +# 17722 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17739,16 +17741,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 17745 "parser_cocci_menhir.ml" +# 17747 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_incl = -# 327 "parser_cocci_menhir.mly" +# 328 "parser_cocci_menhir.mly" ( Data.Iso(Common.Left(P.id2name _2)) ) -# 17752 "parser_cocci_menhir.ml" +# 17754 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17771,16 +17773,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 147 "parser_cocci_menhir.mly" +# 148 "parser_cocci_menhir.mly" (string) -# 17777 "parser_cocci_menhir.ml" +# 17779 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_incl = -# 328 "parser_cocci_menhir.mly" +# 329 "parser_cocci_menhir.mly" ( Data.Iso(Common.Right _2) ) -# 17784 "parser_cocci_menhir.ml" +# 17786 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17806,7 +17808,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_incl = -# 330 "parser_cocci_menhir.mly" +# 331 "parser_cocci_menhir.mly" ( let names = List.map P.id2name _2 in Iteration.parsed_virtual_rules := Common.union_set names !Iteration.parsed_virtual_rules; @@ -17815,7 +17817,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct (function name -> Hashtbl.add Data.all_metadecls name []) names; Data.Virt(names) ) -# 17819 "parser_cocci_menhir.ml" +# 17821 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17841,13 +17843,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 216 "parser_cocci_menhir.mly" +# 217 "parser_cocci_menhir.mly" (Data.incl_iso list) -# 17847 "parser_cocci_menhir.ml" +# 17849 "parser_cocci_menhir.ml" ) = -# 322 "parser_cocci_menhir.mly" +# 323 "parser_cocci_menhir.mly" ( _1 ) -# 17851 "parser_cocci_menhir.ml" +# 17853 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17873,13 +17875,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 216 "parser_cocci_menhir.mly" +# 217 "parser_cocci_menhir.mly" (Data.incl_iso list) -# 17879 "parser_cocci_menhir.ml" +# 17881 "parser_cocci_menhir.ml" ) = -# 323 "parser_cocci_menhir.mly" +# 324 "parser_cocci_menhir.mly" ( _1 ) -# 17883 "parser_cocci_menhir.ml" +# 17885 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17898,14 +17900,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 148 "parser_cocci_menhir.mly" +# 149 "parser_cocci_menhir.mly" (string * Data.clt) -# 17904 "parser_cocci_menhir.ml" +# 17906 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_includes = -# 847 "parser_cocci_menhir.mly" +# 848 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Include(P.clt2mcode "#include" (P.drop_pos (P.drop_aft (P.id2clt _1))), @@ -17916,7 +17918,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.clt2mcode (Ast.Local (Parse_aux.str2inc (P.id2name _1))) (P.drop_bef clt))) ) -# 17920 "parser_cocci_menhir.ml" +# 17922 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17935,14 +17937,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 148 "parser_cocci_menhir.mly" +# 149 "parser_cocci_menhir.mly" (string * Data.clt) -# 17941 "parser_cocci_menhir.ml" +# 17943 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_includes = -# 858 "parser_cocci_menhir.mly" +# 859 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Include(P.clt2mcode "#include" (P.drop_pos (P.drop_aft (P.id2clt _1))), @@ -17953,7 +17955,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.clt2mcode (Ast.NonLocal (Parse_aux.str2inc (P.id2name _1))) (P.drop_bef clt))) ) -# 17957 "parser_cocci_menhir.ml" +# 17959 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17976,23 +17978,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _1 : ( -# 149 "parser_cocci_menhir.mly" +# 150 "parser_cocci_menhir.mly" (Data.clt * token) -# 17982 "parser_cocci_menhir.ml" +# 17984 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_includes = -# 869 "parser_cocci_menhir.mly" +# 870 "parser_cocci_menhir.mly" ( let (clt,ident) = _1 in let aft = P.get_aft clt in (* move stuff after the define to the ident *) Ast0.wrap (Ast0.Undef (P.clt2mcode "#undef" (P.drop_aft clt), (match ident with - TMetaId((nm,constraints,pure,clt)) -> + TMetaId((nm,constraints,seed,pure,clt)) -> let clt = P.set_aft aft clt in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) | TIdent((nm,clt)) -> let clt = P.set_aft aft clt in Ast0.wrap(Ast0.Id(P.clt2mcode nm clt)) @@ -18000,7 +18002,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct raise (Semantic_cocci.Semantic "unexpected name for a #define")))) ) -# 18004 "parser_cocci_menhir.ml" +# 18006 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18026,9 +18028,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_d_ in let _endpos = _endpos__2_ in let _v : 'tv_includes = -# 886 "parser_cocci_menhir.mly" +# 887 "parser_cocci_menhir.mly" ( d (Ast0.wrap(Ast0.DOTS([]))) ) -# 18032 "parser_cocci_menhir.ml" +# 18034 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18060,10 +18062,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_d_ in let _endpos = _endpos__3_ in let _v : 'tv_includes = -# 888 "parser_cocci_menhir.mly" +# 889 "parser_cocci_menhir.mly" ( let ty = Ast0.wrap(Ast0.TopExp(Ast0.wrap(Ast0.TypeExp(t)))) in d (Ast0.wrap(Ast0.DOTS([ty]))) ) -# 18067 "parser_cocci_menhir.ml" +# 18069 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18095,7 +18097,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_includes = -# 891 "parser_cocci_menhir.mly" +# 892 "parser_cocci_menhir.mly" ( let body = match b with [e] -> @@ -18105,7 +18107,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct | _ -> b) | _ -> b in _1 (Ast0.wrap(Ast0.DOTS(body))) ) -# 18109 "parser_cocci_menhir.ml" +# 18111 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18127,9 +18129,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize = -# 1283 "parser_cocci_menhir.mly" +# 1286 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.InitExpr(_1)) ) -# 18133 "parser_cocci_menhir.ml" +# 18135 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18158,27 +18160,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 18164 "parser_cocci_menhir.ml" +# 18166 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_initialize_list = Obj.magic _2 in let _1 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 18170 "parser_cocci_menhir.ml" +# 18172 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_initialize = -# 1285 "parser_cocci_menhir.mly" +# 1288 "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)) ) -# 18182 "parser_cocci_menhir.ml" +# 18184 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18197,17 +18199,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 18203 "parser_cocci_menhir.ml" +# 18205 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize = -# 1292 "parser_cocci_menhir.mly" +# 1295 "parser_cocci_menhir.mly" (let (nm,pure,clt) = _1 in Ast0.wrap(Ast0.MetaInit(P.clt2mcode nm clt,pure)) ) -# 18211 "parser_cocci_menhir.ml" +# 18213 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18229,9 +18231,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize2 = -# 1298 "parser_cocci_menhir.mly" +# 1301 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.InitExpr(_1)) ) -# 18235 "parser_cocci_menhir.ml" +# 18237 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18260,27 +18262,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 18266 "parser_cocci_menhir.ml" +# 18268 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_initialize_list = Obj.magic _2 in let _1 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 18272 "parser_cocci_menhir.ml" +# 18274 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_initialize2 = -# 1300 "parser_cocci_menhir.mly" +# 1303 "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)) ) -# 18284 "parser_cocci_menhir.ml" +# 18286 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18310,17 +18312,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_initialize2 = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 18316 "parser_cocci_menhir.ml" +# 18318 "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 = -# 1308 "parser_cocci_menhir.mly" +# 1311 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.InitGccExt(_1,P.clt2mcode "=" _2,_3)) ) -# 18324 "parser_cocci_menhir.ml" +# 18326 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18350,17 +18352,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_initialize2 = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 18356 "parser_cocci_menhir.ml" +# 18358 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_mident = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_initialize2 = -# 1310 "parser_cocci_menhir.mly" +# 1313 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.InitGccName(_1,P.clt2mcode ":" _2,_3)) ) -# 18364 "parser_cocci_menhir.ml" +# 18366 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18379,17 +18381,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 18385 "parser_cocci_menhir.ml" +# 18387 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize2 = -# 1312 "parser_cocci_menhir.mly" +# 1315 "parser_cocci_menhir.mly" (let (nm,pure,clt) = _1 in Ast0.wrap(Ast0.MetaInit(P.clt2mcode nm clt,pure)) ) -# 18393 "parser_cocci_menhir.ml" +# 18395 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18408,14 +18410,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 133 "parser_cocci_menhir.mly" +# 134 "parser_cocci_menhir.mly" (Parse_aux.list_info) -# 18414 "parser_cocci_menhir.ml" +# 18416 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize2 = -# 1315 "parser_cocci_menhir.mly" +# 1318 "parser_cocci_menhir.mly" (let (nm,lenname,pure,clt) = _1 in let nm = P.clt2mcode nm clt in let lenname = @@ -18424,7 +18426,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.MetaInitList(nm,lenname,pure)) ) -# 18428 "parser_cocci_menhir.ml" +# 18430 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18446,9 +18448,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize_list = -# 1335 "parser_cocci_menhir.mly" +# 1338 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1 P.mkidots (fun c -> Ast0.IComma c))) ) -# 18452 "parser_cocci_menhir.ml" +# 18454 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18468,9 +18470,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_invalid = -# 1415 "parser_cocci_menhir.mly" +# 1418 "parser_cocci_menhir.mly" ( raise (Semantic_cocci.Semantic "not matchable") ) -# 18474 "parser_cocci_menhir.ml" +# 18476 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18485,9 +18487,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_is_expression = -# 318 "parser_cocci_menhir.mly" +# 319 "parser_cocci_menhir.mly" ( false ) -# 18491 "parser_cocci_menhir.ml" +# 18493 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18507,9 +18509,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_is_expression = -# 319 "parser_cocci_menhir.mly" +# 320 "parser_cocci_menhir.mly" ( true ) -# 18513 "parser_cocci_menhir.ml" +# 18515 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18535,9 +18537,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_ctype_ = -# 2301 "parser_cocci_menhir.mly" +# 2315 "parser_cocci_menhir.mly" ( Common.Left t ) -# 18541 "parser_cocci_menhir.ml" +# 18543 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18563,9 +18565,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_ctype_ = -# 2302 "parser_cocci_menhir.mly" +# 2316 "parser_cocci_menhir.mly" ( Common.Right t ) -# 18569 "parser_cocci_menhir.ml" +# 18571 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18591,9 +18593,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_decl_var_ = -# 2301 "parser_cocci_menhir.mly" +# 2315 "parser_cocci_menhir.mly" ( Common.Left t ) -# 18597 "parser_cocci_menhir.ml" +# 18599 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18619,9 +18621,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_decl_var_ = -# 2302 "parser_cocci_menhir.mly" +# 2316 "parser_cocci_menhir.mly" ( Common.Right t ) -# 18625 "parser_cocci_menhir.ml" +# 18627 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18647,9 +18649,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_eexpr_ = -# 2301 "parser_cocci_menhir.mly" +# 2315 "parser_cocci_menhir.mly" ( Common.Left t ) -# 18653 "parser_cocci_menhir.ml" +# 18655 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18675,9 +18677,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_eexpr_ = -# 2302 "parser_cocci_menhir.mly" +# 2316 "parser_cocci_menhir.mly" ( Common.Right t ) -# 18681 "parser_cocci_menhir.ml" +# 18683 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18703,9 +18705,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_nest_start_ = -# 2301 "parser_cocci_menhir.mly" +# 2315 "parser_cocci_menhir.mly" ( Common.Left t ) -# 18709 "parser_cocci_menhir.ml" +# 18711 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18731,9 +18733,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_nest_start_ = -# 2302 "parser_cocci_menhir.mly" +# 2316 "parser_cocci_menhir.mly" ( Common.Right t ) -# 18737 "parser_cocci_menhir.ml" +# 18739 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18759,9 +18761,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_single_statement_ = -# 2301 "parser_cocci_menhir.mly" +# 2315 "parser_cocci_menhir.mly" ( Common.Left t ) -# 18765 "parser_cocci_menhir.ml" +# 18767 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18787,9 +18789,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_single_statement_ = -# 2302 "parser_cocci_menhir.mly" +# 2316 "parser_cocci_menhir.mly" ( Common.Right t ) -# 18793 "parser_cocci_menhir.ml" +# 18795 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18825,13 +18827,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 232 "parser_cocci_menhir.mly" +# 233 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 18831 "parser_cocci_menhir.ml" +# 18833 "parser_cocci_menhir.ml" ) = -# 2269 "parser_cocci_menhir.mly" +# 2283 "parser_cocci_menhir.mly" ( let fn x = Ast0.ExprTag x in P.iso_adjust fn fn e1 el ) -# 18835 "parser_cocci_menhir.ml" +# 18837 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18867,13 +18869,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 232 "parser_cocci_menhir.mly" +# 233 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 18873 "parser_cocci_menhir.ml" +# 18875 "parser_cocci_menhir.ml" ) = -# 2271 "parser_cocci_menhir.mly" +# 2285 "parser_cocci_menhir.mly" ( let fn x = Ast0.ArgExprTag x in P.iso_adjust fn fn e1 el ) -# 18877 "parser_cocci_menhir.ml" +# 18879 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18909,13 +18911,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 232 "parser_cocci_menhir.mly" +# 233 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 18915 "parser_cocci_menhir.ml" +# 18917 "parser_cocci_menhir.ml" ) = -# 2273 "parser_cocci_menhir.mly" +# 2287 "parser_cocci_menhir.mly" ( let fn x = Ast0.TestExprTag x in P.iso_adjust fn fn e1 el ) -# 18919 "parser_cocci_menhir.ml" +# 18921 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18951,15 +18953,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 232 "parser_cocci_menhir.mly" +# 233 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 18957 "parser_cocci_menhir.ml" +# 18959 "parser_cocci_menhir.ml" ) = -# 2275 "parser_cocci_menhir.mly" +# 2289 "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 ) -# 18963 "parser_cocci_menhir.ml" +# 18965 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18995,13 +18997,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 232 "parser_cocci_menhir.mly" +# 233 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 19001 "parser_cocci_menhir.ml" +# 19003 "parser_cocci_menhir.ml" ) = -# 2279 "parser_cocci_menhir.mly" +# 2293 "parser_cocci_menhir.mly" ( let fn x = Ast0.StmtTag x in P.iso_adjust fn fn s1 sl ) -# 19005 "parser_cocci_menhir.ml" +# 19007 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19037,13 +19039,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 232 "parser_cocci_menhir.mly" +# 233 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 19043 "parser_cocci_menhir.ml" +# 19045 "parser_cocci_menhir.ml" ) = -# 2281 "parser_cocci_menhir.mly" +# 2295 "parser_cocci_menhir.mly" ( let fn x = Ast0.TypeCTag x in P.iso_adjust fn fn t1 tl ) -# 19047 "parser_cocci_menhir.ml" +# 19049 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19079,13 +19081,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 232 "parser_cocci_menhir.mly" +# 233 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 19085 "parser_cocci_menhir.ml" +# 19087 "parser_cocci_menhir.ml" ) = -# 2283 "parser_cocci_menhir.mly" +# 2297 "parser_cocci_menhir.mly" ( let fn x = Ast0.DotsStmtTag x in P.iso_adjust fn fn e1 el ) -# 19089 "parser_cocci_menhir.ml" +# 19091 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19121,11 +19123,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 232 "parser_cocci_menhir.mly" +# 233 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 19127 "parser_cocci_menhir.ml" +# 19129 "parser_cocci_menhir.ml" ) = -# 2285 "parser_cocci_menhir.mly" +# 2299 "parser_cocci_menhir.mly" ( let check_one = function [x] -> x | _ -> @@ -19140,7 +19142,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 ) -# 19144 "parser_cocci_menhir.ml" +# 19146 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19162,13 +19164,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_m_ in let _endpos = _endpos_m_ in let _v : ( -# 235 "parser_cocci_menhir.mly" +# 236 "parser_cocci_menhir.mly" ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list) -# 19168 "parser_cocci_menhir.ml" +# 19170 "parser_cocci_menhir.ml" ) = -# 252 "parser_cocci_menhir.mly" +# 253 "parser_cocci_menhir.mly" ( m "" ) -# 19172 "parser_cocci_menhir.ml" +# 19174 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19194,13 +19196,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_nm_ in let _endpos = _endpos__2_ in let _v : ( -# 219 "parser_cocci_menhir.mly" +# 220 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 19200 "parser_cocci_menhir.ml" +# 19202 "parser_cocci_menhir.ml" ) = -# 267 "parser_cocci_menhir.mly" +# 268 "parser_cocci_menhir.mly" ( P.make_iso_rule_name_result (P.id2name nm) ) -# 19204 "parser_cocci_menhir.ml" +# 19206 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19221,14 +19223,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 19225 "parser_cocci_menhir.ml" +# 19227 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_iter_ident = -# 1942 "parser_cocci_menhir.mly" +# 1956 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) ) -# 19232 "parser_cocci_menhir.ml" +# 19234 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19247,17 +19249,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 129 "parser_cocci_menhir.mly" +# 130 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 19253 "parser_cocci_menhir.ml" +# 19255 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_iter_ident = -# 1944 "parser_cocci_menhir.mly" +# 1958 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) ) -# 19261 "parser_cocci_menhir.ml" + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,Ast.NoVal,pure)) ) +# 19263 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19274,7 +19276,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_TMul_ = # 114 "standard.mly" ( [] ) -# 19278 "parser_cocci_menhir.ml" +# 19280 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19299,16 +19301,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let xs : 'tv_list_TMul_ = Obj.magic xs in let x : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 19305 "parser_cocci_menhir.ml" +# 19307 "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 ) -# 19312 "parser_cocci_menhir.ml" +# 19314 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19325,7 +19327,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_array_dec_ = # 114 "standard.mly" ( [] ) -# 19329 "parser_cocci_menhir.ml" +# 19331 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19355,7 +19357,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_array_dec_ = # 116 "standard.mly" ( x :: xs ) -# 19359 "parser_cocci_menhir.ml" +# 19361 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19372,7 +19374,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_case_line_ = # 114 "standard.mly" ( [] ) -# 19376 "parser_cocci_menhir.ml" +# 19378 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19402,7 +19404,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_case_line_ = # 116 "standard.mly" ( x :: xs ) -# 19406 "parser_cocci_menhir.ml" +# 19408 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19419,7 +19421,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_decl_var_ = # 114 "standard.mly" ( [] ) -# 19423 "parser_cocci_menhir.ml" +# 19425 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19449,7 +19451,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_decl_var_ = # 116 "standard.mly" ( x :: xs ) -# 19453 "parser_cocci_menhir.ml" +# 19455 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19466,7 +19468,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_designator_ = # 114 "standard.mly" ( [] ) -# 19470 "parser_cocci_menhir.ml" +# 19472 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19496,7 +19498,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_designator_ = # 116 "standard.mly" ( x :: xs ) -# 19500 "parser_cocci_menhir.ml" +# 19502 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19513,7 +19515,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_incl_ = # 114 "standard.mly" ( [] ) -# 19517 "parser_cocci_menhir.ml" +# 19519 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19543,7 +19545,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_incl_ = # 116 "standard.mly" ( x :: xs ) -# 19547 "parser_cocci_menhir.ml" +# 19549 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19560,7 +19562,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_ctype__ = # 114 "standard.mly" ( [] ) -# 19564 "parser_cocci_menhir.ml" +# 19566 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19590,7 +19592,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_ctype__ = # 116 "standard.mly" ( x :: xs ) -# 19594 "parser_cocci_menhir.ml" +# 19596 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19607,7 +19609,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_decl_var__ = # 114 "standard.mly" ( [] ) -# 19611 "parser_cocci_menhir.ml" +# 19613 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19637,7 +19639,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_decl_var__ = # 116 "standard.mly" ( x :: xs ) -# 19641 "parser_cocci_menhir.ml" +# 19643 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19654,7 +19656,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_eexpr__ = # 114 "standard.mly" ( [] ) -# 19658 "parser_cocci_menhir.ml" +# 19660 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19684,7 +19686,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_eexpr__ = # 116 "standard.mly" ( x :: xs ) -# 19688 "parser_cocci_menhir.ml" +# 19690 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19701,7 +19703,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_nest_start__ = # 114 "standard.mly" ( [] ) -# 19705 "parser_cocci_menhir.ml" +# 19707 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19731,7 +19733,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_nest_start__ = # 116 "standard.mly" ( x :: xs ) -# 19735 "parser_cocci_menhir.ml" +# 19737 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19748,7 +19750,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_single_statement__ = # 114 "standard.mly" ( [] ) -# 19752 "parser_cocci_menhir.ml" +# 19754 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19778,7 +19780,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_single_statement__ = # 116 "standard.mly" ( x :: xs ) -# 19782 "parser_cocci_menhir.ml" +# 19784 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19795,7 +19797,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_ctype__ = # 114 "standard.mly" ( [] ) -# 19799 "parser_cocci_menhir.ml" +# 19801 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19825,7 +19827,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_ctype__ = # 116 "standard.mly" ( x :: xs ) -# 19829 "parser_cocci_menhir.ml" +# 19831 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19842,7 +19844,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_disj_ident__ = # 114 "standard.mly" ( [] ) -# 19846 "parser_cocci_menhir.ml" +# 19848 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19872,7 +19874,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_disj_ident__ = # 116 "standard.mly" ( x :: xs ) -# 19876 "parser_cocci_menhir.ml" +# 19878 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19889,7 +19891,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_eexpr__ = # 114 "standard.mly" ( [] ) -# 19893 "parser_cocci_menhir.ml" +# 19895 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19919,7 +19921,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_eexpr__ = # 116 "standard.mly" ( x :: xs ) -# 19923 "parser_cocci_menhir.ml" +# 19925 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19936,7 +19938,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_fun_after_dots_or__ = # 114 "standard.mly" ( [] ) -# 19940 "parser_cocci_menhir.ml" +# 19942 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19966,7 +19968,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_fun_after_dots_or__ = # 116 "standard.mly" ( x :: xs ) -# 19970 "parser_cocci_menhir.ml" +# 19972 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19983,7 +19985,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_fun_start__ = # 114 "standard.mly" ( [] ) -# 19987 "parser_cocci_menhir.ml" +# 19989 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20013,7 +20015,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_fun_start__ = # 116 "standard.mly" ( x :: xs ) -# 20017 "parser_cocci_menhir.ml" +# 20019 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20030,7 +20032,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_mctype__ = # 114 "standard.mly" ( [] ) -# 20034 "parser_cocci_menhir.ml" +# 20036 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20060,7 +20062,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_mctype__ = # 116 "standard.mly" ( x :: xs ) -# 20064 "parser_cocci_menhir.ml" +# 20066 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20077,7 +20079,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_rule_elem_statement__ = # 114 "standard.mly" ( [] ) -# 20081 "parser_cocci_menhir.ml" +# 20083 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20107,7 +20109,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_rule_elem_statement__ = # 116 "standard.mly" ( x :: xs ) -# 20111 "parser_cocci_menhir.ml" +# 20113 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20124,7 +20126,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_statement__ = # 114 "standard.mly" ( [] ) -# 20128 "parser_cocci_menhir.ml" +# 20130 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20154,7 +20156,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_statement__ = # 116 "standard.mly" ( x :: xs ) -# 20158 "parser_cocci_menhir.ml" +# 20160 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20171,7 +20173,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = # 114 "standard.mly" ( [] ) -# 20175 "parser_cocci_menhir.ml" +# 20177 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20210,13 +20212,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 70 "standard.mly" ( (x, y) ) -# 20214 "parser_cocci_menhir.ml" +# 20216 "parser_cocci_menhir.ml" in # 116 "standard.mly" ( x :: xs ) -# 20220 "parser_cocci_menhir.ml" +# 20222 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20233,7 +20235,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_whenppdecs_ = # 114 "standard.mly" ( [] ) -# 20237 "parser_cocci_menhir.ml" +# 20239 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20263,7 +20265,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_whenppdecs_ = # 116 "standard.mly" ( x :: xs ) -# 20267 "parser_cocci_menhir.ml" +# 20269 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20285,9 +20287,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_list_len = -# 417 "parser_cocci_menhir.mly" +# 418 "parser_cocci_menhir.mly" ( Common.Left _1 ) -# 20291 "parser_cocci_menhir.ml" +# 20293 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20306,16 +20308,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 20312 "parser_cocci_menhir.ml" +# 20314 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_list_len = -# 418 "parser_cocci_menhir.mly" +# 419 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Common.Right (int_of_string x) ) -# 20319 "parser_cocci_menhir.ml" +# 20321 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20332,7 +20334,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_choose_iso_ = # 57 "standard.mly" ( [] ) -# 20336 "parser_cocci_menhir.ml" +# 20338 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20356,7 +20358,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_choose_iso_ = # 59 "standard.mly" ( x ) -# 20360 "parser_cocci_menhir.ml" +# 20362 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20373,7 +20375,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_disable_ = # 57 "standard.mly" ( [] ) -# 20377 "parser_cocci_menhir.ml" +# 20379 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20397,7 +20399,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_disable_ = # 59 "standard.mly" ( x ) -# 20401 "parser_cocci_menhir.ml" +# 20403 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20414,7 +20416,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_filespec_ = # 57 "standard.mly" ( [] ) -# 20418 "parser_cocci_menhir.ml" +# 20420 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20438,7 +20440,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_filespec_ = # 59 "standard.mly" ( x ) -# 20442 "parser_cocci_menhir.ml" +# 20444 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20455,7 +20457,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_minus_start_ = # 57 "standard.mly" ( [] ) -# 20459 "parser_cocci_menhir.ml" +# 20461 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20479,7 +20481,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_minus_start_ = # 59 "standard.mly" ( x ) -# 20483 "parser_cocci_menhir.ml" +# 20485 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20496,7 +20498,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_not_pos_ = # 57 "standard.mly" ( [] ) -# 20500 "parser_cocci_menhir.ml" +# 20502 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20520,7 +20522,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_not_pos_ = # 59 "standard.mly" ( x ) -# 20524 "parser_cocci_menhir.ml" +# 20526 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20537,7 +20539,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_plus_start_ = # 57 "standard.mly" ( [] ) -# 20541 "parser_cocci_menhir.ml" +# 20543 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20561,7 +20563,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_plus_start_ = # 59 "standard.mly" ( x ) -# 20565 "parser_cocci_menhir.ml" +# 20567 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20580,16 +20582,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 20586 "parser_cocci_menhir.ml" +# 20588 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_mctype = -# 712 "parser_cocci_menhir.mly" +# 713 "parser_cocci_menhir.mly" ( tmeta_to_type _1 ) -# 20593 "parser_cocci_menhir.ml" +# 20595 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20611,9 +20613,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_mctype = -# 713 "parser_cocci_menhir.mly" +# 714 "parser_cocci_menhir.mly" (_1) -# 20617 "parser_cocci_menhir.ml" +# 20619 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20635,9 +20637,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_t_ in let _v : 'tv_meta_exp_type = -# 612 "parser_cocci_menhir.mly" +# 613 "parser_cocci_menhir.mly" ( [Ast0_cocci.ast0_type_to_type t] ) -# 20641 "parser_cocci_menhir.ml" +# 20643 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20667,9 +20669,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos__3_ in let _v : 'tv_meta_exp_type = -# 614 "parser_cocci_menhir.mly" +# 615 "parser_cocci_menhir.mly" ( [Type_cocci.Array (Ast0_cocci.ast0_type_to_type t)] ) -# 20673 "parser_cocci_menhir.ml" +# 20675 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20705,11 +20707,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_m_ in let _v : 'tv_meta_exp_type = -# 616 "parser_cocci_menhir.mly" +# 617 "parser_cocci_menhir.mly" ( List.map (function x -> P.ty_pointerify (Ast0_cocci.ast0_type_to_type x) m) t ) -# 20713 "parser_cocci_menhir.ml" +# 20715 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20740,14 +20742,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 112 "parser_cocci_menhir.mly" (string) -# 20744 "parser_cocci_menhir.ml" +# 20746 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_meta_ident = -# 1680 "parser_cocci_menhir.mly" +# 1686 "parser_cocci_menhir.mly" ( (Some _1,P.id2name _3) ) -# 20751 "parser_cocci_menhir.ml" +# 20753 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20778,14 +20780,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 112 "parser_cocci_menhir.mly" (string) -# 20782 "parser_cocci_menhir.ml" +# 20784 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_meta_ident = -# 1681 "parser_cocci_menhir.mly" +# 1687 "parser_cocci_menhir.mly" ( (Some _1,_3) ) -# 20789 "parser_cocci_menhir.ml" +# 20791 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20807,13 +20809,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_m_ in let _endpos = _endpos_m_ in let _v : ( -# 227 "parser_cocci_menhir.mly" +# 228 "parser_cocci_menhir.mly" ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list) -# 20813 "parser_cocci_menhir.ml" +# 20815 "parser_cocci_menhir.ml" ) = -# 251 "parser_cocci_menhir.mly" +# 252 "parser_cocci_menhir.mly" ( m (!Ast0.rule_name) ) -# 20817 "parser_cocci_menhir.ml" +# 20819 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20856,17 +20858,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 429 "parser_cocci_menhir.mly" +# 430 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta -> let tok = check_meta(Ast.MetaMetaDecl(arity,name)) in !Data.add_meta_meta name pure; tok) ) -# 20864 "parser_cocci_menhir.ml" +# 20866 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20870 "parser_cocci_menhir.ml" +# 20872 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20909,17 +20911,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 433 "parser_cocci_menhir.mly" +# 434 "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) ) -# 20917 "parser_cocci_menhir.ml" +# 20919 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20923 "parser_cocci_menhir.ml" +# 20925 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20966,18 +20968,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 437 "parser_cocci_menhir.mly" +# 438 "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) ) -# 20975 "parser_cocci_menhir.ml" +# 20977 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20981 "parser_cocci_menhir.ml" +# 20983 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21024,18 +21026,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 442 "parser_cocci_menhir.mly" +# 443 "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) ) -# 21033 "parser_cocci_menhir.ml" +# 21035 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21039 "parser_cocci_menhir.ml" +# 21041 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21078,17 +21080,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 447 "parser_cocci_menhir.mly" +# 448 "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) ) -# 21086 "parser_cocci_menhir.ml" +# 21088 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21092 "parser_cocci_menhir.ml" +# 21094 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21131,17 +21133,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 451 "parser_cocci_menhir.mly" +# 452 "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) ) -# 21139 "parser_cocci_menhir.ml" +# 21141 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21145 "parser_cocci_menhir.ml" +# 21147 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21188,18 +21190,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 455 "parser_cocci_menhir.mly" +# 456 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta -> let len = Ast.AnyLen in let tok = check_meta(Ast.MetaInitListDecl(arity,name,len)) in !Data.add_initlist_meta name len pure; tok) ) -# 21197 "parser_cocci_menhir.ml" +# 21199 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21203 "parser_cocci_menhir.ml" +# 21205 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21242,17 +21244,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 460 "parser_cocci_menhir.mly" +# 461 "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) ) -# 21250 "parser_cocci_menhir.ml" +# 21252 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21256 "parser_cocci_menhir.ml" +# 21258 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21295,17 +21297,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 464 "parser_cocci_menhir.mly" +# 465 "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) ) -# 21303 "parser_cocci_menhir.ml" +# 21305 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21309 "parser_cocci_menhir.ml" +# 21311 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21348,17 +21350,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 468 "parser_cocci_menhir.mly" +# 469 "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) ) -# 21356 "parser_cocci_menhir.ml" +# 21358 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21362 "parser_cocci_menhir.ml" +# 21364 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21405,18 +21407,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 472 "parser_cocci_menhir.mly" +# 473 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta -> let len = Ast.AnyLen in let tok = check_meta(Ast.MetaFieldListDecl(arity,name,len)) in !Data.add_field_list_meta name len pure; tok) ) -# 21414 "parser_cocci_menhir.ml" +# 21416 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21420 "parser_cocci_menhir.ml" +# 21422 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21463,17 +21465,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 477 "parser_cocci_menhir.mly" +# 478 "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) ) -# 21471 "parser_cocci_menhir.ml" +# 21473 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21477 "parser_cocci_menhir.ml" +# 21479 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21516,18 +21518,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 481 "parser_cocci_menhir.mly" +# 482 "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")) ) -# 21525 "parser_cocci_menhir.ml" +# 21527 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21531 "parser_cocci_menhir.ml" +# 21533 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21574,18 +21576,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 486 "parser_cocci_menhir.mly" +# 487 "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")) ) -# 21583 "parser_cocci_menhir.ml" +# 21585 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21589 "parser_cocci_menhir.ml" +# 21591 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21632,18 +21634,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 491 "parser_cocci_menhir.mly" +# 492 "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")) ) -# 21641 "parser_cocci_menhir.ml" +# 21643 "parser_cocci_menhir.ml" in -# 342 "parser_cocci_menhir.mly" +# 343 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 21647 "parser_cocci_menhir.ml" +# 21649 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21678,17 +21680,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__4_ in let _v : 'tv_metadec = let kindfn = -# 422 "parser_cocci_menhir.mly" +# 423 "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) ) -# 21686 "parser_cocci_menhir.ml" + !Data.add_fresh_id_meta name seed; tok) ) +# 21688 "parser_cocci_menhir.ml" in -# 345 "parser_cocci_menhir.mly" +# 346 "parser_cocci_menhir.mly" ( P.create_fresh_metadec kindfn ids ) -# 21692 "parser_cocci_menhir.ml" +# 21694 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21731,7 +21733,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 498 "parser_cocci_menhir.mly" +# 499 "parser_cocci_menhir.mly" ( let idfn arity name pure check_meta constraints = let tok = check_meta(Ast.MetaIdDecl(arity,name)) in @@ -21748,17 +21750,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let tok = check_meta(Ast.MetaIdDecl(arity,name)) in !Data.add_virt_id_meta_not_found name pure; tok in (idfn,virtfn) ) -# 21752 "parser_cocci_menhir.ml" +# 21754 "parser_cocci_menhir.ml" in -# 351 "parser_cocci_menhir.mly" +# 352 "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) ) -# 21762 "parser_cocci_menhir.ml" +# 21764 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21801,17 +21803,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 517 "parser_cocci_menhir.mly" +# 518 "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) ) -# 21809 "parser_cocci_menhir.ml" +# 21811 "parser_cocci_menhir.ml" in -# 360 "parser_cocci_menhir.mly" +# 361 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 21815 "parser_cocci_menhir.ml" +# 21817 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21858,18 +21860,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 521 "parser_cocci_menhir.mly" +# 522 "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) ) -# 21867 "parser_cocci_menhir.ml" +# 21869 "parser_cocci_menhir.ml" in -# 360 "parser_cocci_menhir.mly" +# 361 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 21873 "parser_cocci_menhir.ml" +# 21875 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21912,17 +21914,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 526 "parser_cocci_menhir.mly" +# 527 "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) ) -# 21920 "parser_cocci_menhir.ml" +# 21922 "parser_cocci_menhir.ml" in -# 360 "parser_cocci_menhir.mly" +# 361 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 21926 "parser_cocci_menhir.ml" +# 21928 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21965,17 +21967,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 530 "parser_cocci_menhir.mly" +# 531 "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) ) -# 21973 "parser_cocci_menhir.ml" +# 21975 "parser_cocci_menhir.ml" in -# 360 "parser_cocci_menhir.mly" +# 361 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 21979 "parser_cocci_menhir.ml" +# 21981 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22018,17 +22020,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 536 "parser_cocci_menhir.mly" +# 537 "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) ) -# 22026 "parser_cocci_menhir.ml" +# 22028 "parser_cocci_menhir.ml" in -# 365 "parser_cocci_menhir.mly" +# 366 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 22032 "parser_cocci_menhir.ml" +# 22034 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22081,11 +22083,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 22085 "parser_cocci_menhir.ml" +# 22087 "parser_cocci_menhir.ml" in -# 540 "parser_cocci_menhir.mly" +# 541 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta constraints -> match l with None -> @@ -22094,13 +22096,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct | Some _ -> !Data.add_local_idexp_meta ty name constraints pure; check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) ) -# 22098 "parser_cocci_menhir.ml" +# 22100 "parser_cocci_menhir.ml" in -# 365 "parser_cocci_menhir.mly" +# 366 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 22104 "parser_cocci_menhir.ml" +# 22106 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22161,11 +22163,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 22165 "parser_cocci_menhir.ml" +# 22167 "parser_cocci_menhir.ml" in -# 540 "parser_cocci_menhir.mly" +# 541 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta constraints -> match l with None -> @@ -22174,13 +22176,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct | Some _ -> !Data.add_local_idexp_meta ty name constraints pure; check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) ) -# 22178 "parser_cocci_menhir.ml" +# 22180 "parser_cocci_menhir.ml" in -# 365 "parser_cocci_menhir.mly" +# 366 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 22184 "parser_cocci_menhir.ml" +# 22186 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22237,7 +22239,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let m = m0 in let l = l0 in -# 549 "parser_cocci_menhir.mly" +# 550 "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 @@ -22247,13 +22249,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct | Some _ -> !Data.add_local_idexp_meta ty name constraints pure; check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) ) -# 22251 "parser_cocci_menhir.ml" +# 22253 "parser_cocci_menhir.ml" in -# 365 "parser_cocci_menhir.mly" +# 366 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 22257 "parser_cocci_menhir.ml" +# 22259 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22303,18 +22305,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_metadec = let kindfn = let ty = ty0 in -# 559 "parser_cocci_menhir.mly" +# 560 "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) ) -# 22312 "parser_cocci_menhir.ml" +# 22314 "parser_cocci_menhir.ml" in -# 365 "parser_cocci_menhir.mly" +# 366 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 22318 "parser_cocci_menhir.ml" +# 22320 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22360,21 +22362,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 22364 "parser_cocci_menhir.ml" +# 22366 "parser_cocci_menhir.ml" in -# 564 "parser_cocci_menhir.mly" +# 565 "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) ) -# 22372 "parser_cocci_menhir.ml" +# 22374 "parser_cocci_menhir.ml" in -# 365 "parser_cocci_menhir.mly" +# 366 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 22378 "parser_cocci_menhir.ml" +# 22380 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22428,21 +22430,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 22432 "parser_cocci_menhir.ml" +# 22434 "parser_cocci_menhir.ml" in -# 564 "parser_cocci_menhir.mly" +# 565 "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) ) -# 22440 "parser_cocci_menhir.ml" +# 22442 "parser_cocci_menhir.ml" in -# 365 "parser_cocci_menhir.mly" +# 366 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 22446 "parser_cocci_menhir.ml" +# 22448 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22485,17 +22487,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 581 "parser_cocci_menhir.mly" +# 582 "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) ) -# 22493 "parser_cocci_menhir.ml" +# 22495 "parser_cocci_menhir.ml" in -# 370 "parser_cocci_menhir.mly" +# 371 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 22499 "parser_cocci_menhir.ml" +# 22501 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22541,7 +22543,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_metadec = let kindfn = let vl = vl0 in -# 585 "parser_cocci_menhir.mly" +# 586 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta constraints -> let ty = Some vl in (match constraints with @@ -22566,13 +22568,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) ) -# 22570 "parser_cocci_menhir.ml" +# 22572 "parser_cocci_menhir.ml" in -# 370 "parser_cocci_menhir.mly" +# 371 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 22576 "parser_cocci_menhir.ml" +# 22578 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22614,7 +22616,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ar_ in let _endpos = _endpos__5_ in let _v : 'tv_metadec = -# 376 "parser_cocci_menhir.mly" +# 377 "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 = @@ -22622,7 +22624,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 ) -# 22626 "parser_cocci_menhir.ml" +# 22628 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22682,13 +22684,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ar_ in let _endpos = _endpos__9_ in let _v : 'tv_metadec = -# 386 "parser_cocci_menhir.mly" +# 387 "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 ) -# 22692 "parser_cocci_menhir.ml" +# 22694 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22748,13 +22750,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ar_ in let _endpos = _endpos__9_ in let _v : 'tv_metadec = -# 394 "parser_cocci_menhir.mly" +# 395 "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 ) -# 22758 "parser_cocci_menhir.ml" +# 22760 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22814,13 +22816,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ar_ in let _endpos = _endpos__9_ in let _v : 'tv_metadec = -# 402 "parser_cocci_menhir.mly" +# 403 "parser_cocci_menhir.mly" ( P.create_len_metadec ar ispure (fun lenname arity name pure check_meta -> let tok = check_meta(Ast.MetaFieldListDecl(arity,name,lenname)) in !Data.add_field_list_meta name lenname pure; tok) len ids ) -# 22824 "parser_cocci_menhir.ml" +# 22826 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22880,13 +22882,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ar_ in let _endpos = _endpos__9_ in let _v : 'tv_metadec = -# 410 "parser_cocci_menhir.mly" +# 411 "parser_cocci_menhir.mly" ( P.create_len_metadec ar ispure (fun lenname arity name pure check_meta -> let tok = check_meta(Ast.MetaInitListDecl(arity,name,lenname)) in !Data.add_initlist_meta name lenname pure; tok) len ids ) -# 22890 "parser_cocci_menhir.ml" +# 22892 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22908,9 +22910,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_mident = -# 1916 "parser_cocci_menhir.mly" +# 1930 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) ) -# 22914 "parser_cocci_menhir.ml" +# 22916 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22929,16 +22931,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 22935 "parser_cocci_menhir.ml" +# 22937 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_mident = -# 1917 "parser_cocci_menhir.mly" +# 1931 "parser_cocci_menhir.mly" ( tmeta_to_ident _1 ) -# 22942 "parser_cocci_menhir.ml" +# 22944 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22958,16 +22960,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _1 : ( # 128 "parser_cocci_menhir.mly" - (Parse_aux.idinfo) -# 22963 "parser_cocci_menhir.ml" + (Parse_aux.midinfo) +# 22965 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_mident = -# 1919 "parser_cocci_menhir.mly" - ( let (nm,constraints,pure,clt) = _1 in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) ) -# 22971 "parser_cocci_menhir.ml" +# 1933 "parser_cocci_menhir.mly" + ( let (nm,constraints,seed,pure,clt) = _1 in + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) ) +# 22973 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22995,9 +22997,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_ctype_ctype_ = -# 2239 "parser_cocci_menhir.mly" +# 2253 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 23001 "parser_cocci_menhir.ml" +# 23003 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23025,9 +23027,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_disj_ident_disj_ident_ = -# 2239 "parser_cocci_menhir.mly" +# 2253 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 23031 "parser_cocci_menhir.ml" +# 23033 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23055,9 +23057,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_eexpr_eexpr_ = -# 2239 "parser_cocci_menhir.mly" +# 2253 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 23061 "parser_cocci_menhir.ml" +# 23063 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23085,9 +23087,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_expr_eexpr_ = -# 2239 "parser_cocci_menhir.mly" +# 2253 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 23091 "parser_cocci_menhir.ml" +# 23093 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23115,9 +23117,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_ = -# 2239 "parser_cocci_menhir.mly" +# 2253 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 23121 "parser_cocci_menhir.ml" +# 23123 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23145,9 +23147,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_ = -# 2239 "parser_cocci_menhir.mly" +# 2253 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 23151 "parser_cocci_menhir.ml" +# 23153 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23175,9 +23177,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_mctype_mctype_ = -# 2239 "parser_cocci_menhir.mly" +# 2253 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 23181 "parser_cocci_menhir.ml" +# 23183 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23205,9 +23207,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_ = -# 2239 "parser_cocci_menhir.mly" +# 2253 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 23211 "parser_cocci_menhir.ml" +# 23213 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23235,9 +23237,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_statement_statement_ = -# 2239 "parser_cocci_menhir.mly" +# 2253 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 23241 "parser_cocci_menhir.ml" +# 23243 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23265,11 +23267,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_b_ in let _v : 'tv_minus_body = -# 815 "parser_cocci_menhir.mly" +# 816 "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 ) -# 23273 "parser_cocci_menhir.ml" +# 23275 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23297,11 +23299,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_b_ in let _v : 'tv_minus_exp_body = -# 829 "parser_cocci_menhir.mly" +# 830 "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 ) -# 23305 "parser_cocci_menhir.ml" +# 23307 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23327,13 +23329,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 207 "parser_cocci_menhir.mly" +# 208 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 23333 "parser_cocci_menhir.ml" +# 23335 "parser_cocci_menhir.ml" ) = -# 247 "parser_cocci_menhir.mly" +# 248 "parser_cocci_menhir.mly" ( _1 ) -# 23337 "parser_cocci_menhir.ml" +# 23339 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23359,13 +23361,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_m_ in let _endpos = _endpos__2_ in let _v : ( -# 207 "parser_cocci_menhir.mly" +# 208 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 23365 "parser_cocci_menhir.ml" +# 23367 "parser_cocci_menhir.ml" ) = -# 247 "parser_cocci_menhir.mly" +# 248 "parser_cocci_menhir.mly" ( m ) -# 23369 "parser_cocci_menhir.ml" +# 23371 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23391,13 +23393,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_m_ in let _endpos = _endpos__2_ in let _v : ( -# 207 "parser_cocci_menhir.mly" +# 208 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 23397 "parser_cocci_menhir.ml" +# 23399 "parser_cocci_menhir.ml" ) = -# 248 "parser_cocci_menhir.mly" +# 249 "parser_cocci_menhir.mly" ( m ) -# 23401 "parser_cocci_menhir.ml" +# 23403 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23423,13 +23425,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 204 "parser_cocci_menhir.mly" +# 205 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 23429 "parser_cocci_menhir.ml" +# 23431 "parser_cocci_menhir.ml" ) = -# 243 "parser_cocci_menhir.mly" +# 244 "parser_cocci_menhir.mly" ( _1 ) -# 23433 "parser_cocci_menhir.ml" +# 23435 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23455,13 +23457,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_m_ in let _endpos = _endpos__2_ in let _v : ( -# 204 "parser_cocci_menhir.mly" +# 205 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 23461 "parser_cocci_menhir.ml" +# 23463 "parser_cocci_menhir.ml" ) = -# 243 "parser_cocci_menhir.mly" +# 244 "parser_cocci_menhir.mly" ( m ) -# 23465 "parser_cocci_menhir.ml" +# 23467 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23487,13 +23489,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_m_ in let _endpos = _endpos__2_ in let _v : ( -# 204 "parser_cocci_menhir.mly" +# 205 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 23493 "parser_cocci_menhir.ml" +# 23495 "parser_cocci_menhir.ml" ) = -# 244 "parser_cocci_menhir.mly" +# 245 "parser_cocci_menhir.mly" ( m ) -# 23497 "parser_cocci_menhir.ml" +# 23499 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23515,9 +23517,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_minus_start = -# 2064 "parser_cocci_menhir.mly" +# 2078 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.DECL(_1))] ) -# 23521 "parser_cocci_menhir.ml" +# 23523 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23539,9 +23541,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_minus_start = -# 2065 "parser_cocci_menhir.mly" +# 2079 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] ) -# 23545 "parser_cocci_menhir.ml" +# 23547 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23563,9 +23565,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_minus_start = -# 2066 "parser_cocci_menhir.mly" +# 2080 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] ) -# 23569 "parser_cocci_menhir.ml" +# 23571 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23587,9 +23589,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_minus_start = -# 2068 "parser_cocci_menhir.mly" +# 2082 "parser_cocci_menhir.mly" ( List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1 ) -# 23593 "parser_cocci_menhir.ml" +# 23595 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23614,16 +23616,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_ctype = Obj.magic b in let a : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23620 "parser_cocci_menhir.ml" +# 23622 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_ctype_ = -# 2242 "parser_cocci_menhir.mly" +# 2256 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 23627 "parser_cocci_menhir.ml" +# 23629 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23648,16 +23650,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_disj_ident = Obj.magic b in let a : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23654 "parser_cocci_menhir.ml" +# 23656 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_disj_ident_ = -# 2242 "parser_cocci_menhir.mly" +# 2256 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 23661 "parser_cocci_menhir.ml" +# 23663 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23682,16 +23684,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_eexpr = Obj.magic b in let a : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23688 "parser_cocci_menhir.ml" +# 23690 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_eexpr_ = -# 2242 "parser_cocci_menhir.mly" +# 2256 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 23695 "parser_cocci_menhir.ml" +# 23697 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23716,16 +23718,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_fun_after_dots_or = Obj.magic b in let a : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23722 "parser_cocci_menhir.ml" +# 23724 "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_ = -# 2242 "parser_cocci_menhir.mly" +# 2256 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 23729 "parser_cocci_menhir.ml" +# 23731 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23750,16 +23752,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_fun_start = Obj.magic b in let a : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23756 "parser_cocci_menhir.ml" +# 23758 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_fun_start_ = -# 2242 "parser_cocci_menhir.mly" +# 2256 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 23763 "parser_cocci_menhir.ml" +# 23765 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23784,16 +23786,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_mctype = Obj.magic b in let a : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23790 "parser_cocci_menhir.ml" +# 23792 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_mctype_ = -# 2242 "parser_cocci_menhir.mly" +# 2256 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 23797 "parser_cocci_menhir.ml" +# 23799 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23818,16 +23820,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_rule_elem_statement = Obj.magic b in let a : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23824 "parser_cocci_menhir.ml" +# 23826 "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_ = -# 2242 "parser_cocci_menhir.mly" +# 2256 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 23831 "parser_cocci_menhir.ml" +# 23833 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23852,16 +23854,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_statement = Obj.magic b in let a : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23858 "parser_cocci_menhir.ml" +# 23860 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_statement_ = -# 2242 "parser_cocci_menhir.mly" +# 2256 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 23865 "parser_cocci_menhir.ml" +# 23867 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23883,9 +23885,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_name_opt_decl = -# 1045 "parser_cocci_menhir.mly" +# 1048 "parser_cocci_menhir.mly" ( _1 ) -# 23889 "parser_cocci_menhir.ml" +# 23891 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23934,43 +23936,43 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23940 "parser_cocci_menhir.ml" +# 23942 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 23946 "parser_cocci_menhir.ml" +# 23948 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 23951 "parser_cocci_menhir.ml" +# 23953 "parser_cocci_menhir.ml" ) = Obj.magic rp in let s : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 23956 "parser_cocci_menhir.ml" +# 23958 "parser_cocci_menhir.ml" ) = Obj.magic s in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 23961 "parser_cocci_menhir.ml" +# 23963 "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 = -# 1048 "parser_cocci_menhir.mly" +# 1051 "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)) ) -# 23974 "parser_cocci_menhir.ml" +# 23976 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23998,9 +24000,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_dots = -# 2184 "parser_cocci_menhir.mly" +# 2198 "parser_cocci_menhir.mly" (_1@_2) -# 24004 "parser_cocci_menhir.ml" +# 24006 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24026,9 +24028,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_dots = -# 2185 "parser_cocci_menhir.mly" +# 2199 "parser_cocci_menhir.mly" (_2) -# 24032 "parser_cocci_menhir.ml" +# 24034 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24056,9 +24058,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_dots = -# 2186 "parser_cocci_menhir.mly" +# 2200 "parser_cocci_menhir.mly" ((Ast0.wrap(Ast0.Exp(_1)))::_2) -# 24062 "parser_cocci_menhir.ml" +# 24064 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24073,9 +24075,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 = -# 2194 "parser_cocci_menhir.mly" +# 2208 "parser_cocci_menhir.mly" ([]) -# 24079 "parser_cocci_menhir.ml" +# 24081 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24103,9 +24105,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_exp = -# 2195 "parser_cocci_menhir.mly" +# 2209 "parser_cocci_menhir.mly" (_1::_2) -# 24109 "parser_cocci_menhir.ml" +# 24111 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24120,9 +24122,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 = -# 2189 "parser_cocci_menhir.mly" +# 2203 "parser_cocci_menhir.mly" ([]) -# 24126 "parser_cocci_menhir.ml" +# 24128 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24150,9 +24152,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_stm = -# 2190 "parser_cocci_menhir.mly" +# 2204 "parser_cocci_menhir.mly" (_1::_2) -# 24156 "parser_cocci_menhir.ml" +# 24158 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24180,9 +24182,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_stm = -# 2191 "parser_cocci_menhir.mly" +# 2205 "parser_cocci_menhir.mly" (_1@_2) -# 24186 "parser_cocci_menhir.ml" +# 24188 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24211,24 +24213,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let c : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24217 "parser_cocci_menhir.ml" +# 24219 "parser_cocci_menhir.ml" ) = Obj.magic c in let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in let _1 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24223 "parser_cocci_menhir.ml" +# 24225 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_c_ in let _v : 'tv_nest_expressions = -# 1424 "parser_cocci_menhir.mly" +# 1427 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<..." _1, Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))), P.clt2mcode "...>" c, None, false)) ) -# 24232 "parser_cocci_menhir.ml" +# 24234 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24257,24 +24259,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let c : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24263 "parser_cocci_menhir.ml" +# 24265 "parser_cocci_menhir.ml" ) = Obj.magic c in let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in let _1 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24269 "parser_cocci_menhir.ml" +# 24271 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_c_ in let _v : 'tv_nest_expressions = -# 1428 "parser_cocci_menhir.mly" +# 1431 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<+..." _1, Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))), P.clt2mcode "...+>" c, None, true)) ) -# 24278 "parser_cocci_menhir.ml" +# 24280 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24293,16 +24295,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 24299 "parser_cocci_menhir.ml" +# 24301 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nest_expressions = -# 1431 "parser_cocci_menhir.mly" +# 1434 "parser_cocci_menhir.mly" ( tmeta_to_exp _1 ) -# 24306 "parser_cocci_menhir.ml" +# 24308 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24324,9 +24326,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nest_start = -# 2181 "parser_cocci_menhir.mly" +# 2195 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1)) ) -# 24330 "parser_cocci_menhir.ml" +# 24332 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24346,13 +24348,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 238 "parser_cocci_menhir.mly" +# 239 "parser_cocci_menhir.mly" (unit) -# 24352 "parser_cocci_menhir.ml" +# 24354 "parser_cocci_menhir.ml" ) = -# 2309 "parser_cocci_menhir.mly" +# 2323 "parser_cocci_menhir.mly" ( () ) -# 24356 "parser_cocci_menhir.ml" +# 24358 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24376,13 +24378,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 238 "parser_cocci_menhir.mly" +# 239 "parser_cocci_menhir.mly" (unit) -# 24382 "parser_cocci_menhir.ml" +# 24384 "parser_cocci_menhir.ml" ) = -# 2310 "parser_cocci_menhir.mly" +# 2324 "parser_cocci_menhir.mly" ( () ) -# 24386 "parser_cocci_menhir.ml" +# 24388 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24402,13 +24404,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 238 "parser_cocci_menhir.mly" +# 239 "parser_cocci_menhir.mly" (unit) -# 24408 "parser_cocci_menhir.ml" +# 24410 "parser_cocci_menhir.ml" ) = -# 2311 "parser_cocci_menhir.mly" +# 2325 "parser_cocci_menhir.mly" ( () ) -# 24412 "parser_cocci_menhir.ml" +# 24414 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24436,10 +24438,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__ = -# 1647 "parser_cocci_menhir.mly" +# 1653 "parser_cocci_menhir.mly" ( function dot_builder -> g :: (List.concat(List.map (function (d,g) -> [dot_builder d;g]) dg)) ) -# 24443 "parser_cocci_menhir.ml" +# 24445 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24458,16 +24460,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let x : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 24464 "parser_cocci_menhir.ml" +# 24466 "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 ] ) -# 24471 "parser_cocci_menhir.ml" +# 24473 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24492,16 +24494,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let xs : 'tv_nonempty_list_TMul_ = Obj.magic xs in let x : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 24498 "parser_cocci_menhir.ml" +# 24500 "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 ) -# 24505 "parser_cocci_menhir.ml" +# 24507 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24523,9 +24525,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_ = -# 1991 "parser_cocci_menhir.mly" +# 2005 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 24529 "parser_cocci_menhir.ml" +# 24531 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24549,18 +24551,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 24555 "parser_cocci_menhir.ml" +# 24557 "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_ = -# 1993 "parser_cocci_menhir.mly" +# 2007 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 24564 "parser_cocci_menhir.ml" +# 24566 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24590,19 +24592,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 24596 "parser_cocci_menhir.ml" +# 24598 "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_ = -# 1996 "parser_cocci_menhir.mly" +# 2010 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 24606 "parser_cocci_menhir.ml" +# 24608 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24628,9 +24630,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_ = -# 1999 "parser_cocci_menhir.mly" +# 2013 "parser_cocci_menhir.mly" ( _2 ) -# 24634 "parser_cocci_menhir.ml" +# 24636 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24649,16 +24651,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24655 "parser_cocci_menhir.ml" +# 24657 "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_ = -# 2000 "parser_cocci_menhir.mly" +# 2014 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 24662 "parser_cocci_menhir.ml" +# 24664 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24682,22 +24684,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 24688 "parser_cocci_menhir.ml" +# 24690 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24693 "parser_cocci_menhir.ml" +# 24695 "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_ = -# 2002 "parser_cocci_menhir.mly" +# 2016 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 24701 "parser_cocci_menhir.ml" +# 24703 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24727,24 +24729,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let r : 'tv_continue_list_aexpr_TEllipsis_ = Obj.magic r in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 24733 "parser_cocci_menhir.ml" +# 24735 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24738 "parser_cocci_menhir.ml" +# 24740 "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_ = -# 2005 "parser_cocci_menhir.mly" +# 2019 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 24748 "parser_cocci_menhir.ml" +# 24750 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24766,9 +24768,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_ = -# 1991 "parser_cocci_menhir.mly" +# 2005 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 24772 "parser_cocci_menhir.ml" +# 24774 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24792,18 +24794,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 24798 "parser_cocci_menhir.ml" +# 24800 "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_ = -# 1993 "parser_cocci_menhir.mly" +# 2007 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 24807 "parser_cocci_menhir.ml" +# 24809 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24833,19 +24835,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 24839 "parser_cocci_menhir.ml" +# 24841 "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_ = -# 1996 "parser_cocci_menhir.mly" +# 2010 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 24849 "parser_cocci_menhir.ml" +# 24851 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24871,9 +24873,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_ = -# 1999 "parser_cocci_menhir.mly" +# 2013 "parser_cocci_menhir.mly" ( _2 ) -# 24877 "parser_cocci_menhir.ml" +# 24879 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24892,16 +24894,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24898 "parser_cocci_menhir.ml" +# 24900 "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_ = -# 2000 "parser_cocci_menhir.mly" +# 2014 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 24905 "parser_cocci_menhir.ml" +# 24907 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24925,22 +24927,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 24931 "parser_cocci_menhir.ml" +# 24933 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24936 "parser_cocci_menhir.ml" +# 24938 "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_ = -# 2002 "parser_cocci_menhir.mly" +# 2016 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 24944 "parser_cocci_menhir.ml" +# 24946 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24970,24 +24972,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let r : 'tv_continue_list_dparam_TEllipsis_ = Obj.magic r in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 24976 "parser_cocci_menhir.ml" +# 24978 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 24981 "parser_cocci_menhir.ml" +# 24983 "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_ = -# 2005 "parser_cocci_menhir.mly" +# 2019 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 24991 "parser_cocci_menhir.ml" +# 24993 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25009,9 +25011,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__ = -# 1991 "parser_cocci_menhir.mly" +# 2005 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 25015 "parser_cocci_menhir.ml" +# 25017 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25035,18 +25037,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25041 "parser_cocci_menhir.ml" +# 25043 "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__ = -# 1993 "parser_cocci_menhir.mly" +# 2007 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 25050 "parser_cocci_menhir.ml" +# 25052 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25076,19 +25078,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25082 "parser_cocci_menhir.ml" +# 25084 "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__ = -# 1996 "parser_cocci_menhir.mly" +# 2010 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 25092 "parser_cocci_menhir.ml" +# 25094 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25114,9 +25116,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__ = -# 1999 "parser_cocci_menhir.mly" +# 2013 "parser_cocci_menhir.mly" ( _2 ) -# 25120 "parser_cocci_menhir.ml" +# 25122 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25138,9 +25140,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__ = -# 2000 "parser_cocci_menhir.mly" +# 2014 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 25144 "parser_cocci_menhir.ml" +# 25146 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25164,18 +25166,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25170 "parser_cocci_menhir.ml" +# 25172 "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__ = -# 2002 "parser_cocci_menhir.mly" +# 2016 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 25179 "parser_cocci_menhir.ml" +# 25181 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25205,20 +25207,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let r : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic r in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25211 "parser_cocci_menhir.ml" +# 25213 "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__ = -# 2005 "parser_cocci_menhir.mly" +# 2019 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 25222 "parser_cocci_menhir.ml" +# 25224 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25240,9 +25242,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__ = -# 1991 "parser_cocci_menhir.mly" +# 2005 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 25246 "parser_cocci_menhir.ml" +# 25248 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25266,18 +25268,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25272 "parser_cocci_menhir.ml" +# 25274 "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__ = -# 1993 "parser_cocci_menhir.mly" +# 2007 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 25281 "parser_cocci_menhir.ml" +# 25283 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25307,19 +25309,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25313 "parser_cocci_menhir.ml" +# 25315 "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__ = -# 1996 "parser_cocci_menhir.mly" +# 2010 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 25323 "parser_cocci_menhir.ml" +# 25325 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25345,9 +25347,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__ = -# 1999 "parser_cocci_menhir.mly" +# 2013 "parser_cocci_menhir.mly" ( _2 ) -# 25351 "parser_cocci_menhir.ml" +# 25353 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25369,9 +25371,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__ = -# 2000 "parser_cocci_menhir.mly" +# 2014 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 25375 "parser_cocci_menhir.ml" +# 25377 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25395,18 +25397,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25401 "parser_cocci_menhir.ml" +# 25403 "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__ = -# 2002 "parser_cocci_menhir.mly" +# 2016 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 25410 "parser_cocci_menhir.ml" +# 25412 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25436,20 +25438,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let r : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic r in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25442 "parser_cocci_menhir.ml" +# 25444 "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__ = -# 2005 "parser_cocci_menhir.mly" +# 2019 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 25453 "parser_cocci_menhir.ml" +# 25455 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25471,9 +25473,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_ = -# 1991 "parser_cocci_menhir.mly" +# 2005 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 25477 "parser_cocci_menhir.ml" +# 25479 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25497,18 +25499,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25503 "parser_cocci_menhir.ml" +# 25505 "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_ = -# 1993 "parser_cocci_menhir.mly" +# 2007 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 25512 "parser_cocci_menhir.ml" +# 25514 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25538,19 +25540,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25544 "parser_cocci_menhir.ml" +# 25546 "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_ = -# 1996 "parser_cocci_menhir.mly" +# 2010 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 25554 "parser_cocci_menhir.ml" +# 25556 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25576,9 +25578,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_ = -# 1999 "parser_cocci_menhir.mly" +# 2013 "parser_cocci_menhir.mly" ( _2 ) -# 25582 "parser_cocci_menhir.ml" +# 25584 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25597,16 +25599,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 25603 "parser_cocci_menhir.ml" +# 25605 "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_ = -# 2000 "parser_cocci_menhir.mly" +# 2014 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 25610 "parser_cocci_menhir.ml" +# 25612 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25630,22 +25632,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25636 "parser_cocci_menhir.ml" +# 25638 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 25641 "parser_cocci_menhir.ml" +# 25643 "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_ = -# 2002 "parser_cocci_menhir.mly" +# 2016 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 25649 "parser_cocci_menhir.ml" +# 25651 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25675,24 +25677,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let r : 'tv_continue_list_one_dec_decl__TEllipsis_ = Obj.magic r in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25681 "parser_cocci_menhir.ml" +# 25683 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 25686 "parser_cocci_menhir.ml" +# 25688 "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_ = -# 2005 "parser_cocci_menhir.mly" +# 2019 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 25696 "parser_cocci_menhir.ml" +# 25698 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25714,9 +25716,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_ = -# 1991 "parser_cocci_menhir.mly" +# 2005 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 25720 "parser_cocci_menhir.ml" +# 25722 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25740,18 +25742,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25746 "parser_cocci_menhir.ml" +# 25748 "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_ = -# 1993 "parser_cocci_menhir.mly" +# 2007 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 25755 "parser_cocci_menhir.ml" +# 25757 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25781,19 +25783,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25787 "parser_cocci_menhir.ml" +# 25789 "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_ = -# 1996 "parser_cocci_menhir.mly" +# 2010 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 25797 "parser_cocci_menhir.ml" +# 25799 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25819,9 +25821,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_ = -# 1999 "parser_cocci_menhir.mly" +# 2013 "parser_cocci_menhir.mly" ( _2 ) -# 25825 "parser_cocci_menhir.ml" +# 25827 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25840,16 +25842,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 25846 "parser_cocci_menhir.ml" +# 25848 "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_ = -# 2000 "parser_cocci_menhir.mly" +# 2014 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 25853 "parser_cocci_menhir.ml" +# 25855 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25873,22 +25875,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25879 "parser_cocci_menhir.ml" +# 25881 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 25884 "parser_cocci_menhir.ml" +# 25886 "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_ = -# 2002 "parser_cocci_menhir.mly" +# 2016 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 25892 "parser_cocci_menhir.ml" +# 25894 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25918,24 +25920,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let r : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ = Obj.magic r in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 25924 "parser_cocci_menhir.ml" +# 25926 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 25929 "parser_cocci_menhir.ml" +# 25931 "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_ = -# 2005 "parser_cocci_menhir.mly" +# 2019 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 25939 "parser_cocci_menhir.ml" +# 25941 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25961,13 +25963,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_not_ceq = -# 1828 "parser_cocci_menhir.mly" +# 1841 "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] ) -# 25971 "parser_cocci_menhir.ml" +# 25973 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26001,13 +26003,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_not_ceq = -# 1834 "parser_cocci_menhir.mly" +# 1847 "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 ) -# 26011 "parser_cocci_menhir.ml" +# 26013 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26029,9 +26031,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ceq_ in let _endpos = _endpos_ceq_ in let _v : 'tv_not_ceq_or_sub = -# 1804 "parser_cocci_menhir.mly" +# 1817 "parser_cocci_menhir.mly" (Ast0.NotExpCstrt ceq) -# 26035 "parser_cocci_menhir.ml" +# 26037 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26053,9 +26055,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_not_ceq_or_sub = -# 1805 "parser_cocci_menhir.mly" +# 1818 "parser_cocci_menhir.mly" (Ast0.SubExpCstrt s) -# 26059 "parser_cocci_menhir.ml" +# 26061 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26081,14 +26083,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_not_eqe = -# 1809 "parser_cocci_menhir.mly" +# 1822 "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))))] ) -# 26092 "parser_cocci_menhir.ml" +# 26094 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26122,7 +26124,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_not_eqe = -# 1816 "parser_cocci_menhir.mly" +# 1829 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -26132,7 +26134,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i))))) l ) -# 26136 "parser_cocci_menhir.ml" +# 26138 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26158,7 +26160,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_not_eqid = -# 1766 "parser_cocci_menhir.mly" +# 1779 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -26172,7 +26174,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct (function mv -> Ast.MetaIdDecl(Ast.NONE,mv)) in Ast.IdNegIdSet([],[i]) | (None,i) -> Ast.IdNegIdSet([i],[])) ) -# 26176 "parser_cocci_menhir.ml" +# 26178 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26206,7 +26208,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_not_eqid = -# 1780 "parser_cocci_menhir.mly" +# 1793 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -26224,7 +26226,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct ([],[]) l in Ast.IdNegIdSet(str,meta) ) -# 26228 "parser_cocci_menhir.ml" +# 26230 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26250,7 +26252,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_not_pos = -# 1872 "parser_cocci_menhir.mly" +# 1885 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -26259,7 +26261,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.check_inherited_constraint i (function mv -> Ast.MetaPosDecl(Ast.NONE,mv)) in [i] ) -# 26263 "parser_cocci_menhir.ml" +# 26265 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26293,7 +26295,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_not_pos = -# 1881 "parser_cocci_menhir.mly" +# 1894 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -26303,7 +26305,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.check_inherited_constraint i (function mv -> Ast.MetaPosDecl(Ast.NONE,mv))) l ) -# 26307 "parser_cocci_menhir.ml" +# 26309 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26325,9 +26327,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_one_dec_decl_ = -# 1966 "parser_cocci_menhir.mly" +# 1980 "parser_cocci_menhir.mly" ( _1 ) -# 26331 "parser_cocci_menhir.ml" +# 26333 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26346,14 +26348,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 133 "parser_cocci_menhir.mly" +# 134 "parser_cocci_menhir.mly" (Parse_aux.list_info) -# 26352 "parser_cocci_menhir.ml" +# 26354 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_one_dec_decl_ = -# 1968 "parser_cocci_menhir.mly" +# 1982 "parser_cocci_menhir.mly" ( let (nm,lenname,pure,clt) = _1 in let nm = P.clt2mcode nm clt in let lenname = @@ -26362,7 +26364,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)) ) -# 26366 "parser_cocci_menhir.ml" +# 26368 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26384,9 +26386,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_ = -# 1966 "parser_cocci_menhir.mly" +# 1980 "parser_cocci_menhir.mly" ( _1 ) -# 26390 "parser_cocci_menhir.ml" +# 26392 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26405,14 +26407,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 133 "parser_cocci_menhir.mly" +# 134 "parser_cocci_menhir.mly" (Parse_aux.list_info) -# 26411 "parser_cocci_menhir.ml" +# 26413 "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_ = -# 1968 "parser_cocci_menhir.mly" +# 1982 "parser_cocci_menhir.mly" ( let (nm,lenname,pure,clt) = _1 in let nm = P.clt2mcode nm clt in let lenname = @@ -26421,7 +26423,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)) ) -# 26425 "parser_cocci_menhir.ml" +# 26427 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26445,17 +26447,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26451 "parser_cocci_menhir.ml" +# 26453 "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 = -# 1225 "parser_cocci_menhir.mly" +# 1228 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv)) ) -# 26459 "parser_cocci_menhir.ml" +# 26461 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26474,16 +26476,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 26480 "parser_cocci_menhir.ml" +# 26482 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_one_decl_var = -# 1226 "parser_cocci_menhir.mly" +# 1229 "parser_cocci_menhir.mly" ( P.meta_decl _1 ) -# 26487 "parser_cocci_menhir.ml" +# 26489 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26512,9 +26514,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26518 "parser_cocci_menhir.ml" +# 26520 "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 @@ -26524,14 +26526,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 26528 "parser_cocci_menhir.ml" +# 26530 "parser_cocci_menhir.ml" in -# 1228 "parser_cocci_menhir.mly" +# 1231 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) ) -# 26535 "parser_cocci_menhir.ml" +# 26537 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26565,9 +26567,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26571 "parser_cocci_menhir.ml" +# 26573 "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 @@ -26579,14 +26581,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 26583 "parser_cocci_menhir.ml" +# 26585 "parser_cocci_menhir.ml" in -# 1228 "parser_cocci_menhir.mly" +# 1231 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) ) -# 26590 "parser_cocci_menhir.ml" +# 26592 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26608,9 +26610,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_f_ in let _v : 'tv_one_decl_var = -# 1230 "parser_cocci_menhir.mly" +# 1233 "parser_cocci_menhir.mly" ( f ) -# 26614 "parser_cocci_menhir.ml" +# 26616 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26649,15 +26651,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26655 "parser_cocci_menhir.ml" +# 26657 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26661 "parser_cocci_menhir.ml" +# 26663 "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 @@ -26667,14 +26669,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 26671 "parser_cocci_menhir.ml" +# 26673 "parser_cocci_menhir.ml" in -# 1232 "parser_cocci_menhir.mly" +# 1235 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) ) -# 26678 "parser_cocci_menhir.ml" +# 26680 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26718,15 +26720,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26724 "parser_cocci_menhir.ml" +# 26726 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26730 "parser_cocci_menhir.ml" +# 26732 "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 @@ -26738,14 +26740,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 26742 "parser_cocci_menhir.ml" +# 26744 "parser_cocci_menhir.ml" in -# 1232 "parser_cocci_menhir.mly" +# 1235 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) ) -# 26749 "parser_cocci_menhir.ml" +# 26751 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26774,9 +26776,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26780 "parser_cocci_menhir.ml" +# 26782 "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 @@ -26786,22 +26788,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 26790 "parser_cocci_menhir.ml" +# 26792 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 26797 "parser_cocci_menhir.ml" +# 26799 "parser_cocci_menhir.ml" in -# 1237 "parser_cocci_menhir.mly" +# 1240 "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)) ) -# 26805 "parser_cocci_menhir.ml" +# 26807 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26835,9 +26837,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26841 "parser_cocci_menhir.ml" +# 26843 "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 @@ -26849,22 +26851,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 26853 "parser_cocci_menhir.ml" +# 26855 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 26860 "parser_cocci_menhir.ml" +# 26862 "parser_cocci_menhir.ml" in -# 1237 "parser_cocci_menhir.mly" +# 1240 "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)) ) -# 26868 "parser_cocci_menhir.ml" +# 26870 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26898,9 +26900,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26904 "parser_cocci_menhir.ml" +# 26906 "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 @@ -26911,7 +26913,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 26915 "parser_cocci_menhir.ml" +# 26917 "parser_cocci_menhir.ml" in let s = @@ -26919,15 +26921,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 26923 "parser_cocci_menhir.ml" +# 26925 "parser_cocci_menhir.ml" in -# 1237 "parser_cocci_menhir.mly" +# 1240 "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)) ) -# 26931 "parser_cocci_menhir.ml" +# 26933 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26966,9 +26968,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 26972 "parser_cocci_menhir.ml" +# 26974 "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 @@ -26981,7 +26983,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 26985 "parser_cocci_menhir.ml" +# 26987 "parser_cocci_menhir.ml" in let s = @@ -26989,15 +26991,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 26993 "parser_cocci_menhir.ml" +# 26995 "parser_cocci_menhir.ml" in -# 1237 "parser_cocci_menhir.mly" +# 1240 "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)) ) -# 27001 "parser_cocci_menhir.ml" +# 27003 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27036,15 +27038,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27042 "parser_cocci_menhir.ml" +# 27044 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27048 "parser_cocci_menhir.ml" +# 27050 "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 @@ -27054,24 +27056,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 27058 "parser_cocci_menhir.ml" +# 27060 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 27065 "parser_cocci_menhir.ml" +# 27067 "parser_cocci_menhir.ml" in -# 1242 "parser_cocci_menhir.mly" +# 1245 "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)) ) -# 27075 "parser_cocci_menhir.ml" +# 27077 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27115,15 +27117,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27121 "parser_cocci_menhir.ml" +# 27123 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27127 "parser_cocci_menhir.ml" +# 27129 "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 @@ -27135,24 +27137,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 27139 "parser_cocci_menhir.ml" +# 27141 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 27146 "parser_cocci_menhir.ml" +# 27148 "parser_cocci_menhir.ml" in -# 1242 "parser_cocci_menhir.mly" +# 1245 "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)) ) -# 27156 "parser_cocci_menhir.ml" +# 27158 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27196,15 +27198,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27202 "parser_cocci_menhir.ml" +# 27204 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27208 "parser_cocci_menhir.ml" +# 27210 "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 @@ -27215,7 +27217,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 27219 "parser_cocci_menhir.ml" +# 27221 "parser_cocci_menhir.ml" in let s = @@ -27223,17 +27225,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 27227 "parser_cocci_menhir.ml" +# 27229 "parser_cocci_menhir.ml" in -# 1242 "parser_cocci_menhir.mly" +# 1245 "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)) ) -# 27237 "parser_cocci_menhir.ml" +# 27239 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27282,15 +27284,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27288 "parser_cocci_menhir.ml" +# 27290 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27294 "parser_cocci_menhir.ml" +# 27296 "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 @@ -27303,7 +27305,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 27307 "parser_cocci_menhir.ml" +# 27309 "parser_cocci_menhir.ml" in let s = @@ -27311,17 +27313,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 27315 "parser_cocci_menhir.ml" +# 27317 "parser_cocci_menhir.ml" in -# 1242 "parser_cocci_menhir.mly" +# 1245 "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)) ) -# 27325 "parser_cocci_menhir.ml" +# 27327 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27380,36 +27382,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27386 "parser_cocci_menhir.ml" +# 27388 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 27391 "parser_cocci_menhir.ml" +# 27393 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 27397 "parser_cocci_menhir.ml" +# 27399 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 27402 "parser_cocci_menhir.ml" +# 27404 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 27408 "parser_cocci_menhir.ml" +# 27410 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 27413 "parser_cocci_menhir.ml" +# 27415 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let _startpos = _startpos_t_ in @@ -27418,11 +27420,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 27422 "parser_cocci_menhir.ml" +# 27424 "parser_cocci_menhir.ml" in -# 1252 "parser_cocci_menhir.mly" +# 1255 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -27430,7 +27432,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)) ) -# 27434 "parser_cocci_menhir.ml" +# 27436 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27494,36 +27496,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27500 "parser_cocci_menhir.ml" +# 27502 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 27505 "parser_cocci_menhir.ml" +# 27507 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 27511 "parser_cocci_menhir.ml" +# 27513 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 27516 "parser_cocci_menhir.ml" +# 27518 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 27522 "parser_cocci_menhir.ml" +# 27524 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 27527 "parser_cocci_menhir.ml" +# 27529 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let x0 : 'tv_storage = Obj.magic x0 in @@ -27534,11 +27536,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 27538 "parser_cocci_menhir.ml" +# 27540 "parser_cocci_menhir.ml" in -# 1252 "parser_cocci_menhir.mly" +# 1255 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -27546,7 +27548,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)) ) -# 27550 "parser_cocci_menhir.ml" +# 27552 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27585,29 +27587,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _5 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27591 "parser_cocci_menhir.ml" +# 27593 "parser_cocci_menhir.ml" ) = Obj.magic _5 in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 27596 "parser_cocci_menhir.ml" +# 27598 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 27602 "parser_cocci_menhir.ml" +# 27604 "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 = -# 1260 "parser_cocci_menhir.mly" +# 1263 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3, P.clt2mcode ")" _4,P.clt2mcode ";" _5)) ) -# 27611 "parser_cocci_menhir.ml" +# 27613 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27676,42 +27678,42 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27682 "parser_cocci_menhir.ml" +# 27684 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27688 "parser_cocci_menhir.ml" +# 27690 "parser_cocci_menhir.ml" ) = Obj.magic q in let rp2 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 27693 "parser_cocci_menhir.ml" +# 27695 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 27699 "parser_cocci_menhir.ml" +# 27701 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 27704 "parser_cocci_menhir.ml" +# 27706 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 27710 "parser_cocci_menhir.ml" +# 27712 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 27715 "parser_cocci_menhir.ml" +# 27717 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let _startpos = _startpos_t_ in @@ -27720,11 +27722,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 27724 "parser_cocci_menhir.ml" +# 27726 "parser_cocci_menhir.ml" in -# 1266 "parser_cocci_menhir.mly" +# 1269 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -27732,7 +27734,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))) -# 27736 "parser_cocci_menhir.ml" +# 27738 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27806,42 +27808,42 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27812 "parser_cocci_menhir.ml" +# 27814 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 27818 "parser_cocci_menhir.ml" +# 27820 "parser_cocci_menhir.ml" ) = Obj.magic q in let rp2 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 27823 "parser_cocci_menhir.ml" +# 27825 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 27829 "parser_cocci_menhir.ml" +# 27831 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 27834 "parser_cocci_menhir.ml" +# 27836 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 27840 "parser_cocci_menhir.ml" +# 27842 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 27845 "parser_cocci_menhir.ml" +# 27847 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let x0 : 'tv_storage = Obj.magic x0 in @@ -27852,11 +27854,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 27856 "parser_cocci_menhir.ml" +# 27858 "parser_cocci_menhir.ml" in -# 1266 "parser_cocci_menhir.mly" +# 1269 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -27864,7 +27866,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))) -# 27868 "parser_cocci_menhir.ml" +# 27870 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27881,7 +27883,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_TLocal_ = # 29 "standard.mly" ( None ) -# 27885 "parser_cocci_menhir.ml" +# 27887 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27905,7 +27907,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_TLocal_ = # 31 "standard.mly" ( Some x ) -# 27909 "parser_cocci_menhir.ml" +# 27911 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27922,7 +27924,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_TPosAny_ = # 29 "standard.mly" ( None ) -# 27926 "parser_cocci_menhir.ml" +# 27928 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27946,7 +27948,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_TPosAny_ = # 31 "standard.mly" ( Some x ) -# 27950 "parser_cocci_menhir.ml" +# 27952 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27963,7 +27965,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_eexpr_ = # 29 "standard.mly" ( None ) -# 27967 "parser_cocci_menhir.ml" +# 27969 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27987,7 +27989,48 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_eexpr_ = # 31 "standard.mly" ( Some x ) -# 27991 "parser_cocci_menhir.ml" +# 27993 "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 _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in + let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in + let _endpos = _startpos in + let _v : 'tv_option_expr_ = +# 29 "standard.mly" + ( None ) +# 28010 "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 = x; + MenhirLib.EngineTypes.startp = _startpos_x_; + MenhirLib.EngineTypes.endp = _endpos_x_; + MenhirLib.EngineTypes.next = _menhir_stack; + } = _menhir_stack in + let x : 'tv_expr = Obj.magic x in + let _startpos = _startpos_x_ in + let _endpos = _endpos_x_ in + let _v : 'tv_option_expr_ = +# 31 "standard.mly" + ( Some x ) +# 28034 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28004,7 +28047,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_not_ceq_or_sub_ = # 29 "standard.mly" ( None ) -# 28008 "parser_cocci_menhir.ml" +# 28051 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28028,7 +28071,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_not_ceq_or_sub_ = # 31 "standard.mly" ( Some x ) -# 28032 "parser_cocci_menhir.ml" +# 28075 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28045,7 +28088,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_re_or_not_eqe_or_sub_ = # 29 "standard.mly" ( None ) -# 28049 "parser_cocci_menhir.ml" +# 28092 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28069,7 +28112,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_re_or_not_eqe_or_sub_ = # 31 "standard.mly" ( Some x ) -# 28073 "parser_cocci_menhir.ml" +# 28116 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28086,7 +28129,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_re_or_not_eqid_ = # 29 "standard.mly" ( None ) -# 28090 "parser_cocci_menhir.ml" +# 28133 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28110,7 +28153,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_re_or_not_eqid_ = # 31 "standard.mly" ( Some x ) -# 28114 "parser_cocci_menhir.ml" +# 28157 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28125,9 +28168,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 = -# 2131 "parser_cocci_menhir.mly" +# 2145 "parser_cocci_menhir.mly" ([]) -# 28131 "parser_cocci_menhir.ml" +# 28174 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28153,9 +28196,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_dots = -# 2132 "parser_cocci_menhir.mly" +# 2146 "parser_cocci_menhir.mly" (_2) -# 28159 "parser_cocci_menhir.ml" +# 28202 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28183,9 +28226,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_dots = -# 2134 "parser_cocci_menhir.mly" +# 2148 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 ) -# 28189 "parser_cocci_menhir.ml" +# 28232 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28213,9 +28256,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_dots = -# 2135 "parser_cocci_menhir.mly" +# 2149 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DECL(_1))::_2 ) -# 28219 "parser_cocci_menhir.ml" +# 28262 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28243,9 +28286,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_dots = -# 2137 "parser_cocci_menhir.mly" +# 2151 "parser_cocci_menhir.mly" ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 ) -# 28249 "parser_cocci_menhir.ml" +# 28292 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28260,9 +28303,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 = -# 2127 "parser_cocci_menhir.mly" +# 2141 "parser_cocci_menhir.mly" ([]) -# 28266 "parser_cocci_menhir.ml" +# 28309 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28290,9 +28333,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_exp = -# 2128 "parser_cocci_menhir.mly" +# 2142 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 ) -# 28296 "parser_cocci_menhir.ml" +# 28339 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28307,9 +28350,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 = -# 2140 "parser_cocci_menhir.mly" +# 2154 "parser_cocci_menhir.mly" ([]) -# 28313 "parser_cocci_menhir.ml" +# 28356 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28337,9 +28380,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_stm = -# 2141 "parser_cocci_menhir.mly" +# 2155 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 ) -# 28343 "parser_cocci_menhir.ml" +# 28386 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28367,9 +28410,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_stm = -# 2142 "parser_cocci_menhir.mly" +# 2156 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DECL(_1))::_2 ) -# 28373 "parser_cocci_menhir.ml" +# 28416 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28397,9 +28440,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_stm = -# 2144 "parser_cocci_menhir.mly" +# 2158 "parser_cocci_menhir.mly" ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 ) -# 28403 "parser_cocci_menhir.ml" +# 28446 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28427,9 +28470,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_b_ in let _v : 'tv_plus_body = -# 823 "parser_cocci_menhir.mly" +# 824 "parser_cocci_menhir.mly" ( Top_level.top_level (f@b(*@ew*)) ) -# 28433 "parser_cocci_menhir.ml" +# 28476 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28457,9 +28500,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_b_ in let _v : 'tv_plus_exp_body = -# 837 "parser_cocci_menhir.mly" +# 838 "parser_cocci_menhir.mly" ( Top_level.top_level (f@[b](*@ew*)) ) -# 28463 "parser_cocci_menhir.ml" +# 28506 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28485,13 +28528,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 213 "parser_cocci_menhir.mly" +# 214 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 28491 "parser_cocci_menhir.ml" +# 28534 "parser_cocci_menhir.ml" ) = -# 249 "parser_cocci_menhir.mly" +# 250 "parser_cocci_menhir.mly" ( _1 ) -# 28495 "parser_cocci_menhir.ml" +# 28538 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28517,13 +28560,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_p_ in let _endpos = _endpos__2_ in let _v : ( -# 213 "parser_cocci_menhir.mly" +# 214 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 28523 "parser_cocci_menhir.ml" +# 28566 "parser_cocci_menhir.ml" ) = -# 249 "parser_cocci_menhir.mly" +# 250 "parser_cocci_menhir.mly" ( p ) -# 28527 "parser_cocci_menhir.ml" +# 28570 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28549,13 +28592,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_p_ in let _endpos = _endpos__2_ in let _v : ( -# 213 "parser_cocci_menhir.mly" +# 214 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 28555 "parser_cocci_menhir.ml" +# 28598 "parser_cocci_menhir.ml" ) = -# 250 "parser_cocci_menhir.mly" +# 251 "parser_cocci_menhir.mly" ( p ) -# 28559 "parser_cocci_menhir.ml" +# 28602 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28581,13 +28624,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 210 "parser_cocci_menhir.mly" +# 211 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 28587 "parser_cocci_menhir.ml" +# 28630 "parser_cocci_menhir.ml" ) = -# 245 "parser_cocci_menhir.mly" +# 246 "parser_cocci_menhir.mly" ( _1 ) -# 28591 "parser_cocci_menhir.ml" +# 28634 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28613,13 +28656,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_p_ in let _endpos = _endpos__2_ in let _v : ( -# 210 "parser_cocci_menhir.mly" +# 211 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 28619 "parser_cocci_menhir.ml" +# 28662 "parser_cocci_menhir.ml" ) = -# 245 "parser_cocci_menhir.mly" +# 246 "parser_cocci_menhir.mly" ( p ) -# 28623 "parser_cocci_menhir.ml" +# 28666 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28645,13 +28688,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_p_ in let _endpos = _endpos__2_ in let _v : ( -# 210 "parser_cocci_menhir.mly" +# 211 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 28651 "parser_cocci_menhir.ml" +# 28694 "parser_cocci_menhir.ml" ) = -# 246 "parser_cocci_menhir.mly" +# 247 "parser_cocci_menhir.mly" ( p ) -# 28655 "parser_cocci_menhir.ml" +# 28698 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28673,9 +28716,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_plus_start = -# 2116 "parser_cocci_menhir.mly" +# 2130 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] ) -# 28679 "parser_cocci_menhir.ml" +# 28722 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28697,9 +28740,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_plus_start = -# 2117 "parser_cocci_menhir.mly" +# 2131 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] ) -# 28703 "parser_cocci_menhir.ml" +# 28746 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28727,9 +28770,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_start = -# 2119 "parser_cocci_menhir.mly" +# 2133 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 ) -# 28733 "parser_cocci_menhir.ml" +# 28776 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28757,9 +28800,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_start = -# 2121 "parser_cocci_menhir.mly" +# 2135 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 ) -# 28763 "parser_cocci_menhir.ml" +# 28806 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28787,9 +28830,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_start = -# 2122 "parser_cocci_menhir.mly" +# 2136 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DECL(_1))::_2 ) -# 28793 "parser_cocci_menhir.ml" +# 28836 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28817,9 +28860,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_start = -# 2124 "parser_cocci_menhir.mly" +# 2138 "parser_cocci_menhir.mly" ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 ) -# 28823 "parser_cocci_menhir.ml" +# 28866 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28840,14 +28883,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 112 "parser_cocci_menhir.mly" (string) -# 28844 "parser_cocci_menhir.ml" +# 28887 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pnrule = -# 300 "parser_cocci_menhir.mly" +# 301 "parser_cocci_menhir.mly" ( Ast.Dep _1 ) -# 28851 "parser_cocci_menhir.ml" +# 28894 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28872,14 +28915,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 112 "parser_cocci_menhir.mly" (string) -# 28876 "parser_cocci_menhir.ml" +# 28919 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_pnrule = -# 301 "parser_cocci_menhir.mly" +# 302 "parser_cocci_menhir.mly" ( Ast.AntiDep _2 ) -# 28883 "parser_cocci_menhir.ml" +# 28926 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28904,14 +28947,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 112 "parser_cocci_menhir.mly" (string) -# 28908 "parser_cocci_menhir.ml" +# 28951 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_pnrule = -# 302 "parser_cocci_menhir.mly" +# 303 "parser_cocci_menhir.mly" ( Ast.EverDep _2 ) -# 28915 "parser_cocci_menhir.ml" +# 28958 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28936,14 +28979,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 112 "parser_cocci_menhir.mly" (string) -# 28940 "parser_cocci_menhir.ml" +# 28983 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_pnrule = -# 303 "parser_cocci_menhir.mly" +# 304 "parser_cocci_menhir.mly" ( Ast.NeverDep _2 ) -# 28947 "parser_cocci_menhir.ml" +# 28990 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28973,9 +29016,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_pnrule = -# 304 "parser_cocci_menhir.mly" +# 305 "parser_cocci_menhir.mly" ( _2 ) -# 28979 "parser_cocci_menhir.ml" +# 29022 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28997,9 +29040,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_ = -# 1580 "parser_cocci_menhir.mly" +# 1583 "parser_cocci_menhir.mly" ( _1 ) -# 29003 "parser_cocci_menhir.ml" +# 29046 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29033,24 +29076,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _4 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 29039 "parser_cocci_menhir.ml" +# 29082 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 29045 "parser_cocci_menhir.ml" +# 29088 "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_ = -# 1582 "parser_cocci_menhir.mly" +# 1585 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3, P.clt2mcode "]" _4)) ) -# 29054 "parser_cocci_menhir.ml" +# 29097 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29080,17 +29123,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_disj_ident = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 29086 "parser_cocci_menhir.ml" +# 29129 "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_ = -# 1585 "parser_cocci_menhir.mly" +# 1588 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) ) -# 29094 "parser_cocci_menhir.ml" +# 29137 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29120,18 +29163,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_disj_ident = Obj.magic _3 in let _2 : ( -# 172 "parser_cocci_menhir.mly" +# 173 "parser_cocci_menhir.mly" (Data.clt) -# 29126 "parser_cocci_menhir.ml" +# 29169 "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_ = -# 1587 "parser_cocci_menhir.mly" +# 1590 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2, _3)) ) -# 29135 "parser_cocci_menhir.ml" +# 29178 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29155,17 +29198,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 29161 "parser_cocci_menhir.ml" +# 29204 "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_ = -# 1590 "parser_cocci_menhir.mly" +# 1593 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) ) -# 29169 "parser_cocci_menhir.ml" +# 29212 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29189,17 +29232,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 29195 "parser_cocci_menhir.ml" +# 29238 "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_ = -# 1592 "parser_cocci_menhir.mly" +# 1595 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) ) -# 29203 "parser_cocci_menhir.ml" +# 29246 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29233,25 +29276,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 29239 "parser_cocci_menhir.ml" +# 29282 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 29245 "parser_cocci_menhir.ml" +# 29288 "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_ = -# 1594 "parser_cocci_menhir.mly" +# 1597 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2, _3, P.clt2mcode ")" _4)) ) -# 29255 "parser_cocci_menhir.ml" +# 29298 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29273,9 +29316,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_postfix_expr_eexpr_invalid_ = -# 1580 "parser_cocci_menhir.mly" +# 1583 "parser_cocci_menhir.mly" ( _1 ) -# 29279 "parser_cocci_menhir.ml" +# 29322 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29309,24 +29352,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _4 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 29315 "parser_cocci_menhir.ml" +# 29358 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 29321 "parser_cocci_menhir.ml" +# 29364 "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_ = -# 1582 "parser_cocci_menhir.mly" +# 1585 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3, P.clt2mcode "]" _4)) ) -# 29330 "parser_cocci_menhir.ml" +# 29373 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29356,17 +29399,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_disj_ident = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 29362 "parser_cocci_menhir.ml" +# 29405 "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_ = -# 1585 "parser_cocci_menhir.mly" +# 1588 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) ) -# 29370 "parser_cocci_menhir.ml" +# 29413 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29396,18 +29439,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_disj_ident = Obj.magic _3 in let _2 : ( -# 172 "parser_cocci_menhir.mly" +# 173 "parser_cocci_menhir.mly" (Data.clt) -# 29402 "parser_cocci_menhir.ml" +# 29445 "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_ = -# 1587 "parser_cocci_menhir.mly" +# 1590 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2, _3)) ) -# 29411 "parser_cocci_menhir.ml" +# 29454 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29431,17 +29474,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 29437 "parser_cocci_menhir.ml" +# 29480 "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_ = -# 1590 "parser_cocci_menhir.mly" +# 1593 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) ) -# 29445 "parser_cocci_menhir.ml" +# 29488 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29465,17 +29508,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 29471 "parser_cocci_menhir.ml" +# 29514 "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_ = -# 1592 "parser_cocci_menhir.mly" +# 1595 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) ) -# 29479 "parser_cocci_menhir.ml" +# 29522 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29509,25 +29552,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 29515 "parser_cocci_menhir.ml" +# 29558 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 29521 "parser_cocci_menhir.ml" +# 29564 "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_ = -# 1594 "parser_cocci_menhir.mly" +# 1597 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2, _3, P.clt2mcode ")" _4)) ) -# 29531 "parser_cocci_menhir.ml" +# 29574 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29549,9 +29592,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_ = -# 1580 "parser_cocci_menhir.mly" +# 1583 "parser_cocci_menhir.mly" ( _1 ) -# 29555 "parser_cocci_menhir.ml" +# 29598 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29585,24 +29628,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _4 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 29591 "parser_cocci_menhir.ml" +# 29634 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 29597 "parser_cocci_menhir.ml" +# 29640 "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_ = -# 1582 "parser_cocci_menhir.mly" +# 1585 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3, P.clt2mcode "]" _4)) ) -# 29606 "parser_cocci_menhir.ml" +# 29649 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29632,17 +29675,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_disj_ident = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 29638 "parser_cocci_menhir.ml" +# 29681 "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_ = -# 1585 "parser_cocci_menhir.mly" +# 1588 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) ) -# 29646 "parser_cocci_menhir.ml" +# 29689 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29672,18 +29715,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_disj_ident = Obj.magic _3 in let _2 : ( -# 172 "parser_cocci_menhir.mly" +# 173 "parser_cocci_menhir.mly" (Data.clt) -# 29678 "parser_cocci_menhir.ml" +# 29721 "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_ = -# 1587 "parser_cocci_menhir.mly" +# 1590 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2, _3)) ) -# 29687 "parser_cocci_menhir.ml" +# 29730 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29707,17 +29750,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 29713 "parser_cocci_menhir.ml" +# 29756 "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_ = -# 1590 "parser_cocci_menhir.mly" +# 1593 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) ) -# 29721 "parser_cocci_menhir.ml" +# 29764 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29741,17 +29784,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 29747 "parser_cocci_menhir.ml" +# 29790 "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_ = -# 1592 "parser_cocci_menhir.mly" +# 1595 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) ) -# 29755 "parser_cocci_menhir.ml" +# 29798 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29785,25 +29828,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 29791 "parser_cocci_menhir.ml" +# 29834 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 29797 "parser_cocci_menhir.ml" +# 29840 "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_ = -# 1594 "parser_cocci_menhir.mly" +# 1597 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2, _3, P.clt2mcode ")" _4)) ) -# 29807 "parser_cocci_menhir.ml" +# 29850 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29825,9 +29868,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_postfix_expr_expr_invalid_ = -# 1580 "parser_cocci_menhir.mly" +# 1583 "parser_cocci_menhir.mly" ( _1 ) -# 29831 "parser_cocci_menhir.ml" +# 29874 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29861,24 +29904,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _4 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 29867 "parser_cocci_menhir.ml" +# 29910 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( -# 170 "parser_cocci_menhir.mly" +# 171 "parser_cocci_menhir.mly" (Data.clt) -# 29873 "parser_cocci_menhir.ml" +# 29916 "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_ = -# 1582 "parser_cocci_menhir.mly" +# 1585 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3, P.clt2mcode "]" _4)) ) -# 29882 "parser_cocci_menhir.ml" +# 29925 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29908,17 +29951,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_disj_ident = Obj.magic _3 in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 29914 "parser_cocci_menhir.ml" +# 29957 "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_ = -# 1585 "parser_cocci_menhir.mly" +# 1588 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) ) -# 29922 "parser_cocci_menhir.ml" +# 29965 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29948,18 +29991,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _3 : 'tv_disj_ident = Obj.magic _3 in let _2 : ( -# 172 "parser_cocci_menhir.mly" +# 173 "parser_cocci_menhir.mly" (Data.clt) -# 29954 "parser_cocci_menhir.ml" +# 29997 "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_ = -# 1587 "parser_cocci_menhir.mly" +# 1590 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2, _3)) ) -# 29963 "parser_cocci_menhir.ml" +# 30006 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29983,17 +30026,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 29989 "parser_cocci_menhir.ml" +# 30032 "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_ = -# 1590 "parser_cocci_menhir.mly" +# 1593 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) ) -# 29997 "parser_cocci_menhir.ml" +# 30040 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30017,17 +30060,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 30023 "parser_cocci_menhir.ml" +# 30066 "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_ = -# 1592 "parser_cocci_menhir.mly" +# 1595 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) ) -# 30031 "parser_cocci_menhir.ml" +# 30074 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30061,25 +30104,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 30067 "parser_cocci_menhir.ml" +# 30110 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 30073 "parser_cocci_menhir.ml" +# 30116 "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_ = -# 1594 "parser_cocci_menhir.mly" +# 1597 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2, _3, P.clt2mcode ")" _4)) ) -# 30083 "parser_cocci_menhir.ml" +# 30126 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30101,9 +30144,44 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_eexpr_dot_expressions_ = -# 1599 "parser_cocci_menhir.mly" +# 1602 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 30107 "parser_cocci_menhir.ml" +# 30150 "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_ident = Obj.magic _2 in + let _1 : ( +# 159 "parser_cocci_menhir.mly" + (Data.clt) +# 30177 "parser_cocci_menhir.ml" + ) = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_primary_expr_eexpr_dot_expressions_ = +# 1604 "parser_cocci_menhir.mly" + ( let op = P.clt2mcode Ast.GetRefLabel _1 in + Ast0.wrap(Ast0.Unary(Ast0.wrap(Ast0.Ident(_2)), op)) ) +# 30185 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30122,17 +30200,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30128 "parser_cocci_menhir.ml" +# 30206 "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_ = -# 1601 "parser_cocci_menhir.mly" +# 1607 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 30136 "parser_cocci_menhir.ml" +# 30214 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30151,17 +30229,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30157 "parser_cocci_menhir.ml" +# 30235 "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_ = -# 1604 "parser_cocci_menhir.mly" +# 1610 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) ) -# 30165 "parser_cocci_menhir.ml" +# 30243 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30180,17 +30258,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30186 "parser_cocci_menhir.ml" +# 30264 "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_ = -# 1607 "parser_cocci_menhir.mly" +# 1613 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) ) -# 30194 "parser_cocci_menhir.ml" +# 30272 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30209,17 +30287,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30215 "parser_cocci_menhir.ml" +# 30293 "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_ = -# 1610 "parser_cocci_menhir.mly" +# 1616 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) ) -# 30223 "parser_cocci_menhir.ml" +# 30301 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30238,18 +30316,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 30244 "parser_cocci_menhir.ml" +# 30322 "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_ = -# 1613 "parser_cocci_menhir.mly" +# 1619 "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)) ) -# 30253 "parser_cocci_menhir.ml" +# 30331 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30268,17 +30346,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 130 "parser_cocci_menhir.mly" +# 131 "parser_cocci_menhir.mly" (Parse_aux.expinfo) -# 30274 "parser_cocci_menhir.ml" +# 30352 "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_ = -# 1617 "parser_cocci_menhir.mly" +# 1623 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) ) -# 30282 "parser_cocci_menhir.ml" +# 30360 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30297,18 +30375,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 30303 "parser_cocci_menhir.ml" +# 30381 "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_ = -# 1620 "parser_cocci_menhir.mly" +# 1626 "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)) ) -# 30312 "parser_cocci_menhir.ml" +# 30390 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30327,18 +30405,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 30333 "parser_cocci_menhir.ml" +# 30411 "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_ = -# 1624 "parser_cocci_menhir.mly" +# 1630 "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)) ) -# 30342 "parser_cocci_menhir.ml" +# 30420 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30357,18 +30435,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 30363 "parser_cocci_menhir.ml" +# 30441 "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_ = -# 1628 "parser_cocci_menhir.mly" +# 1634 "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)) ) -# 30372 "parser_cocci_menhir.ml" +# 30450 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30397,23 +30475,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 30403 "parser_cocci_menhir.ml" +# 30481 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 30409 "parser_cocci_menhir.ml" +# 30487 "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_ = -# 1632 "parser_cocci_menhir.mly" +# 1638 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2, P.clt2mcode ")" _3)) ) -# 30417 "parser_cocci_menhir.ml" +# 30495 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30442,25 +30520,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 30448 "parser_cocci_menhir.ml" +# 30526 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 30454 "parser_cocci_menhir.ml" +# 30532 "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_ = -# 1635 "parser_cocci_menhir.mly" +# 1641 "parser_cocci_menhir.mly" ( let (mids,code) = _2 in Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1, code, mids, P.clt2mcode ")" _3)) ) -# 30464 "parser_cocci_menhir.ml" +# 30542 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30482,9 +30560,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_ = -# 1639 "parser_cocci_menhir.mly" +# 1645 "parser_cocci_menhir.mly" ( _1 ) -# 30488 "parser_cocci_menhir.ml" +# 30566 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30506,9 +30584,44 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_eexpr_invalid_ = -# 1599 "parser_cocci_menhir.mly" +# 1602 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 30512 "parser_cocci_menhir.ml" +# 30590 "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_ident = Obj.magic _2 in + let _1 : ( +# 159 "parser_cocci_menhir.mly" + (Data.clt) +# 30617 "parser_cocci_menhir.ml" + ) = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_primary_expr_eexpr_invalid_ = +# 1604 "parser_cocci_menhir.mly" + ( let op = P.clt2mcode Ast.GetRefLabel _1 in + Ast0.wrap(Ast0.Unary(Ast0.wrap(Ast0.Ident(_2)), op)) ) +# 30625 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30527,17 +30640,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30533 "parser_cocci_menhir.ml" +# 30646 "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_ = -# 1601 "parser_cocci_menhir.mly" +# 1607 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 30541 "parser_cocci_menhir.ml" +# 30654 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30556,17 +30669,46 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30562 "parser_cocci_menhir.ml" +# 30675 "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_ = -# 1604 "parser_cocci_menhir.mly" +# 1610 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) ) -# 30570 "parser_cocci_menhir.ml" +# 30683 "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 : ( +# 156 "parser_cocci_menhir.mly" + (string * Data.clt) +# 30704 "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_ = +# 1613 "parser_cocci_menhir.mly" + ( let (x,clt) = _1 in + Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) ) +# 30712 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30585,46 +30727,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30591 "parser_cocci_menhir.ml" +# 30733 "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_ = -# 1607 "parser_cocci_menhir.mly" - ( let (x,clt) = _1 in - Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) ) -# 30599 "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 : ( -# 155 "parser_cocci_menhir.mly" - (string * Data.clt) -# 30620 "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_ = -# 1610 "parser_cocci_menhir.mly" +# 1616 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) ) -# 30628 "parser_cocci_menhir.ml" +# 30741 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30643,18 +30756,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 30649 "parser_cocci_menhir.ml" +# 30762 "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_ = -# 1613 "parser_cocci_menhir.mly" +# 1619 "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)) ) -# 30658 "parser_cocci_menhir.ml" +# 30771 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30673,17 +30786,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 130 "parser_cocci_menhir.mly" +# 131 "parser_cocci_menhir.mly" (Parse_aux.expinfo) -# 30679 "parser_cocci_menhir.ml" +# 30792 "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_ = -# 1617 "parser_cocci_menhir.mly" +# 1623 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) ) -# 30687 "parser_cocci_menhir.ml" +# 30800 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30702,18 +30815,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 30708 "parser_cocci_menhir.ml" +# 30821 "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_ = -# 1620 "parser_cocci_menhir.mly" +# 1626 "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)) ) -# 30717 "parser_cocci_menhir.ml" +# 30830 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30732,18 +30845,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 30738 "parser_cocci_menhir.ml" +# 30851 "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_ = -# 1624 "parser_cocci_menhir.mly" +# 1630 "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)) ) -# 30747 "parser_cocci_menhir.ml" +# 30860 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30762,18 +30875,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 30768 "parser_cocci_menhir.ml" +# 30881 "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_ = -# 1628 "parser_cocci_menhir.mly" +# 1634 "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)) ) -# 30777 "parser_cocci_menhir.ml" +# 30890 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30802,23 +30915,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 30808 "parser_cocci_menhir.ml" +# 30921 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 30814 "parser_cocci_menhir.ml" +# 30927 "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_ = -# 1632 "parser_cocci_menhir.mly" +# 1638 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2, P.clt2mcode ")" _3)) ) -# 30822 "parser_cocci_menhir.ml" +# 30935 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30847,25 +30960,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 30853 "parser_cocci_menhir.ml" +# 30966 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 30859 "parser_cocci_menhir.ml" +# 30972 "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_ = -# 1635 "parser_cocci_menhir.mly" +# 1641 "parser_cocci_menhir.mly" ( let (mids,code) = _2 in Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1, code, mids, P.clt2mcode ")" _3)) ) -# 30869 "parser_cocci_menhir.ml" +# 30982 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30887,9 +31000,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_eexpr_invalid_ = -# 1639 "parser_cocci_menhir.mly" +# 1645 "parser_cocci_menhir.mly" ( _1 ) -# 30893 "parser_cocci_menhir.ml" +# 31006 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30911,9 +31024,44 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_eexpr_nest_expressions_ = -# 1599 "parser_cocci_menhir.mly" +# 1602 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 30917 "parser_cocci_menhir.ml" +# 31030 "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_ident = Obj.magic _2 in + let _1 : ( +# 159 "parser_cocci_menhir.mly" + (Data.clt) +# 31057 "parser_cocci_menhir.ml" + ) = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_primary_expr_eexpr_nest_expressions_ = +# 1604 "parser_cocci_menhir.mly" + ( let op = P.clt2mcode Ast.GetRefLabel _1 in + Ast0.wrap(Ast0.Unary(Ast0.wrap(Ast0.Ident(_2)), op)) ) +# 31065 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30932,17 +31080,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30938 "parser_cocci_menhir.ml" +# 31086 "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_ = -# 1601 "parser_cocci_menhir.mly" +# 1607 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 30946 "parser_cocci_menhir.ml" +# 31094 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30961,17 +31109,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30967 "parser_cocci_menhir.ml" +# 31115 "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_ = -# 1604 "parser_cocci_menhir.mly" +# 1610 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) ) -# 30975 "parser_cocci_menhir.ml" +# 31123 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30990,17 +31138,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 30996 "parser_cocci_menhir.ml" +# 31144 "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_ = -# 1607 "parser_cocci_menhir.mly" +# 1613 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) ) -# 31004 "parser_cocci_menhir.ml" +# 31152 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31019,17 +31167,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 31025 "parser_cocci_menhir.ml" +# 31173 "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_ = -# 1610 "parser_cocci_menhir.mly" +# 1616 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) ) -# 31033 "parser_cocci_menhir.ml" +# 31181 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31048,18 +31196,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 31054 "parser_cocci_menhir.ml" +# 31202 "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_ = -# 1613 "parser_cocci_menhir.mly" +# 1619 "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)) ) -# 31063 "parser_cocci_menhir.ml" +# 31211 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31078,17 +31226,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 130 "parser_cocci_menhir.mly" +# 131 "parser_cocci_menhir.mly" (Parse_aux.expinfo) -# 31084 "parser_cocci_menhir.ml" +# 31232 "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_ = -# 1617 "parser_cocci_menhir.mly" +# 1623 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) ) -# 31092 "parser_cocci_menhir.ml" +# 31240 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31107,18 +31255,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 31113 "parser_cocci_menhir.ml" +# 31261 "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_ = -# 1620 "parser_cocci_menhir.mly" +# 1626 "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)) ) -# 31122 "parser_cocci_menhir.ml" +# 31270 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31137,18 +31285,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 31143 "parser_cocci_menhir.ml" +# 31291 "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_ = -# 1624 "parser_cocci_menhir.mly" +# 1630 "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)) ) -# 31152 "parser_cocci_menhir.ml" +# 31300 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31167,18 +31315,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 31173 "parser_cocci_menhir.ml" +# 31321 "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_ = -# 1628 "parser_cocci_menhir.mly" +# 1634 "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)) ) -# 31182 "parser_cocci_menhir.ml" +# 31330 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31207,23 +31355,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 31213 "parser_cocci_menhir.ml" +# 31361 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 31219 "parser_cocci_menhir.ml" +# 31367 "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_ = -# 1632 "parser_cocci_menhir.mly" +# 1638 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2, P.clt2mcode ")" _3)) ) -# 31227 "parser_cocci_menhir.ml" +# 31375 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31252,25 +31400,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 31258 "parser_cocci_menhir.ml" +# 31406 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 31264 "parser_cocci_menhir.ml" +# 31412 "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_ = -# 1635 "parser_cocci_menhir.mly" +# 1641 "parser_cocci_menhir.mly" ( let (mids,code) = _2 in Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1, code, mids, P.clt2mcode ")" _3)) ) -# 31274 "parser_cocci_menhir.ml" +# 31422 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31292,9 +31440,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_ = -# 1639 "parser_cocci_menhir.mly" +# 1645 "parser_cocci_menhir.mly" ( _1 ) -# 31298 "parser_cocci_menhir.ml" +# 31446 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31316,9 +31464,44 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_expr_invalid_ = -# 1599 "parser_cocci_menhir.mly" +# 1602 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 31322 "parser_cocci_menhir.ml" +# 31470 "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_ident = Obj.magic _2 in + let _1 : ( +# 159 "parser_cocci_menhir.mly" + (Data.clt) +# 31497 "parser_cocci_menhir.ml" + ) = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_primary_expr_expr_invalid_ = +# 1604 "parser_cocci_menhir.mly" + ( let op = P.clt2mcode Ast.GetRefLabel _1 in + Ast0.wrap(Ast0.Unary(Ast0.wrap(Ast0.Ident(_2)), op)) ) +# 31505 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31337,17 +31520,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 31343 "parser_cocci_menhir.ml" +# 31526 "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_ = -# 1601 "parser_cocci_menhir.mly" +# 1607 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 31351 "parser_cocci_menhir.ml" +# 31534 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31366,17 +31549,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 31372 "parser_cocci_menhir.ml" +# 31555 "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_ = -# 1604 "parser_cocci_menhir.mly" +# 1610 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) ) -# 31380 "parser_cocci_menhir.ml" +# 31563 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31395,17 +31578,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 31401 "parser_cocci_menhir.ml" +# 31584 "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_ = -# 1607 "parser_cocci_menhir.mly" +# 1613 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) ) -# 31409 "parser_cocci_menhir.ml" +# 31592 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31424,17 +31607,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 31430 "parser_cocci_menhir.ml" +# 31613 "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_ = -# 1610 "parser_cocci_menhir.mly" +# 1616 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) ) -# 31438 "parser_cocci_menhir.ml" +# 31621 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31453,18 +31636,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 31459 "parser_cocci_menhir.ml" +# 31642 "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_ = -# 1613 "parser_cocci_menhir.mly" +# 1619 "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)) ) -# 31468 "parser_cocci_menhir.ml" +# 31651 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31483,17 +31666,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 130 "parser_cocci_menhir.mly" +# 131 "parser_cocci_menhir.mly" (Parse_aux.expinfo) -# 31489 "parser_cocci_menhir.ml" +# 31672 "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_ = -# 1617 "parser_cocci_menhir.mly" +# 1623 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) ) -# 31497 "parser_cocci_menhir.ml" +# 31680 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31512,18 +31695,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 31518 "parser_cocci_menhir.ml" +# 31701 "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_ = -# 1620 "parser_cocci_menhir.mly" +# 1626 "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)) ) -# 31527 "parser_cocci_menhir.ml" +# 31710 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31542,18 +31725,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 31548 "parser_cocci_menhir.ml" +# 31731 "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_ = -# 1624 "parser_cocci_menhir.mly" +# 1630 "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)) ) -# 31557 "parser_cocci_menhir.ml" +# 31740 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31572,18 +31755,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 135 "parser_cocci_menhir.mly" +# 136 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 31578 "parser_cocci_menhir.ml" +# 31761 "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_ = -# 1628 "parser_cocci_menhir.mly" +# 1634 "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)) ) -# 31587 "parser_cocci_menhir.ml" +# 31770 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31612,23 +31795,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 31618 "parser_cocci_menhir.ml" +# 31801 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 31624 "parser_cocci_menhir.ml" +# 31807 "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_ = -# 1632 "parser_cocci_menhir.mly" +# 1638 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2, P.clt2mcode ")" _3)) ) -# 31632 "parser_cocci_menhir.ml" +# 31815 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31657,25 +31840,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 31663 "parser_cocci_menhir.ml" +# 31846 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_expr_eexpr_ = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 31669 "parser_cocci_menhir.ml" +# 31852 "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_ = -# 1635 "parser_cocci_menhir.mly" +# 1641 "parser_cocci_menhir.mly" ( let (mids,code) = _2 in Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1, code, mids, P.clt2mcode ")" _3)) ) -# 31679 "parser_cocci_menhir.ml" +# 31862 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31697,9 +31880,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_expr_invalid_ = -# 1639 "parser_cocci_menhir.mly" +# 1645 "parser_cocci_menhir.mly" ( _1 ) -# 31703 "parser_cocci_menhir.ml" +# 31886 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31719,9 +31902,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure = -# 260 "parser_cocci_menhir.mly" +# 261 "parser_cocci_menhir.mly" ( Ast0.Pure ) -# 31725 "parser_cocci_menhir.ml" +# 31908 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31741,9 +31924,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure = -# 261 "parser_cocci_menhir.mly" +# 262 "parser_cocci_menhir.mly" ( Ast0.Context ) -# 31747 "parser_cocci_menhir.ml" +# 31930 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31767,9 +31950,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_pure = -# 262 "parser_cocci_menhir.mly" +# 263 "parser_cocci_menhir.mly" ( Ast0.PureContext ) -# 31773 "parser_cocci_menhir.ml" +# 31956 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31793,9 +31976,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_pure = -# 263 "parser_cocci_menhir.mly" +# 264 "parser_cocci_menhir.mly" ( Ast0.PureContext ) -# 31799 "parser_cocci_menhir.ml" +# 31982 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31810,9 +31993,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_pure = -# 264 "parser_cocci_menhir.mly" +# 265 "parser_cocci_menhir.mly" ( Ast0.Impure ) -# 31816 "parser_cocci_menhir.ml" +# 31999 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31833,14 +32016,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 31837 "parser_cocci_menhir.ml" +# 32020 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident = -# 1653 "parser_cocci_menhir.mly" +# 1659 "parser_cocci_menhir.mly" ( _1 ) -# 31844 "parser_cocci_menhir.ml" +# 32027 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31860,9 +32043,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1656 "parser_cocci_menhir.mly" +# 1662 "parser_cocci_menhir.mly" ( "identifier" ) -# 31866 "parser_cocci_menhir.ml" +# 32049 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31882,9 +32065,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1657 "parser_cocci_menhir.mly" +# 1663 "parser_cocci_menhir.mly" ( "expression" ) -# 31888 "parser_cocci_menhir.ml" +# 32071 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31904,9 +32087,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1658 "parser_cocci_menhir.mly" +# 1664 "parser_cocci_menhir.mly" ( "statement" ) -# 31910 "parser_cocci_menhir.ml" +# 32093 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31926,9 +32109,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1659 "parser_cocci_menhir.mly" +# 1665 "parser_cocci_menhir.mly" ( "function" ) -# 31932 "parser_cocci_menhir.ml" +# 32115 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31948,9 +32131,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1660 "parser_cocci_menhir.mly" +# 1666 "parser_cocci_menhir.mly" ( "local" ) -# 31954 "parser_cocci_menhir.ml" +# 32137 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31970,9 +32153,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1661 "parser_cocci_menhir.mly" +# 1667 "parser_cocci_menhir.mly" ( "type" ) -# 31976 "parser_cocci_menhir.ml" +# 32159 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31992,9 +32175,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1662 "parser_cocci_menhir.mly" +# 1668 "parser_cocci_menhir.mly" ( "parameter" ) -# 31998 "parser_cocci_menhir.ml" +# 32181 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32014,9 +32197,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1663 "parser_cocci_menhir.mly" +# 1669 "parser_cocci_menhir.mly" ( "idexpression" ) -# 32020 "parser_cocci_menhir.ml" +# 32203 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32036,9 +32219,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1664 "parser_cocci_menhir.mly" +# 1670 "parser_cocci_menhir.mly" ( "initialiser" ) -# 32042 "parser_cocci_menhir.ml" +# 32225 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32058,9 +32241,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1665 "parser_cocci_menhir.mly" +# 1671 "parser_cocci_menhir.mly" ( "list" ) -# 32064 "parser_cocci_menhir.ml" +# 32247 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32080,9 +32263,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1666 "parser_cocci_menhir.mly" +# 1672 "parser_cocci_menhir.mly" ( "fresh" ) -# 32086 "parser_cocci_menhir.ml" +# 32269 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32102,9 +32285,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1667 "parser_cocci_menhir.mly" +# 1673 "parser_cocci_menhir.mly" ( "constant" ) -# 32108 "parser_cocci_menhir.ml" +# 32291 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32124,9 +32307,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1668 "parser_cocci_menhir.mly" +# 1674 "parser_cocci_menhir.mly" ( "error" ) -# 32130 "parser_cocci_menhir.ml" +# 32313 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32146,9 +32329,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1669 "parser_cocci_menhir.mly" +# 1675 "parser_cocci_menhir.mly" ( "words" ) -# 32152 "parser_cocci_menhir.ml" +# 32335 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32168,9 +32351,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1670 "parser_cocci_menhir.mly" +# 1676 "parser_cocci_menhir.mly" ( "pure" ) -# 32174 "parser_cocci_menhir.ml" +# 32357 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32190,9 +32373,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1671 "parser_cocci_menhir.mly" +# 1677 "parser_cocci_menhir.mly" ( "context" ) -# 32196 "parser_cocci_menhir.ml" +# 32379 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32212,9 +32395,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1672 "parser_cocci_menhir.mly" +# 1678 "parser_cocci_menhir.mly" ( "generated" ) -# 32218 "parser_cocci_menhir.ml" +# 32401 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32234,9 +32417,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1673 "parser_cocci_menhir.mly" +# 1679 "parser_cocci_menhir.mly" ( "typedef" ) -# 32240 "parser_cocci_menhir.ml" +# 32423 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32256,9 +32439,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1674 "parser_cocci_menhir.mly" +# 1680 "parser_cocci_menhir.mly" ( "declarer" ) -# 32262 "parser_cocci_menhir.ml" +# 32445 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32278,9 +32461,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1675 "parser_cocci_menhir.mly" +# 1681 "parser_cocci_menhir.mly" ( "iterator" ) -# 32284 "parser_cocci_menhir.ml" +# 32467 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32300,9 +32483,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1676 "parser_cocci_menhir.mly" +# 1682 "parser_cocci_menhir.mly" ( "name" ) -# 32306 "parser_cocci_menhir.ml" +# 32489 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32322,9 +32505,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1677 "parser_cocci_menhir.mly" +# 1683 "parser_cocci_menhir.mly" ( "position" ) -# 32328 "parser_cocci_menhir.ml" +# 32511 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32346,9 +32529,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 = -# 1684 "parser_cocci_menhir.mly" +# 1690 "parser_cocci_menhir.mly" ( (None,P.id2name _1) ) -# 32352 "parser_cocci_menhir.ml" +# 32535 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32370,9 +32553,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 = -# 1685 "parser_cocci_menhir.mly" +# 1691 "parser_cocci_menhir.mly" ( (None,_1) ) -# 32376 "parser_cocci_menhir.ml" +# 32559 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32394,9 +32577,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 = -# 1686 "parser_cocci_menhir.mly" +# 1692 "parser_cocci_menhir.mly" ( _1 ) -# 32400 "parser_cocci_menhir.ml" +# 32583 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32424,13 +32607,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_ = -# 1713 "parser_cocci_menhir.mly" +# 1726 "parser_cocci_menhir.mly" ( match optc with None -> (i, Ast0.NoConstraint) | Some c -> (i, c) ) -# 32434 "parser_cocci_menhir.ml" +# 32617 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32458,13 +32641,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_ = -# 1713 "parser_cocci_menhir.mly" +# 1726 "parser_cocci_menhir.mly" ( match optc with None -> (i, Ast0.NoConstraint) | Some c -> (i, c) ) -# 32468 "parser_cocci_menhir.ml" +# 32651 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32492,13 +32675,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_ = -# 1738 "parser_cocci_menhir.mly" +# 1751 "parser_cocci_menhir.mly" ( match c with None -> (i, Ast.IdNoConstraint) | Some constraint_ -> (i,constraint_) ) -# 32502 "parser_cocci_menhir.ml" +# 32685 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32526,14 +32709,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_ = -# 1721 "parser_cocci_menhir.mly" +# 1734 "parser_cocci_menhir.mly" ( Common.Left (match c with None -> (i, Ast.IdNoConstraint) | Some constraint_ -> (i,constraint_)) ) -# 32537 "parser_cocci_menhir.ml" +# 32720 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32563,7 +32746,7 @@ 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_ = -# 1728 "parser_cocci_menhir.mly" +# 1741 "parser_cocci_menhir.mly" ( let nm = P.id2name _3 in Iteration.parsed_virtual_identifiers := @@ -32571,7 +32754,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct !Iteration.parsed_virtual_identifiers; Common.Right nm ) -# 32575 "parser_cocci_menhir.ml" +# 32758 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32593,9 +32776,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 = -# 1689 "parser_cocci_menhir.mly" +# 1695 "parser_cocci_menhir.mly" ( (_1,Ast.NoVal) ) -# 32599 "parser_cocci_menhir.ml" +# 32782 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32627,11 +32810,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 = -# 1692 "parser_cocci_menhir.mly" +# 1698 "parser_cocci_menhir.mly" ( match _3 with [Ast.SeedString s] -> (_1,Ast.StringSeed s) | _ -> (_1,Ast.ListSeed _3) ) -# 32635 "parser_cocci_menhir.ml" +# 32818 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32659,11 +32842,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_ = -# 1707 "parser_cocci_menhir.mly" +# 1720 "parser_cocci_menhir.mly" ( (i, l) ) -# 32667 "parser_cocci_menhir.ml" +# 32850 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32685,9 +32868,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 = -# 1799 "parser_cocci_menhir.mly" +# 1812 "parser_cocci_menhir.mly" (Ast0.NotIdCstrt re) -# 32691 "parser_cocci_menhir.ml" +# 32874 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32709,9 +32892,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 = -# 1800 "parser_cocci_menhir.mly" +# 1813 "parser_cocci_menhir.mly" (Ast0.NotExpCstrt ne) -# 32715 "parser_cocci_menhir.ml" +# 32898 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32733,9 +32916,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 = -# 1801 "parser_cocci_menhir.mly" +# 1814 "parser_cocci_menhir.mly" (Ast0.SubExpCstrt s) -# 32739 "parser_cocci_menhir.ml" +# 32922 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32757,9 +32940,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_re_ in let _endpos = _endpos_re_ in let _v : 'tv_re_or_not_eqid = -# 1745 "parser_cocci_menhir.mly" +# 1758 "parser_cocci_menhir.mly" (Ast.IdRegExpConstraint re) -# 32763 "parser_cocci_menhir.ml" +# 32946 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32781,9 +32964,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ne_ in let _endpos = _endpos_ne_ in let _v : 'tv_re_or_not_eqid = -# 1746 "parser_cocci_menhir.mly" +# 1759 "parser_cocci_menhir.mly" (ne) -# 32787 "parser_cocci_menhir.ml" +# 32970 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32806,21 +32989,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let re : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 32812 "parser_cocci_menhir.ml" +# 32995 "parser_cocci_menhir.ml" ) = Obj.magic re in let _startpos = _startpos__1_ in let _endpos = _endpos_re_ in let _v : 'tv_regexp_eqid = -# 1750 "parser_cocci_menhir.mly" +# 1763 "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) ) -# 32824 "parser_cocci_menhir.ml" +# 33007 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32843,21 +33026,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let re : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 32849 "parser_cocci_menhir.ml" +# 33032 "parser_cocci_menhir.ml" ) = Obj.magic re in let _startpos = _startpos__1_ in let _endpos = _endpos_re_ in let _v : 'tv_regexp_eqid = -# 1757 "parser_cocci_menhir.mly" +# 1770 "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) ) -# 32861 "parser_cocci_menhir.ml" +# 33044 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32872,13 +33055,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in let _endpos = _startpos in let _v : ( -# 201 "parser_cocci_menhir.mly" +# 202 "parser_cocci_menhir.mly" (unit) -# 32878 "parser_cocci_menhir.ml" +# 33061 "parser_cocci_menhir.ml" ) = -# 242 "parser_cocci_menhir.mly" +# 243 "parser_cocci_menhir.mly" ( ) -# 32882 "parser_cocci_menhir.ml" +# 33065 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32900,9 +33083,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_rule_elem_statement = -# 1121 "parser_cocci_menhir.mly" +# 1124 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),_1)) ) -# 32906 "parser_cocci_menhir.ml" +# 33089 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32926,17 +33109,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 32932 "parser_cocci_menhir.ml" +# 33115 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_expr = Obj.magic _1 in + let _1 : 'tv_option_expr_ = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_rule_elem_statement = -# 1122 "parser_cocci_menhir.mly" - ( P.exp_stm _1 _2 ) -# 32940 "parser_cocci_menhir.ml" +# 1125 "parser_cocci_menhir.mly" + ( P.exp_stm _1 _2 ) +# 33123 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32965,22 +33148,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 32971 "parser_cocci_menhir.ml" +# 33154 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 32977 "parser_cocci_menhir.ml" +# 33160 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_rule_elem_statement = -# 1123 "parser_cocci_menhir.mly" +# 1126 "parser_cocci_menhir.mly" ( P.ret_exp _1 _2 _3 ) -# 32984 "parser_cocci_menhir.ml" +# 33167 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33004,21 +33187,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 33010 "parser_cocci_menhir.ml" +# 33193 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 33015 "parser_cocci_menhir.ml" +# 33198 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_rule_elem_statement = -# 1124 "parser_cocci_menhir.mly" +# 1127 "parser_cocci_menhir.mly" ( P.ret _1 _2 ) -# 33022 "parser_cocci_menhir.ml" +# 33205 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33042,21 +33225,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 33048 "parser_cocci_menhir.ml" +# 33231 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 33053 "parser_cocci_menhir.ml" +# 33236 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_rule_elem_statement = -# 1125 "parser_cocci_menhir.mly" +# 1128 "parser_cocci_menhir.mly" ( P.break _1 _2 ) -# 33060 "parser_cocci_menhir.ml" +# 33243 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33080,21 +33263,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 33086 "parser_cocci_menhir.ml" +# 33269 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 33091 "parser_cocci_menhir.ml" +# 33274 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_rule_elem_statement = -# 1126 "parser_cocci_menhir.mly" +# 1129 "parser_cocci_menhir.mly" ( P.cont _1 _2 ) -# 33098 "parser_cocci_menhir.ml" +# 33281 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33123,26 +33306,26 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 33129 "parser_cocci_menhir.ml" +# 33312 "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 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 33135 "parser_cocci_menhir.ml" +# 33318 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_rule_elem_statement = -# 1128 "parser_cocci_menhir.mly" +# 1131 "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)) ) -# 33146 "parser_cocci_menhir.ml" +# 33329 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33196,20 +33379,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__7_ in let _v : ( -# 223 "parser_cocci_menhir.mly" +# 224 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 33202 "parser_cocci_menhir.ml" +# 33385 "parser_cocci_menhir.ml" ) = let nm = # 39 "standard.mly" ( None ) -# 33207 "parser_cocci_menhir.ml" +# 33390 "parser_cocci_menhir.ml" in -# 272 "parser_cocci_menhir.mly" +# 273 "parser_cocci_menhir.mly" ( P.make_cocci_rule_name_result nm d i a e ee ) -# 33213 "parser_cocci_menhir.ml" +# 33396 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33269,21 +33452,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_x0_ in let _endpos = _endpos__8_ in let _v : ( -# 223 "parser_cocci_menhir.mly" +# 224 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 33275 "parser_cocci_menhir.ml" +# 33458 "parser_cocci_menhir.ml" ) = let nm = let x = x0 in # 41 "standard.mly" ( Some x ) -# 33281 "parser_cocci_menhir.ml" +# 33464 "parser_cocci_menhir.ml" in -# 272 "parser_cocci_menhir.mly" +# 273 "parser_cocci_menhir.mly" ( P.make_cocci_rule_name_result nm d i a e ee ) -# 33287 "parser_cocci_menhir.ml" +# 33470 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33341,13 +33524,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__8_ in let _v : ( -# 223 "parser_cocci_menhir.mly" +# 224 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 33347 "parser_cocci_menhir.ml" +# 33530 "parser_cocci_menhir.ml" ) = -# 277 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.make_generated_rule_name_result None d i a e ee ) -# 33351 "parser_cocci_menhir.ml" +# 33534 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33387,20 +33570,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : ( -# 223 "parser_cocci_menhir.mly" +# 224 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 33393 "parser_cocci_menhir.ml" +# 33576 "parser_cocci_menhir.ml" ) = let nm = # 39 "standard.mly" ( None ) -# 33398 "parser_cocci_menhir.ml" +# 33581 "parser_cocci_menhir.ml" in -# 279 "parser_cocci_menhir.mly" +# 280 "parser_cocci_menhir.mly" ( P.make_script_rule_name_result lang nm d ) -# 33404 "parser_cocci_menhir.ml" +# 33587 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33446,21 +33629,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__6_ in let _v : ( -# 223 "parser_cocci_menhir.mly" +# 224 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 33452 "parser_cocci_menhir.ml" +# 33635 "parser_cocci_menhir.ml" ) = let nm = let x = x0 in # 41 "standard.mly" ( Some x ) -# 33458 "parser_cocci_menhir.ml" +# 33641 "parser_cocci_menhir.ml" in -# 279 "parser_cocci_menhir.mly" +# 280 "parser_cocci_menhir.mly" ( P.make_script_rule_name_result lang nm d ) -# 33464 "parser_cocci_menhir.ml" +# 33647 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33500,13 +33683,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : ( -# 223 "parser_cocci_menhir.mly" +# 224 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 33506 "parser_cocci_menhir.ml" +# 33689 "parser_cocci_menhir.ml" ) = -# 281 "parser_cocci_menhir.mly" +# 282 "parser_cocci_menhir.mly" ( P.make_initial_script_rule_name_result lang d ) -# 33510 "parser_cocci_menhir.ml" +# 33693 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33546,13 +33729,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : ( -# 223 "parser_cocci_menhir.mly" +# 224 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 33552 "parser_cocci_menhir.ml" +# 33735 "parser_cocci_menhir.ml" ) = -# 283 "parser_cocci_menhir.mly" +# 284 "parser_cocci_menhir.mly" ( P.make_final_script_rule_name_result lang d ) -# 33556 "parser_cocci_menhir.ml" +# 33739 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33578,13 +33761,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_py_ in let _endpos = _endpos__2_ in let _v : ( -# 229 "parser_cocci_menhir.mly" +# 230 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 33584 "parser_cocci_menhir.ml" +# 33767 "parser_cocci_menhir.ml" ) = -# 2315 "parser_cocci_menhir.mly" +# 2329 "parser_cocci_menhir.mly" ( ((Some (P.id2name py), None), None) ) -# 33588 "parser_cocci_menhir.ml" +# 33771 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33616,13 +33799,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_py_ in let _endpos = _endpos__3_ in let _v : ( -# 229 "parser_cocci_menhir.mly" +# 230 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 33622 "parser_cocci_menhir.ml" +# 33805 "parser_cocci_menhir.ml" ) = -# 2317 "parser_cocci_menhir.mly" +# 2331 "parser_cocci_menhir.mly" ( ((Some (P.id2name py), None), Some _2) ) -# 33626 "parser_cocci_menhir.ml" +# 33809 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33670,13 +33853,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__7_ in let _v : ( -# 229 "parser_cocci_menhir.mly" +# 230 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 33676 "parser_cocci_menhir.ml" +# 33859 "parser_cocci_menhir.ml" ) = -# 2319 "parser_cocci_menhir.mly" +# 2333 "parser_cocci_menhir.mly" ( ((None, Some (P.id2name ast)), Some _6) ) -# 33680 "parser_cocci_menhir.ml" +# 33863 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33724,13 +33907,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__7_ in let _v : ( -# 229 "parser_cocci_menhir.mly" +# 230 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 33730 "parser_cocci_menhir.ml" +# 33913 "parser_cocci_menhir.ml" ) = -# 2321 "parser_cocci_menhir.mly" +# 2335 "parser_cocci_menhir.mly" ( ((Some (P.id2name str), None), Some _6) ) -# 33734 "parser_cocci_menhir.ml" +# 33917 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33780,13 +33963,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__7_ in let _v : ( -# 229 "parser_cocci_menhir.mly" +# 230 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 33786 "parser_cocci_menhir.ml" +# 33969 "parser_cocci_menhir.ml" ) = -# 2323 "parser_cocci_menhir.mly" +# 2337 "parser_cocci_menhir.mly" ( ((Some (P.id2name str), Some (P.id2name ast)), Some _6) ) -# 33790 "parser_cocci_menhir.ml" +# 33973 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33821,16 +34004,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 112 "parser_cocci_menhir.mly" (string) -# 33825 "parser_cocci_menhir.ml" +# 34008 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _startpos = _startpos__1_ in let _endpos = _endpos_cocci_ in let _v : 'tv_script_name_decl = -# 2327 "parser_cocci_menhir.mly" +# 2341 "parser_cocci_menhir.mly" ( let nm = P.id2name cocci in let mv = Parse_aux.lookup _2 nm in ((_2, nm), mv) ) -# 33834 "parser_cocci_menhir.ml" +# 34017 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33864,7 +34047,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_cocci_ in let _v : 'tv_script_name_decl = -# 2331 "parser_cocci_menhir.mly" +# 2345 "parser_cocci_menhir.mly" ( let nm = P.id2name cocci in Iteration.parsed_virtual_identifiers := Common.union_set [nm] @@ -33872,7 +34055,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let name = ("virtual", nm) in let mv = Ast.MetaIdDecl(Ast.NONE,name) in (name,mv) ) -# 33876 "parser_cocci_menhir.ml" +# 34059 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33891,16 +34074,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 33897 "parser_cocci_menhir.ml" +# 34080 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_seed_elem = -# 1697 "parser_cocci_menhir.mly" +# 1703 "parser_cocci_menhir.mly" ( let (x,_) = _1 in Ast.SeedString x ) -# 33904 "parser_cocci_menhir.ml" +# 34087 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33920,15 +34103,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _1 : ( # 128 "parser_cocci_menhir.mly" - (Parse_aux.idinfo) -# 33925 "parser_cocci_menhir.ml" + (Parse_aux.midinfo) +# 34108 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_seed_elem = -# 1698 "parser_cocci_menhir.mly" - ( let (x,_,_,_) = _1 in Ast.SeedId x ) -# 33932 "parser_cocci_menhir.ml" +# 1704 "parser_cocci_menhir.mly" + ( let (x,_,_,_,_) = _1 in Ast.SeedId x ) +# 34115 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33948,9 +34131,46 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_seed_elem = -# 1699 "parser_cocci_menhir.mly" +# 1705 "parser_cocci_menhir.mly" (failwith "tmeta") -# 33954 "parser_cocci_menhir.ml" +# 34137 "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.startp = _startpos__2_; + MenhirLib.EngineTypes.endp = _endpos__2_; + MenhirLib.EngineTypes.next = { + MenhirLib.EngineTypes.state = _menhir_s; + MenhirLib.EngineTypes.startp = _startpos__1_; + MenhirLib.EngineTypes.endp = _endpos__1_; + MenhirLib.EngineTypes.next = _menhir_stack; + }; + }; + } = _menhir_stack in + let _3 : 'tv_pure_ident = Obj.magic _3 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__3_ in + let _v : 'tv_seed_elem = +# 1707 "parser_cocci_menhir.mly" + ( let nm = ("virtual",P.id2name _3) in + Iteration.parsed_virtual_identifiers := + Common.union_set [snd nm] + !Iteration.parsed_virtual_identifiers; + try Ast.SeedString (List.assoc (snd nm) !Flag.defined_virtual_env) + with Not_found -> Ast.SeedId nm ) +# 34174 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33981,16 +34201,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 112 "parser_cocci_menhir.mly" (string) -# 33985 "parser_cocci_menhir.ml" +# 34205 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_seed_elem = -# 1701 "parser_cocci_menhir.mly" +# 1714 "parser_cocci_menhir.mly" ( let nm = (_1,P.id2name _3) in P.check_meta(Ast.MetaIdDecl(Ast.NONE,nm)); Ast.SeedId nm ) -# 33994 "parser_cocci_menhir.ml" +# 34214 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34009,16 +34229,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let x : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 34015 "parser_cocci_menhir.ml" +# 34235 "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 ] ) -# 34022 "parser_cocci_menhir.ml" +# 34242 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34047,16 +34267,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let xs : 'tv_separated_nonempty_list_TComma_TString_ = Obj.magic xs in let x : ( -# 155 "parser_cocci_menhir.mly" +# 156 "parser_cocci_menhir.mly" (string * Data.clt) -# 34053 "parser_cocci_menhir.ml" +# 34273 "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 ) -# 34060 "parser_cocci_menhir.ml" +# 34280 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34080,7 +34300,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_any_strict_ = # 144 "standard.mly" ( [ x ] ) -# 34084 "parser_cocci_menhir.ml" +# 34304 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34114,7 +34334,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_any_strict_ = # 146 "standard.mly" ( x :: xs ) -# 34118 "parser_cocci_menhir.ml" +# 34338 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34138,7 +34358,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_ctype_ = # 144 "standard.mly" ( [ x ] ) -# 34142 "parser_cocci_menhir.ml" +# 34362 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34172,7 +34392,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_ctype_ = # 146 "standard.mly" ( x :: xs ) -# 34176 "parser_cocci_menhir.ml" +# 34396 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34196,7 +34416,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_d_ident_ = # 144 "standard.mly" ( [ x ] ) -# 34200 "parser_cocci_menhir.ml" +# 34420 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34230,7 +34450,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_d_ident_ = # 146 "standard.mly" ( x :: xs ) -# 34234 "parser_cocci_menhir.ml" +# 34454 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34254,7 +34474,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ = # 144 "standard.mly" ( [ x ] ) -# 34258 "parser_cocci_menhir.ml" +# 34478 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34288,7 +34508,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ = # 146 "standard.mly" ( x :: xs ) -# 34292 "parser_cocci_menhir.ml" +# 34512 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34312,7 +34532,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ = # 144 "standard.mly" ( [ x ] ) -# 34316 "parser_cocci_menhir.ml" +# 34536 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34346,7 +34566,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ = # 146 "standard.mly" ( x :: xs ) -# 34350 "parser_cocci_menhir.ml" +# 34570 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34370,7 +34590,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ = # 144 "standard.mly" ( [ x ] ) -# 34374 "parser_cocci_menhir.ml" +# 34594 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34404,7 +34624,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ = # 146 "standard.mly" ( x :: xs ) -# 34408 "parser_cocci_menhir.ml" +# 34628 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34428,7 +34648,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = # 144 "standard.mly" ( [ x ] ) -# 34432 "parser_cocci_menhir.ml" +# 34652 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34462,7 +34682,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = # 146 "standard.mly" ( x :: xs ) -# 34466 "parser_cocci_menhir.ml" +# 34686 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34486,7 +34706,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 ] ) -# 34490 "parser_cocci_menhir.ml" +# 34710 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34520,7 +34740,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 ) -# 34524 "parser_cocci_menhir.ml" +# 34744 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34544,7 +34764,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 ] ) -# 34548 "parser_cocci_menhir.ml" +# 34768 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34578,7 +34798,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 ) -# 34582 "parser_cocci_menhir.ml" +# 34802 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34602,7 +34822,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 ] ) -# 34606 "parser_cocci_menhir.ml" +# 34826 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34636,7 +34856,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 ) -# 34640 "parser_cocci_menhir.ml" +# 34860 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34660,7 +34880,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 ] ) -# 34664 "parser_cocci_menhir.ml" +# 34884 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34694,7 +34914,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 ) -# 34698 "parser_cocci_menhir.ml" +# 34918 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34718,7 +34938,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 ] ) -# 34722 "parser_cocci_menhir.ml" +# 34942 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34752,7 +34972,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 ) -# 34756 "parser_cocci_menhir.ml" +# 34976 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34776,7 +34996,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 ] ) -# 34780 "parser_cocci_menhir.ml" +# 35000 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34810,7 +35030,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 ) -# 34814 "parser_cocci_menhir.ml" +# 35034 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34834,7 +35054,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ = # 144 "standard.mly" ( [ x ] ) -# 34838 "parser_cocci_menhir.ml" +# 35058 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34868,7 +35088,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ = # 146 "standard.mly" ( x :: xs ) -# 34872 "parser_cocci_menhir.ml" +# 35092 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34892,7 +35112,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = # 144 "standard.mly" ( [ x ] ) -# 34896 "parser_cocci_menhir.ml" +# 35116 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34926,7 +35146,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = # 146 "standard.mly" ( x :: xs ) -# 34930 "parser_cocci_menhir.ml" +# 35150 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34948,9 +35168,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_single_statement = -# 1136 "parser_cocci_menhir.mly" +# 1139 "parser_cocci_menhir.mly" ( _1 ) -# 34954 "parser_cocci_menhir.ml" +# 35174 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34979,26 +35199,26 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 34985 "parser_cocci_menhir.ml" +# 35205 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_statement_statement_ = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 34991 "parser_cocci_menhir.ml" +# 35211 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_single_statement = -# 1140 "parser_cocci_menhir.mly" +# 1143 "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)) ) -# 35002 "parser_cocci_menhir.ml" +# 35222 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35020,9 +35240,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_statement = -# 1062 "parser_cocci_menhir.mly" +# 1065 "parser_cocci_menhir.mly" ( _1 ) -# 35026 "parser_cocci_menhir.ml" +# 35246 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35041,16 +35261,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 35047 "parser_cocci_menhir.ml" +# 35267 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_statement = -# 1063 "parser_cocci_menhir.mly" +# 1066 "parser_cocci_menhir.mly" ( tmeta_to_statement _1) -# 35054 "parser_cocci_menhir.ml" +# 35274 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35069,16 +35289,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 35075 "parser_cocci_menhir.ml" +# 35295 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_statement = -# 1065 "parser_cocci_menhir.mly" +# 1068 "parser_cocci_menhir.mly" ( P.meta_stm _1 ) -# 35082 "parser_cocci_menhir.ml" +# 35302 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35102,17 +35322,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 35108 "parser_cocci_menhir.ml" +# 35328 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_expr = Obj.magic _1 in + let _1 : 'tv_option_expr_ = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_statement = -# 1067 "parser_cocci_menhir.mly" +# 1070 "parser_cocci_menhir.mly" ( P.exp_stm _1 _2 ) -# 35116 "parser_cocci_menhir.ml" +# 35336 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35152,27 +35372,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _5 : 'tv_single_statement = Obj.magic _5 in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 35158 "parser_cocci_menhir.ml" +# 35378 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 35164 "parser_cocci_menhir.ml" +# 35384 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35169 "parser_cocci_menhir.ml" +# 35389 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : 'tv_statement = -# 1069 "parser_cocci_menhir.mly" +# 1072 "parser_cocci_menhir.mly" ( P.ifthen _1 _2 _3 _4 _5 ) -# 35176 "parser_cocci_menhir.ml" +# 35396 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35224,31 +35444,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _6 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35228 "parser_cocci_menhir.ml" +# 35448 "parser_cocci_menhir.ml" ) = Obj.magic _6 in let _5 : 'tv_single_statement = Obj.magic _5 in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 35234 "parser_cocci_menhir.ml" +# 35454 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 35240 "parser_cocci_menhir.ml" +# 35460 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35245 "parser_cocci_menhir.ml" +# 35465 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__7_ in let _v : 'tv_statement = -# 1071 "parser_cocci_menhir.mly" +# 1074 "parser_cocci_menhir.mly" ( P.ifthenelse _1 _2 _3 _4 _5 _6 _7 ) -# 35252 "parser_cocci_menhir.ml" +# 35472 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35308,39 +35528,39 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _9 : 'tv_single_statement = Obj.magic _9 in let _8 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 35314 "parser_cocci_menhir.ml" +# 35534 "parser_cocci_menhir.ml" ) = Obj.magic _8 in let _7 : 'tv_option_eexpr_ = Obj.magic _7 in let _6 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 35320 "parser_cocci_menhir.ml" +# 35540 "parser_cocci_menhir.ml" ) = Obj.magic _6 in let _5 : 'tv_option_eexpr_ = Obj.magic _5 in let _4 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 35326 "parser_cocci_menhir.ml" +# 35546 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_option_eexpr_ = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 35332 "parser_cocci_menhir.ml" +# 35552 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35337 "parser_cocci_menhir.ml" +# 35557 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__9_ in let _v : 'tv_statement = -# 1074 "parser_cocci_menhir.mly" +# 1077 "parser_cocci_menhir.mly" ( P.forloop _1 _2 _3 _4 _5 _6 _7 _8 _9 ) -# 35344 "parser_cocci_menhir.ml" +# 35564 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35380,27 +35600,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _5 : 'tv_single_statement = Obj.magic _5 in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 35386 "parser_cocci_menhir.ml" +# 35606 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 35392 "parser_cocci_menhir.ml" +# 35612 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35397 "parser_cocci_menhir.ml" +# 35617 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : 'tv_statement = -# 1076 "parser_cocci_menhir.mly" +# 1079 "parser_cocci_menhir.mly" ( P.whileloop _1 _2 _3 _4 _5 ) -# 35404 "parser_cocci_menhir.ml" +# 35624 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35449,38 +35669,38 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _7 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 35455 "parser_cocci_menhir.ml" +# 35675 "parser_cocci_menhir.ml" ) = Obj.magic _7 in let _6 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 35460 "parser_cocci_menhir.ml" +# 35680 "parser_cocci_menhir.ml" ) = Obj.magic _6 in let _5 : 'tv_eexpr = Obj.magic _5 in let _4 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 35466 "parser_cocci_menhir.ml" +# 35686 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35471 "parser_cocci_menhir.ml" +# 35691 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_single_statement = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35477 "parser_cocci_menhir.ml" +# 35697 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__7_ in let _v : 'tv_statement = -# 1078 "parser_cocci_menhir.mly" +# 1081 "parser_cocci_menhir.mly" ( P.doloop _1 _2 _3 _4 _5 _6 _7 ) -# 35484 "parser_cocci_menhir.ml" +# 35704 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35520,23 +35740,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _5 : 'tv_single_statement = Obj.magic _5 in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 35526 "parser_cocci_menhir.ml" +# 35746 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 35532 "parser_cocci_menhir.ml" +# 35752 "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 = -# 1080 "parser_cocci_menhir.mly" +# 1083 "parser_cocci_menhir.mly" ( P.iterator _1 _2 _3 _4 _5 ) -# 35540 "parser_cocci_menhir.ml" +# 35760 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35590,39 +35810,39 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _8 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 35596 "parser_cocci_menhir.ml" +# 35816 "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 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 35603 "parser_cocci_menhir.ml" +# 35823 "parser_cocci_menhir.ml" ) = Obj.magic _5 in let _4 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 35608 "parser_cocci_menhir.ml" +# 35828 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 35614 "parser_cocci_menhir.ml" +# 35834 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35619 "parser_cocci_menhir.ml" +# 35839 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__8_ in let _v : 'tv_statement = -# 1082 "parser_cocci_menhir.mly" +# 1085 "parser_cocci_menhir.mly" ( P.switch _1 _2 _3 _4 _5 (List.concat _6) _7 _8 ) -# 35626 "parser_cocci_menhir.ml" +# 35846 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35651,22 +35871,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 35657 "parser_cocci_menhir.ml" +# 35877 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35663 "parser_cocci_menhir.ml" +# 35883 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_statement = -# 1083 "parser_cocci_menhir.mly" +# 1086 "parser_cocci_menhir.mly" ( P.ret_exp _1 _2 _3 ) -# 35670 "parser_cocci_menhir.ml" +# 35890 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35690,21 +35910,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 35696 "parser_cocci_menhir.ml" +# 35916 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 123 "parser_cocci_menhir.mly" (Data.clt) -# 35701 "parser_cocci_menhir.ml" +# 35921 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_statement = -# 1084 "parser_cocci_menhir.mly" +# 1087 "parser_cocci_menhir.mly" ( P.ret _1 _2 ) -# 35708 "parser_cocci_menhir.ml" +# 35928 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35728,21 +35948,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 35734 "parser_cocci_menhir.ml" +# 35954 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 35739 "parser_cocci_menhir.ml" +# 35959 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_statement = -# 1085 "parser_cocci_menhir.mly" +# 1088 "parser_cocci_menhir.mly" ( P.break _1 _2 ) -# 35746 "parser_cocci_menhir.ml" +# 35966 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35766,21 +35986,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 35772 "parser_cocci_menhir.ml" +# 35992 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 35777 "parser_cocci_menhir.ml" +# 35997 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_statement = -# 1086 "parser_cocci_menhir.mly" +# 1089 "parser_cocci_menhir.mly" ( P.cont _1 _2 ) -# 35784 "parser_cocci_menhir.ml" +# 36004 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35804,17 +36024,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 35810 "parser_cocci_menhir.ml" +# 36030 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_mident = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_statement = -# 1087 "parser_cocci_menhir.mly" +# 1090 "parser_cocci_menhir.mly" ( P.label _1 _2 ) -# 35818 "parser_cocci_menhir.ml" +# 36038 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35843,22 +36063,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 35849 "parser_cocci_menhir.ml" +# 36069 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_disj_ident = Obj.magic _2 in let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 35855 "parser_cocci_menhir.ml" +# 36075 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_statement = -# 1088 "parser_cocci_menhir.mly" +# 1091 "parser_cocci_menhir.mly" ( P.goto _1 _2 _3 ) -# 35862 "parser_cocci_menhir.ml" +# 36082 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35887,22 +36107,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 35893 "parser_cocci_menhir.ml" +# 36113 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_fun_start = Obj.magic _2 in let _1 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 35899 "parser_cocci_menhir.ml" +# 36119 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_statement = -# 1090 "parser_cocci_menhir.mly" +# 1093 "parser_cocci_menhir.mly" ( P.seq _1 _2 _3 ) -# 35906 "parser_cocci_menhir.ml" +# 36126 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35927,16 +36147,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let w : 'tv_list_whenppdecs_ = Obj.magic w in let _1 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 35933 "parser_cocci_menhir.ml" +# 36153 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_w_ in let _v : 'tv_stm_dots = -# 1094 "parser_cocci_menhir.mly" +# 1097 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." _1, List.concat w)) ) -# 35940 "parser_cocci_menhir.ml" +# 36160 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35970,24 +36190,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let c : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 35976 "parser_cocci_menhir.ml" +# 36196 "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 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 35983 "parser_cocci_menhir.ml" +# 36203 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_c_ in let _v : 'tv_stm_dots = -# 1096 "parser_cocci_menhir.mly" +# 1099 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." _1, b, P.clt2mcode "...>" c, List.concat w, false)) ) -# 35991 "parser_cocci_menhir.ml" +# 36211 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36021,24 +36241,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let c : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 36027 "parser_cocci_menhir.ml" +# 36247 "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 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 36034 "parser_cocci_menhir.ml" +# 36254 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_c_ in let _v : 'tv_stm_dots = -# 1099 "parser_cocci_menhir.mly" +# 1102 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." _1, b, P.clt2mcode "...+>" c, List.concat w, true)) ) -# 36042 "parser_cocci_menhir.ml" +# 36262 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36059,14 +36279,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 119 "parser_cocci_menhir.mly" (Data.clt) -# 36063 "parser_cocci_menhir.ml" +# 36283 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_storage = -# 1023 "parser_cocci_menhir.mly" +# 1026 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Static s ) -# 36070 "parser_cocci_menhir.ml" +# 36290 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36087,14 +36307,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 119 "parser_cocci_menhir.mly" (Data.clt) -# 36091 "parser_cocci_menhir.ml" +# 36311 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_storage = -# 1024 "parser_cocci_menhir.mly" +# 1027 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Auto s ) -# 36098 "parser_cocci_menhir.ml" +# 36318 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36115,14 +36335,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 119 "parser_cocci_menhir.mly" (Data.clt) -# 36119 "parser_cocci_menhir.ml" +# 36339 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_storage = -# 1025 "parser_cocci_menhir.mly" +# 1028 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Register s ) -# 36126 "parser_cocci_menhir.ml" +# 36346 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36143,14 +36363,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 119 "parser_cocci_menhir.mly" (Data.clt) -# 36147 "parser_cocci_menhir.ml" +# 36367 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_storage = -# 1026 "parser_cocci_menhir.mly" +# 1029 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Extern s ) -# 36154 "parser_cocci_menhir.ml" +# 36374 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36170,9 +36390,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl = -# 732 "parser_cocci_menhir.mly" +# 733 "parser_cocci_menhir.mly" ( [] ) -# 36176 "parser_cocci_menhir.ml" +# 36396 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36194,9 +36414,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl = -# 733 "parser_cocci_menhir.mly" +# 734 "parser_cocci_menhir.mly" ( [_1] ) -# 36200 "parser_cocci_menhir.ml" +# 36420 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36218,9 +36438,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl_list = -# 757 "parser_cocci_menhir.mly" +# 758 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1)) ) -# 36224 "parser_cocci_menhir.ml" +# 36444 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36242,9 +36462,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl_list_start = -# 760 "parser_cocci_menhir.mly" +# 761 "parser_cocci_menhir.mly" ( _1 ) -# 36248 "parser_cocci_menhir.ml" +# 36468 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36272,9 +36492,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_struct_decl_list_start = -# 761 "parser_cocci_menhir.mly" +# 762 "parser_cocci_menhir.mly" ( _1@_2 ) -# 36278 "parser_cocci_menhir.ml" +# 36498 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36302,9 +36522,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_d_ in let _endpos = _endpos_r_ in let _v : 'tv_struct_decl_list_start = -# 763 "parser_cocci_menhir.mly" +# 764 "parser_cocci_menhir.mly" ( (P.mkddots_one "..." d)::r ) -# 36308 "parser_cocci_menhir.ml" +# 36528 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36323,16 +36543,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 36329 "parser_cocci_menhir.ml" +# 36549 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl_one = -# 736 "parser_cocci_menhir.mly" +# 737 "parser_cocci_menhir.mly" ( P.meta_field _1 ) -# 36336 "parser_cocci_menhir.ml" +# 36556 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36351,16 +36571,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 134 "parser_cocci_menhir.mly" +# 135 "parser_cocci_menhir.mly" (Parse_aux.list_info) -# 36357 "parser_cocci_menhir.ml" +# 36577 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl_one = -# 737 "parser_cocci_menhir.mly" +# 738 "parser_cocci_menhir.mly" ( P.meta_field_list _1 ) -# 36364 "parser_cocci_menhir.ml" +# 36584 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36379,16 +36599,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 36385 "parser_cocci_menhir.ml" +# 36605 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl_one = -# 738 "parser_cocci_menhir.mly" +# 739 "parser_cocci_menhir.mly" ( tmeta_to_field _1 ) -# 36392 "parser_cocci_menhir.ml" +# 36612 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36417,19 +36637,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 36423 "parser_cocci_menhir.ml" +# 36643 "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 = -# 740 "parser_cocci_menhir.mly" +# 741 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv)) ) -# 36433 "parser_cocci_menhir.ml" +# 36653 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36488,42 +36708,42 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 36494 "parser_cocci_menhir.ml" +# 36714 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 36499 "parser_cocci_menhir.ml" +# 36719 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 36505 "parser_cocci_menhir.ml" +# 36725 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 36510 "parser_cocci_menhir.ml" +# 36730 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 36516 "parser_cocci_menhir.ml" +# 36736 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 36521 "parser_cocci_menhir.ml" +# 36741 "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 = -# 744 "parser_cocci_menhir.mly" +# 745 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -36531,7 +36751,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)) ) -# 36535 "parser_cocci_menhir.ml" +# 36755 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36560,9 +36780,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 36566 "parser_cocci_menhir.ml" +# 36786 "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 @@ -36572,15 +36792,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 36576 "parser_cocci_menhir.ml" +# 36796 "parser_cocci_menhir.ml" in -# 752 "parser_cocci_menhir.mly" +# 753 "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)) ) -# 36584 "parser_cocci_menhir.ml" +# 36804 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36614,9 +36834,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let pv : ( -# 175 "parser_cocci_menhir.mly" +# 176 "parser_cocci_menhir.mly" (Data.clt) -# 36620 "parser_cocci_menhir.ml" +# 36840 "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 @@ -36628,15 +36848,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 36632 "parser_cocci_menhir.ml" +# 36852 "parser_cocci_menhir.ml" in -# 752 "parser_cocci_menhir.mly" +# 753 "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)) ) -# 36640 "parser_cocci_menhir.ml" +# 36860 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36657,14 +36877,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 36661 "parser_cocci_menhir.ml" +# 36881 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_struct_or_union = -# 728 "parser_cocci_menhir.mly" +# 729 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Struct s ) -# 36668 "parser_cocci_menhir.ml" +# 36888 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36685,14 +36905,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let u : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 36689 "parser_cocci_menhir.ml" +# 36909 "parser_cocci_menhir.ml" ) = Obj.magic u in let _startpos = _startpos_u_ in let _endpos = _endpos_u_ in let _v : 'tv_struct_or_union = -# 729 "parser_cocci_menhir.mly" +# 730 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Union u ) -# 36696 "parser_cocci_menhir.ml" +# 36916 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36718,7 +36938,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_sub = -# 1845 "parser_cocci_menhir.mly" +# 1858 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -36727,7 +36947,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.check_inherited_constraint i (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None)) in [i] ) -# 36731 "parser_cocci_menhir.ml" +# 36951 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36761,7 +36981,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_sub = -# 1854 "parser_cocci_menhir.mly" +# 1867 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -36771,7 +36991,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.check_inherited_constraint i (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None))) l) -# 36775 "parser_cocci_menhir.ml" +# 36995 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36793,9 +37013,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_top_eexpr = -# 1412 "parser_cocci_menhir.mly" +# 1415 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))) ) -# 36799 "parser_cocci_menhir.ml" +# 37019 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36824,27 +37044,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let _3 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 36830 "parser_cocci_menhir.ml" +# 37050 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_initialize_list = Obj.magic _2 in let _1 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 36836 "parser_cocci_menhir.ml" +# 37056 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_top_init = -# 2104 "parser_cocci_menhir.mly" +# 2118 "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)) ) -# 36848 "parser_cocci_menhir.ml" +# 37068 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36859,9 +37079,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 = -# 2092 "parser_cocci_menhir.mly" +# 2106 "parser_cocci_menhir.mly" ([]) -# 36865 "parser_cocci_menhir.ml" +# 37085 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36887,9 +37107,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots = -# 2093 "parser_cocci_menhir.mly" +# 2107 "parser_cocci_menhir.mly" (_2) -# 36893 "parser_cocci_menhir.ml" +# 37113 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36917,9 +37137,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots = -# 2094 "parser_cocci_menhir.mly" +# 2108 "parser_cocci_menhir.mly" ((Ast0.wrap(Ast0.Exp(_1)))::_2) -# 36923 "parser_cocci_menhir.ml" +# 37143 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36947,9 +37167,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots = -# 2095 "parser_cocci_menhir.mly" +# 2109 "parser_cocci_menhir.mly" (_1@_2) -# 36953 "parser_cocci_menhir.ml" +# 37173 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36975,9 +37195,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots_init = -# 2083 "parser_cocci_menhir.mly" +# 2097 "parser_cocci_menhir.mly" (_2) -# 36981 "parser_cocci_menhir.ml" +# 37201 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37005,9 +37225,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots_init = -# 2084 "parser_cocci_menhir.mly" +# 2098 "parser_cocci_menhir.mly" ((Ast0.wrap(Ast0.Exp(_1)))::_2) -# 37011 "parser_cocci_menhir.ml" +# 37231 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37035,9 +37255,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots_init = -# 2085 "parser_cocci_menhir.mly" +# 2099 "parser_cocci_menhir.mly" (_1@_2) -# 37041 "parser_cocci_menhir.ml" +# 37261 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37052,9 +37272,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 = -# 2088 "parser_cocci_menhir.mly" +# 2102 "parser_cocci_menhir.mly" ([]) -# 37058 "parser_cocci_menhir.ml" +# 37278 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37082,9 +37302,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_exp = -# 2089 "parser_cocci_menhir.mly" +# 2103 "parser_cocci_menhir.mly" (_1::_2) -# 37088 "parser_cocci_menhir.ml" +# 37308 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37099,9 +37319,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 = -# 2098 "parser_cocci_menhir.mly" +# 2112 "parser_cocci_menhir.mly" ([]) -# 37105 "parser_cocci_menhir.ml" +# 37325 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37129,9 +37349,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_stm = -# 2099 "parser_cocci_menhir.mly" +# 2113 "parser_cocci_menhir.mly" (_1::_2) -# 37135 "parser_cocci_menhir.ml" +# 37355 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37159,9 +37379,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_stm = -# 2100 "parser_cocci_menhir.mly" +# 2114 "parser_cocci_menhir.mly" (_1@_2) -# 37165 "parser_cocci_menhir.ml" +# 37385 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37189,9 +37409,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_ = -# 2078 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1::_2 ) -# 37195 "parser_cocci_menhir.ml" +# 37415 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37219,9 +37439,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_ = -# 2079 "parser_cocci_menhir.mly" +# 2093 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.Exp(_1)))::_2 ) -# 37225 "parser_cocci_menhir.ml" +# 37445 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37249,9 +37469,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_ = -# 2080 "parser_cocci_menhir.mly" +# 2094 "parser_cocci_menhir.mly" ( _1@_2 ) -# 37255 "parser_cocci_menhir.ml" +# 37475 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37282,9 +37502,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let b : 'tv_toplevel_after_dots_init = Obj.magic b in let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in let a0 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 37288 "parser_cocci_menhir.ml" +# 37508 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_b_ in @@ -37292,15 +37512,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 1104 "parser_cocci_menhir.mly" +# 1107 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." a, List.concat w)) ) -# 37298 "parser_cocci_menhir.ml" +# 37518 "parser_cocci_menhir.ml" in -# 2071 "parser_cocci_menhir.mly" +# 2085 "parser_cocci_menhir.mly" ( a::b ) -# 37304 "parser_cocci_menhir.ml" +# 37524 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37340,16 +37560,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_toplevel_after_dots_init = Obj.magic b in let c0 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 37346 "parser_cocci_menhir.ml" +# 37566 "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 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 37353 "parser_cocci_menhir.ml" +# 37573 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_b_ in @@ -37359,16 +37579,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 1108 "parser_cocci_menhir.mly" +# 1111 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b, P.clt2mcode "...>" c, List.concat w, false)) ) -# 37366 "parser_cocci_menhir.ml" +# 37586 "parser_cocci_menhir.ml" in -# 2072 "parser_cocci_menhir.mly" +# 2086 "parser_cocci_menhir.mly" ( a::b ) -# 37372 "parser_cocci_menhir.ml" +# 37592 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37408,16 +37628,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let b : 'tv_toplevel_after_dots_init = Obj.magic b in let c0 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 37414 "parser_cocci_menhir.ml" +# 37634 "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 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 37421 "parser_cocci_menhir.ml" +# 37641 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_b_ in @@ -37427,16 +37647,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 1111 "parser_cocci_menhir.mly" +# 1114 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b, P.clt2mcode "...+>" c, List.concat w, true)) ) -# 37434 "parser_cocci_menhir.ml" +# 37654 "parser_cocci_menhir.ml" in -# 2072 "parser_cocci_menhir.mly" +# 2086 "parser_cocci_menhir.mly" ( a::b ) -# 37440 "parser_cocci_menhir.ml" +# 37660 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37470,16 +37690,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let c0 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 37476 "parser_cocci_menhir.ml" +# 37696 "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 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 37483 "parser_cocci_menhir.ml" +# 37703 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_c0_ in @@ -37489,16 +37709,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 1108 "parser_cocci_menhir.mly" +# 1111 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b, P.clt2mcode "...>" c, List.concat w, false)) ) -# 37496 "parser_cocci_menhir.ml" +# 37716 "parser_cocci_menhir.ml" in -# 2073 "parser_cocci_menhir.mly" +# 2087 "parser_cocci_menhir.mly" ( [a] ) -# 37502 "parser_cocci_menhir.ml" +# 37722 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37532,16 +37752,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let c0 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 37538 "parser_cocci_menhir.ml" +# 37758 "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 : ( -# 141 "parser_cocci_menhir.mly" +# 142 "parser_cocci_menhir.mly" (Data.clt) -# 37545 "parser_cocci_menhir.ml" +# 37765 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_c0_ in @@ -37551,16 +37771,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 1111 "parser_cocci_menhir.mly" +# 1114 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b, P.clt2mcode "...+>" c, List.concat w, true)) ) -# 37558 "parser_cocci_menhir.ml" +# 37778 "parser_cocci_menhir.ml" in -# 2073 "parser_cocci_menhir.mly" +# 2087 "parser_cocci_menhir.mly" ( [a] ) -# 37564 "parser_cocci_menhir.ml" +# 37784 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37588,9 +37808,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_ = -# 2074 "parser_cocci_menhir.mly" +# 2088 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.Exp(_1)))::_2 ) -# 37594 "parser_cocci_menhir.ml" +# 37814 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37618,9 +37838,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_ = -# 2075 "parser_cocci_menhir.mly" +# 2089 "parser_cocci_menhir.mly" ( _1@_2 ) -# 37624 "parser_cocci_menhir.ml" +# 37844 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37642,9 +37862,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_type_ident = -# 1929 "parser_cocci_menhir.mly" +# 1943 "parser_cocci_menhir.mly" ( _1 ) -# 37648 "parser_cocci_menhir.ml" +# 37868 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37665,14 +37885,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 37669 "parser_cocci_menhir.ml" +# 37889 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_type_ident = -# 1931 "parser_cocci_menhir.mly" +# 1945 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) ) -# 37676 "parser_cocci_menhir.ml" +# 37896 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37704,12 +37924,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 37708 "parser_cocci_menhir.ml" +# 37928 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 37713 "parser_cocci_menhir.ml" +# 37933 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -37719,28 +37939,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 37725 "parser_cocci_menhir.ml" +# 37945 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 37731 "parser_cocci_menhir.ml" +# 37951 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37738 "parser_cocci_menhir.ml" +# 37958 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37744 "parser_cocci_menhir.ml" +# 37964 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37772,12 +37992,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 37776 "parser_cocci_menhir.ml" +# 37996 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 37781 "parser_cocci_menhir.ml" +# 38001 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -37787,28 +38007,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 37793 "parser_cocci_menhir.ml" +# 38013 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 37799 "parser_cocci_menhir.ml" +# 38019 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37806 "parser_cocci_menhir.ml" +# 38026 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37812 "parser_cocci_menhir.ml" +# 38032 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37840,12 +38060,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 37844 "parser_cocci_menhir.ml" +# 38064 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 37849 "parser_cocci_menhir.ml" +# 38069 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -37855,28 +38075,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 37861 "parser_cocci_menhir.ml" +# 38081 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 37867 "parser_cocci_menhir.ml" +# 38087 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37874 "parser_cocci_menhir.ml" +# 38094 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37880 "parser_cocci_menhir.ml" +# 38100 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37906,14 +38126,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 37912 "parser_cocci_menhir.ml" +# 38132 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 37917 "parser_cocci_menhir.ml" +# 38137 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -37923,29 +38143,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 37930 "parser_cocci_menhir.ml" +# 38150 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 37936 "parser_cocci_menhir.ml" +# 38156 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37943 "parser_cocci_menhir.ml" +# 38163 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37949 "parser_cocci_menhir.ml" +# 38169 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37986,17 +38206,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 37990 "parser_cocci_menhir.ml" +# 38210 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 112 "parser_cocci_menhir.mly" (string) -# 37995 "parser_cocci_menhir.ml" +# 38215 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38000 "parser_cocci_menhir.ml" +# 38220 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let _startpos = _startpos_r1_ in let _endpos = _endpos_m_ in @@ -38008,33 +38228,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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*))) ) -# 38019 "parser_cocci_menhir.ml" +# 38239 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38025 "parser_cocci_menhir.ml" +# 38245 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38032 "parser_cocci_menhir.ml" +# 38252 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38038 "parser_cocci_menhir.ml" +# 38258 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38066,12 +38286,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38070 "parser_cocci_menhir.ml" +# 38290 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38075 "parser_cocci_menhir.ml" +# 38295 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -38081,28 +38301,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 38087 "parser_cocci_menhir.ml" +# 38307 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38093 "parser_cocci_menhir.ml" +# 38313 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38100 "parser_cocci_menhir.ml" +# 38320 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38106 "parser_cocci_menhir.ml" +# 38326 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38139,17 +38359,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38143 "parser_cocci_menhir.ml" +# 38363 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38148 "parser_cocci_menhir.ml" +# 38368 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38153 "parser_cocci_menhir.ml" +# 38373 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -38161,31 +38381,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 38170 "parser_cocci_menhir.ml" +# 38390 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38176 "parser_cocci_menhir.ml" +# 38396 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38183 "parser_cocci_menhir.ml" +# 38403 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38189 "parser_cocci_menhir.ml" +# 38409 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38217,12 +38437,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38221 "parser_cocci_menhir.ml" +# 38441 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38226 "parser_cocci_menhir.ml" +# 38446 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -38232,28 +38452,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 38238 "parser_cocci_menhir.ml" +# 38458 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 38244 "parser_cocci_menhir.ml" +# 38464 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38251 "parser_cocci_menhir.ml" +# 38471 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38257 "parser_cocci_menhir.ml" +# 38477 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38285,12 +38505,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38289 "parser_cocci_menhir.ml" +# 38509 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38294 "parser_cocci_menhir.ml" +# 38514 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -38300,28 +38520,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 38306 "parser_cocci_menhir.ml" +# 38526 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 38312 "parser_cocci_menhir.ml" +# 38532 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38319 "parser_cocci_menhir.ml" +# 38539 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38325 "parser_cocci_menhir.ml" +# 38545 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38353,12 +38573,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38357 "parser_cocci_menhir.ml" +# 38577 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38362 "parser_cocci_menhir.ml" +# 38582 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -38368,28 +38588,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 38374 "parser_cocci_menhir.ml" +# 38594 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 38380 "parser_cocci_menhir.ml" +# 38600 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38387 "parser_cocci_menhir.ml" +# 38607 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38393 "parser_cocci_menhir.ml" +# 38613 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38419,14 +38639,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 38425 "parser_cocci_menhir.ml" +# 38645 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38430 "parser_cocci_menhir.ml" +# 38650 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -38436,29 +38656,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 38443 "parser_cocci_menhir.ml" +# 38663 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 38449 "parser_cocci_menhir.ml" +# 38669 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38456 "parser_cocci_menhir.ml" +# 38676 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38462 "parser_cocci_menhir.ml" +# 38682 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38499,17 +38719,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 38503 "parser_cocci_menhir.ml" +# 38723 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 112 "parser_cocci_menhir.mly" (string) -# 38508 "parser_cocci_menhir.ml" +# 38728 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38513 "parser_cocci_menhir.ml" +# 38733 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let _startpos = _startpos_r1_ in let _endpos = _endpos_m_ in @@ -38521,33 +38741,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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*))) ) -# 38532 "parser_cocci_menhir.ml" +# 38752 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 38538 "parser_cocci_menhir.ml" +# 38758 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38545 "parser_cocci_menhir.ml" +# 38765 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38551 "parser_cocci_menhir.ml" +# 38771 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38579,12 +38799,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38583 "parser_cocci_menhir.ml" +# 38803 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38588 "parser_cocci_menhir.ml" +# 38808 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -38594,28 +38814,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 38600 "parser_cocci_menhir.ml" +# 38820 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 38606 "parser_cocci_menhir.ml" +# 38826 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38613 "parser_cocci_menhir.ml" +# 38833 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38619 "parser_cocci_menhir.ml" +# 38839 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38652,17 +38872,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38656 "parser_cocci_menhir.ml" +# 38876 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38661 "parser_cocci_menhir.ml" +# 38881 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 38666 "parser_cocci_menhir.ml" +# 38886 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -38674,31 +38894,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 38683 "parser_cocci_menhir.ml" +# 38903 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 38689 "parser_cocci_menhir.ml" +# 38909 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38696 "parser_cocci_menhir.ml" +# 38916 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38702 "parser_cocci_menhir.ml" +# 38922 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38725,7 +38945,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38729 "parser_cocci_menhir.ml" +# 38949 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -38734,28 +38954,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 38740 "parser_cocci_menhir.ml" +# 38960 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 38746 "parser_cocci_menhir.ml" +# 38966 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38753 "parser_cocci_menhir.ml" +# 38973 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38759 "parser_cocci_menhir.ml" +# 38979 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38782,7 +39002,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38786 "parser_cocci_menhir.ml" +# 39006 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -38791,28 +39011,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 38797 "parser_cocci_menhir.ml" +# 39017 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 38803 "parser_cocci_menhir.ml" +# 39023 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38810 "parser_cocci_menhir.ml" +# 39030 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38816 "parser_cocci_menhir.ml" +# 39036 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38839,7 +39059,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 38843 "parser_cocci_menhir.ml" +# 39063 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -38848,28 +39068,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 38854 "parser_cocci_menhir.ml" +# 39074 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 38860 "parser_cocci_menhir.ml" +# 39080 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38867 "parser_cocci_menhir.ml" +# 39087 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38873 "parser_cocci_menhir.ml" +# 39093 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38894,9 +39114,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 38900 "parser_cocci_menhir.ml" +# 39120 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let _startpos = _startpos_p00_ in let _endpos = _endpos_m_ in @@ -38905,29 +39125,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 38912 "parser_cocci_menhir.ml" +# 39132 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 38918 "parser_cocci_menhir.ml" +# 39138 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38925 "parser_cocci_menhir.ml" +# 39145 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38931 "parser_cocci_menhir.ml" +# 39151 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38963,12 +39183,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 38967 "parser_cocci_menhir.ml" +# 39187 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 112 "parser_cocci_menhir.mly" (string) -# 38972 "parser_cocci_menhir.ml" +# 39192 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let _startpos = _startpos_r00_ in let _endpos = _endpos_m_ in @@ -38979,33 +39199,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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*))) ) -# 38990 "parser_cocci_menhir.ml" +# 39210 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 38996 "parser_cocci_menhir.ml" +# 39216 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39003 "parser_cocci_menhir.ml" +# 39223 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39009 "parser_cocci_menhir.ml" +# 39229 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39032,7 +39252,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 39036 "parser_cocci_menhir.ml" +# 39256 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -39041,28 +39261,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 39047 "parser_cocci_menhir.ml" +# 39267 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 39053 "parser_cocci_menhir.ml" +# 39273 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39060 "parser_cocci_menhir.ml" +# 39280 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39066 "parser_cocci_menhir.ml" +# 39286 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39094,12 +39314,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 39098 "parser_cocci_menhir.ml" +# 39318 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 39103 "parser_cocci_menhir.ml" +# 39323 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let _startpos = _startpos_ty100_ in let _endpos = _endpos_m_ in @@ -39110,31 +39330,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 39119 "parser_cocci_menhir.ml" +# 39339 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 39125 "parser_cocci_menhir.ml" +# 39345 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39132 "parser_cocci_menhir.ml" +# 39352 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39138 "parser_cocci_menhir.ml" +# 39358 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39161,7 +39381,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 39165 "parser_cocci_menhir.ml" +# 39385 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -39170,28 +39390,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 656 "parser_cocci_menhir.mly" +# 657 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) ) -# 39176 "parser_cocci_menhir.ml" +# 39396 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39182 "parser_cocci_menhir.ml" +# 39402 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39189 "parser_cocci_menhir.ml" +# 39409 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39195 "parser_cocci_menhir.ml" +# 39415 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39218,7 +39438,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 39222 "parser_cocci_menhir.ml" +# 39442 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -39227,28 +39447,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 658 "parser_cocci_menhir.mly" +# 659 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) ) -# 39233 "parser_cocci_menhir.ml" +# 39453 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39239 "parser_cocci_menhir.ml" +# 39459 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39246 "parser_cocci_menhir.ml" +# 39466 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39252 "parser_cocci_menhir.ml" +# 39472 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39275,7 +39495,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 39279 "parser_cocci_menhir.ml" +# 39499 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -39284,28 +39504,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 660 "parser_cocci_menhir.mly" +# 661 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) ) -# 39290 "parser_cocci_menhir.ml" +# 39510 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39296 "parser_cocci_menhir.ml" +# 39516 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39303 "parser_cocci_menhir.ml" +# 39523 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39309 "parser_cocci_menhir.ml" +# 39529 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39332,7 +39552,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 115 "parser_cocci_menhir.mly" (Data.clt) -# 39336 "parser_cocci_menhir.ml" +# 39556 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -39341,28 +39561,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 662 "parser_cocci_menhir.mly" +# 663 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) ) -# 39347 "parser_cocci_menhir.ml" +# 39567 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39353 "parser_cocci_menhir.ml" +# 39573 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39360 "parser_cocci_menhir.ml" +# 39580 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39366 "parser_cocci_menhir.ml" +# 39586 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39389,7 +39609,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 115 "parser_cocci_menhir.mly" (Data.clt) -# 39393 "parser_cocci_menhir.ml" +# 39613 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -39398,28 +39618,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 664 "parser_cocci_menhir.mly" +# 665 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) ) -# 39404 "parser_cocci_menhir.ml" +# 39624 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39410 "parser_cocci_menhir.ml" +# 39630 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39417 "parser_cocci_menhir.ml" +# 39637 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39423 "parser_cocci_menhir.ml" +# 39643 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39446,7 +39666,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 115 "parser_cocci_menhir.mly" (Data.clt) -# 39450 "parser_cocci_menhir.ml" +# 39670 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -39455,28 +39675,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 666 "parser_cocci_menhir.mly" +# 667 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) ) -# 39461 "parser_cocci_menhir.ml" +# 39681 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39467 "parser_cocci_menhir.ml" +# 39687 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39474 "parser_cocci_menhir.ml" +# 39694 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39480 "parser_cocci_menhir.ml" +# 39700 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39509,7 +39729,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s00 : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 39513 "parser_cocci_menhir.ml" +# 39733 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -39520,28 +39740,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 668 "parser_cocci_menhir.mly" +# 669 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) ) -# 39526 "parser_cocci_menhir.ml" +# 39746 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39532 "parser_cocci_menhir.ml" +# 39752 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39539 "parser_cocci_menhir.ml" +# 39759 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39545 "parser_cocci_menhir.ml" +# 39765 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39581,20 +39801,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 39587 "parser_cocci_menhir.ml" +# 39807 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 39593 "parser_cocci_menhir.ml" +# 39813 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 39598 "parser_cocci_menhir.ml" +# 39818 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -39612,35 +39832,35 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 39616 "parser_cocci_menhir.ml" +# 39836 "parser_cocci_menhir.ml" in -# 670 "parser_cocci_menhir.mly" +# 671 "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)) ) -# 39625 "parser_cocci_menhir.ml" +# 39845 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39631 "parser_cocci_menhir.ml" +# 39851 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39638 "parser_cocci_menhir.ml" +# 39858 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39644 "parser_cocci_menhir.ml" +# 39864 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39685,21 +39905,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 39691 "parser_cocci_menhir.ml" +# 39911 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 39697 "parser_cocci_menhir.ml" +# 39917 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let x000 : 'tv_ident = Obj.magic x000 in let s00 : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 39703 "parser_cocci_menhir.ml" +# 39923 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -39720,35 +39940,35 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39724 "parser_cocci_menhir.ml" +# 39944 "parser_cocci_menhir.ml" in -# 670 "parser_cocci_menhir.mly" +# 671 "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)) ) -# 39733 "parser_cocci_menhir.ml" +# 39953 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39739 "parser_cocci_menhir.ml" +# 39959 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39746 "parser_cocci_menhir.ml" +# 39966 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39752 "parser_cocci_menhir.ml" +# 39972 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39788,28 +40008,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 675 "parser_cocci_menhir.mly" +# 676 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) ) -# 39794 "parser_cocci_menhir.ml" +# 40014 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39800 "parser_cocci_menhir.ml" +# 40020 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39807 "parser_cocci_menhir.ml" +# 40027 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39813 "parser_cocci_menhir.ml" +# 40033 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39849,15 +40069,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 39855 "parser_cocci_menhir.ml" +# 40075 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 39861 "parser_cocci_menhir.ml" +# 40081 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : 'tv_struct_or_union = Obj.magic s00 in let _startpos = _startpos_s00_ in @@ -39876,36 +40096,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 39880 "parser_cocci_menhir.ml" +# 40100 "parser_cocci_menhir.ml" in -# 678 "parser_cocci_menhir.mly" +# 679 "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)) ) -# 39890 "parser_cocci_menhir.ml" +# 40110 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 39896 "parser_cocci_menhir.ml" +# 40116 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 39903 "parser_cocci_menhir.ml" +# 40123 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39909 "parser_cocci_menhir.ml" +# 40129 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39950,15 +40170,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 39956 "parser_cocci_menhir.ml" +# 40176 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 39962 "parser_cocci_menhir.ml" +# 40182 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let x000 : 'tv_type_ident = Obj.magic x000 in let s00 : 'tv_struct_or_union = Obj.magic s00 in @@ -39981,36 +40201,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39985 "parser_cocci_menhir.ml" +# 40205 "parser_cocci_menhir.ml" in -# 678 "parser_cocci_menhir.mly" +# 679 "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)) ) -# 39995 "parser_cocci_menhir.ml" +# 40215 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 40001 "parser_cocci_menhir.ml" +# 40221 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 40008 "parser_cocci_menhir.ml" +# 40228 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40014 "parser_cocci_menhir.ml" +# 40234 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40050,20 +40270,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 40056 "parser_cocci_menhir.ml" +# 40276 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 40062 "parser_cocci_menhir.ml" +# 40282 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 40067 "parser_cocci_menhir.ml" +# 40287 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -40078,30 +40298,30 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let l = l0 in let s = s0 in -# 684 "parser_cocci_menhir.mly" +# 685 "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)) ) -# 40086 "parser_cocci_menhir.ml" +# 40306 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 40092 "parser_cocci_menhir.ml" +# 40312 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 40099 "parser_cocci_menhir.ml" +# 40319 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40105 "parser_cocci_menhir.ml" +# 40325 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40128,7 +40348,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 40132 "parser_cocci_menhir.ml" +# 40352 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let _startpos = _startpos_p00_ in let _endpos = _endpos_m_ in @@ -40137,28 +40357,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 688 "parser_cocci_menhir.mly" +# 689 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) ) -# 40143 "parser_cocci_menhir.ml" +# 40363 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 40149 "parser_cocci_menhir.ml" +# 40369 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 40156 "parser_cocci_menhir.ml" +# 40376 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40162 "parser_cocci_menhir.ml" +# 40382 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40195,12 +40415,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 40199 "parser_cocci_menhir.ml" +# 40419 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40204 "parser_cocci_menhir.ml" +# 40424 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40211,15 +40431,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 40217 "parser_cocci_menhir.ml" +# 40437 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 40223 "parser_cocci_menhir.ml" +# 40443 "parser_cocci_menhir.ml" in let cv = @@ -40227,13 +40447,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40231 "parser_cocci_menhir.ml" +# 40451 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40237 "parser_cocci_menhir.ml" +# 40457 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40270,12 +40490,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 40274 "parser_cocci_menhir.ml" +# 40494 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40279 "parser_cocci_menhir.ml" +# 40499 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40286,15 +40506,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 40292 "parser_cocci_menhir.ml" +# 40512 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 40298 "parser_cocci_menhir.ml" +# 40518 "parser_cocci_menhir.ml" in let cv = @@ -40302,13 +40522,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40306 "parser_cocci_menhir.ml" +# 40526 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40312 "parser_cocci_menhir.ml" +# 40532 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40345,12 +40565,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 40349 "parser_cocci_menhir.ml" +# 40569 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40354 "parser_cocci_menhir.ml" +# 40574 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40361,15 +40581,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 40367 "parser_cocci_menhir.ml" +# 40587 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 40373 "parser_cocci_menhir.ml" +# 40593 "parser_cocci_menhir.ml" in let cv = @@ -40377,13 +40597,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40381 "parser_cocci_menhir.ml" +# 40601 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40387 "parser_cocci_menhir.ml" +# 40607 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40418,14 +40638,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 40424 "parser_cocci_menhir.ml" +# 40644 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40429 "parser_cocci_menhir.ml" +# 40649 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40436,16 +40656,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 40443 "parser_cocci_menhir.ml" +# 40663 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 40449 "parser_cocci_menhir.ml" +# 40669 "parser_cocci_menhir.ml" in let cv = @@ -40453,13 +40673,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40457 "parser_cocci_menhir.ml" +# 40677 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40463 "parser_cocci_menhir.ml" +# 40683 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40505,17 +40725,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 40509 "parser_cocci_menhir.ml" +# 40729 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 112 "parser_cocci_menhir.mly" (string) -# 40514 "parser_cocci_menhir.ml" +# 40734 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40519 "parser_cocci_menhir.ml" +# 40739 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40528,20 +40748,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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*))) ) -# 40539 "parser_cocci_menhir.ml" +# 40759 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 40545 "parser_cocci_menhir.ml" +# 40765 "parser_cocci_menhir.ml" in let cv = @@ -40549,13 +40769,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40553 "parser_cocci_menhir.ml" +# 40773 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40559 "parser_cocci_menhir.ml" +# 40779 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40592,12 +40812,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 40596 "parser_cocci_menhir.ml" +# 40816 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40601 "parser_cocci_menhir.ml" +# 40821 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40608,15 +40828,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 40614 "parser_cocci_menhir.ml" +# 40834 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 40620 "parser_cocci_menhir.ml" +# 40840 "parser_cocci_menhir.ml" in let cv = @@ -40624,13 +40844,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40628 "parser_cocci_menhir.ml" +# 40848 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40634 "parser_cocci_menhir.ml" +# 40854 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40672,17 +40892,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 40676 "parser_cocci_menhir.ml" +# 40896 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 40681 "parser_cocci_menhir.ml" +# 40901 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40686 "parser_cocci_menhir.ml" +# 40906 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40695,18 +40915,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 40704 "parser_cocci_menhir.ml" +# 40924 "parser_cocci_menhir.ml" in -# 693 "parser_cocci_menhir.mly" +# 694 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 40710 "parser_cocci_menhir.ml" +# 40930 "parser_cocci_menhir.ml" in let cv = @@ -40714,13 +40934,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40718 "parser_cocci_menhir.ml" +# 40938 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40724 "parser_cocci_menhir.ml" +# 40944 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40757,12 +40977,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 40761 "parser_cocci_menhir.ml" +# 40981 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40766 "parser_cocci_menhir.ml" +# 40986 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40773,15 +40993,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 40779 "parser_cocci_menhir.ml" +# 40999 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 40785 "parser_cocci_menhir.ml" +# 41005 "parser_cocci_menhir.ml" in let cv = @@ -40789,13 +41009,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40793 "parser_cocci_menhir.ml" +# 41013 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40799 "parser_cocci_menhir.ml" +# 41019 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40832,12 +41052,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 40836 "parser_cocci_menhir.ml" +# 41056 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40841 "parser_cocci_menhir.ml" +# 41061 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40848,15 +41068,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 40854 "parser_cocci_menhir.ml" +# 41074 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 40860 "parser_cocci_menhir.ml" +# 41080 "parser_cocci_menhir.ml" in let cv = @@ -40864,13 +41084,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40868 "parser_cocci_menhir.ml" +# 41088 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40874 "parser_cocci_menhir.ml" +# 41094 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40907,12 +41127,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 40911 "parser_cocci_menhir.ml" +# 41131 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40916 "parser_cocci_menhir.ml" +# 41136 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40923,15 +41143,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 40929 "parser_cocci_menhir.ml" +# 41149 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 40935 "parser_cocci_menhir.ml" +# 41155 "parser_cocci_menhir.ml" in let cv = @@ -40939,13 +41159,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40943 "parser_cocci_menhir.ml" +# 41163 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40949 "parser_cocci_menhir.ml" +# 41169 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40980,14 +41200,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 40986 "parser_cocci_menhir.ml" +# 41206 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 40991 "parser_cocci_menhir.ml" +# 41211 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40998,16 +41218,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 41005 "parser_cocci_menhir.ml" +# 41225 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 41011 "parser_cocci_menhir.ml" +# 41231 "parser_cocci_menhir.ml" in let cv = @@ -41015,13 +41235,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41019 "parser_cocci_menhir.ml" +# 41239 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41025 "parser_cocci_menhir.ml" +# 41245 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41067,17 +41287,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 41071 "parser_cocci_menhir.ml" +# 41291 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 112 "parser_cocci_menhir.mly" (string) -# 41076 "parser_cocci_menhir.ml" +# 41296 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 41081 "parser_cocci_menhir.ml" +# 41301 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41090,20 +41310,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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*))) ) -# 41101 "parser_cocci_menhir.ml" +# 41321 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 41107 "parser_cocci_menhir.ml" +# 41327 "parser_cocci_menhir.ml" in let cv = @@ -41111,13 +41331,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41115 "parser_cocci_menhir.ml" +# 41335 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41121 "parser_cocci_menhir.ml" +# 41341 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41154,12 +41374,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 41158 "parser_cocci_menhir.ml" +# 41378 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 41163 "parser_cocci_menhir.ml" +# 41383 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41170,15 +41390,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 646 "parser_cocci_menhir.mly" +# 647 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 41176 "parser_cocci_menhir.ml" +# 41396 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 41182 "parser_cocci_menhir.ml" +# 41402 "parser_cocci_menhir.ml" in let cv = @@ -41186,13 +41406,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41190 "parser_cocci_menhir.ml" +# 41410 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41196 "parser_cocci_menhir.ml" +# 41416 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41234,17 +41454,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 41238 "parser_cocci_menhir.ml" +# 41458 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 41243 "parser_cocci_menhir.ml" +# 41463 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 117 "parser_cocci_menhir.mly" (Data.clt) -# 41248 "parser_cocci_menhir.ml" +# 41468 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41257,18 +41477,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 648 "parser_cocci_menhir.mly" +# 649 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 41266 "parser_cocci_menhir.ml" +# 41486 "parser_cocci_menhir.ml" in -# 695 "parser_cocci_menhir.mly" +# 696 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 41272 "parser_cocci_menhir.ml" +# 41492 "parser_cocci_menhir.ml" in let cv = @@ -41276,13 +41496,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41280 "parser_cocci_menhir.ml" +# 41500 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41286 "parser_cocci_menhir.ml" +# 41506 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41314,7 +41534,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 41318 "parser_cocci_menhir.ml" +# 41538 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41324,15 +41544,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 630 "parser_cocci_menhir.mly" +# 631 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 41330 "parser_cocci_menhir.ml" +# 41550 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 41336 "parser_cocci_menhir.ml" +# 41556 "parser_cocci_menhir.ml" in let cv = @@ -41340,13 +41560,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41344 "parser_cocci_menhir.ml" +# 41564 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41350 "parser_cocci_menhir.ml" +# 41570 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41378,7 +41598,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 41382 "parser_cocci_menhir.ml" +# 41602 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41388,15 +41608,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 632 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 41394 "parser_cocci_menhir.ml" +# 41614 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 41400 "parser_cocci_menhir.ml" +# 41620 "parser_cocci_menhir.ml" in let cv = @@ -41404,13 +41624,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41408 "parser_cocci_menhir.ml" +# 41628 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41414 "parser_cocci_menhir.ml" +# 41634 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41442,7 +41662,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 41446 "parser_cocci_menhir.ml" +# 41666 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41452,15 +41672,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 634 "parser_cocci_menhir.mly" +# 635 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 41458 "parser_cocci_menhir.ml" +# 41678 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 41464 "parser_cocci_menhir.ml" +# 41684 "parser_cocci_menhir.ml" in let cv = @@ -41468,13 +41688,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41472 "parser_cocci_menhir.ml" +# 41692 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41478 "parser_cocci_menhir.ml" +# 41698 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41504,9 +41724,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let p00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 41510 "parser_cocci_menhir.ml" +# 41730 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41516,16 +41736,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 636 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 41523 "parser_cocci_menhir.ml" +# 41743 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 41529 "parser_cocci_menhir.ml" +# 41749 "parser_cocci_menhir.ml" in let cv = @@ -41533,13 +41753,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41537 "parser_cocci_menhir.ml" +# 41757 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41543 "parser_cocci_menhir.ml" +# 41763 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41580,12 +41800,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 41584 "parser_cocci_menhir.ml" +# 41804 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 112 "parser_cocci_menhir.mly" (string) -# 41589 "parser_cocci_menhir.ml" +# 41809 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41597,163 +41817,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 639 "parser_cocci_menhir.mly" +# 640 "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*))) ) -# 41608 "parser_cocci_menhir.ml" +# 41828 "parser_cocci_menhir.ml" in -# 696 "parser_cocci_menhir.mly" - ( ty ) -# 41614 "parser_cocci_menhir.ml" - - in - let cv = - let x = x0 in - -# 41 "standard.mly" - ( Some x ) -# 41622 "parser_cocci_menhir.ml" - - in - -# 718 "parser_cocci_menhir.mly" - ( P.pointerify (P.make_cv cv ty) m ) -# 41628 "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 = m; - MenhirLib.EngineTypes.startp = _startpos_m_; - MenhirLib.EngineTypes.endp = _endpos_m_; - MenhirLib.EngineTypes.next = { - MenhirLib.EngineTypes.semv = ty00; - MenhirLib.EngineTypes.startp = _startpos_ty00_; - MenhirLib.EngineTypes.endp = _endpos_ty00_; - MenhirLib.EngineTypes.next = { - MenhirLib.EngineTypes.state = _menhir_s; - MenhirLib.EngineTypes.semv = x0; - MenhirLib.EngineTypes.startp = _startpos_x0_; - MenhirLib.EngineTypes.endp = _endpos_x0_; - MenhirLib.EngineTypes.next = _menhir_stack; - }; - }; - } = _menhir_stack in - let m : 'tv_list_TMul_ = Obj.magic m in - let ty00 : ( -# 114 "parser_cocci_menhir.mly" - (Data.clt) -# 41660 "parser_cocci_menhir.ml" - ) = Obj.magic ty00 in - let x0 : 'tv_const_vol = Obj.magic x0 in - let _startpos = _startpos_x0_ in - let _endpos = _endpos_m_ in - let _v : 'tv_typedef_ctype = let ty = - let ty0 = ty00 in - let ty = - let ty = ty0 in - -# 646 "parser_cocci_menhir.mly" - ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 41672 "parser_cocci_menhir.ml" - - in - -# 696 "parser_cocci_menhir.mly" - ( ty ) -# 41678 "parser_cocci_menhir.ml" - - in - let cv = - let x = x0 in - -# 41 "standard.mly" - ( Some x ) -# 41686 "parser_cocci_menhir.ml" - - in - -# 718 "parser_cocci_menhir.mly" - ( P.pointerify (P.make_cv cv ty) m ) -# 41692 "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 = m; - MenhirLib.EngineTypes.startp = _startpos_m_; - MenhirLib.EngineTypes.endp = _endpos_m_; - MenhirLib.EngineTypes.next = { - MenhirLib.EngineTypes.semv = ty200; - MenhirLib.EngineTypes.startp = _startpos_ty200_; - MenhirLib.EngineTypes.endp = _endpos_ty200_; - MenhirLib.EngineTypes.next = { - MenhirLib.EngineTypes.semv = ty100; - MenhirLib.EngineTypes.startp = _startpos_ty100_; - MenhirLib.EngineTypes.endp = _endpos_ty100_; - MenhirLib.EngineTypes.next = { - MenhirLib.EngineTypes.state = _menhir_s; - MenhirLib.EngineTypes.semv = x0; - MenhirLib.EngineTypes.startp = _startpos_x0_; - MenhirLib.EngineTypes.endp = _endpos_x0_; - MenhirLib.EngineTypes.next = _menhir_stack; - }; - }; - }; - } = _menhir_stack in - let m : 'tv_list_TMul_ = Obj.magic m in - let ty200 : ( -# 114 "parser_cocci_menhir.mly" - (Data.clt) -# 41729 "parser_cocci_menhir.ml" - ) = Obj.magic ty200 in - let ty100 : ( -# 114 "parser_cocci_menhir.mly" - (Data.clt) -# 41734 "parser_cocci_menhir.ml" - ) = Obj.magic ty100 in - let x0 : 'tv_const_vol = Obj.magic x0 in - let _startpos = _startpos_x0_ in - let _endpos = _endpos_m_ in - let _v : 'tv_typedef_ctype = let ty = - let ty20 = ty200 in - let ty10 = ty100 in - let ty = - let ty2 = ty20 in - let ty1 = ty10 in - -# 648 "parser_cocci_menhir.mly" - ( Ast0.wrap - (Ast0.BaseType - (Ast.LongLongType, - [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 41751 "parser_cocci_menhir.ml" - - in - -# 696 "parser_cocci_menhir.mly" +# 697 "parser_cocci_menhir.mly" ( ty ) -# 41757 "parser_cocci_menhir.ml" +# 41834 "parser_cocci_menhir.ml" in let cv = @@ -41761,13 +41838,156 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41765 "parser_cocci_menhir.ml" +# 41842 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41771 "parser_cocci_menhir.ml" +# 41848 "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 = m; + MenhirLib.EngineTypes.startp = _startpos_m_; + MenhirLib.EngineTypes.endp = _endpos_m_; + MenhirLib.EngineTypes.next = { + MenhirLib.EngineTypes.semv = ty00; + MenhirLib.EngineTypes.startp = _startpos_ty00_; + MenhirLib.EngineTypes.endp = _endpos_ty00_; + MenhirLib.EngineTypes.next = { + MenhirLib.EngineTypes.state = _menhir_s; + MenhirLib.EngineTypes.semv = x0; + MenhirLib.EngineTypes.startp = _startpos_x0_; + MenhirLib.EngineTypes.endp = _endpos_x0_; + MenhirLib.EngineTypes.next = _menhir_stack; + }; + }; + } = _menhir_stack in + let m : 'tv_list_TMul_ = Obj.magic m in + let ty00 : ( +# 114 "parser_cocci_menhir.mly" + (Data.clt) +# 41880 "parser_cocci_menhir.ml" + ) = Obj.magic ty00 in + let x0 : 'tv_const_vol = Obj.magic x0 in + let _startpos = _startpos_x0_ in + let _endpos = _endpos_m_ in + let _v : 'tv_typedef_ctype = let ty = + let ty0 = ty00 in + let ty = + let ty = ty0 in + +# 647 "parser_cocci_menhir.mly" + ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) +# 41892 "parser_cocci_menhir.ml" + + in + +# 697 "parser_cocci_menhir.mly" + ( ty ) +# 41898 "parser_cocci_menhir.ml" + + in + let cv = + let x = x0 in + +# 41 "standard.mly" + ( Some x ) +# 41906 "parser_cocci_menhir.ml" + + in + +# 719 "parser_cocci_menhir.mly" + ( P.pointerify (P.make_cv cv ty) m ) +# 41912 "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 = m; + MenhirLib.EngineTypes.startp = _startpos_m_; + MenhirLib.EngineTypes.endp = _endpos_m_; + MenhirLib.EngineTypes.next = { + MenhirLib.EngineTypes.semv = ty200; + MenhirLib.EngineTypes.startp = _startpos_ty200_; + MenhirLib.EngineTypes.endp = _endpos_ty200_; + MenhirLib.EngineTypes.next = { + MenhirLib.EngineTypes.semv = ty100; + MenhirLib.EngineTypes.startp = _startpos_ty100_; + MenhirLib.EngineTypes.endp = _endpos_ty100_; + MenhirLib.EngineTypes.next = { + MenhirLib.EngineTypes.state = _menhir_s; + MenhirLib.EngineTypes.semv = x0; + MenhirLib.EngineTypes.startp = _startpos_x0_; + MenhirLib.EngineTypes.endp = _endpos_x0_; + MenhirLib.EngineTypes.next = _menhir_stack; + }; + }; + }; + } = _menhir_stack in + let m : 'tv_list_TMul_ = Obj.magic m in + let ty200 : ( +# 114 "parser_cocci_menhir.mly" + (Data.clt) +# 41949 "parser_cocci_menhir.ml" + ) = Obj.magic ty200 in + let ty100 : ( +# 114 "parser_cocci_menhir.mly" + (Data.clt) +# 41954 "parser_cocci_menhir.ml" + ) = Obj.magic ty100 in + let x0 : 'tv_const_vol = Obj.magic x0 in + let _startpos = _startpos_x0_ in + let _endpos = _endpos_m_ in + let _v : 'tv_typedef_ctype = let ty = + let ty20 = ty200 in + let ty10 = ty100 in + let ty = + let ty2 = ty20 in + let ty1 = ty10 in + +# 649 "parser_cocci_menhir.mly" + ( Ast0.wrap + (Ast0.BaseType + (Ast.LongLongType, + [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) +# 41971 "parser_cocci_menhir.ml" + + in + +# 697 "parser_cocci_menhir.mly" + ( ty ) +# 41977 "parser_cocci_menhir.ml" + + in + let cv = + let x = x0 in + +# 41 "standard.mly" + ( Some x ) +# 41985 "parser_cocci_menhir.ml" + + in + +# 719 "parser_cocci_menhir.mly" + ( P.pointerify (P.make_cv cv ty) m ) +# 41991 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41799,7 +42019,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 41803 "parser_cocci_menhir.ml" +# 42023 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41809,15 +42029,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 656 "parser_cocci_menhir.mly" +# 657 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) ) -# 41815 "parser_cocci_menhir.ml" +# 42035 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 41821 "parser_cocci_menhir.ml" +# 42041 "parser_cocci_menhir.ml" in let cv = @@ -41825,13 +42045,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41829 "parser_cocci_menhir.ml" +# 42049 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41835 "parser_cocci_menhir.ml" +# 42055 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41863,7 +42083,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 41867 "parser_cocci_menhir.ml" +# 42087 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41873,15 +42093,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 658 "parser_cocci_menhir.mly" +# 659 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) ) -# 41879 "parser_cocci_menhir.ml" +# 42099 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 41885 "parser_cocci_menhir.ml" +# 42105 "parser_cocci_menhir.ml" in let cv = @@ -41889,13 +42109,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41893 "parser_cocci_menhir.ml" +# 42113 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41899 "parser_cocci_menhir.ml" +# 42119 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41927,7 +42147,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 114 "parser_cocci_menhir.mly" (Data.clt) -# 41931 "parser_cocci_menhir.ml" +# 42151 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41937,15 +42157,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 660 "parser_cocci_menhir.mly" +# 661 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) ) -# 41943 "parser_cocci_menhir.ml" +# 42163 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 41949 "parser_cocci_menhir.ml" +# 42169 "parser_cocci_menhir.ml" in let cv = @@ -41953,13 +42173,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41957 "parser_cocci_menhir.ml" +# 42177 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41963 "parser_cocci_menhir.ml" +# 42183 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41991,7 +42211,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 115 "parser_cocci_menhir.mly" (Data.clt) -# 41995 "parser_cocci_menhir.ml" +# 42215 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -42001,15 +42221,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 662 "parser_cocci_menhir.mly" +# 663 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) ) -# 42007 "parser_cocci_menhir.ml" +# 42227 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42013 "parser_cocci_menhir.ml" +# 42233 "parser_cocci_menhir.ml" in let cv = @@ -42017,13 +42237,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42021 "parser_cocci_menhir.ml" +# 42241 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42027 "parser_cocci_menhir.ml" +# 42247 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42055,7 +42275,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 115 "parser_cocci_menhir.mly" (Data.clt) -# 42059 "parser_cocci_menhir.ml" +# 42279 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -42065,15 +42285,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 664 "parser_cocci_menhir.mly" +# 665 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) ) -# 42071 "parser_cocci_menhir.ml" +# 42291 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42077 "parser_cocci_menhir.ml" +# 42297 "parser_cocci_menhir.ml" in let cv = @@ -42081,13 +42301,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42085 "parser_cocci_menhir.ml" +# 42305 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42091 "parser_cocci_menhir.ml" +# 42311 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42119,7 +42339,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 115 "parser_cocci_menhir.mly" (Data.clt) -# 42123 "parser_cocci_menhir.ml" +# 42343 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -42129,15 +42349,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 666 "parser_cocci_menhir.mly" +# 667 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) ) -# 42135 "parser_cocci_menhir.ml" +# 42355 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42141 "parser_cocci_menhir.ml" +# 42361 "parser_cocci_menhir.ml" in let cv = @@ -42145,13 +42365,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42149 "parser_cocci_menhir.ml" +# 42369 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42155 "parser_cocci_menhir.ml" +# 42375 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42189,7 +42409,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s00 : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 42193 "parser_cocci_menhir.ml" +# 42413 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -42201,15 +42421,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 668 "parser_cocci_menhir.mly" +# 669 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) ) -# 42207 "parser_cocci_menhir.ml" +# 42427 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42213 "parser_cocci_menhir.ml" +# 42433 "parser_cocci_menhir.ml" in let cv = @@ -42217,13 +42437,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42221 "parser_cocci_menhir.ml" +# 42441 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42227 "parser_cocci_menhir.ml" +# 42447 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42268,20 +42488,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42274 "parser_cocci_menhir.ml" +# 42494 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42280 "parser_cocci_menhir.ml" +# 42500 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 42285 "parser_cocci_menhir.ml" +# 42505 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -42300,22 +42520,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 42304 "parser_cocci_menhir.ml" +# 42524 "parser_cocci_menhir.ml" in -# 670 "parser_cocci_menhir.mly" +# 671 "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)) ) -# 42313 "parser_cocci_menhir.ml" +# 42533 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42319 "parser_cocci_menhir.ml" +# 42539 "parser_cocci_menhir.ml" in let cv = @@ -42323,13 +42543,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42327 "parser_cocci_menhir.ml" +# 42547 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42333 "parser_cocci_menhir.ml" +# 42553 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42379,21 +42599,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42385 "parser_cocci_menhir.ml" +# 42605 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42391 "parser_cocci_menhir.ml" +# 42611 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let x000 : 'tv_ident = Obj.magic x000 in let s00 : ( # 116 "parser_cocci_menhir.mly" (Data.clt) -# 42397 "parser_cocci_menhir.ml" +# 42617 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -42415,22 +42635,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42419 "parser_cocci_menhir.ml" +# 42639 "parser_cocci_menhir.ml" in -# 670 "parser_cocci_menhir.mly" +# 671 "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)) ) -# 42428 "parser_cocci_menhir.ml" +# 42648 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42434 "parser_cocci_menhir.ml" +# 42654 "parser_cocci_menhir.ml" in let cv = @@ -42438,13 +42658,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42442 "parser_cocci_menhir.ml" +# 42662 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42448 "parser_cocci_menhir.ml" +# 42668 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42490,15 +42710,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 675 "parser_cocci_menhir.mly" +# 676 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) ) -# 42496 "parser_cocci_menhir.ml" +# 42716 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42502 "parser_cocci_menhir.ml" +# 42722 "parser_cocci_menhir.ml" in let cv = @@ -42506,13 +42726,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42510 "parser_cocci_menhir.ml" +# 42730 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42516 "parser_cocci_menhir.ml" +# 42736 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42557,15 +42777,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42563 "parser_cocci_menhir.ml" +# 42783 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42569 "parser_cocci_menhir.ml" +# 42789 "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 @@ -42585,23 +42805,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 42589 "parser_cocci_menhir.ml" +# 42809 "parser_cocci_menhir.ml" in -# 678 "parser_cocci_menhir.mly" +# 679 "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)) ) -# 42599 "parser_cocci_menhir.ml" +# 42819 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42605 "parser_cocci_menhir.ml" +# 42825 "parser_cocci_menhir.ml" in let cv = @@ -42609,13 +42829,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42613 "parser_cocci_menhir.ml" +# 42833 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42619 "parser_cocci_menhir.ml" +# 42839 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42665,15 +42885,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42671 "parser_cocci_menhir.ml" +# 42891 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42677 "parser_cocci_menhir.ml" +# 42897 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let x000 : 'tv_type_ident = Obj.magic x000 in let s00 : 'tv_struct_or_union = Obj.magic s00 in @@ -42697,23 +42917,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42701 "parser_cocci_menhir.ml" +# 42921 "parser_cocci_menhir.ml" in -# 678 "parser_cocci_menhir.mly" +# 679 "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)) ) -# 42711 "parser_cocci_menhir.ml" +# 42931 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42717 "parser_cocci_menhir.ml" +# 42937 "parser_cocci_menhir.ml" in let cv = @@ -42721,13 +42941,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42725 "parser_cocci_menhir.ml" +# 42945 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42731 "parser_cocci_menhir.ml" +# 42951 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42772,20 +42992,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let m : 'tv_list_TMul_ = Obj.magic m in let r00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42778 "parser_cocci_menhir.ml" +# 42998 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( -# 169 "parser_cocci_menhir.mly" +# 170 "parser_cocci_menhir.mly" (Data.clt) -# 42784 "parser_cocci_menhir.ml" +# 43004 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 42789 "parser_cocci_menhir.ml" +# 43009 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -42801,17 +43021,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let l = l0 in let s = s0 in -# 684 "parser_cocci_menhir.mly" +# 685 "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)) ) -# 42809 "parser_cocci_menhir.ml" +# 43029 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42815 "parser_cocci_menhir.ml" +# 43035 "parser_cocci_menhir.ml" in let cv = @@ -42819,13 +43039,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42823 "parser_cocci_menhir.ml" +# 43043 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42829 "parser_cocci_menhir.ml" +# 43049 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42857,7 +43077,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 125 "parser_cocci_menhir.mly" (string * Data.clt) -# 42861 "parser_cocci_menhir.ml" +# 43081 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -42867,15 +43087,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 688 "parser_cocci_menhir.mly" +# 689 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) ) -# 42873 "parser_cocci_menhir.ml" +# 43093 "parser_cocci_menhir.ml" in -# 697 "parser_cocci_menhir.mly" +# 698 "parser_cocci_menhir.mly" ( ty ) -# 42879 "parser_cocci_menhir.ml" +# 43099 "parser_cocci_menhir.ml" in let cv = @@ -42883,13 +43103,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 42887 "parser_cocci_menhir.ml" +# 43107 "parser_cocci_menhir.ml" in -# 718 "parser_cocci_menhir.mly" +# 719 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 42893 "parser_cocci_menhir.ml" +# 43113 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42918,24 +43138,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 42924 "parser_cocci_menhir.ml" +# 43144 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_midzero_list_mctype_mctype_ = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 42930 "parser_cocci_menhir.ml" +# 43150 "parser_cocci_menhir.ml" ) = Obj.magic lp in let _startpos = _startpos_lp_ in let _endpos = _endpos_rp_ in let _v : 'tv_typedef_ctype = -# 720 "parser_cocci_menhir.mly" +# 721 "parser_cocci_menhir.mly" ( let (mids,code) = t in Ast0.wrap (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) ) -# 42939 "parser_cocci_menhir.ml" +# 43159 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42954,16 +43174,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 42960 "parser_cocci_menhir.ml" +# 43180 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_typedef_ctype = -# 723 "parser_cocci_menhir.mly" +# 724 "parser_cocci_menhir.mly" ( tmeta_to_type _1 ) -# 42967 "parser_cocci_menhir.ml" +# 43187 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42985,9 +43205,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_typedef_ident = -# 1949 "parser_cocci_menhir.mly" +# 1963 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode _1)) ) -# 42991 "parser_cocci_menhir.ml" +# 43211 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43006,16 +43226,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 132 "parser_cocci_menhir.mly" +# 133 "parser_cocci_menhir.mly" (Parse_aux.info) -# 43012 "parser_cocci_menhir.ml" +# 43232 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_typedef_ident = -# 1950 "parser_cocci_menhir.mly" +# 1964 "parser_cocci_menhir.mly" ( tmeta_to_type _1 ) -# 43019 "parser_cocci_menhir.ml" +# 43239 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43034,17 +43254,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 131 "parser_cocci_menhir.mly" +# 132 "parser_cocci_menhir.mly" (Parse_aux.info) -# 43040 "parser_cocci_menhir.ml" +# 43260 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_typedef_ident = -# 1952 "parser_cocci_menhir.mly" +# 1966 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = _1 in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 43048 "parser_cocci_menhir.ml" +# 43268 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43066,9 +43286,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_ = -# 1537 "parser_cocci_menhir.mly" +# 1540 "parser_cocci_menhir.mly" ( _1 ) -# 43072 "parser_cocci_menhir.ml" +# 43292 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43093,16 +43313,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 43099 "parser_cocci_menhir.ml" +# 43319 "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_ = -# 1539 "parser_cocci_menhir.mly" +# 1542 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) -# 43106 "parser_cocci_menhir.ml" +# 43326 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43127,16 +43347,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 43133 "parser_cocci_menhir.ml" +# 43353 "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_ = -# 1541 "parser_cocci_menhir.mly" +# 1544 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) -# 43140 "parser_cocci_menhir.ml" +# 43360 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43164,9 +43384,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_ = -# 1543 "parser_cocci_menhir.mly" +# 1546 "parser_cocci_menhir.mly" ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 43170 "parser_cocci_menhir.ml" +# 43390 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43191,17 +43411,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 43197 "parser_cocci_menhir.ml" +# 43417 "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_ = -# 1545 "parser_cocci_menhir.mly" +# 1548 "parser_cocci_menhir.mly" ( let mcode = P.clt2mcode Ast.Not _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 43205 "parser_cocci_menhir.ml" +# 43425 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43228,14 +43448,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 43232 "parser_cocci_menhir.ml" +# 43452 "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_ = -# 1548 "parser_cocci_menhir.mly" +# 1551 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) -# 43239 "parser_cocci_menhir.ml" +# 43459 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43269,29 +43489,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 43275 "parser_cocci_menhir.ml" +# 43495 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 43281 "parser_cocci_menhir.ml" +# 43501 "parser_cocci_menhir.ml" ) = Obj.magic lp in let s : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 43286 "parser_cocci_menhir.ml" +# 43506 "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_ = -# 1550 "parser_cocci_menhir.mly" +# 1553 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, P.clt2mcode "(" lp,t, P.clt2mcode ")" rp)) ) -# 43295 "parser_cocci_menhir.ml" +# 43515 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43313,9 +43533,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_expr_eexpr_invalid_ = -# 1537 "parser_cocci_menhir.mly" +# 1540 "parser_cocci_menhir.mly" ( _1 ) -# 43319 "parser_cocci_menhir.ml" +# 43539 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43340,16 +43560,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 43346 "parser_cocci_menhir.ml" +# 43566 "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_ = -# 1539 "parser_cocci_menhir.mly" +# 1542 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) -# 43353 "parser_cocci_menhir.ml" +# 43573 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43374,16 +43594,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 43380 "parser_cocci_menhir.ml" +# 43600 "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_ = -# 1541 "parser_cocci_menhir.mly" +# 1544 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) -# 43387 "parser_cocci_menhir.ml" +# 43607 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43411,9 +43631,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_unary_expr_eexpr_invalid_ = -# 1543 "parser_cocci_menhir.mly" +# 1546 "parser_cocci_menhir.mly" ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 43417 "parser_cocci_menhir.ml" +# 43637 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43438,17 +43658,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 43444 "parser_cocci_menhir.ml" +# 43664 "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_ = -# 1545 "parser_cocci_menhir.mly" +# 1548 "parser_cocci_menhir.mly" ( let mcode = P.clt2mcode Ast.Not _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 43452 "parser_cocci_menhir.ml" +# 43672 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43475,14 +43695,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 43479 "parser_cocci_menhir.ml" +# 43699 "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_ = -# 1548 "parser_cocci_menhir.mly" +# 1551 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) -# 43486 "parser_cocci_menhir.ml" +# 43706 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43516,29 +43736,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 43522 "parser_cocci_menhir.ml" +# 43742 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 43528 "parser_cocci_menhir.ml" +# 43748 "parser_cocci_menhir.ml" ) = Obj.magic lp in let s : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 43533 "parser_cocci_menhir.ml" +# 43753 "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_ = -# 1550 "parser_cocci_menhir.mly" +# 1553 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, P.clt2mcode "(" lp,t, P.clt2mcode ")" rp)) ) -# 43542 "parser_cocci_menhir.ml" +# 43762 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43560,9 +43780,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_ = -# 1537 "parser_cocci_menhir.mly" +# 1540 "parser_cocci_menhir.mly" ( _1 ) -# 43566 "parser_cocci_menhir.ml" +# 43786 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43587,16 +43807,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 43593 "parser_cocci_menhir.ml" +# 43813 "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_ = -# 1539 "parser_cocci_menhir.mly" +# 1542 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) -# 43600 "parser_cocci_menhir.ml" +# 43820 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43621,16 +43841,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 43627 "parser_cocci_menhir.ml" +# 43847 "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_ = -# 1541 "parser_cocci_menhir.mly" +# 1544 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) -# 43634 "parser_cocci_menhir.ml" +# 43854 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43658,9 +43878,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_ = -# 1543 "parser_cocci_menhir.mly" +# 1546 "parser_cocci_menhir.mly" ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 43664 "parser_cocci_menhir.ml" +# 43884 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43685,17 +43905,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 43691 "parser_cocci_menhir.ml" +# 43911 "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_ = -# 1545 "parser_cocci_menhir.mly" +# 1548 "parser_cocci_menhir.mly" ( let mcode = P.clt2mcode Ast.Not _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 43699 "parser_cocci_menhir.ml" +# 43919 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43722,14 +43942,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 43726 "parser_cocci_menhir.ml" +# 43946 "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_ = -# 1548 "parser_cocci_menhir.mly" +# 1551 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) -# 43733 "parser_cocci_menhir.ml" +# 43953 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43763,29 +43983,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 43769 "parser_cocci_menhir.ml" +# 43989 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 43775 "parser_cocci_menhir.ml" +# 43995 "parser_cocci_menhir.ml" ) = Obj.magic lp in let s : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 43780 "parser_cocci_menhir.ml" +# 44000 "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_ = -# 1550 "parser_cocci_menhir.mly" +# 1553 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, P.clt2mcode "(" lp,t, P.clt2mcode ")" rp)) ) -# 43789 "parser_cocci_menhir.ml" +# 44009 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43807,9 +44027,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_expr_expr_invalid_ = -# 1537 "parser_cocci_menhir.mly" +# 1540 "parser_cocci_menhir.mly" ( _1 ) -# 43813 "parser_cocci_menhir.ml" +# 44033 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43834,16 +44054,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 43840 "parser_cocci_menhir.ml" +# 44060 "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_ = -# 1539 "parser_cocci_menhir.mly" +# 1542 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) -# 43847 "parser_cocci_menhir.ml" +# 44067 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43868,16 +44088,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 43874 "parser_cocci_menhir.ml" +# 44094 "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_ = -# 1541 "parser_cocci_menhir.mly" +# 1544 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) -# 43881 "parser_cocci_menhir.ml" +# 44101 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43905,9 +44125,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_unary_expr_expr_invalid_ = -# 1543 "parser_cocci_menhir.mly" +# 1546 "parser_cocci_menhir.mly" ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 43911 "parser_cocci_menhir.ml" +# 44131 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43932,17 +44152,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 43938 "parser_cocci_menhir.ml" +# 44158 "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_ = -# 1545 "parser_cocci_menhir.mly" +# 1548 "parser_cocci_menhir.mly" ( let mcode = P.clt2mcode Ast.Not _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 43946 "parser_cocci_menhir.ml" +# 44166 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -43969,14 +44189,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 43973 "parser_cocci_menhir.ml" +# 44193 "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_ = -# 1548 "parser_cocci_menhir.mly" +# 1551 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) -# 43980 "parser_cocci_menhir.ml" +# 44200 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44010,29 +44230,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 44016 "parser_cocci_menhir.ml" +# 44236 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 44022 "parser_cocci_menhir.ml" +# 44242 "parser_cocci_menhir.ml" ) = Obj.magic lp in let s : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 44027 "parser_cocci_menhir.ml" +# 44247 "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_ = -# 1550 "parser_cocci_menhir.mly" +# 1553 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, P.clt2mcode "(" lp,t, P.clt2mcode ")" rp)) ) -# 44036 "parser_cocci_menhir.ml" +# 44256 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44054,9 +44274,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_expr_bis = -# 1556 "parser_cocci_menhir.mly" +# 1559 "parser_cocci_menhir.mly" ( _1 ) -# 44060 "parser_cocci_menhir.ml" +# 44280 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44081,16 +44301,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 44087 "parser_cocci_menhir.ml" +# 44307 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_unary_expr_bis = -# 1558 "parser_cocci_menhir.mly" +# 1561 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) -# 44094 "parser_cocci_menhir.ml" +# 44314 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44115,16 +44335,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 153 "parser_cocci_menhir.mly" +# 154 "parser_cocci_menhir.mly" (Data.clt) -# 44121 "parser_cocci_menhir.ml" +# 44341 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_unary_expr_bis = -# 1560 "parser_cocci_menhir.mly" +# 1563 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) -# 44128 "parser_cocci_menhir.ml" +# 44348 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44152,9 +44372,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_unary_expr_bis = -# 1562 "parser_cocci_menhir.mly" +# 1565 "parser_cocci_menhir.mly" ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 44158 "parser_cocci_menhir.ml" +# 44378 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44179,17 +44399,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct } = _menhir_stack in let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 44185 "parser_cocci_menhir.ml" +# 44405 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_unary_expr_bis = -# 1564 "parser_cocci_menhir.mly" +# 1567 "parser_cocci_menhir.mly" ( let mcode = P.clt2mcode Ast.Not _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 44193 "parser_cocci_menhir.ml" +# 44413 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44216,14 +44436,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 44220 "parser_cocci_menhir.ml" +# 44440 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_unary_expr_bis = -# 1567 "parser_cocci_menhir.mly" +# 1570 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) -# 44227 "parser_cocci_menhir.ml" +# 44447 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44257,29 +44477,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; } = _menhir_stack in let rp : ( -# 145 "parser_cocci_menhir.mly" +# 146 "parser_cocci_menhir.mly" (Data.clt) -# 44263 "parser_cocci_menhir.ml" +# 44483 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( -# 144 "parser_cocci_menhir.mly" +# 145 "parser_cocci_menhir.mly" (Data.clt) -# 44269 "parser_cocci_menhir.ml" +# 44489 "parser_cocci_menhir.ml" ) = Obj.magic lp in let s : ( # 124 "parser_cocci_menhir.mly" (Data.clt) -# 44274 "parser_cocci_menhir.ml" +# 44494 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_rp_ in let _v : 'tv_unary_expr_bis = -# 1569 "parser_cocci_menhir.mly" +# 1572 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, P.clt2mcode "(" lp,t, P.clt2mcode ")" rp)) ) -# 44283 "parser_cocci_menhir.ml" +# 44503 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44298,16 +44518,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 161 "parser_cocci_menhir.mly" +# 162 "parser_cocci_menhir.mly" (Data.clt) -# 44304 "parser_cocci_menhir.ml" +# 44524 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1573 "parser_cocci_menhir.mly" +# 1576 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.GetRef _1 ) -# 44311 "parser_cocci_menhir.ml" +# 44531 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44326,16 +44546,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 44332 "parser_cocci_menhir.ml" +# 44552 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1574 "parser_cocci_menhir.mly" +# 1577 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.DeRef _1 ) -# 44339 "parser_cocci_menhir.ml" +# 44559 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44354,16 +44574,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) -# 44360 "parser_cocci_menhir.ml" +# 44580 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1575 "parser_cocci_menhir.mly" +# 1578 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.UnPlus _1 ) -# 44367 "parser_cocci_menhir.ml" +# 44587 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44382,16 +44602,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 166 "parser_cocci_menhir.mly" +# 167 "parser_cocci_menhir.mly" (Data.clt) -# 44388 "parser_cocci_menhir.ml" +# 44608 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1576 "parser_cocci_menhir.mly" +# 1579 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.UnMinus _1 ) -# 44395 "parser_cocci_menhir.ml" +# 44615 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44410,16 +44630,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let _1 : ( -# 167 "parser_cocci_menhir.mly" +# 168 "parser_cocci_menhir.mly" (Data.clt) -# 44416 "parser_cocci_menhir.ml" +# 44636 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1577 "parser_cocci_menhir.mly" +# 1580 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Tilde _1 ) -# 44423 "parser_cocci_menhir.ml" +# 44643 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44447,9 +44667,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_when_start = -# 2202 "parser_cocci_menhir.mly" +# 2216 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS((Ast0.wrap(Ast0.Exp(_1)))::_2)) ) -# 44453 "parser_cocci_menhir.ml" +# 44673 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44477,9 +44697,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_when_start = -# 2204 "parser_cocci_menhir.mly" +# 2218 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1@_2)) ) -# 44483 "parser_cocci_menhir.ml" +# 44703 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44501,9 +44721,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_w_ in let _endpos = _endpos_w_ in let _v : 'tv_whenppdecs = -# 1115 "parser_cocci_menhir.mly" +# 1118 "parser_cocci_menhir.mly" ( w ) -# 44507 "parser_cocci_menhir.ml" +# 44727 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44537,9 +44757,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_ = -# 2249 "parser_cocci_menhir.mly" +# 2263 "parser_cocci_menhir.mly" ( [Ast0.WhenNot w] ) -# 44543 "parser_cocci_menhir.ml" +# 44763 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44573,9 +44793,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_ = -# 2250 "parser_cocci_menhir.mly" +# 2264 "parser_cocci_menhir.mly" ( [Ast0.WhenAlways w] ) -# 44579 "parser_cocci_menhir.ml" +# 44799 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44605,9 +44825,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_ = -# 2252 "parser_cocci_menhir.mly" +# 2266 "parser_cocci_menhir.mly" ( List.map (function x -> Ast0.WhenModifier(x)) _2 ) -# 44611 "parser_cocci_menhir.ml" +# 44831 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44641,9 +44861,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_ = -# 2253 "parser_cocci_menhir.mly" +# 2267 "parser_cocci_menhir.mly" ( [Ast0.WhenNotTrue e] ) -# 44647 "parser_cocci_menhir.ml" +# 44867 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44677,9 +44897,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_ = -# 2254 "parser_cocci_menhir.mly" +# 2268 "parser_cocci_menhir.mly" ( [Ast0.WhenNotFalse e] ) -# 44683 "parser_cocci_menhir.ml" +# 44903 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -44700,106 +44920,106 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rec script_meta_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 2048 lexer lexbuf) : ( -# 229 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 2059 lexer lexbuf) : ( +# 230 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 44707 "parser_cocci_menhir.ml" +# 44927 "parser_cocci_menhir.ml" )) and rule_name = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1973 lexer lexbuf) : ( -# 223 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1984 lexer lexbuf) : ( +# 224 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 44715 "parser_cocci_menhir.ml" +# 44935 "parser_cocci_menhir.ml" )) and reinit = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1971 lexer lexbuf) : ( -# 201 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1982 lexer lexbuf) : ( +# 202 "parser_cocci_menhir.mly" (unit) -# 44723 "parser_cocci_menhir.ml" +# 44943 "parser_cocci_menhir.ml" )) and plus_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1935 lexer lexbuf) : ( -# 210 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1946 lexer lexbuf) : ( +# 211 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 44731 "parser_cocci_menhir.ml" +# 44951 "parser_cocci_menhir.ml" )) and plus_exp_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1927 lexer lexbuf) : ( -# 213 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1938 lexer lexbuf) : ( +# 214 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 44739 "parser_cocci_menhir.ml" +# 44959 "parser_cocci_menhir.ml" )) and never_used = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1921 lexer lexbuf) : ( -# 238 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1932 lexer lexbuf) : ( +# 239 "parser_cocci_menhir.mly" (unit) -# 44747 "parser_cocci_menhir.ml" +# 44967 "parser_cocci_menhir.ml" )) and minus_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1836 lexer lexbuf) : ( -# 204 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1847 lexer lexbuf) : ( +# 205 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 44755 "parser_cocci_menhir.ml" +# 44975 "parser_cocci_menhir.ml" )) and minus_exp_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1824 lexer lexbuf) : ( -# 207 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1835 lexer lexbuf) : ( +# 208 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 44763 "parser_cocci_menhir.ml" +# 44983 "parser_cocci_menhir.ml" )) and meta_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1821 lexer lexbuf) : ( -# 227 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1832 lexer lexbuf) : ( +# 228 "parser_cocci_menhir.mly" ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list) -# 44771 "parser_cocci_menhir.ml" +# 44991 "parser_cocci_menhir.ml" )) and iso_rule_name = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1817 lexer lexbuf) : ( -# 219 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1828 lexer lexbuf) : ( +# 220 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 44779 "parser_cocci_menhir.ml" +# 44999 "parser_cocci_menhir.ml" )) and iso_meta_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1530 lexer lexbuf) : ( -# 235 "parser_cocci_menhir.mly" + (Obj.magic (MenhirInterpreter.entry 1538 lexer lexbuf) : ( +# 236 "parser_cocci_menhir.mly" ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list) -# 44787 "parser_cocci_menhir.ml" +# 45007 "parser_cocci_menhir.ml" )) and iso_main = fun lexer lexbuf -> (Obj.magic (MenhirInterpreter.entry 18 lexer lexbuf) : ( -# 232 "parser_cocci_menhir.mly" +# 233 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 44795 "parser_cocci_menhir.ml" +# 45015 "parser_cocci_menhir.ml" )) and include_main = fun lexer lexbuf -> (Obj.magic (MenhirInterpreter.entry 0 lexer lexbuf) : ( -# 216 "parser_cocci_menhir.mly" +# 217 "parser_cocci_menhir.mly" (Data.incl_iso list) -# 44803 "parser_cocci_menhir.ml" +# 45023 "parser_cocci_menhir.ml" )) diff --git a/parsing_cocci/parser_cocci_menhir.mli b/parsing_cocci/parser_cocci_menhir.mli index 17cf946..b81a4c8 100644 --- a/parsing_cocci/parser_cocci_menhir.mli +++ b/parsing_cocci/parser_cocci_menhir.mli @@ -101,7 +101,7 @@ type token = | TMetaInitList of (Parse_aux.list_info) | TMetaInit of (Parse_aux.info) | TMetaIdExp of (Parse_aux.typed_expinfo) - | TMetaId of (Parse_aux.idinfo) + | TMetaId of (Parse_aux.midinfo) | TMetaFunc of (Parse_aux.idinfo) | TMetaFieldList of (Parse_aux.list_info) | TMetaField of (Parse_aux.info) diff --git a/parsing_cocci/parser_cocci_menhir.mly b/parsing_cocci/parser_cocci_menhir.mly index 2bbb7b2..fb706ab 100644 --- a/parsing_cocci/parser_cocci_menhir.mly +++ b/parsing_cocci/parser_cocci_menhir.mly @@ -89,15 +89,15 @@ let tmeta_to_statement (name,pure,clt) = let tmeta_to_seed_id (name,pure,clt) = (coerce_tmeta "an identifier" name - (TMetaId(name,Ast.IdNoConstraint,pure,clt)) - (function TMetaId(_,_,_,_) -> true | _ -> false)); + (TMetaId(name,Ast.IdNoConstraint,Ast.NoVal,pure,clt)) + (function TMetaId(_,_,_,_,_) -> true | _ -> false)); Ast.SeedId name let tmeta_to_ident (name,pure,clt) = (coerce_tmeta "an identifier" name - (TMetaId(name,Ast.IdNoConstraint,pure,clt)) - (function TMetaId(_,_,_,_) -> true | _ -> false)); - Ast0.wrap(Ast0.MetaId(P.clt2mcode name clt,Ast.IdNoConstraint,pure)) + (TMetaId(name,Ast.IdNoConstraint,Ast.NoVal,pure,clt)) + (function TMetaId(_,_,_,_,_) -> true | _ -> false)); + Ast0.wrap(Ast0.MetaId(P.clt2mcode name clt,Ast.IdNoConstraint,Ast.NoVal,pure)) %} %token EOF @@ -125,7 +125,8 @@ let tmeta_to_ident (name,pure,clt) = %token TIdent TTypeId TDeclarerId TIteratorId %token TPragma -%token TMetaId TMetaFunc TMetaLocalFunc +%token TMetaId +%token TMetaFunc TMetaLocalFunc %token TMetaIterator TMetaDeclarer %token TMetaErr %token TMetaParam TMetaStm TMetaStmList TMetaType @@ -421,7 +422,7 @@ list_len: TFresh TIdentifier { (fun name check_meta seed -> let tok = check_meta(Ast.MetaFreshIdDecl(name,seed)) in - !Data.add_fresh_id_meta name; tok) } + !Data.add_fresh_id_meta name seed; tok) } /* metavariable kinds with no constraints, etc */ %inline metakind: @@ -872,9 +873,9 @@ includes: (Ast0.Undef (P.clt2mcode "#undef" (P.drop_aft clt), (match ident with - TMetaId((nm,constraints,pure,clt)) -> + TMetaId((nm,constraints,seed,pure,clt)) -> let clt = P.set_aft aft clt in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) | TIdent((nm,clt)) -> let clt = P.set_aft aft clt in Ast0.wrap(Ast0.Id(P.clt2mcode nm clt)) @@ -907,9 +908,10 @@ defineop: (Ast0.Define (P.clt2mcode "#define" (P.drop_aft clt), (match ident with - TMetaId((nm,constraints,pure,clt)) -> + TMetaId((nm,constraints,seed,pure,clt)) -> let clt = P.set_aft aft clt in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) + Ast0.wrap + (Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) | TIdent((nm,clt)) -> let clt = P.set_aft aft clt in Ast0.wrap(Ast0.Id(P.clt2mcode nm clt)) @@ -932,8 +934,9 @@ defineop: (Ast0.Define (P.clt2mcode "#define" (P.drop_aft clt), (match ident with - TMetaId((nm,constraints,pure,clt)) -> - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) + TMetaId((nm,constraints,seed,pure,clt)) -> + Ast0.wrap + (Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) | TIdent((nm,clt)) -> Ast0.wrap(Ast0.Id(P.clt2mcode nm clt)) | _ -> @@ -1063,7 +1066,7 @@ statement: | TMeta { tmeta_to_statement $1} | TMetaStm { P.meta_stm $1 } -| expr TPtVirg +| option(expr) TPtVirg { P.exp_stm $1 $2 } | TIf TOPar eexpr TCPar single_statement %prec TIf { P.ifthen $1 $2 $3 $4 $5 } @@ -1119,7 +1122,7 @@ what about statement metavariables? */ rule_elem_statement: one_decl_var { Ast0.wrap(Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),$1)) } -| expr TPtVirg { P.exp_stm $1 $2 } +| option(expr) TPtVirg { P.exp_stm $1 $2 } | TReturn eexpr TPtVirg { P.ret_exp $1 $2 $3 } | TReturn TPtVirg { P.ret $1 $2 } | TBreak TPtVirg { P.break $1 $2 } @@ -1597,6 +1600,9 @@ postfix_expr(r,pe): primary_expr(recurser,primary_extra): func_ident { Ast0.wrap(Ast0.Ident($1)) } + | TAndLog ident + { let op = P.clt2mcode Ast.GetRefLabel $1 in + Ast0.wrap(Ast0.Unary(Ast0.wrap(Ast0.Ident($2)), op)) } | TInt { let (x,clt) = $1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) } @@ -1695,8 +1701,15 @@ pure_ident_or_meta_ident_with_seed: seed_elem: TString { let (x,_) = $1 in Ast.SeedString x } -| TMetaId { let (x,_,_,_) = $1 in Ast.SeedId x } +| TMetaId { let (x,_,_,_,_) = $1 in Ast.SeedId x } | TMeta {failwith "tmeta"} +| TVirtual TDot pure_ident + { let nm = ("virtual",P.id2name $3) in + Iteration.parsed_virtual_identifiers := + Common.union_set [snd nm] + !Iteration.parsed_virtual_identifiers; + try Ast.SeedString (List.assoc (snd nm) !Flag.defined_virtual_env) + with Not_found -> Ast.SeedId nm } | TRuleName TDot pure_ident { let nm = ($1,P.id2name $3) in P.check_meta(Ast.MetaIdDecl(Ast.NONE,nm)); @@ -1888,7 +1901,8 @@ not_pos: (function mv -> Ast.MetaPosDecl(Ast.NONE,mv))) l } -func_ident: ident { $1 } +func_ident: + ident { $1 } | TMetaFunc { let (nm,constraints,pure,clt) = $1 in Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) } @@ -1909,15 +1923,15 @@ fn_ident: disj_ident { $1 } ident: pure_ident { Ast0.wrap(Ast0.Id(P.id2mcode $1)) } | TMetaId - { let (nm,constraints,pure,clt) = $1 in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) } + { let (nm,constraints,seed,pure,clt) = $1 in + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) } mident: pure_ident { Ast0.wrap(Ast0.Id(P.id2mcode $1)) } | TMeta { tmeta_to_ident $1 } | TMetaId - { let (nm,constraints,pure,clt) = $1 in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) } + { let (nm,constraints,seed,pure,clt) = $1 in + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) } disj_ident: mident { $1 } @@ -1935,14 +1949,14 @@ decl_ident: { Ast0.wrap(Ast0.Id(P.id2mcode $1)) } | TMetaDeclarer { let (nm,constraints,pure,clt) = $1 in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) } + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,Ast.NoVal,pure)) } iter_ident: TIteratorId { Ast0.wrap(Ast0.Id(P.id2mcode $1)) } | TMetaIterator { let (nm,constraints,pure,clt) = $1 in - Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) } + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,Ast.NoVal,pure)) } typedef_ident: pure_ident diff --git a/parsing_cocci/pretty_print_cocci.ml b/parsing_cocci/pretty_print_cocci.ml index e724283..74f792a 100644 --- a/parsing_cocci/pretty_print_cocci.ml +++ b/parsing_cocci/pretty_print_cocci.ml @@ -104,7 +104,10 @@ let mcode fn = function then print_string (if !Flag.sgrep_mode2 then "*" else "-"); fn x; print_pos pos; if !print_plus_flag - then print_anything ">>> " plus_stream + then + (match plus_stream with + Ast.NOREPLACEMENT -> () + | Ast.REPLACEMENT(plus_stream,_) -> print_anything ">>> " plus_stream) | (x, _, Ast.CONTEXT(_,plus_streams), pos) -> if !print_plus_flag then @@ -118,7 +121,9 @@ let mcode fn = function let print_mcodekind = function Ast.MINUS(_,_,_,plus_stream) -> print_string "MINUS"; - print_anything ">>> " plus_stream + (match plus_stream with + Ast.NOREPLACEMENT -> () + | Ast.REPLACEMENT(plus_stream,_) -> print_anything ">>> " plus_stream) | Ast.CONTEXT(_,plus_streams) -> print_around (function _ -> print_string "CONTEXT") () plus_streams | Ast.PLUS _ -> print_string "PLUS" @@ -283,6 +288,7 @@ let rec expression e = and unaryOp = function Ast.GetRef -> print_string "&" + | Ast.GetRefLabel -> print_string "&&" | Ast.DeRef -> print_string "*" | Ast.UnPlus -> print_string "+" | Ast.UnMinus -> print_string "-" @@ -566,7 +572,7 @@ let rec rule_elem arity re = if !print_newlines_disj then end_block(); print_string arity; mcode print_string brace | Ast.ExprStatement(exp,sem) -> - print_string arity; expression exp; mcode print_string sem + print_string arity; print_option expression exp; mcode print_string sem | Ast.IfHeader(iff,lp,exp,rp) -> print_string arity; mcode print_string iff; print_string " "; mcode print_string_box lp; diff --git a/parsing_cocci/simple_assignments.ml b/parsing_cocci/simple_assignments.ml index 367f5f1..08df9d9 100644 --- a/parsing_cocci/simple_assignments.ml +++ b/parsing_cocci/simple_assignments.ml @@ -77,7 +77,7 @@ let rec exp mc e1 = match mc with Ast0.MINUS(mc) -> (match !mc with - ([[Ast.ExpressionTag(e2)]],_) -> + (Ast.REPLACEMENT([[Ast.ExpressionTag(e2)]],_),_) -> (match Ast.unwrap e2 with Ast.Assignment(left',op',_,_) -> if is_simple_ast_assign left' op' left diff --git a/parsing_cocci/single_statement.ml b/parsing_cocci/single_statement.ml index 3c64929..d3bfde8 100644 --- a/parsing_cocci/single_statement.ml +++ b/parsing_cocci/single_statement.ml @@ -80,10 +80,10 @@ let modif_before x = | Ast0.MINUS mc -> (match !mc with (* do better for the common case of replacing a stmt by another one *) - ([[Ast.StatementTag(s)]],ti) -> + ((Ast.REPLACEMENT([[Ast.StatementTag(s)]],c)) as old,ti) -> (match Ast.unwrap s with Ast.IfThen(_,_,_) -> true (* potentially dangerous *) - | _ -> mc := ([[Ast.StatementTag(s)]],ti); false) + | _ -> mc := (old,ti); false) | (_,_) -> true) | Ast0.CONTEXT mc | Ast0.MIXED mc -> (match !mc with @@ -97,11 +97,11 @@ let modif_after x = | Ast0.MINUS mc -> (match !mc with (* do better for the common case of replacing a stmt by another one *) - ([[Ast.StatementTag(s)]],ti) -> + ((Ast.REPLACEMENT([[Ast.StatementTag(s)]],count)) as old,ti) -> (match Ast.unwrap s with Ast.IfThen(_,_,_) -> true (* potentially dangerous *) - | _ -> mc := ([[Ast.StatementTag(s)]],ti); false) - | (l,_) when any_statements l -> true + | _ -> mc := (old,ti); false) + | (Ast.REPLACEMENT(l,_),_) when any_statements l -> true | (l,ti) -> mc := (l,ti); false) | Ast0.CONTEXT mc | Ast0.MIXED mc -> (match !mc with @@ -114,7 +114,7 @@ let rec left_ident i = modif_before i or match Ast0.unwrap i with Ast0.Id(name) -> modif_before_mcode name - | Ast0.MetaId(name,_,_) -> modif_before_mcode name + | Ast0.MetaId(name,_,_,_) -> modif_before_mcode name | Ast0.MetaFunc(name,_,_) -> modif_before_mcode name | Ast0.MetaLocalFunc(name,_,_) -> modif_before_mcode name | Ast0.DisjId(_,id_list,_,_) -> List.exists left_ident id_list @@ -125,7 +125,7 @@ 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.MetaId(name,_,_,_) -> modif_after_mcode name | Ast0.MetaFunc(name,_,_) -> modif_after_mcode name | Ast0.MetaLocalFunc(name,_,_) -> modif_after_mcode name | Ast0.DisjId(_,id_list,_,_) -> List.exists right_ident id_list @@ -240,7 +240,8 @@ and left_statement s = (* irrelevant *) false | Ast0.Decl(_,decl) -> left_declaration decl | Ast0.Seq(lbrace,body,rbrace) -> modif_before_mcode lbrace - | Ast0.ExprStatement(exp,sem) -> left_expression exp + | Ast0.ExprStatement(Some exp,sem) -> left_expression exp + | Ast0.ExprStatement(None,sem) -> modif_before_mcode sem | Ast0.IfThen(iff,lp,exp,rp,branch1,(info,aft)) -> modif_before_mcode iff | Ast0.IfThenElse(iff,lp,exp,rp,branch1,els,branch2,(info,aft)) -> modif_before_mcode iff @@ -328,10 +329,10 @@ let rec adding_something s = Ast0.MINUS(mc) -> (match !mc with (* do better for the common case of replacing a stmt by another one *) - ([[Ast.StatementTag(s)]],ti) -> + ((Ast.REPLACEMENT([[Ast.StatementTag(s)]],c)) as old,ti) -> (match Ast.unwrap s with Ast.IfThen(_,_,_) -> true (* potentially dangerous *) - | _ -> mc := ([[Ast.StatementTag(s)]],ti); false) + | _ -> mc := (old,ti); false) | (_,_) -> true) | Ast0.CONTEXT(mc) -> let (text,tinfo1,tinfo2) = !mc in @@ -348,7 +349,7 @@ and contains_only_minus = let mcodekind = function Ast0.MINUS(mc) -> (match !mc with - ([],_) -> true + (Ast.NOREPLACEMENT,_) -> true | _ -> false) | Ast0.CONTEXT(mc) -> false | _ -> false in @@ -433,7 +434,14 @@ let add_braces orig_s = match Ast0.get_mcodekind s with Ast0.MINUS(mc) -> let (text,tinfo) = !mc in - Ast0.MINUS(ref([Ast.mkToken "{"]::text@[[Ast.mkToken "}"]],tinfo)) + let inner_text = + match text with + Ast.NOREPLACEMENT -> [[Ast.mkToken "{}"]] + | Ast.REPLACEMENT(anythings,Ast.ONE) -> + [Ast.mkToken "{"]::anythings@[[Ast.mkToken "}"]] + | Ast.REPLACEMENT(anythings,Ast.MANY) -> + failwith "++ not supported when braces must be added" in + Ast0.MINUS(ref(Ast.REPLACEMENT(inner_text,Ast.ONE),tinfo)) | Ast0.CONTEXT(mc) -> let (text,tinfo1,tinfo2) = !mc in let new_text = @@ -491,7 +499,8 @@ let all_minus s = let rec unchanged_minus s = match Ast0.get_mcodekind s with - Ast0.MINUS(mc) -> (match !mc with ([],_) -> true | _ -> false) + Ast0.MINUS(mc) -> + (match !mc with (Ast.NOREPLACEMENT,_) -> true | _ -> false) | _ -> false let rec do_branch s = diff --git a/parsing_cocci/type_infer.ml b/parsing_cocci/type_infer.ml index 777f8fa..2a12bba 100644 --- a/parsing_cocci/type_infer.ml +++ b/parsing_cocci/type_infer.ml @@ -45,6 +45,7 @@ let err wrapped ty s = type id = Id of string | Meta of Ast.meta_name let int_type = T.BaseType(T.IntType) +let void_type = T.BaseType(T.VoidType) let bool_type = T.BaseType(T.BoolType) let char_type = T.BaseType(T.CharType) let float_type = T.BaseType(T.FloatType) @@ -104,7 +105,7 @@ let rec propagate_types env = Ast0.Id(id) -> (try Some(List.assoc (Id(Ast0.unwrap_mcode id)) env) with Not_found -> None) - | Ast0.MetaId(id,_,_) -> + | Ast0.MetaId(id,_,_,_) -> (try Some(List.assoc (Meta(Ast0.unwrap_mcode id)) env) with Not_found -> None) | Ast0.DisjId(_,id_list,_,_) -> @@ -176,6 +177,7 @@ let rec propagate_types env = (match Ast0.get_type exp with None -> Some (T.Pointer(T.Unknown)) | Some t -> Some (T.Pointer(t))) + | Ast.GetRefLabel -> Some (T.Pointer(void_type)) | Ast.DeRef -> (match Ast0.get_type exp with Some (T.Pointer(t)) -> Some t @@ -283,7 +285,7 @@ let rec propagate_types env = let rec strip id = match Ast0.unwrap id with Ast0.Id(name) -> [Id(Ast0.unwrap_mcode name)] - | Ast0.MetaId(name,_,_) -> [Meta(Ast0.unwrap_mcode name)] + | Ast0.MetaId(name,_,_,_) -> [Meta(Ast0.unwrap_mcode name)] | Ast0.MetaFunc(name,_,_) -> [Meta(Ast0.unwrap_mcode name)] | Ast0.MetaLocalFunc(name,_,_) -> [Meta(Ast0.unwrap_mcode name)] | Ast0.DisjId(_,id_list,_,_) -> List.concat (List.map strip id_list) diff --git a/parsing_cocci/unify_ast.ml b/parsing_cocci/unify_ast.ml index e6338b7..f138a42 100644 --- a/parsing_cocci/unify_ast.ml +++ b/parsing_cocci/unify_ast.ml @@ -441,7 +441,7 @@ and unify_rule_elem re1 re2 = | (Ast.SeqEnd(rb1),Ast.SeqEnd(rb2)) -> return true | (Ast.ExprStatement(e1,s1),Ast.ExprStatement(e2,s2)) -> - unify_expression e1 e2 + unify_option unify_expression e1 e2 | (Ast.IfHeader(if1,lp1,e1,rp1),Ast.IfHeader(if2,lp2,e2,rp2)) -> unify_expression e1 e2 | (Ast.Else(e1),Ast.Else(e2)) -> return true diff --git a/parsing_cocci/unitary_ast0.ml b/parsing_cocci/unitary_ast0.ml index 9d533c2..c01fab6 100644 --- a/parsing_cocci/unitary_ast0.ml +++ b/parsing_cocci/unitary_ast0.ml @@ -87,7 +87,7 @@ let get_free checker t = let ident r k i = match Ast0.unwrap i with - Ast0.MetaId(name,_,_) | Ast0.MetaFunc(name,_,_) + Ast0.MetaId(name,_,_,_) | Ast0.MetaFunc(name,_,_) | Ast0.MetaLocalFunc(name,_,_) -> checker name | Ast0.DisjId(starter,id_list,mids,ender) -> detect_unitary_frees(List.map r.VT0.combiner_rec_ident id_list) @@ -178,8 +178,8 @@ let update_unitary unitary = let ident r k i = match Ast0.unwrap i with - Ast0.MetaId(name,constraints,_) -> - Ast0.rewrap i (Ast0.MetaId(name,constraints,is_unitary name)) + Ast0.MetaId(name,constraints,seed,_) -> + Ast0.rewrap i (Ast0.MetaId(name,constraints,seed,is_unitary name)) | Ast0.MetaFunc(name,constraints,_) -> Ast0.rewrap i (Ast0.MetaFunc(name,constraints,is_unitary name)) | Ast0.MetaLocalFunc(name,constraints,_) -> diff --git a/parsing_cocci/unparse_ast0.ml b/parsing_cocci/unparse_ast0.ml index d8baf5a..105476b 100644 --- a/parsing_cocci/unparse_ast0.ml +++ b/parsing_cocci/unparse_ast0.ml @@ -73,7 +73,9 @@ let mcodekind brackets fn x info mc = then fn x else (print_string "-"; print_string lb; fn x; print_string rb); - U.print_anything ">>> " plus_stream + (match plus_stream with + Ast.NOREPLACEMENT -> () + | Ast.REPLACEMENT(plus_stream,_) -> U.print_anything ">>> " plus_stream) | Ast0.CONTEXT(plus_streams) -> let (lb,rb) = if !quiet @@ -153,7 +155,7 @@ let rec ident i = (function _ -> match Ast0.unwrap i with Ast0.Id(name) -> mcode print_string name - | Ast0.MetaId(name,_,_) -> mcode print_meta name + | Ast0.MetaId(name,_,_,_) -> mcode print_meta name | Ast0.MetaFunc(name,_,_) -> mcode print_meta name | Ast0.MetaLocalFunc(name,_,_) -> mcode print_meta name | Ast0.DisjId(_,id_list,_,_) -> do_disj id_list ident @@ -447,7 +449,8 @@ and statement arity s = dots force_newline (statement arity) body; end_block(); print_string arity; mcode print_string rbrace | Ast0.ExprStatement(exp,sem) -> - print_string arity; expression exp; mcode print_string sem + print_string arity; print_option expression exp; + mcode print_string sem | Ast0.IfThen(iff,lp,exp,rp,branch1,(info,aft)) -> print_string arity; mcode print_string iff; print_string " "; mcode print_string_box lp; diff --git a/parsing_cocci/visitor_ast.ml b/parsing_cocci/visitor_ast.ml index 641cec5..799b3f2 100644 --- a/parsing_cocci/visitor_ast.ml +++ b/parsing_cocci/visitor_ast.ml @@ -329,7 +329,7 @@ let combiner bind option_default | Ast.SeqStart(brace) -> string_mcode brace | Ast.SeqEnd(brace) -> string_mcode brace | Ast.ExprStatement(exp,sem) -> - bind (expression exp) (string_mcode sem) + bind (get_option expression exp) (string_mcode sem) | Ast.IfHeader(iff,lp,exp,rp) -> multibind [string_mcode iff; string_mcode lp; expression exp; string_mcode rp] @@ -827,7 +827,7 @@ let rebuilder | Ast.SeqStart(brace) -> Ast.SeqStart(string_mcode brace) | Ast.SeqEnd(brace) -> Ast.SeqEnd(string_mcode brace) | Ast.ExprStatement(exp,sem) -> - Ast.ExprStatement (expression exp, string_mcode sem) + Ast.ExprStatement (get_option expression exp, string_mcode sem) | Ast.IfHeader(iff,lp,exp,rp) -> Ast.IfHeader(string_mcode iff, string_mcode lp, expression exp, string_mcode rp) diff --git a/parsing_cocci/visitor_ast0.ml b/parsing_cocci/visitor_ast0.ml index 35ef6eb..81b445d 100644 --- a/parsing_cocci/visitor_ast0.ml +++ b/parsing_cocci/visitor_ast0.ml @@ -141,9 +141,9 @@ let visitor mode bind option_default (match Ast0.unwrap i with Ast0.Id(name) -> let (n,name) = string_mcode name in (n,Ast0.Id(name)) - | Ast0.MetaId(name,constraints,pure) -> + | Ast0.MetaId(name,constraints,seed,pure) -> let (n,name) = meta_mcode name in - (n,Ast0.MetaId(name,constraints,pure)) + (n,Ast0.MetaId(name,constraints,seed,pure)) | Ast0.MetaFunc(name,constraints,pure) -> let (n,name) = meta_mcode name in (n,Ast0.MetaFunc(name,constraints,pure)) @@ -584,7 +584,7 @@ let visitor mode bind option_default (multibind [lbrace_n;body_n;rbrace_n], Ast0.Seq(lbrace,body,rbrace)) | Ast0.ExprStatement(exp,sem) -> - let (exp_n,exp) = expression exp in + let (exp_n,exp) = get_option expression exp in let (sem_n,sem) = string_mcode sem in (bind exp_n sem_n, Ast0.ExprStatement(exp,sem)) | Ast0.IfThen(iff,lp,exp,rp,branch1,aft) -> diff --git a/popl09/pretty_print_popl.ml b/popl09/pretty_print_popl.ml index bb6b8d6..e76b8fc 100644 --- a/popl09/pretty_print_popl.ml +++ b/popl09/pretty_print_popl.ml @@ -47,7 +47,10 @@ let print_around printer term = function let mcode fn = function (x, _, Ast.MINUS(_,_,_,plus_stream), pos) -> print_string "-"; fn x; - Pretty_print_cocci.print_anything ">>> " plus_stream + (match plus_stream with + Ast.NOREPLACEMENT -> () + | Ast.REPLACEMENT(plus_stream,_) -> + Pretty_print_cocci.print_anything ">>> " plus_stream) | (x, _, Ast.CONTEXT(_,plus_streams), pos) -> print_around fn x plus_streams | (x, info, Ast.PLUS _, pos) -> fn x diff --git a/python/yes_pycocci.ml b/python/yes_pycocci.ml index 80b996b..6c01be9 100644 --- a/python/yes_pycocci.ml +++ b/python/yes_pycocci.ml @@ -294,7 +294,9 @@ let construct_script_variables mv = List.iter (function (_,py) -> let vl = - let str = pystring_fromstring "initial value" in + let str = + pystring_fromstring + "initial value: consider using coccinelle.varname" in pycocci_instantiate_class "coccilib.elems.Identifier" (pytuple_fromsingle (str)) in let _ = build_variable py vl in diff --git a/tests/SCORE_expected.sexp b/tests/SCORE_expected.sexp new file mode 100644 index 0000000..1a4a3f0 --- /dev/null +++ b/tests/SCORE_expected.sexp @@ -0,0 +1,159 @@ +((a.res Ok) (a3d.res Ok) (a_and_e.res Ok) (a_and_e_ver1.res Ok) (ab.res Ok) + (addaft.res Ok) (addbefore.res Ok) (addbeforeafter.res Ok) (addelse.res Ok) + (addif.res Ok) (addif1.res Ok) (addif2.res Ok) (addtoo.res Ok) + (after_if.res Ok) (anon.res Ok) (ar.res Ok) (arg.res Ok) (argument.res Ok) + (arparam.res Ok) (array_init.res Ok) (array_size.res Ok) (arraysz.res Ok) + (attradd.res Ok) (b1.res Ok) (b2.res Ok) + (bad_iso_example.res + (Pb + "INCORRECT:diff token: ( VS x\nFile \"tests/bad_iso_example.c\", line 2, column 6, charpos = 19\n around = '(', whole content = if ((x = 3)) return;\nFile \"tests/bad_iso_example.res\", line 2, column 6, charpos = 19\n around = 'x', whole content = if (x) return;\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,4 +1,4 @@\n int main() {\n - if ((x = 3)) return;\n + if (x) return;\n }\n \n")) + (bad_kfree.res Ok) (bad_ptr_print.res Ok) (bad_typedef.res Ok) + (badexp.res Ok) + (badpos.res + (Pb + "PROBLEM\n exn = Failure(\"rule starting on line 1: already tagged token:\\nC code context\\nFile \\\"tests/badpos.c\\\", line 5, column 30, charpos = 139\\n around = 'reg_ptr', whole content = \\t (int) -(((struct pt_regs *) reg_ptr)->orig_eax + 2));\")\n")) + (badtypedef.res Ok) (badwhen.res Ok) (badzero.res Ok) (befS.res Ok) + (ben.res Ok) (bitfield.res Ok) (braces.res Ok) (break.res Ok) (bug1.res Ok) + (bugloop.res Ok) (bugon.res Ok) (cards.res Ok) (cast.res Ok) + (cast_iso.res Ok) (com.res Ok) (comadd.res Ok) (comments.res Ok) + (compare.res Ok) (condexp.res Ok) (const.res Ok) (const1bis.res Ok) + (const_adding.res Ok) (const_array.res Ok) (const_implicit_iso.res Ok) + (constty.res Ok) (constx.res Ok) (cs_check.res Ok) (cst.res Ok) + (cst_null.res Ok) (csw.res Ok) + (dbg.res + (Pb + "INCORRECT:diff token: else VS (\nFile , line 8, column 2, charpos = 133\n around = 'else', whole content = \t\telse pr = NULL;(\"PCI\");\nFile \"tests/dbg.res\", line 7, column 5, charpos = 130\n around = '(', whole content = \t\tDBG(\"PCI\");\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,6 +4,6 @@\n \tstruct resource *pr, *r = &dev->resource[idx];\n \n \tif (pr)\n -\t\tDBG\n -\t\telse pr = NULL;(\"PCI\");\n +\t\tDBG(\"PCI\");\n +\telse pr = NULL;\n }\n")) + (dbg1.res + (Pb + "INCORRECT:diff token: E VS (\nFile , line 5, column 2, charpos = 75\n around = 'E', whole content = \t\tE = NULL;(\"PCI\");\nFile \"tests/dbg1.res\", line 4, column 5, charpos = 72\n around = '(', whole content = \t\tDBG(\"PCI\");\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,6 +1,6 @@\n \n static inline void alloc_resource(struct pci_dev *dev, int idx)\n {\n -\t\tDBG\n -\t\tE = NULL;(\"PCI\");\n +\t\tDBG(\"PCI\");\n +\t\tE = NULL;\n }\n")) + (dc_close.res Ok) (debug.res Ok) (dec.res Ok) (decl.res Ok) (decl2.res Ok) + (decl_space.res Ok) + (decl_split.res + (Pb + "INCORRECT:diff token: int VS }\nFile \"tests/decl_split.c\", line 2, column 8, charpos = 27\n around = 'int', whole content = int x, y;\nFile \"tests/decl_split.res\", line 2, column 0, charpos = 19\n around = '}', whole content = }\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,3 +1,2 @@\n int func(int i) { \n - int x, y;\n }\n")) + (decl_star.res Ok) + (declinv.res + (Pb + "PROBLEM\n exn = Unix.Unix_error(20, \"stat\", \"tests/declinv.cocci\")\n")) + (defe.res Ok) (define_exp.res Ok) (define_param.res Ok) (deftodo.res Ok) + (delete_function.res Ok) (delp.res Ok) (deref.res Ok) (devlink.res Ok) + (disjexpr.res Ok) (disjexpr_ver1.res Ok) (disjexpr_ver2.res Ok) + (disjid.res Ok) (distribute.res Ok) (double.res Ok) (double_assign.res Ok) + (double_lines.res Ok) (double_switch.res Ok) (doublepos.res Ok) + (doubleswitch.res Ok) (doundo.res Ok) (dowhile.res Ok) (dropf.res Ok) + (dropparam.res Ok) (eb1.res Ok) (edots.res Ok) (edots_ver1.res Ok) + (empty.res Ok) (end_commas.res Ok) (endif.res Ok) (enum.res Ok) (exp.res Ok) + (expnest.res Ok) (expopt.res Ok) (expopt2.res Ok) (expopt3.res Ok) + (expopt3_ver1.res Ok) (expopt3_ver2.res Ok) (fields.res Ok) + (fieldsmin.res Ok) (find_long.res Ok) (fix_flow_need.res Ok) + (fn_todo.res Ok) (fnptr.res Ok) (fnret.res Ok) (fnty.res Ok) (four.res Ok) + (foura.res Ok) (fp.res Ok) (fsh.res Ok) (fun.res Ok) + (gilles-question.res Ok) (gotobreak.res Ok) (hd.res Ok) (headers.res Ok) + (hex.res Ok) (hil1.res Ok) (if.res Ok) (ifbr.res Ok) (ifd.res Ok) + (ifdef1.res Ok) (ifdef2.res Ok) (ifdef3.res Ok) (ifdef4.res Ok) + (ifdef5.res Ok) (ifdef6.res Ok) (ifdef6a.res Ok) (ifdefmeta.res Ok) + (ifdefmeta1.res Ok) (ifdefmeta2.res Ok) (ifdefmeta3.res Ok) + (ifdefmeta4.res + (Pb + "PROBLEM\n exn = Unix.Unix_error(20, \"stat\", \"tests/ifdefmeta4.cocci\")\n")) + (ifend.res Ok) (ifields.res Ok) (ifzer.res Ok) (inc.res Ok) + (incdir.res + (Pb + "INCORRECT:diff token: x VS 12\nFile \"tests/incdir.c\", line 4, column 6, charpos = 46\n around = 'x', whole content = foo(x);\nFile \"tests/incdir.res\", line 4, column 6, charpos = 46\n around = '12', whole content = foo(12);\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,5 +1,5 @@\n #include \"sub/incdir2.c\"\n \n int main () {\n - foo(x);\n + foo(12);\n }\n")) + (incl.res Ok) (inclifdef.res Ok) (include.res Ok) + (incompatible_value.res Ok) (inherited.res Ok) (inherited_ver1.res Ok) + (inhmet.res Ok) (inhpos.res Ok) (initializer.res Ok) + (initializer_many_fields.res Ok) (inline.res Ok) (insdef.res Ok) + (isococci.res Ok) (isotest.res Ok) (isotest2.res Ok) (iterator.res Ok) + (jloop1.res + (Pb + "PROBLEM\n exn = Failure(\"minus: parse error: \\n = File \\\"tests/jloop1.cocci\\\", line 10, column 3, charpos = 129\\n around = '...>', whole content = ...>\\n\")\n")) + (julia10.res Ok) (julia7.res Ok) (justremove.res Ok) (keep_comma.res Ok) + (km.res Ok) (kmalloc.res Ok) (kmc.res Ok) (ktype.res Ok) + (labels_metastatement.res Ok) (labels_metastatement_ver1.res Ok) + (lid.res Ok) (line_before_last.res Ok) (list_test.res Ok) (local.res Ok) + (localid.res Ok) (longconst.res Ok) (longlong.res Ok) (longlongint.res Ok) + (loop.res Ok) (lvalue.res Ok) (macro.res Ok) (macro_int16.res Ok) + (match_init.res Ok) (match_no_meta.res Ok) (max.res Ok) + (memory.res (Pb "PROBLEM\n exn = Out of memory\n")) + (metahex.res + (Pb + "INCORRECT:diff token: f VS }\nFile \"tests/metahex.c\", line 2, column 2, charpos = 15\n around = 'f', whole content = f(3);\nFile \"tests/metahex.res\", line 2, column 0, charpos = 13\n around = '}', whole content = }\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,4 +1,2 @@\n int main() {\n - f(3);\n - g(0x03);\n }\n")) + (metaruleelem.res Ok) (metastatement2.res Ok) (metastatement_for.res Ok) + (metastatement_if.res Ok) (minenum.res Ok) (minfn.res Ok) + (mini_null_ref.res Ok) (minstruct.res Ok) (minusdots.res Ok) + (minusdots_ver1.res Ok) + (multi_func1.res + (Pb + "PROBLEM\n exn = Failure(\"minus: parse error: \\n = File \\\"tests/multi_func1.cocci\\\", line 12, column 2, charpos = 102\\n around = 'fn2', whole content = fn2(...) {\\n\")\n")) + (multiplus.res Ok) (multitype.res Ok) (multitypedef.res Ok) + (multivars.res Ok) (na.res Ok) (nameless.res Ok) (nest.res Ok) + (nestone.res Ok) (nestseq.res Ok) (neststruct.res Ok) (nl.res Ok) + (nocast.res Ok) (not.res Ok) (notest.res Ok) (noty.res Ok) + (null_bool.res + (Pb + "INCORRECT:diff token: ) VS !=\nFile , line 2, column 8, charpos = 22\n around = ')', whole content = if (12) return;\nFile \"tests/null_bool.res\", line 2, column 9, charpos = 23\n around = '!=', whole content = if (12 != NULL) return;\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,6 +1,6 @@\n int main () {\n - if (12) return;\n - if (a && 12 && b) return;\n + if (12 != NULL) return;\n + if (a && 12 != NULL && b) return;\n if (12) return;\n if (a && 12 && b) return;\n x = x + 20;\n")) + (null_type.res Ok) + (oddifdef.res + (Pb + "INCORRECT:diff token: #else\n VS x\nFile , line 10, column 0, charpos = 114\n around = '#else\n', whole content = #else\nFile \"tests/oddifdef.res\", line 10, column 2, charpos = 116\n around = 'x', whole content = x = 0;\n\n diff (result(<) vs expected_result(>)) = \n @@ -7,8 +7,9 @@\n a = 5;\n \n #ifdef FOO\n + x = 0;\n #else\n -\n + x = 0;\n #endif\n }\n \n @@ -21,8 +22,9 @@\n a = 3;\n \n #ifdef FOO\n + x = 0;\n #else\n -\n + x = 0;\n #endif\n }\n \n @@ -35,7 +37,8 @@\n #endif\n \n #ifdef FOO\n + x = 0;\n #else\n -\n + x = 0;\n #endif\n }\n")) + (of.res Ok) (oneline.res Ok) (opt.res Ok) (optional_qualifier.res Ok) + (optional_storage.res Ok) (orexp.res Ok) (overshoot.res Ok) (param.res Ok) + (param_end.res Ok) (param_ver1.res Ok) (parameters_dots.res Ok) + (partial.res Ok) + (pb_distribute_type.res + (Pb + "INCORRECT:PB parsing only in generated-file\n diff (result(<) vs expected_result(>)) = \n @@ -10,6 +10,6 @@\n }\n \n int foo() {\n - int[45] *x;\n + int (*x)[45];\n return 0;\n }\n")) + (pb_distribute_type2.res + (Pb + "INCORRECT:PB parsing only in generated-file\n diff (result(<) vs expected_result(>)) = \n @@ -1,5 +1,5 @@\n int foo() {\n - int* x;\n + int *x;\n return 0;\n }\n \n @@ -10,6 +10,6 @@\n }\n \n int foo() {\n - int x[45]*;\n + int (*x)[45];\n return 0;\n }\n")) + (pb_distribute_type3.res + (Pb "PROBLEM\n exn = Failure(\"line 7: index 53 53 already used\\n\")\n")) + (pb_distribute_type4.res Ok) (pb_params_iso.res Ok) + (pb_parsing_macro.res Ok) (pb_tag_symbols.res Ok) (pmac.res Ok) + (posiso.res Ok) (positionc.res Ok) (post.res Ok) (print_return.res Ok) + (proto.res Ok) (proto2.res Ok) (proto_ver1.res Ok) (proto_ver2.res Ok) + (protoassert.res Ok) (protox.res Ok) (ptrar.res Ok) (rcu3.res Ok) + (regexp.res Ok) (regexp2.res Ok) (regexp3.res Ok) (remove_call.res Ok) + (remstruct.res Ok) (replace_typedef.res Ok) (reserved.res Ok) + (retmacro.res Ok) (rets.res Ok) (return.res Ok) (return_implicit.res Ok) + (retval.res Ok) (retval2.res Ok) (same_expr.res Ok) + (scope_problem.res + (Pb + "INCORRECT:diff token: } VS a\nFile , line 4, column 2, charpos = 42\n around = '}', whole content = }\nFile \"tests/scope_problem.res\", line 4, column 4, charpos = 44\n around = 'a', whole content = a = 2;\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,7 +1,6 @@\n void main(int i) {\n if(1) {\n int a;\n + a = 2;\n }\n -\n -\n }\n")) + (serio.res + (Pb + "INCORRECT:diff token: init_MUTEX VS mutex_init\nFile \"tests/serio.c\", line 7, column 1, charpos = 130\n around = 'init_MUTEX', whole content = \tinit_MUTEX(&serio->drv_sem);\nFile \"tests/serio.res\", line 7, column 1, charpos = 130\n around = 'mutex_init', whole content = \tmutex_init(&serio->new_lock);\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,5 +4,5 @@\n \n static void serio_init_port(struct serio *serio)\n {\n -\tinit_MUTEX(&serio->drv_sem);\n +\tmutex_init(&serio->new_lock);\n }\n")) + (shared_brace.res Ok) (signed.res Ok) (sis.res Ok) (sizeof.res Ok) + (sizeof_julia.res Ok) (sizeptr.res Ok) (sizestar.res Ok) (skip.res Ok) + (sp.res Ok) (spaces.res Ok) (spl.res Ok) (static.res Ok) (stm1.res Ok) + (stm10.res Ok) (stm10_ver1.res Ok) (stm2.res Ok) (stm3.res Ok) (stm4.res Ok) + (stm5.res Ok) (stm6.res Ok) (stm7.res Ok) (stm8.res Ok) (stmt.res Ok) + (str_init.res Ok) (strangeorder.res Ok) (strid.res Ok) (strid2.res Ok) + (string.res Ok) (struct.res Ok) (struct_metavar.res Ok) + (struct_typedef.res Ok) (structfoo.res Ok) (substruct.res Ok) (sw.res Ok) + (switch.res Ok) (switchdecl.res Ok) (td.res Ok) (tern.res Ok) (test0.res Ok) + (test1.res Ok) (test10.res Ok) (test10_ver1.res Ok) (test11.res Ok) + (test11_ver1.res Ok) (test12.res Ok) (test2.res Ok) (test3.res Ok) + (test4.res Ok) (test5.res Ok) (test5_ver1.res Ok) (test6.res Ok) + (test7.res Ok) (test8.res Ok) (test9.res Ok) (test_s.res Ok) + (test_unsigned_meta.res Ok) (three_types.res Ok) (threea.res Ok) + (top.res Ok) (topdec.res Ok) (topdec_ver1.res Ok) (topdec_ver2.res Ok) + (toplevel_macrostmt.res Ok) (toplevel_struct.res Ok) (tup.res Ok) + (twoproto.res Ok) (ty.res Ok) (ty1.res Ok) (ty_tyexp.res Ok) (tydisj.res Ok) + (tyex.res Ok) (type.res Ok) (type1.res Ok) (type_annotated.res Ok) + (type_ver1.res Ok) + (type_ver2.res + (Pb + "INCORRECT:PB parsing only in generated-file\n diff (result(<) vs expected_result(>)) = \n @@ -1,5 +1,5 @@\n int foo() {\n - int[10] *x;\n + int *x[10];\n return 0;\n }\n \n")) + (typedef.res Ok) + (typedef3.res + (Pb + "INCORRECT:diff token: link VS p_dev\nFile , line 7, column 29, charpos = 137\n around = 'link', whole content = \tunsigned int iobase = info->link.io.BasePort1;\nFile \"tests/typedef3.res\", line 7, column 29, charpos = 137\n around = 'p_dev', whole content = \tunsigned int iobase = info->p_dev->io.BasePort1;\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,7 +4,7 @@\n \n static void should_work(foo *info)\n {\n -\tunsigned int iobase = info->link.io.BasePort1;\n +\tunsigned int iobase = info->p_dev->io.BasePort1;\n }\n \n static void does_work(struct bluecard_info_t *info)\n")) + (typedef_double.res Ok) (typeof.res Ok) (useless_cast.res Ok) + (varargs.res Ok) (video1bis.res Ok) (void.res Ok) (vpos.res Ok) + (whitespace.res Ok) (wierd_argument.res Ok) + (wierdinit.res + (Pb + "seems incorrect, but only because of code that was not parsablediff token: dev_link_t VS struct\nFile \"tests/wierdinit.c\", line 4, column 1, charpos = 27\n around = 'dev_link_t', whole content = \tdev_link_t *link;\nFile \"tests/wierdinit.res\", line 4, column 1, charpos = 27\n around = 'struct', whole content = \tstruct pcmcia_device *link;\n")) + (ws2.res Ok) (xfield.res Ok) (y2.res Ok) (zero.res Ok)) \ No newline at end of file diff --git a/tests/SCORE_expected.sexp.save b/tests/SCORE_expected.sexp.save new file mode 100644 index 0000000..de9cd74 --- /dev/null +++ b/tests/SCORE_expected.sexp.save @@ -0,0 +1,162 @@ +((a.res Ok) (a3d.res Ok) (a_and_e.res Ok) (a_and_e_ver1.res Ok) (ab.res Ok) + (addaft.res Ok) (addbefore.res Ok) (addbeforeafter.res Ok) (addelse.res Ok) + (addif.res Ok) (addif1.res Ok) (addif2.res Ok) (addtoo.res Ok) + (after_if.res Ok) (anon.res Ok) (ar.res Ok) (arg.res Ok) (argument.res Ok) + (array_init.res Ok) (array_size.res Ok) (arraysz.res Ok) (b1.res Ok) + (b2.res Ok) + (bad_iso_example.res + (Pb + "INCORRECT:diff token: ( VS x\nFile \"tests/bad_iso_example.c\", line 2, column 6, charpos = 19\n around = '(', whole content = if ((x = 3)) return;\nFile \"tests/bad_iso_example.res\", line 2, column 6, charpos = 19\n around = 'x', whole content = if (x) return;\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,4 +1,4 @@\n int main() {\n - if ((x = 3)) return;\n + if (x) return;\n }\n \n")) + (bad_ptr_print.res Ok) (bad_typedef.res Ok) (badexp.res Ok) + (badpos.res + (Pb + "PROBLEM\n exn = Failure(\"rule starting on line 1: already tagged token:\\nC code context\\nFile \\\"tests/badpos.c\\\", line 5, column 30, charpos = 139\\n around = 'reg_ptr', whole content = \\t (int) -(((struct pt_regs *) reg_ptr)->orig_eax + 2));\")\n")) + (badtypedef.res Ok) (badzero.res Ok) (befS.res Ok) (ben.res Ok) + (bitfield.res Ok) (braces.res Ok) (break.res Ok) (bug1.res Ok) + (bugloop.res + (Pb + "INCORRECT:diff token: PF_FREEZE VS )\nFile , line 12, column 16, charpos = 390\n around = 'PF_FREEZE', whole content = \t\t\trefrigerator(PF_FREEZE);\nFile \"tests/bugloop.res\", line 8, column 16, charpos = 160\n around = ')', whole content = \t\t\trefrigerator();\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,7 +1,3 @@\n -/* this doesn't work, because on the paths where we don't find refrigerator,\n -we expect to reach Exit without first going through current->flags & PF_FREEZE,\n -but of course any path that goes around the loop does precisely that */\n -\n static int stir_transmit_thread(void *arg)\n {\n \n @@ -9,7 +5,7 @@\n \t{\n \t\t/* if suspending, then power off and wait */\n \t\tif (unlikely(freezing(current))) {\n -\t\t\trefrigerator(PF_FREEZE);\n +\t\t\trefrigerator();\n \n \t\t}\n \t}\n")) + (bugon.res Ok) (cards.res Ok) (cast.res Ok) (cast_iso.res Ok) (com.res Ok) + (compare.res Ok) (const.res Ok) (const1bis.res Ok) (const_adding.res Ok) + (const_array.res Ok) (const_implicit_iso.res Ok) (constty.res Ok) + (constx.res Ok) (cs_check.res Ok) (cst.res Ok) (csw.res Ok) + (dbg.res + (Pb + "INCORRECT:diff token: else VS (\nFile , line 8, column 2, charpos = 133\n around = 'else', whole content = \t\telse pr = NULL;(\"PCI\");\nFile \"tests/dbg.res\", line 7, column 5, charpos = 130\n around = '(', whole content = \t\tDBG(\"PCI\");\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,6 +4,6 @@\n \tstruct resource *pr, *r = &dev->resource[idx];\n \n \tif (pr)\n -\t\tDBG\n -\t\telse pr = NULL;(\"PCI\");\n +\t\tDBG(\"PCI\");\n +\telse pr = NULL;\n }\n")) + (dbg1.res + (Pb + "INCORRECT:diff token: E VS (\nFile , line 5, column 2, charpos = 75\n around = 'E', whole content = \t\tE = NULL;(\"PCI\");\nFile \"tests/dbg1.res\", line 4, column 5, charpos = 72\n around = '(', whole content = \t\tDBG(\"PCI\");\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,6 +1,6 @@\n \n static inline void alloc_resource(struct pci_dev *dev, int idx)\n {\n -\t\tDBG\n -\t\tE = NULL;(\"PCI\");\n +\t\tDBG(\"PCI\");\n +\t\tE = NULL;\n }\n")) + (dc_close.res Ok) (debug.res Ok) (dec.res Ok) (decl.res Ok) (decl2.res Ok) + (decl_space.res Ok) + (decl_split.res + (Pb + "INCORRECT:diff token: int VS }\nFile \"tests/decl_split.c\", line 2, column 8, charpos = 27\n around = 'int', whole content = int x, y;\nFile \"tests/decl_split.res\", line 2, column 0, charpos = 19\n around = '}', whole content = }\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,3 +1,2 @@\n int func(int i) { \n - int x, y;\n }\n")) + (define_exp.res Ok) (define_param.res Ok) (deftodo.res Ok) + (delete_function.res Ok) (deref.res Ok) (devlink.res Ok) (disjexpr.res Ok) + (disjexpr_ver1.res Ok) (disjexpr_ver2.res Ok) (distribute.res Ok) + (double.res Ok) (double_assign.res Ok) (double_switch.res Ok) + (doublepos.res Ok) (doubleswitch.res Ok) + (doundo.res + (Pb + "INCORRECT:diff token: xxx VS new_foo\nFile , line 7, column 2, charpos = 85\n around = 'xxx', whole content = xxx();\nFile \"tests/doundo.res\", line 7, column 2, charpos = 85\n around = 'new_foo', whole content = new_foo();\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,5 +4,5 @@\n {\n const s8 (*queue_priority_mapping)[2];\n s8 *noevent;\n - xxx();\n + new_foo();\n }\n")) + (dowhile.res Ok) (dropf.res Ok) (dropparam.res Ok) (edots.res Ok) + (edots_ver1.res Ok) (empty.res Ok) (end_commas.res Ok) (endif.res Ok) + (enum.res Ok) (exp.res Ok) (expnest.res Ok) (expopt.res Ok) (expopt2.res Ok) + (expopt3.res Ok) (expopt3_ver1.res Ok) (expopt3_ver2.res Ok) (fields.res Ok) + (fieldsmin.res Ok) (find_long.res Ok) (fix_flow_need.res Ok) + (fn_todo.res Ok) (fnptr.res Ok) (fnret.res Ok) (four.res Ok) (foura.res Ok) + (fp.res Ok) (fsh.res Ok) (fun.res Ok) (gilles-question.res Ok) + (gotobreak.res Ok) (hd.res Ok) (headers.res Ok) (hex.res Ok) (hil1.res Ok) + (if.res Ok) (ifbr.res Ok) (ifdef1.res Ok) (ifdef2.res Ok) + (ifdef3.res + (Pb + "PROBLEM\n exn = Lexer_cocci.Lexical(\"unrecognised symbol, in token rule: #\")\n")) + (ifdef4.res Ok) (ifdef5.res Ok) (ifdef6.res Ok) (ifdef6a.res Ok) + (ifdefmeta.res Ok) (ifdefmeta1.res Ok) (ifdefmeta2.res Ok) + (ifdefmeta3.res Ok) + (ifdefmeta4.res + (Pb + "PROBLEM\n exn = Unix.Unix_error(20, \"stat\", \"tests/ifdefmeta4.cocci\")\n")) + (ifend.res Ok) (ifzer.res Ok) (inc.res Ok) + (incdir.res + (Pb + "INCORRECT:diff token: x VS 12\nFile \"tests/incdir.c\", line 4, column 6, charpos = 46\n around = 'x', whole content = foo(x);\nFile \"tests/incdir.res\", line 4, column 6, charpos = 46\n around = '12', whole content = foo(12);\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,5 +1,5 @@\n #include \"sub/incdir2.c\"\n \n int main () {\n - foo(x);\n + foo(12);\n }\n")) + (incl.res Ok) (inclifdef.res Ok) (include.res Ok) + (incompatible_value.res Ok) (inherited.res Ok) (inherited_ver1.res Ok) + (inhpos.res Ok) (initializer.res Ok) (initializer_many_fields.res Ok) + (inline.res Ok) (isococci.res Ok) (isotest.res Ok) (isotest2.res Ok) + (iterator.res Ok) + (jloop1.res + (Pb + "PROBLEM\n exn = Failure(\"minus: parse error: \\n = File \\\"tests/jloop1.cocci\\\", line 10, column 3, charpos = 129\\n around = '...>', whole content = ...>\\n\")\n")) + (julia10.res Ok) (julia7.res Ok) (justremove.res Ok) (keep_comma.res Ok) + (km.res Ok) (kmalloc.res Ok) (kmc.res Ok) (ktype.res Ok) + (labels_metastatement.res Ok) (labels_metastatement_ver1.res Ok) + (line_before_last.res Ok) (local.res Ok) (localid.res Ok) (longconst.res Ok) + (longlong.res Ok) (longlongint.res Ok) (loop.res Ok) (lvalue.res Ok) + (macro.res Ok) (macro_int16.res Ok) (match_no_meta.res Ok) (max.res Ok) + (memory.res (Pb "PROBLEM\n exn = Out of memory\n")) + (metahex.res + (Pb + "INCORRECT:diff token: f VS }\nFile \"tests/metahex.c\", line 2, column 2, charpos = 15\n around = 'f', whole content = f(3);\nFile \"tests/metahex.res\", line 2, column 0, charpos = 13\n around = '}', whole content = }\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,4 +1,2 @@\n int main() {\n - f(3);\n - g(0x03);\n }\n")) + (metaruleelem.res Ok) (metastatement2.res Ok) (metastatement_for.res Ok) + (metastatement_if.res Ok) + (mini_null_ref.res + (Pb + "INCORRECT:diff token: if VS struct\nFile , line 6, column 8, charpos = 269\n around = 'if', whole content = if (!pdata) {\nFile \"tests/mini_null_ref.res\", line 6, column 8, charpos = 269\n around = 'struct', whole content = struct w90p910_keypad *keypad;\n\n diff (result(<) vs expected_result(>)) = \n @@ -3,6 +3,8 @@\n const struct w90p910_keypad_platform_data *pdata =\n pdev->dev.platform_data;\n const struct matrix_keymap_data * keymap_data;\n + struct w90p910_keypad *keypad;\n +\n if (!pdata) {\n dev_err(&pdev->dev, \"no platform data defined\\n\");\n return -EINVAL;\n")) + (minstruct.res Ok) (minusdots.res Ok) (minusdots_ver1.res Ok) + (multi_func1.res + (Pb + "PROBLEM\n exn = Failure(\"minus: parse error: \\n = File \\\"tests/multi_func1.cocci\\\", line 12, column 2, charpos = 102\\n around = 'fn2', whole content = fn2(...) {\\n\")\n")) + (multiplus.res Ok) (multitype.res Ok) (multitypedef.res Ok) + (multivars.res Ok) (nest.res Ok) (nestone.res Ok) (nestseq.res Ok) + (neststruct.res Ok) (nl.res Ok) (nocast.res Ok) (not.res Ok) (notest.res Ok) + (noty.res Ok) (null_type.res Ok) + (oddifdef.res + (Pb + "INCORRECT:diff token: #else\n VS x\nFile , line 10, column 0, charpos = 114\n around = '#else\n', whole content = #else\nFile \"tests/oddifdef.res\", line 10, column 2, charpos = 116\n around = 'x', whole content = x = 0;\n\n diff (result(<) vs expected_result(>)) = \n @@ -7,8 +7,9 @@\n a = 5;\n \n #ifdef FOO\n + x = 0;\n #else\n - \n + x = 0;\n #endif\n }\n \n @@ -21,8 +22,9 @@\n a = 3;\n \n #ifdef FOO\n + x = 0;\n #else\n - \n + x = 0;\n #endif\n }\n \n @@ -35,7 +37,8 @@\n #endif\n \n #ifdef FOO\n + x = 0;\n #else\n - \n + x = 0;\n #endif\n }\n")) + (of.res Ok) (oneline.res Ok) (opt.res Ok) (optional_qualifier.res Ok) + (optional_storage.res Ok) (orexp.res Ok) (overshoot.res Ok) (param.res Ok) + (param_end.res Ok) (param_ver1.res Ok) (parameters_dots.res Ok) + (partial.res Ok) + (pb_distribute_type.res + (Pb + "INCORRECT:PB parsing only in generated-file\n diff (result(<) vs expected_result(>)) = \n @@ -5,11 +5,11 @@\n \n \n int foo() {\n - int * *x;\n + int **x;\n return 0;\n }\n \n int foo() {\n - int[45] *x;\n + int (*x)[45];\n return 0;\n }\n")) + (pb_distribute_type2.res + (Pb + "INCORRECT:PB parsing only in generated-file\n diff (result(<) vs expected_result(>)) = \n @@ -1,5 +1,5 @@\n int foo() {\n - int* x;\n + int *x;\n return 0;\n }\n \n @@ -10,6 +10,6 @@\n }\n \n int foo() {\n - int x[45]*;\n + int (*x)[45];\n return 0;\n }\n")) + (pb_distribute_type3.res + (Pb "PROBLEM\n exn = Failure(\"line 7: index 53 53 already used\\n\")\n")) + (pb_distribute_type4.res Ok) (pb_params_iso.res Ok) + (pb_parsing_macro.res Ok) (pb_tag_symbols.res Ok) (pmac.res Ok) + (posiso.res Ok) (positionc.res Ok) (post.res Ok) (print_return.res Ok) + (proto.res Ok) (proto2.res Ok) (proto_ver1.res Ok) (proto_ver2.res Ok) + (protoassert.res Ok) (protox.res Ok) (rcu3.res Ok) (regexp.res Ok) + (regexp2.res Ok) (regexp3.res Ok) + (remstruct.res + (Pb + "INCORRECT:not same number of entities (func, decl, ...)\n diff (result(<) vs expected_result(>)) = \n @@ -1,10 +1,3 @@\n -\n - .ack = mpuio_ack_irq,\n - .mask = mpuio_mask_irq,\n - .unmask = mpuio_unmask_irq\n -\n - .b = 15,\n -\n int hello ( String input )\n {\n String input = input.lowercase();\n")) + (replace_typedef.res Ok) (reserved.res Ok) (retmacro.res Ok) (rets.res Ok) + (return.res Ok) (return_implicit.res Ok) (retval.res Ok) (same_expr.res Ok) + (scope_problem.res + (Pb + "INCORRECT:diff token: } VS a\nFile , line 5, column 2, charpos = 43\n around = '}', whole content = }\nFile \"tests/scope_problem.res\", line 7, column 4, charpos = 49\n around = 'a', whole content = a = 2;\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,7 +1,10 @@\n void main(int i) {\n \n + \n +\n if(1) {\n int a;\n + a = 2;\n }\n \n \n")) + (serio.res + (Pb + "INCORRECT:diff token: init_MUTEX VS mutex_init\nFile \"tests/serio.c\", line 7, column 1, charpos = 130\n around = 'init_MUTEX', whole content = \tinit_MUTEX(&serio->drv_sem);\nFile \"tests/serio.res\", line 7, column 1, charpos = 130\n around = 'mutex_init', whole content = \tmutex_init(&serio->new_lock);\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,5 +4,5 @@\n \n static void serio_init_port(struct serio *serio)\n {\n -\tinit_MUTEX(&serio->drv_sem);\n +\tmutex_init(&serio->new_lock);\n }\n")) + (shared_brace.res Ok) (signed.res Ok) (sis.res Ok) (sizeof.res Ok) + (sizeof_julia.res Ok) (sizestar.res Ok) (skip.res Ok) (sp.res Ok) + (spaces.res Ok) (spl.res Ok) + (static.res (Pb "PROBLEM\n exn = Common.Impossible\n")) (stm1.res Ok) + (stm10.res Ok) (stm10_ver1.res Ok) (stm2.res Ok) (stm3.res Ok) (stm4.res Ok) + (stm5.res Ok) (stm6.res Ok) (stm7.res Ok) (stm8.res Ok) (stmt.res Ok) + (strangeorder.res Ok) (string.res Ok) (struct.res Ok) + (struct_metavar.res Ok) (struct_typedef.res Ok) (structfoo.res Ok) + (substruct.res Ok) (sw.res Ok) (switch.res Ok) (switchdecl.res Ok) + (td.res Ok) (test0.res Ok) (test1.res Ok) (test10.res Ok) + (test10_ver1.res Ok) (test11.res Ok) (test11_ver1.res Ok) (test12.res Ok) + (test2.res Ok) (test3.res Ok) (test4.res Ok) (test5.res Ok) + (test5_ver1.res Ok) (test6.res Ok) (test7.res Ok) (test8.res Ok) + (test9.res Ok) (test_s.res Ok) (test_unsigned_meta.res Ok) + (three_types.res Ok) (threea.res Ok) (top.res Ok) (topdec.res Ok) + (topdec_ver1.res Ok) (topdec_ver2.res Ok) (toplevel_macrostmt.res Ok) + (toplevel_struct.res Ok) (tup.res Ok) (twoproto.res Ok) (ty.res Ok) + (ty1.res Ok) (ty_tyexp.res Ok) (tydisj.res Ok) (tyex.res Ok) (type.res Ok) + (type1.res Ok) (type_annotated.res Ok) (type_ver1.res Ok) + (type_ver2.res + (Pb + "INCORRECT:PB parsing only in generated-file\n diff (result(<) vs expected_result(>)) = \n @@ -1,5 +1,5 @@\n int foo() {\n - int[10] *x;\n + int *x[10];\n return 0;\n }\n \n")) + (typedef.res Ok) + (typedef3.res + (Pb + "INCORRECT:diff token: link VS p_dev\nFile , line 7, column 29, charpos = 137\n around = 'link', whole content = \tunsigned int iobase = info->link.io.BasePort1;\nFile \"tests/typedef3.res\", line 7, column 29, charpos = 137\n around = 'p_dev', whole content = \tunsigned int iobase = info->p_dev->io.BasePort1;\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,7 +4,7 @@\n \n static void should_work(foo *info)\n {\n -\tunsigned int iobase = info->link.io.BasePort1;\n +\tunsigned int iobase = info->p_dev->io.BasePort1;\n }\n \n static void does_work(struct bluecard_info_t *info)\n")) + (typedef_double.res Ok) + (typeof.res + (Pb + "INCORRECT:diff token: x VS sizeof\nFile , line 3, column 4, charpos = 26\n around = 'x', whole content = f(x);\nFile \"tests/typeof.res\", line 3, column 4, charpos = 26\n around = 'sizeof', whole content = f(sizeof(struct foo));\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,4 +1,4 @@\n int main() {\n int x;\n - f(x);\n + f(sizeof(struct foo));\n }\n")) + (useless_cast.res Ok) (varargs.res Ok) (video1bis.res Ok) (void.res Ok) + (vpos.res Ok) (whitespace.res Ok) (wierd_argument.res Ok) + (wierdinit.res + (Pb + "seems incorrect, but only because of code that was not parsablediff token: dev_link_t VS struct\nFile \"tests/wierdinit.c\", line 4, column 1, charpos = 27\n around = 'dev_link_t', whole content = \tdev_link_t *link;\nFile \"tests/wierdinit.res\", line 4, column 1, charpos = 27\n around = 'struct', whole content = \tstruct pcmcia_device *link;\n")) + (ws2.res Ok) (xfield.res Ok) (y2.res Ok) (zero.res Ok)) \ No newline at end of file diff --git a/tests/SCORE_expected_orig.sexp b/tests/SCORE_expected_orig.sexp index de9cd74..1f260db 100644 --- a/tests/SCORE_expected_orig.sexp +++ b/tests/SCORE_expected_orig.sexp @@ -2,24 +2,24 @@ (addaft.res Ok) (addbefore.res Ok) (addbeforeafter.res Ok) (addelse.res Ok) (addif.res Ok) (addif1.res Ok) (addif2.res Ok) (addtoo.res Ok) (after_if.res Ok) (anon.res Ok) (ar.res Ok) (arg.res Ok) (argument.res Ok) - (array_init.res Ok) (array_size.res Ok) (arraysz.res Ok) (b1.res Ok) - (b2.res Ok) + (arparam.res Ok) (array_init.res Ok) (array_size.res Ok) (arraysz.res Ok) + (attradd.res Ok) (b1.res Ok) (b2.res Ok) (bad_iso_example.res (Pb "INCORRECT:diff token: ( VS x\nFile \"tests/bad_iso_example.c\", line 2, column 6, charpos = 19\n around = '(', whole content = if ((x = 3)) return;\nFile \"tests/bad_iso_example.res\", line 2, column 6, charpos = 19\n around = 'x', whole content = if (x) return;\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,4 +1,4 @@\n int main() {\n - if ((x = 3)) return;\n + if (x) return;\n }\n \n")) - (bad_ptr_print.res Ok) (bad_typedef.res Ok) (badexp.res Ok) + (bad_kfree.res Ok) (bad_ptr_print.res Ok) (bad_typedef.res Ok) + (badexp.res Ok) (badpos.res (Pb "PROBLEM\n exn = Failure(\"rule starting on line 1: already tagged token:\\nC code context\\nFile \\\"tests/badpos.c\\\", line 5, column 30, charpos = 139\\n around = 'reg_ptr', whole content = \\t (int) -(((struct pt_regs *) reg_ptr)->orig_eax + 2));\")\n")) - (badtypedef.res Ok) (badzero.res Ok) (befS.res Ok) (ben.res Ok) - (bitfield.res Ok) (braces.res Ok) (break.res Ok) (bug1.res Ok) - (bugloop.res - (Pb - "INCORRECT:diff token: PF_FREEZE VS )\nFile , line 12, column 16, charpos = 390\n around = 'PF_FREEZE', whole content = \t\t\trefrigerator(PF_FREEZE);\nFile \"tests/bugloop.res\", line 8, column 16, charpos = 160\n around = ')', whole content = \t\t\trefrigerator();\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,7 +1,3 @@\n -/* this doesn't work, because on the paths where we don't find refrigerator,\n -we expect to reach Exit without first going through current->flags & PF_FREEZE,\n -but of course any path that goes around the loop does precisely that */\n -\n static int stir_transmit_thread(void *arg)\n {\n \n @@ -9,7 +5,7 @@\n \t{\n \t\t/* if suspending, then power off and wait */\n \t\tif (unlikely(freezing(current))) {\n -\t\t\trefrigerator(PF_FREEZE);\n +\t\t\trefrigerator();\n \n \t\t}\n \t}\n")) - (bugon.res Ok) (cards.res Ok) (cast.res Ok) (cast_iso.res Ok) (com.res Ok) - (compare.res Ok) (const.res Ok) (const1bis.res Ok) (const_adding.res Ok) - (const_array.res Ok) (const_implicit_iso.res Ok) (constty.res Ok) - (constx.res Ok) (cs_check.res Ok) (cst.res Ok) (csw.res Ok) + (badtypedef.res Ok) (badwhen.res Ok) (badzero.res Ok) (befS.res Ok) + (ben.res Ok) (bitfield.res Ok) (braces.res Ok) (break.res Ok) (bug1.res Ok) + (bugloop.res Ok) (bugon.res Ok) (cards.res Ok) (cast.res Ok) + (cast_iso.res Ok) (com.res Ok) (comadd.res Ok) (comments.res Ok) + (compare.res Ok) (condexp.res Ok) (const.res Ok) (const1bis.res Ok) + (const_adding.res Ok) (const_array.res Ok) (const_implicit_iso.res Ok) + (constty.res Ok) (constx.res Ok) (cs_check.res Ok) (cst.res Ok) + (cst_null.res Ok) (csw.res Ok) (dbg.res (Pb "INCORRECT:diff token: else VS (\nFile , line 8, column 2, charpos = 133\n around = 'else', whole content = \t\telse pr = NULL;(\"PCI\");\nFile \"tests/dbg.res\", line 7, column 5, charpos = 130\n around = '(', whole content = \t\tDBG(\"PCI\");\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,6 +4,6 @@\n \tstruct resource *pr, *r = &dev->resource[idx];\n \n \tif (pr)\n -\t\tDBG\n -\t\telse pr = NULL;(\"PCI\");\n +\t\tDBG(\"PCI\");\n +\telse pr = NULL;\n }\n")) @@ -31,77 +31,79 @@ (decl_split.res (Pb "INCORRECT:diff token: int VS }\nFile \"tests/decl_split.c\", line 2, column 8, charpos = 27\n around = 'int', whole content = int x, y;\nFile \"tests/decl_split.res\", line 2, column 0, charpos = 19\n around = '}', whole content = }\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,3 +1,2 @@\n int func(int i) { \n - int x, y;\n }\n")) - (define_exp.res Ok) (define_param.res Ok) (deftodo.res Ok) - (delete_function.res Ok) (deref.res Ok) (devlink.res Ok) (disjexpr.res Ok) - (disjexpr_ver1.res Ok) (disjexpr_ver2.res Ok) (distribute.res Ok) - (double.res Ok) (double_assign.res Ok) (double_switch.res Ok) - (doublepos.res Ok) (doubleswitch.res Ok) - (doundo.res - (Pb - "INCORRECT:diff token: xxx VS new_foo\nFile , line 7, column 2, charpos = 85\n around = 'xxx', whole content = xxx();\nFile \"tests/doundo.res\", line 7, column 2, charpos = 85\n around = 'new_foo', whole content = new_foo();\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,5 +4,5 @@\n {\n const s8 (*queue_priority_mapping)[2];\n s8 *noevent;\n - xxx();\n + new_foo();\n }\n")) - (dowhile.res Ok) (dropf.res Ok) (dropparam.res Ok) (edots.res Ok) - (edots_ver1.res Ok) (empty.res Ok) (end_commas.res Ok) (endif.res Ok) - (enum.res Ok) (exp.res Ok) (expnest.res Ok) (expopt.res Ok) (expopt2.res Ok) - (expopt3.res Ok) (expopt3_ver1.res Ok) (expopt3_ver2.res Ok) (fields.res Ok) + (decl_star.res Ok) + (declinv.res + (Pb + "PROBLEM\n exn = Unix.Unix_error(20, \"stat\", \"tests/declinv.cocci\")\n")) + (defe.res Ok) (define_exp.res Ok) (define_param.res Ok) (deftodo.res Ok) + (delete_function.res Ok) (delp.res Ok) (deref.res Ok) (devlink.res Ok) + (disjexpr.res Ok) (disjexpr_ver1.res Ok) (disjexpr_ver2.res Ok) + (disjid.res Ok) (distribute.res Ok) (double.res Ok) (double_assign.res Ok) + (double_lines.res Ok) (double_switch.res Ok) (doublepos.res Ok) + (doubleswitch.res Ok) (doundo.res Ok) (dowhile.res Ok) (dropf.res Ok) + (dropparam.res Ok) (eb1.res Ok) (edots.res Ok) (edots_ver1.res Ok) + (empty.res Ok) (end_commas.res Ok) (endif.res Ok) (enum.res Ok) (exp.res Ok) + (expnest.res Ok) (expopt.res Ok) (expopt2.res Ok) (expopt3.res Ok) + (expopt3_ver1.res Ok) (expopt3_ver2.res Ok) (fields.res Ok) (fieldsmin.res Ok) (find_long.res Ok) (fix_flow_need.res Ok) - (fn_todo.res Ok) (fnptr.res Ok) (fnret.res Ok) (four.res Ok) (foura.res Ok) - (fp.res Ok) (fsh.res Ok) (fun.res Ok) (gilles-question.res Ok) - (gotobreak.res Ok) (hd.res Ok) (headers.res Ok) (hex.res Ok) (hil1.res Ok) - (if.res Ok) (ifbr.res Ok) (ifdef1.res Ok) (ifdef2.res Ok) - (ifdef3.res - (Pb - "PROBLEM\n exn = Lexer_cocci.Lexical(\"unrecognised symbol, in token rule: #\")\n")) - (ifdef4.res Ok) (ifdef5.res Ok) (ifdef6.res Ok) (ifdef6a.res Ok) - (ifdefmeta.res Ok) (ifdefmeta1.res Ok) (ifdefmeta2.res Ok) - (ifdefmeta3.res Ok) + (fn_todo.res Ok) (fnptr.res Ok) (fnret.res Ok) (fnty.res Ok) (four.res Ok) + (foura.res Ok) (fp.res Ok) (fsh.res Ok) (fun.res Ok) + (gilles-question.res Ok) (gotobreak.res Ok) (hd.res Ok) (headers.res Ok) + (hex.res Ok) (hil1.res Ok) (if.res Ok) (ifbr.res Ok) (ifd.res Ok) + (ifdef1.res Ok) (ifdef2.res Ok) (ifdef3.res Ok) (ifdef4.res Ok) + (ifdef5.res Ok) (ifdef6.res Ok) (ifdef6a.res Ok) (ifdefmeta.res Ok) + (ifdefmeta1.res Ok) (ifdefmeta2.res Ok) (ifdefmeta3.res Ok) (ifdefmeta4.res (Pb "PROBLEM\n exn = Unix.Unix_error(20, \"stat\", \"tests/ifdefmeta4.cocci\")\n")) - (ifend.res Ok) (ifzer.res Ok) (inc.res Ok) + (ifend.res Ok) (ifields.res Ok) (ifzer.res Ok) (inc.res Ok) (incdir.res (Pb "INCORRECT:diff token: x VS 12\nFile \"tests/incdir.c\", line 4, column 6, charpos = 46\n around = 'x', whole content = foo(x);\nFile \"tests/incdir.res\", line 4, column 6, charpos = 46\n around = '12', whole content = foo(12);\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,5 +1,5 @@\n #include \"sub/incdir2.c\"\n \n int main () {\n - foo(x);\n + foo(12);\n }\n")) (incl.res Ok) (inclifdef.res Ok) (include.res Ok) (incompatible_value.res Ok) (inherited.res Ok) (inherited_ver1.res Ok) - (inhpos.res Ok) (initializer.res Ok) (initializer_many_fields.res Ok) - (inline.res Ok) (isococci.res Ok) (isotest.res Ok) (isotest2.res Ok) - (iterator.res Ok) + (inhmet.res Ok) (inhpos.res Ok) (initializer.res Ok) + (initializer_many_fields.res Ok) (inline.res Ok) (insdef.res Ok) + (isococci.res Ok) (isotest.res Ok) (isotest2.res Ok) (iterator.res Ok) (jloop1.res (Pb "PROBLEM\n exn = Failure(\"minus: parse error: \\n = File \\\"tests/jloop1.cocci\\\", line 10, column 3, charpos = 129\\n around = '...>', whole content = ...>\\n\")\n")) (julia10.res Ok) (julia7.res Ok) (justremove.res Ok) (keep_comma.res Ok) (km.res Ok) (kmalloc.res Ok) (kmc.res Ok) (ktype.res Ok) (labels_metastatement.res Ok) (labels_metastatement_ver1.res Ok) - (line_before_last.res Ok) (local.res Ok) (localid.res Ok) (longconst.res Ok) - (longlong.res Ok) (longlongint.res Ok) (loop.res Ok) (lvalue.res Ok) - (macro.res Ok) (macro_int16.res Ok) (match_no_meta.res Ok) (max.res Ok) + (lid.res Ok) (line_before_last.res Ok) (list_test.res Ok) (local.res Ok) + (localid.res Ok) (longconst.res Ok) (longlong.res Ok) (longlongint.res Ok) + (loop.res Ok) (lvalue.res Ok) (macro.res Ok) (macro_int16.res Ok) + (match_init.res Ok) (match_no_meta.res Ok) (max.res Ok) (memory.res (Pb "PROBLEM\n exn = Out of memory\n")) (metahex.res (Pb "INCORRECT:diff token: f VS }\nFile \"tests/metahex.c\", line 2, column 2, charpos = 15\n around = 'f', whole content = f(3);\nFile \"tests/metahex.res\", line 2, column 0, charpos = 13\n around = '}', whole content = }\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,4 +1,2 @@\n int main() {\n - f(3);\n - g(0x03);\n }\n")) (metaruleelem.res Ok) (metastatement2.res Ok) (metastatement_for.res Ok) - (metastatement_if.res Ok) - (mini_null_ref.res - (Pb - "INCORRECT:diff token: if VS struct\nFile , line 6, column 8, charpos = 269\n around = 'if', whole content = if (!pdata) {\nFile \"tests/mini_null_ref.res\", line 6, column 8, charpos = 269\n around = 'struct', whole content = struct w90p910_keypad *keypad;\n\n diff (result(<) vs expected_result(>)) = \n @@ -3,6 +3,8 @@\n const struct w90p910_keypad_platform_data *pdata =\n pdev->dev.platform_data;\n const struct matrix_keymap_data * keymap_data;\n + struct w90p910_keypad *keypad;\n +\n if (!pdata) {\n dev_err(&pdev->dev, \"no platform data defined\\n\");\n return -EINVAL;\n")) - (minstruct.res Ok) (minusdots.res Ok) (minusdots_ver1.res Ok) + (metastatement_if.res Ok) (minenum.res Ok) (minfn.res Ok) + (mini_null_ref.res Ok) (minstruct.res Ok) (minusdots.res Ok) + (minusdots_ver1.res Ok) (multi_func1.res (Pb "PROBLEM\n exn = Failure(\"minus: parse error: \\n = File \\\"tests/multi_func1.cocci\\\", line 12, column 2, charpos = 102\\n around = 'fn2', whole content = fn2(...) {\\n\")\n")) (multiplus.res Ok) (multitype.res Ok) (multitypedef.res Ok) - (multivars.res Ok) (nest.res Ok) (nestone.res Ok) (nestseq.res Ok) - (neststruct.res Ok) (nl.res Ok) (nocast.res Ok) (not.res Ok) (notest.res Ok) - (noty.res Ok) (null_type.res Ok) + (multivars.res Ok) (na.res Ok) (nameless.res Ok) (nest.res Ok) + (nestone.res Ok) (nestseq.res Ok) (neststruct.res Ok) (nl.res Ok) + (nocast.res Ok) (not.res Ok) (notest.res Ok) (noty.res Ok) + (null_bool.res + (Pb + "INCORRECT:diff token: ) VS !=\nFile , line 2, column 8, charpos = 22\n around = ')', whole content = if (12) return;\nFile \"tests/null_bool.res\", line 2, column 9, charpos = 23\n around = '!=', whole content = if (12 != NULL) return;\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,6 +1,6 @@\n int main () {\n - if (12) return;\n - if (a && 12 && b) return;\n + if (12 != NULL) return;\n + if (a && 12 != NULL && b) return;\n if (12) return;\n if (a && 12 && b) return;\n x = x + 20;\n")) + (null_type.res Ok) (oddifdef.res (Pb - "INCORRECT:diff token: #else\n VS x\nFile , line 10, column 0, charpos = 114\n around = '#else\n', whole content = #else\nFile \"tests/oddifdef.res\", line 10, column 2, charpos = 116\n around = 'x', whole content = x = 0;\n\n diff (result(<) vs expected_result(>)) = \n @@ -7,8 +7,9 @@\n a = 5;\n \n #ifdef FOO\n + x = 0;\n #else\n - \n + x = 0;\n #endif\n }\n \n @@ -21,8 +22,9 @@\n a = 3;\n \n #ifdef FOO\n + x = 0;\n #else\n - \n + x = 0;\n #endif\n }\n \n @@ -35,7 +37,8 @@\n #endif\n \n #ifdef FOO\n + x = 0;\n #else\n - \n + x = 0;\n #endif\n }\n")) + "INCORRECT:diff token: #else\n VS x\nFile , line 10, column 0, charpos = 114\n around = '#else\n', whole content = #else\nFile \"tests/oddifdef.res\", line 10, column 2, charpos = 116\n around = 'x', whole content = x = 0;\n\n diff (result(<) vs expected_result(>)) = \n @@ -7,8 +7,9 @@\n a = 5;\n \n #ifdef FOO\n + x = 0;\n #else\n -\n + x = 0;\n #endif\n }\n \n @@ -21,8 +22,9 @@\n a = 3;\n \n #ifdef FOO\n + x = 0;\n #else\n -\n + x = 0;\n #endif\n }\n \n @@ -35,7 +37,8 @@\n #endif\n \n #ifdef FOO\n + x = 0;\n #else\n -\n + x = 0;\n #endif\n }\n")) (of.res Ok) (oneline.res Ok) (opt.res Ok) (optional_qualifier.res Ok) (optional_storage.res Ok) (orexp.res Ok) (overshoot.res Ok) (param.res Ok) (param_end.res Ok) (param_ver1.res Ok) (parameters_dots.res Ok) (partial.res Ok) (pb_distribute_type.res (Pb - "INCORRECT:PB parsing only in generated-file\n diff (result(<) vs expected_result(>)) = \n @@ -5,11 +5,11 @@\n \n \n int foo() {\n - int * *x;\n + int **x;\n return 0;\n }\n \n int foo() {\n - int[45] *x;\n + int (*x)[45];\n return 0;\n }\n")) + "INCORRECT:PB parsing only in generated-file\n diff (result(<) vs expected_result(>)) = \n @@ -10,6 +10,6 @@\n }\n \n int foo() {\n - int[45] *x;\n + int (*x)[45];\n return 0;\n }\n")) (pb_distribute_type2.res (Pb "INCORRECT:PB parsing only in generated-file\n diff (result(<) vs expected_result(>)) = \n @@ -1,5 +1,5 @@\n int foo() {\n - int* x;\n + int *x;\n return 0;\n }\n \n @@ -10,6 +10,6 @@\n }\n \n int foo() {\n - int x[45]*;\n + int (*x)[45];\n return 0;\n }\n")) @@ -111,29 +113,28 @@ (pb_parsing_macro.res Ok) (pb_tag_symbols.res Ok) (pmac.res Ok) (posiso.res Ok) (positionc.res Ok) (post.res Ok) (print_return.res Ok) (proto.res Ok) (proto2.res Ok) (proto_ver1.res Ok) (proto_ver2.res Ok) - (protoassert.res Ok) (protox.res Ok) (rcu3.res Ok) (regexp.res Ok) - (regexp2.res Ok) (regexp3.res Ok) - (remstruct.res - (Pb - "INCORRECT:not same number of entities (func, decl, ...)\n diff (result(<) vs expected_result(>)) = \n @@ -1,10 +1,3 @@\n -\n - .ack = mpuio_ack_irq,\n - .mask = mpuio_mask_irq,\n - .unmask = mpuio_unmask_irq\n -\n - .b = 15,\n -\n int hello ( String input )\n {\n String input = input.lowercase();\n")) - (replace_typedef.res Ok) (reserved.res Ok) (retmacro.res Ok) (rets.res Ok) - (return.res Ok) (return_implicit.res Ok) (retval.res Ok) (same_expr.res Ok) + (protoassert.res Ok) (protox.res Ok) (ptrar.res Ok) (rcu3.res Ok) + (regexp.res Ok) (regexp2.res Ok) (regexp3.res Ok) (remove_call.res Ok) + (remstruct.res Ok) (replace_typedef.res Ok) (reserved.res Ok) + (retmacro.res Ok) (rets.res Ok) (return.res Ok) (return_implicit.res Ok) + (retval.res Ok) (retval2.res Ok) (same_expr.res Ok) (scope_problem.res (Pb - "INCORRECT:diff token: } VS a\nFile , line 5, column 2, charpos = 43\n around = '}', whole content = }\nFile \"tests/scope_problem.res\", line 7, column 4, charpos = 49\n around = 'a', whole content = a = 2;\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,7 +1,10 @@\n void main(int i) {\n \n + \n +\n if(1) {\n int a;\n + a = 2;\n }\n \n \n")) + "INCORRECT:diff token: } VS a\nFile , line 4, column 2, charpos = 42\n around = '}', whole content = }\nFile \"tests/scope_problem.res\", line 4, column 4, charpos = 44\n around = 'a', whole content = a = 2;\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,7 +1,6 @@\n void main(int i) {\n if(1) {\n int a;\n + a = 2;\n }\n -\n -\n }\n")) (serio.res (Pb "INCORRECT:diff token: init_MUTEX VS mutex_init\nFile \"tests/serio.c\", line 7, column 1, charpos = 130\n around = 'init_MUTEX', whole content = \tinit_MUTEX(&serio->drv_sem);\nFile \"tests/serio.res\", line 7, column 1, charpos = 130\n around = 'mutex_init', whole content = \tmutex_init(&serio->new_lock);\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,5 +4,5 @@\n \n static void serio_init_port(struct serio *serio)\n {\n -\tinit_MUTEX(&serio->drv_sem);\n +\tmutex_init(&serio->new_lock);\n }\n")) (shared_brace.res Ok) (signed.res Ok) (sis.res Ok) (sizeof.res Ok) - (sizeof_julia.res Ok) (sizestar.res Ok) (skip.res Ok) (sp.res Ok) - (spaces.res Ok) (spl.res Ok) - (static.res (Pb "PROBLEM\n exn = Common.Impossible\n")) (stm1.res Ok) - (stm10.res Ok) (stm10_ver1.res Ok) (stm2.res Ok) (stm3.res Ok) (stm4.res Ok) - (stm5.res Ok) (stm6.res Ok) (stm7.res Ok) (stm8.res Ok) (stmt.res Ok) - (strangeorder.res Ok) (string.res Ok) (struct.res Ok) + (sizeof_julia.res Ok) (sizeptr.res Ok) (sizestar.res Ok) (skip.res Ok) + (sp.res Ok) (spaces.res Ok) (spl.res Ok) (static.res Ok) + (stm1.res (Pb "PROBLEM\n exn = Failure(\"no python\")\n")) (stm10.res Ok) + (stm10_ver1.res Ok) (stm2.res Ok) (stm3.res Ok) (stm4.res Ok) (stm5.res Ok) + (stm6.res Ok) (stm7.res (Pb "PROBLEM\n exn = Failure(\"no python\")\n")) + (stm8.res Ok) (stmt.res Ok) (str_init.res Ok) (strangeorder.res Ok) + (strid.res Ok) (strid2.res Ok) (string.res Ok) (struct.res Ok) (struct_metavar.res Ok) (struct_typedef.res Ok) (structfoo.res Ok) (substruct.res Ok) (sw.res Ok) (switch.res Ok) (switchdecl.res Ok) - (td.res Ok) (test0.res Ok) (test1.res Ok) (test10.res Ok) + (td.res Ok) (tern.res Ok) (test0.res Ok) (test1.res Ok) (test10.res Ok) (test10_ver1.res Ok) (test11.res Ok) (test11_ver1.res Ok) (test12.res Ok) (test2.res Ok) (test3.res Ok) (test4.res Ok) (test5.res Ok) (test5_ver1.res Ok) (test6.res Ok) (test7.res Ok) (test8.res Ok) @@ -150,12 +151,9 @@ (typedef3.res (Pb "INCORRECT:diff token: link VS p_dev\nFile , line 7, column 29, charpos = 137\n around = 'link', whole content = \tunsigned int iobase = info->link.io.BasePort1;\nFile \"tests/typedef3.res\", line 7, column 29, charpos = 137\n around = 'p_dev', whole content = \tunsigned int iobase = info->p_dev->io.BasePort1;\n\n diff (result(<) vs expected_result(>)) = \n @@ -4,7 +4,7 @@\n \n static void should_work(foo *info)\n {\n -\tunsigned int iobase = info->link.io.BasePort1;\n +\tunsigned int iobase = info->p_dev->io.BasePort1;\n }\n \n static void does_work(struct bluecard_info_t *info)\n")) - (typedef_double.res Ok) - (typeof.res - (Pb - "INCORRECT:diff token: x VS sizeof\nFile , line 3, column 4, charpos = 26\n around = 'x', whole content = f(x);\nFile \"tests/typeof.res\", line 3, column 4, charpos = 26\n around = 'sizeof', whole content = f(sizeof(struct foo));\n\n diff (result(<) vs expected_result(>)) = \n @@ -1,4 +1,4 @@\n int main() {\n int x;\n - f(x);\n + f(sizeof(struct foo));\n }\n")) - (useless_cast.res Ok) (varargs.res Ok) (video1bis.res Ok) (void.res Ok) - (vpos.res Ok) (whitespace.res Ok) (wierd_argument.res Ok) + (typedef_double.res Ok) (typeof.res Ok) (useless_cast.res Ok) + (varargs.res Ok) (video1bis.res Ok) (void.res Ok) (vpos.res Ok) + (whitespace.res Ok) (wierd_argument.res Ok) (wierdinit.res (Pb "seems incorrect, but only because of code that was not parsablediff token: dev_link_t VS struct\nFile \"tests/wierdinit.c\", line 4, column 1, charpos = 27\n around = 'dev_link_t', whole content = \tdev_link_t *link;\nFile \"tests/wierdinit.res\", line 4, column 1, charpos = 27\n around = 'struct', whole content = \tstruct pcmcia_device *link;\n")) diff --git a/tests/camltococci.c b/tests/camltococci.c deleted file mode 100644 index e67463a..0000000 --- a/tests/camltococci.c +++ /dev/null @@ -1,4 +0,0 @@ -int main () { - foo(a0); - bar(); -} diff --git a/tests/camltococci.cocci b/tests/camltococci.cocci deleted file mode 100644 index 8cc110f..0000000 --- a/tests/camltococci.cocci +++ /dev/null @@ -1,23 +0,0 @@ -@a@ -identifier x; -@@ - -foo(x); - -@script:ocaml b@ -x << a.x; -y; -z; -@@ - -y := x; -z := "something" - -@c@ -identifier b.y; -identifier b.z; -identifier a.x; -@@ - -- bar(); -+ matched_bar(y,z,x); diff --git a/tests/camltococci.res b/tests/camltococci.res deleted file mode 100644 index d4eafc9..0000000 --- a/tests/camltococci.res +++ /dev/null @@ -1,4 +0,0 @@ -int main () { - foo(a0); - matched_bar(a0, something, a0); -} diff --git a/tests/lid.c b/tests/lid.c new file mode 100644 index 0000000..43f6ad2 --- /dev/null +++ b/tests/lid.c @@ -0,0 +1,6 @@ +int main () { + int a; + static int b; + f(a); + f(b); +} diff --git a/tests/lid.cocci b/tests/lid.cocci new file mode 100644 index 0000000..89bb987 --- /dev/null +++ b/tests/lid.cocci @@ -0,0 +1,6 @@ +@@ +local idexpression x; +@@ + +- x ++ 12 diff --git a/tests/lid.res b/tests/lid.res new file mode 100644 index 0000000..259df36 --- /dev/null +++ b/tests/lid.res @@ -0,0 +1,6 @@ +int main () { + int a; + static int b; + f(12); + f(b); +} diff --git a/tests/memory.c b/tests/memory.c index 420c400..de4c629 100644 --- a/tests/memory.c +++ b/tests/memory.c @@ -1,4 +1,4 @@ -#define BAD_MAGIC(q,m) 0 +#define BAD_MAGIC(q,m) 0 int __queue_add(Queue_t *queue, Scsi_Cmnd *SCpnt, int head) { diff --git a/tests/pythontococci.c b/tests/pythontococci.c deleted file mode 100644 index e67463a..0000000 --- a/tests/pythontococci.c +++ /dev/null @@ -1,4 +0,0 @@ -int main () { - foo(a0); - bar(); -} diff --git a/tests/pythontococci.cocci b/tests/pythontococci.cocci deleted file mode 100644 index e09e278..0000000 --- a/tests/pythontococci.cocci +++ /dev/null @@ -1,25 +0,0 @@ -@a@ -identifier x; -@@ - -foo(x); - -@script:python b@ -x << a.x; -y; -z; -@@ - -print y -coccinelle.y = x -coccinelle.z = "something" -print y - -@c@ -identifier b.y; -identifier b.z; -identifier a.x; -@@ - -- bar(); -+ matched_bar(y,z,x); diff --git a/tests/pythontococci.res b/tests/pythontococci.res deleted file mode 100644 index d4eafc9..0000000 --- a/tests/pythontococci.res +++ /dev/null @@ -1,4 +0,0 @@ -int main () { - foo(a0); - matched_bar(a0, something, a0); -} diff --git a/tests/remove_call.c b/tests/remove_call.c new file mode 100644 index 0000000..65eeba4 --- /dev/null +++ b/tests/remove_call.c @@ -0,0 +1,6 @@ +int main () { + int x = 3 + FN() + FN(); + x = 3 + FN() + FN(); + FN(); + return 3 + FN() + FN(); +} diff --git a/tests/remove_call.cocci b/tests/remove_call.cocci new file mode 100644 index 0000000..1504b6f --- /dev/null +++ b/tests/remove_call.cocci @@ -0,0 +1,16 @@ +@@ +identifier FN; +type T; +identifier x; +expression y; +@@ + +( +- T x = <+... FN(...) ...+>; +| +- y = <+... FN(...) ...+>; +| +- FN(...); +| +- return <+... FN(...) ...+>; +) diff --git a/tests/remove_call.res b/tests/remove_call.res new file mode 100644 index 0000000..d6a7729 --- /dev/null +++ b/tests/remove_call.res @@ -0,0 +1,2 @@ +int main () { +} diff --git a/tests/scope_problem.res b/tests/scope_problem.res index 304a2a5..57d588f 100644 --- a/tests/scope_problem.res +++ b/tests/scope_problem.res @@ -1,12 +1,6 @@ void main(int i) { - - - if(1) { int a; a = 2; } - - - } -- 2.20.1