Caml1999I037vDrР)Compilenv?imported_sets_of_closures_table}2Set_of_closures_id#Tbl!t&optionL3Simple_value_approx5function_declarations@@@j@@@k@@@l@8middle_end/compilenv.mli\<<]`@@%@@@%reset~(packname&stringQ@@@m@@@n@ @@@o$unitF@@@p@@q@@r@%`&`@@IA@@1unit_id_from_name@@@@s%Ident!t@@@t@@u@s-Stdlib__Uchar056uf4[_+Stdlib__Sys0 -ռ鱦s5/.Stdlib__String0Vê>)Longident0s `7mɕc(Location0a7cK_H%9)Load_path0I@18 ~,Linkage_name0EwKсڊs&Lambda0z1x]&ZT7Internal_variable_names0HdeՄL ԩ,Identifiable0 {d\FX'`%Ident0">WA+9*X*Freshening0/^*b1R*Format_doc0]mWϓ:Mݠ'Flambda0Idvu "+Export_info0G[CE!O pr)Export_id0-bw+LO#Env0zV L{YWI)Debuginfo0PtJ=^w/*Data_types0I'Ue`wq]Ѡ0Compilation_unit0 {p-Vg_*Cmx_format0}Du)|lx/̠*Cmi_format0c˯7͗ԩmݠ.Closure_origin0vˆtT{(}z*Closure_id05:z[ކ/Closure_element0YWZ̡Q.hV&2Clambda_primitives01U1'Clambda0l>\~"=0CamlinternalLazy0&͂7 Pˆ8CamlinternalFormatBasics0%FU(Q/Tu5Build_path_prefix_map0z HkGs+Backend_var0G}afTd(Asttypes0>n{T8cئ/Allocated_const0ЖݔTW@@@Caml1999T037kWD@hC)Compilenvࠐ*Cmx_format*Cmx_format8middle_end/compilenv.mliVV@@A3@@@@@@#intA;@@@A@@@@@&_none_@@A@A@$charB;@@A@@@@@@A@&stringQ;@@ A@@@@@ @@@%bytesC;@@A@@@@@@@@%floatD;@@A@@@@@@@@$boolE;@@%falsec@@@$trued@@#@@@A@@@@@$@A@$unitF;@@"()e@@.@@@A@@@@@/@A@ #exnG;@@@A@@@@@3@@@#effH;@@O@A@A@@@@@@<@@@,continuationI;@@Q@@P@B@A@nY@@@@@@K@@@%arrayJ;@@R@A@A@@@@@@U@@@ $listK;@@S@A"[]f@@b@"::g@@@T@@o@ @@A@Y@@@@@r@@@&optionL;@@V@A$Noneh@@@$Somei@@@@@A@Y@@@@@@@@)nativeintM;@@A@@@@@@@@%int32N;@@A@@@@@@@@%int64O;@@A@@@@@@@@&lazy_tP;@@X@AJA@Y@@@@@@@@5extension_constructorR;@@A@@@@@@@@*floatarrayS;@@A@@@@@@@@&iarrayT;@@Y@A[A@Y@@@@@@@@*atomic_locU;@@Z@AdA@@@@@@@@@.Assert_failure`#@@@@@J@@@@@@@@[@@AϠ=ocaml.warn_on_literal_patternӐ@@0Division_by_zero]#@@@A٠  @+End_of_file\#$@@@Aᠰ@'FailureY#,@'@@A꠰@0Invalid_argumentX#5@0@@A󠰠$#@-Match_failureV#>@@=@9@;@@a@@A54@)Not_foundZ#O@@@A =<@-Out_of_memoryW#W@@@AED@.Stack_overflow^#_@@@AML@.Sys_blocked_io_#g@@@A$U'T'@)Sys_error[#o@j@@A-^0]0@:Undefined_recursive_modulea#x@@w@s@u@@h@@A>oAnA@:Continuation_already_takenb#@@@AFwIvI@&Stdlib@A|V{@@3zyyzzzzz@w@A}@?imported_sets_of_closures_table\<@\<_@г2Set_of_closures_id#Tbl!t2Set_of_closures_id]`]`@ ]`]`@@]`]`@ @г &option]`]`@г3Simple_value_approx5function_declarations3Simple_value_approx]`d]`w@ ]`x]`@@@@@@ GŰ @@@"@@@ Iʰ@@@E@@@ Kϰ/@@@\<<2@@@@@4@@%reset``@б(packnameг&string``@@ @@@ L3@q!@A@@б@гĠ&string``@@ @@@ M@@г$unit ` `@@ @@@ N@@@@@ O!@@2x+@@@ P @@ Q)`@@ @`@@0A@@@@01unit_id_from_nameʠ*d+d@б@г&string5d6d@@ @@@ R376677777@I`@A@@г%Ident!t%IdentJdKd@ NdOd@@@@@@  @@@ @@ # @@@Zd @@kB@@@@#2current_unit_infosˠegfg@б@г$unitpgqg@@ @@@ 3rqqrrrrr@<Q@A@@г*unit_infosgg@@ @@@ @@@@@ @@@g @@C@@ @@1current_unit_name̠j48j4I@б@гI$unitj4Kj4O@@ @@@ 3@1F@A@@гu&stringj4Sj4Y@@ @@@ @@@@@ @@@j44 @@D@@ @@9current_unit_linkage_name٠nn@б@гy$unitnn@@ @@@ 3@1F@A@@г,Linkage_name!t,Linkage_namenn@ nn@@@@@@  @@@ @@ # @@@n @@E@@@@#,current_unitr = Ar = M@б@г$unit r = O r = S@@ @@@ 3        @<Q@A@@г0Compilation_unit!t0Compilation_unit r = W!r = g@ $r = h%r = i@@@@@@ 2 @@@ @@ 3# @@@0r = = @@AF@@@@#3current_unit_symbol;u  6symbol_in_current_unitB  B  @б@г&stringB  B  @@ @@@ 3@Wn@A@@г$boolB  B  @@ @@@ @@@@@ @@@B   @@"J@@ @@7is_predefined_exceptionF \ `F \ w@б@г!t&Symbol+F \ y,F \ @ /F \ 0F \ @@@@@@ 321122222@:O(@A @@г$bool?F \ @F \ @@ @@@ @@@@@ @@@JF \ \ @@[K@@ @@/unit_for_globalUI  VI  @б@г!t%IdentdI  eI  @ hI  iI  @@@@@@ 3kjjkkkkk@:X(@A @@г^!t0Compilation_unit|I  }I  @ I  I  @@@@@@  @@@@@ & @@@I   @@L@@@@!1symbol_for_globalL  L  @б@г^!t%IdentL  L  @ L  L  @@@@@@ 3@Ca(@A @@г&stringL  L  @@ @@@ @@@@@ @@@L   @@M@@ @@2symbol_for_global'O  O  @б@г!t%IdentO  O  @ O  O  @@@@@@ 3@:X(@A @@г!t&SymbolO  O  @ O  O  @@@@@@  @@@@@ & @@@O   @@N@@@@!-global_approxQ  Q  @б@г!t%Ident!Q  "Q  @ %Q  &Q  @@@@@@ 3(''(((((@Ca(@A @@г'Clambda3value_approximation'Clambda;Q  <Q  @ ?Q  @Q @@@@@@. @@@ @@/( @@@KQ   @@\S@@@@#1set_global_approxVTeiWTez@б@г,3value_approximation'ClambdaeTe|fTe@ iTejTe@@@@@@03lkklllll@Ec(@A @@г"$unityTezTe@@ @@@1@@@@@2@@@Tee @@T@@ @@=record_global_approx_toplevelWW@б@гC$unitWW!@@ @@@33@1O@A@@гR$unitW%W)@@ @@@4@@@@@5@@@W @@U@@ @@/set_export_info4[[@б@г+Export_info!t+Export_info[[@ [[@@@@@@3@<Q*@A @@г$unit[[@@ @@@@@@@@@@@[ @@V@@ @@*approx_env5^^#@б@г$unit^%^)@@ @@@3@1Q@A@@гJ!t+Export_info^-^8@ ^9^:@@@@@@ @@@@@! @@@(^ @@9W@@@@!1approx_for_global63a4a@б@г$!t0Compilation_unitBaCa@ FaGa@@@@@@3IHHIIIII@CX(@A @@г&optionVaWa@г!t+Export_infodaea@ haia@@@@@@" @@@ @@@'@@@-@@*5 @@@ya#@@X@@%@@0.need_curry_fun7eKOeK]@б@гa#inteK_eKb@@ @@@3@Ig@A@@гG$uniteKfeKj@@ @@@@@@@@@@@eKK @@Y@@ @@.need_apply_fun8fkofk}@б@г#intfkfk@@ @@@3@1F@A@@гw$unitfkfk@@ @@@@@@@@@@@fkk @@Z@@ @@-need_send_fun9gg@б@г#intgg@@ @@@3@1F@A@@г$unitgg@@ @@@@@@@@@@@ g @@[@@ @@0new_const_symbol:k%)k%9@б@гȠ$unitk%< k%@@@ @@@3!  !!!!!@1F@A@@г&string.k%D/k%J@@ @@@@@@@@@@@9k%% @@J\@@ @@.closure_symbolMDlKOElK]@б@г*Closure_id!t*Closure_idUlK`VlKj@ YlKkZlKl@@@@@@a3\[[\\\\\@<Q*@A @@г!t&SymbolmlKpnlKv@ qlKwrlKx@@@@@@b @@@@@c& @@@}lKK @@]@@@@!.function_labelNpp@б@гD!t*Closure_idpp@ pp@@@@@@d3@Cc(@A @@гq&stringpp@@ @@@e@@@@@f@@@p @@^@@ @@7new_structured_constantOtjntj@б@г4ustructured_constant'Clambdauu@ uu@@@@@@g3@:X(@A @@б&sharedг$boolvv@@ @@@h@@г&stringww@@ @@@i @@@@j#v @@@*@@k'2 @@@tjj@@_@@@@-4structured_constantsPxx@б@гà$unityy @@ @@@l3@Fd@A@@г$list)yB*yF@г5preallocated_constant'Clambda7y$8y+@ ;y,<yA@@@@@@m" @@@ @@@o'@@@-@@p*0 @@@Lx#@@]`@@%@@0:clear_structured_constantsQWzGKXzGe@б@г $unitbzGgczGk@@ @@@q3dccddddd@I^@A@@г$unitqzGorzGs@@ @@@r@@@@@s@@@|zGG @@a@@ @@=structured_constant_of_symbolR|uy|u@б@гX&string}}@@ @@@t3@1F@A@@г&option}}@гv4ustructured_constant'Clambda}}@ }}@@@@@@u" @@@ @@@w'@@@-@@x*0 @@@|uu#@@b@@%@@05add_exported_constantS@б@г&string@@ @@@y3@I^@A@@г$unit@@ @@@z@@@@@{@@@ @@ c@@ @@A+4structured_constantsTA  '@@;@@@A@@@@@ @@@@ d@@@A@@@3        @)>@A @(snapshotU CG CO@б@гƠ$unit CQ CU@@ @@@|3        @("@A@@г,4structured_constants ,CY -Cm@@ @@@}@@@@@~@@@ 7CC @@ He@@ @@)backtrackV B C@б@гM4structured_constants M N@@ @@@3 O N N O O O O O@1F@A@@г $unit \ ]@@ @@@@@@@@@@@ g @@ xf@@ @@.read_unit_infoj r s@б@г C&string } ~@@ @@@3  ~ ~     @1F@A@@В@г *unit_infos  @@ @@@@@@г$&Digest!t  @   @@@@@@+ @@@@ @ @@2% @@@8 @@5;@@@ @@ g@@@@;/write_unit_infok :> :M@б@г *unit_infos :O :Y@@ @@@3        @Ti@A@@б@г &string :] :c@@ @@@@@г $unit :g :k@@ @@@@@@@@!@@@'@@$* @@@ ::@@ h@@@@*.save_unit_infol  @б@г ؠ&string  @@ @@@3        @CX@A@@г ʠ$unit ! "@@ @@@@@@@@@@@ , @@ =i@@ @@/cache_unit_infom 7  8@б@г E*unit_infos B C'@@ @@@3 D C C D D D D D@1F@A@@г $unit Q+ R/@@ @@@@@@@@@@@ \ @@ mj@@ @@.require_globaln g h@б@г.!t%Ident v w@  z  { @@@@@@3 } | | } } } } }@:O(@A @@г 3$unit  @@ @@@@@@@@@@@  @@ k@@ @@1read_library_infoo ~ ~@б@г q&string ~ ~@@ @@@3        @1O@A@@г -library_infos ~ ~@@ @@@@@@@@@@@ ~~ @@ l@@ @@A+%errorpB  @@;@@/Not_a_unit_infoq @@@@@  @@ n@3Corrupted_unit_infor @@@ @@  @@ o@0Illegal_renamings @@@  @@@  @@@ @@  +@@ p@4Mismatching_for_packt @@@  @@@ @@@  @@@@@@@@ (,. ),p@@ :q@@@A@@@@@ ,@@@@ =m@@#ZZS 3@R@г[&string <\@@b3 : 9 9 : : : : :@}s;@@@A@@@@@@@@@Ab@@@@d@#`` G H@Y@гb&string Qc@@id@@@@f@#bb W X@Q@гd&string a b@@l&@@гi&string k l"@@q0@@гn&string u%o@@u9p@@@@r@#nn {,0 |,D@S@гp&string ,H ,N@@xJ@@гu&string ,Q ,W@@}T@@гz&string ,Z ,`@@^@@г&option ,j{@г&string ,c ,i@@p@@@q@@@@@@A@@@3        @q@A@%ErroruC r| r@# @@@@-@@A rr r@@ r@@г %error r @@3        @@A@@@@@@@,report_error  @г*Format_doc.format_printer*Format_doc  @   @@г*%error  @@ @@@u3        @0LF@A@@@$ @@@w @@@ @@ s@@@@ 0report_error_doc  @г8'printer*Format_doc " #@  & '@@г`%error 1 2@@ @@@x3 3 2 2 3 3 3 3 3@7_0@A@@@" @@@z @@@ @@@ Qt@@@@ @  r@ k *@ # @  @  @  \@ U #@ @@x@qJ@C@ @@\@U@@@|@uE@>@@@l@e>@7@@y@r3@,@@@A@yR@K$@@@e@^7@0@@A@B@@_@@3        @ha@A@ H************************************************************************ A@@ A@L@ H  BMM BM@ H OCaml  C C@ H  D D3@ H Xavier Leroy, projet Gallium, INRIA Rocquencourt  E44 E4@ H Pierre Chambart, OCamlPro  F F@ H Mark Shinwell and Leo White, Jane Street Europe  G G@ H  H Hg@ H Copyright 2010 Institut National de Recherche en Informatique et  Ihh Ih@ H en Automatique  J J@ H Copyright 2013--2016 OCamlPro SAS  K KN@ H Copyright 2014--2016 Jane Street Group LLC  LOO LO@ H  M M@ H All rights reserved. This file is distributed under the terms of  N N5@ H the GNU Lesser General Public License version 2.1, with the  O66 O6@ H special exception on linking described in the file LICENSE.  P P@ H  Q Q@ H************************************************************************ R Ri@ 0 Compilation environments for compilation units  Tkk Tk@ CR-soon mshinwell: this is a bit ugly mshinwell: deferred CR, this has been addressed in the export info improvement feature.  X [9;@. flambda-only  ^ ^@ Reset the environment and record the name of the unit being compiled (arg). Optional argument is [-for-pack] prefix.  !a "b?@. flambda-only  'e (e@ . Return the infos for the unit being compiled  -h .h2@ D Return the name of the unit being compiled clambda-only  3kZb 4l@ M Return the linkage_name of the unit being compiled. flambda-only  9o :p ! ;@. flambda-only  ?s j r @s j @. flambda-only  Ev   Fv  @ > Return the module separator used when building symbol names.  Ky   Ly  1@ ; [make_symbol ~unitname:u None] returns the asm symbol that corresponds to the compilation unit [u] (default: the current unit). [make_symbol ~unitname:u (Some id)] returns the asm symbol that corresponds to symbol [id] in the compilation unit [u] (or the current unit).  Q| p x R@  @ j Return true if the given asm symbol belongs to the current compilation unit, false otherwise.  WC   XD " Z@. flambda-only  ]G   ^G  @. flambda-only  cJ   dJ  @ Z Return the asm symbol that refers to the given global identifier flambda-only  iM  & jN j @. flambda-only  oP   pP  @ R Return the approximation for the given global identifier clambda-only  uR vSJd@ M Record the approximation of the unit being compiled clambda-only  {U |V@ Z Record the current approximation for the current toplevel phrase clambda-only  X*2 Yv@ K Record the information of the unit being compiled flambda-only  \ ]@ \ Returns all the information loaded from external compilation units flambda-only  _;C `@ W Loads the exported information declaring the compilation_unit flambda-only  b c/I@ m Record the need of a currying (resp. application, message sending) function with the given arity  h i#@ j Symbol of a function if the function is closed (statically allocated) flambda-only  my o@ @ linkage name of the code of a function flambda-only  q$ rNh@ 8 can be shared with another structurally equal constant  v v@. clambda-only    @. clambda-only  (0 (B@. clambda-only  nv n@. clambda-only   @ ( Read infos and MD5 from a [.cmx] file.    9@ ( Save the given infos in the given file  lt l@ 7 Save the infos for the current unit in the given file   @ Enter the given infos in the cache. The infos will be honored by [symbol_for_global] and [global_approx] without looking at the corresponding .cmx file.  08 @ ] Enforce a link dependency of the current compilation unit to the required module   S|@@-./boot/ocamlc)-nostdlib"-I&./boot*-use-prims2runtime/primitives"-g0-strict-sequence*-principal(-absname"-w8+a-4-9-40-41-42-44-45-48+-warn-error"+a*-bin-annot/-strict-formats"-I*middle_end"-I%utils"-I'parsing"-I&typing"-I(bytecomp"-I,file_formats"-I&lambda"-I*middle_end"-I2middle_end/closure"-I2middle_end/flambda"-I=middle_end/flambda/base_types"-I'asmcomp"-I&driver"-I(toplevel"-I%tools"-I'runtime"-I1otherlibs/dynlink"-I-otherlibs/str"-I4otherlibs/systhreads"-I.otherlibs/unix"-I8otherlibs/runtime_events"-c =/builds/workspace/precheck/flambda/false/label/ocaml-linux-32 >10/.-,+*)('&%$#"! @@0C{FI+Ɨ 398899999@6@@/Allocated_const0ЖݔTWŠ(Asttypes0>n{T8cئ+Backend_var0G}afTd5Build_path_prefix_map0z HkGs8CamlinternalFormatBasics0%FU(Q/Tu0CamlinternalLazy0&͂7 Pˆ'Clambda0l>\~"=2Clambda_primitives01U1/Closure_element0YWZ̡Q.hV&*Closure_id05:z[ކ.Closure_origin0vˆtT{(}z*Cmi_format0c˯7͗ԩmݠ}0}Du)|lx/̠0Compilation_unit0 {p-Vg_0t|.|[b,c*Data_types0I'Ue`wq]Ѡ)Debuginfo0PtJ=^w/#Env0zV L{YWI)Export_id0-bw+LO+Export_info0G[CE!O pr'Flambda0Idvu "*Format_doc0]mWϓ:Mݠ*Freshening0/^*b1R%Ident0">WA+9*X,Identifiable0 {d\FX'`7Internal_variable_names0HdeՄL ԩ&Lambda0z1x]&ZT,Linkage_name0EwKсڊs)Load_path0I@18 ~(Location0a7cK_H%9)Longident0s `7mɕc$Misc0ob]6>Vê>0Mutable_variable0~emPs&Symbol0ҡ4d,#Tag0\݅}x.Type_immediacy0A^abOhՠ%Types0^Y~# )Unit_info0ڀh%(2Var_within_closure00SSJh6 (Variable0' Gr㠠(Warnings0mJɒkgr