Caml1999I037~RnMl֠%ShapeӠ#Uid }@!t ;@@0Compilation_unit&stringQ@@@l@@0typing/shape.mli{ F J{ F f@@A@$Item)comp_unit@@@@@k| g w| g @@/B@"id@@#intA@@@j | g !| g @@=C@$from8@@)Unit_info,intf_or_impl@@@i0| g 1| g @@MD@@@4| g k5| g @@QE@(Internal9@@=}  >}  @@ZF@&Predef:M@@@h@@K~  L~  @@hG@@@@@@@@@Oz 3 5@@@@k@@A@&reinit @$unitF@@@m@@@n@@o@c@  d@  @@M@@"mk ,current_unit&optionLN!t@@@p@@@q@@@r@@s@B  B  '@@N@@6of_compilation_unit_id @%Ident!t@@@t@@@u@@v@C ( *C ( S@@O@@,of_predef_id @!t@@@w+@@@x@@y@D T VD T u@@P@@@;V@@*find_first @@<@@@@@@@@@R@@@H@@@@@@@@W@TW@@.find_first_opt @@U@@@@@@@@@k@@@e@@@@@@@@@@@u@rX@@)find_last @@s@@@@@@@@@@@@@@@@@@@@@Y@@-find_last_opt @@@@@,@@@@@@@@@ݠ@@@@@@@@@@@@Z@@$iter @@@@@$unitF@@@@@@@@@ @@@@@@@@@[@@$fold @@@@@@#acc@@@@@@@@@@  @@@@@@@@\@@&filter @@@@@@@@@@@@@@@@@@@@@@@^@@*filter_map @@@@@A@@@@@@@@@@@@@@@@@@@@@_@@)partition @@@@@@@@@@@,@@@@3@@@렠@8@@@@@@@@@@:@7`@@%split @6@@@@H@@@@O@@@@@@@@Z@@@@@@@@@@\@Ya@@(is_empty @e@@@@@@@@@k@hb@@#mem @g@@@@y@@@ @@@@@@@@@|c@@%equal @@@@@@@@ @@@@@@@@@d@@'compare @@@@@@@@@@@@@@@@@e@@&subset @@@@ @@@@ H@@@ @@ @@ @@f@@'for_all @@@@@Y@@@@@@@@@b@@@@@@@@@g@@&exists @@@@@s@@@@@@@@@|@@@@@@@@@h@@'to_list @@@@V@@@@@@@@@@i@@+to_seq_from @@@@ @@@@!&Stdlib#Seq!t@@@"@@@#@@$@@%@ @k@@&to_seq @)@@@&#Seq!t&@@@'@@@(@@)@6@3l@@*to_rev_seq @?@@@*/#Seq!t<@@@+@@@,@@-@L@Im@@'add_seq @B#Seq!tO@@@.@@@/@b@@@0e@@@1@@2@@3@g@dn@@&of_seq @]#Seq!tj@@@4@@@5{@@@6@@7@}@zo@@&output @9+out_channel@@@8@@@@96@@@:@@;@@<@@M@@%print @P&Format)formatter@@@=@@@@>N@@@?@@@@@A@@N@@)to_string @@@@B&stringQ@@@C@@D@@O@@'of_list @$listK@@@E@@@F@@@G@@H@@P@@#map @@@@@I@@@J@@K@@@@L@@@M@@N@@O@@Q@@@@u@@@Ӡ#Map @#key ;@@@Ay!t@@@@@@@@@@T@A@!t ;!a@@A@A#Map$Make!t@@@I@B@@@@@@U@A@%empty  !a@@@@@&@E@@#add @>@@@@!a@@ @@@! @@@@@@@@@@B@F@@+add_to_list @@@@@!a@@8$listK@@@@@@C @@@@@@@@@@@@@i@&G@@&update @C@@@@@&optionL!a@@@@  @@@@@@m@@@q@@@@@@@@@@@OH@@)singleton @l@@@@!a@@@@@@@@@@dI@@&remove @@@@@!a@@@@@@@@@@@@@}J@@%merge @@@@@@W!a@@@@@b!b@@@@k!c@@@@@@@@@@@Ѡ@@@@נ@@@۠@@@@@@@@@@@K@@%union @@@@@@!a@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@&@L@@(cardinal @!a@@@@@@@@@@:@M@@(bindings @%!a@@@@@$@@@ @@@ @@@ @@ @X@N@@+min_binding @C!a@@@@ @>@@@@@@@@@q@.O@@/min_binding_opt @\!a@@@@ @[@@@@@@@@@@@@@LP@@+max_binding @z!a@@@@@u@@@@@@@@@@eQ@@/max_binding_opt @!a@@@@@@@@@@@@ @@@!@@"@@R@@&choose @!a@$@@@#@@@@%@@@&@@'@@S@@*choose_opt @ʠ!a@)@@@(w@@@@*@@@+@@@,@@-@@T@@$find @@@@.@!a@0@@@/@@1@@2@@U@@(find_opt @@@@3@!a@5@@@4 @@@6@@7@@8@,@V@@*find_first @@@@@9$boolE@@@:@@;@$!a@=@@@<@@@@>@@@?@@@@@A@R@W@@.find_first_opt @@.@@@B&@@@C@@D@H!a@F@@@E@G@@@G@@@H@@@I@@J@@K@{@8X@@)find_last @@W@@@LO@@@M@@N@q!a@P@@@O@l@@@Q@@@R@@S@@T@@\Y@@-find_last_opt @@{@@@Us@@@V@@W@!a@Y@@@XB@@@@Z@@@[@@@\@@]@@^@@Z@@$iter @@@@@_@!a@c$unitF@@@`@@a@@b@Ơ@@@d @@@e@@f@@g@@[@@$fold @@@@@h@!a@l@#acc@n@@i@@j@@k@@@@m@  @@o@@p@@q@ @\@@#map @@!a@s!b@u@@r@ @@@t @@@v@@w@@x@(@]@@$mapi @@@@@y@!a@|!b@~@@z@@{@$ @@@}( @@@@@@@@I@^@@&filter @@%@@@@!a@#@@@@@@@@E @@@I@@@@@@@@j@'_@@*filter_map @@F@@@@!a@!b@@@@@@@@@k@@@o@@@@@@@@@M`@@)partition @@l@@@@!a@j@@@@@@@@ @@@@@@@@@@@@@@@@@@@xa@@%split @@@@@!a@@@@@ @@@@b@@@@Ġ@@@@@@@@@@@b@@(is_empty @Р!a@@@@@@@@@@@c@@#mem @@@@@!a@@@@@@@@@@@@ @d@@%equal @@!a@@@@@@@@@@ @@@@@@@@@@@@@@@@@ 6@e@@'compare @@!a@@ @@@@@@@@/@@@@5@@@ @@@@@@@@@@ Z@ f@@'for_all @@6@@@@!a@4@@@@@@@@V @@@>@@@@@@@@ {@ 8g@@&exists @@W@@@@!a@U@@@@@@@@w @@@_@@@@@@@@ @ Yh@@'to_list @!a@@@@T@@@@۠@@@@@@@@@ @ wi@@&to_seq @!a@@@@&Stdlib#Seq!t@@@@ᠠ@@@@@@@@@ @ k@@*to_rev_seq @ɠ!a@@@@$#Seq!t@@@@砠@@@@@@@@@ @ l@@+to_seq_from @@@@@!a@@@@J#Seq!t@@@@@@@@@@@@@@@ %@ m@@'add_seq @c#Seq!t@ @@@@!a@@@@@@@' @@@+@@@@@@@@ L@ n@@&of_seq @#Seq!t@1@@@@!a@@@@@@L@@@@@@ m@ *o@@'of_list @@O@@@@!a@@@@@@j@@@@@@ @ V@@.disjoint_union "eq&optionL@!a@@$boolE@@@@@@@ @@@ %print@ h&Format)formatter@@@ @ c@@@ @@ @@@@@@)@@@@/@@@3@@@@@@@@@@@@ @ W@@+union_right @!a@@@@@Ơ @@@ʠ@@@@@@@@ @ X@@*union_left @֠!a@ @@@@ @@@@@@!@@"@@#@ @ Y@@+union_merge @@!a@(@@@$@@%@ @@@&@@@@'@@@)@@*@@+@@,@ %@ "Z@@&rename @@@@-@@@.@@@@/ @@@0@@1@@2@ <@ 9[@@(map_keys @@@@@3@@@4@@5@1!a@7@@@69@@@8@@9@@:@ Z@ W\@@$keys @E!a@;@@@< !#Set$Make !t@@@=@@>@ t@ q]@@$data @_!a@@@@@? @@@A@@B@ @ ^@@&of_set @@e@@@C!a@F@@D@ S#Set$Make "!t@@@E@@@G@@H@@I@ @ _@@7transpose_keys_and_data @@@@J@@@K@@@L@@@M@@N@ @ `@@;transpose_keys_and_data_set @@@@O@@@P #Set$Make X!t@@@Q@@@R@@S@ @ a@@%print @@ &Format)formatter@@@T@!a@Y @@@U@@V@@W@ &Format)formatter@@@X@@@@Z @@@[@@\@@]@@^@ @ b@@@@  v@@@Ӡ#Tbl @#key ;@@@A !t@@@@@@@ @@@ h@A@!t ;!a@@A@A 'Hashtbl$Make !t@@@O@B@@@ 9@@@ 6i@A@&create @ @@@&!a@@@@@@@ N@ 3e@@%clear @!a@@@@$unitF@@@@@@ d@ If@@%reset @'!a@@@@@@@ @@!@ x@ ]g@@$copy @;!a@#@@@"C@@@$@@%@ @ qh@@#add @O!a@(@@@&@@@@'@ F@@@)@@*@@+@@,@ @ i@@&remove @k!a@-@@@.@@@@/_@@@0@@1@@2@ @ j@@$find @!a@5@@@3@5@@@4 @@6@@7@ @ k@@(find_opt @!a@:@@@8@J@@@9&optionL@@@;@@<@@=@ @ l@@(find_all @!a@@@@@>@f@@@?$listK@@@A@@B@@C@ @ m@@'replace @Ѡ!a@F@@@D@@@@E@ @@@G@@H@@I@@J@ )@ n@@#mem @!a@K@@@L@@@@M )@@@N@@O@@P@ B@ 'o@@$iter !@@@@@Q@!a@U@@@R@@S@@T@ @@@V@@@W@@X@@Y@ c@ Hp@@2filter_map_inplace "@@@@@Z@!a@^@@@[@@\@@]@8@@@_#@@@`@@a@@b@ @ jq@@$fold #@@@@@c@!a@g@#acc@i@@d@@e@@f@[@@@h@  @@j@@k@@l@ @ r@@&length $@i!a@m@@@n @@@o@@p@ @ s@@%stats %@}!a@q@@@r *statistics@@@s@@t@ @ t@@&to_seq &@!a@v@@@u&Stdlib#Seq!t@Q@@@w@@@x@@@y@@z@ @ u@@+to_seq_keys '@@@{@@@|"#Seq!tl@@@}@@@~@@@@ v@@-to_seq_values (@Ѡ!a@@@@=#Seq!t @@@@@@&@ w@@'add_seq )@!a@@@@@W#Seq!t@@@@@@@@@@@@@@@@@@M@2x@@+replace_seq *@!a@@@@@~#Seq!t@@@@@@@@@@@@@@@@@@t@Yy@@&of_seq +@#Seq!t@@@@@!a@@@@@@L@@@@@@@zz@@'to_list ,@X!a@@@@ @.!t@@@@@@@@@@@@@j@@'of_list -@ @F!t@@@@!a@@@@@@@@@@@@@k@@&to_map .@!a@@@@#Map$Makek!t@@@@@@@l@@&of_map /@#Map$Make~!t!a@@@@ @@@@@@ @m@@'memoize 0@Π!a@@@@@@@@@ @@@@@@@@@@@@@'@$n@@#map 1@!a@@@@@@ !b@@@@@@@@@@@C@@o@@@@DAw@@@@@$y " "%J  @AT@@@Ӡ2Sig_component_kind ~@!t 2;@@%Value`@@9N"&:N"-@@VV@$Typea@@BO.2CO.8@@_W@+Constructorb@@KP9=LP9J@@hX@%Labelc@@TQKOUQKV@@qY@&Moduled@@]RW[^RWc@@zZ@+Module_typee@@fSdhgSdu@@[@5Extension_constructorf@@oTvzpTv@@\@%Classg@@xUyU@@]@*Class_typeh@@VV@@^@@@A@@@@@M@@A@U@A@)to_string 3@b@@@ @@@@@@XX@@_@@3can_appear_in_types 4@@@@@@@@@@[[@@@`@@@@L  \AD@a@@@Ӡ$Item @!t 5;@@@A@@@@ࠠ@!t@@@@@@@@@cPRcPx@@@@b@A@$name 6@#@@@@@@@@@dy{dy@@c@@$kind 7@@@@'!t@@@@@@ee@@d@@$make 8@@@@@=!t@@@1@@@@@@@@ gg@@*e@@%value 9@!t@@@E@@@@@@!i"i@@>f@@%type_ :@!t@@@Y@@@@@@5j 6j!@@Rg@@&constr ;@!t@@@m@@@@@@Ik"$Jk"=@@fh@@%label <@!t@@@@@@@@@]l>@^l>X@@zi@@'module_ =@!t@@@@@@@@@qmY[rmYu@@j@@+module_type >@!t@@@@@@@@@nvxnv@@k@@5extension_constructor ?@!t@@@@@@@@@oo@@l@@&class_ @@!t@@@@@@@@@pp@@m@@*class_type A@,!t@@@@@@@@@qq@@n@@%print B@&Stdlib&Format)formatter@@@@@@@ @@@ @@ @@ @ss*@@o@@Ӡ#Map C@#key D;@@@A@@@@@@@u,Fu,R@@@@p@A@!t E;!a@@A@A@I@B@@@'map.mliI V ZI V e@@@@+Stdlib__MapD@A@%empty F!a@@@@@L  L  @@E@@#add G@;@@@@!a@@  @@@$ @@@@@@@@@@3O  4O  @@2F@@+add_to_list H@@@@@!a@@>$listK@@@@@@I @@@@@@@@@@@@@]X  ^X  @@\G@@&update I@I@@@@@&optionL!a@@@@  @@@@@@v@@@z@@@@@@@@@@^^@@H@@)singleton J@u@@@@!a@@@@@@@@@jW[jW{@@I@@&remove K@@@@@!a@@@@@@@@@@@@oo@@J@@%merge L@@@@@@`!a@@@@@k!b@@@@t!c@@@@@@@@@@@@@@@@@@@@@@@@@@@@vY]x@@K@@%union M@@@@@@!a@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@)fj*f@@(L@@(cardinal N@)!a@@@@#intA@@@@@@BC@@AM@@(bindings O@B!a@@@@ @>@@@ᠠ@@@@@@@@@c8<d8a@@bN@@+min_binding P@c!a@@@@@[@@@砠@@@@@@bfb@@~O@@/min_binding_opt Q@!a@@@@#@{@@@젠@@@@@@@@@JNJ|@@P@@+max_binding R@!a@@@@@@@@@@@@@@484[@@Q@@/max_binding_opt S@!a@@@@`@@@@@@@@@@@@@ @@R@@&choose T@ݠ!a@@@@@@@@@@@@@@@@S@@*choose_opt U@!a@@@@@@@@@@@@@@@@@@@T@@$find V@@@@@!a@@@@@@ @@ @23@@1U@@(find_opt W@@@@ @7!a@ @@@ ۠ @@@@@@@@OIMPIs@@NV@@*find_first X@@=@@@$boolE@@@@@@\!a@@@@@T@@@@@@@@@@@x  y  D@@wW@@.find_first_opt Y@@f@@@)@@@@@@!a@@@@'@@@@@@@ @@@!@@"@@#@"*"."*"l@@X@@)find_last Z@@@@@$U@@@%@@&@!a@(@@@'@@@@)@@@*@@+@@,@#_#c#_#@@Y@@-find_last_opt [@@@@@-|@@@.@@/@֠!a@1@@@0z@@@@2@@@3@@@4@@5@@6@$y$}$y$@@Z@@$iter \@@@@@7@!a@;$unitF@@@8@@9@@:@ @@@< @@@=@@>@@?@%%%& @@[@@$fold ]@@ @@@@@!a@D@#acc@F@@A@@B@@C@0@@@E@  @@G@@H@@I@A'%')B'3'l@@@\@@#map ^@@!a@K!b@M@@J@M @@@LQ @@@N@@O@@P@`(e(ia(e(@@_]@@$mapi _@@N@@@Q@!a@T!b@V@@R@@S@q @@@Uu @@@W@@X@@Y@))))@@^@@&filter `@@r@@@Z@!a@_;@@@[@@\@@]@ @@@^@@@`@@a@@b@****@@_@@*filter_map a@@@@@c@!a@gO!b@i@@@d@@e@@f@@@@h @@@j@@k@@l@ ,, ,,?@@`@@)partition b@@@@@m@!a@s@@@n@@o@@p@ @@@q@@@@t@@@@r@@u@@v@@w@.../%@@a@@%split c@@@@x@!a@|@@@y@ @@@}@@@@{@@@@z@@~@@@@@,$0'0+-$0'0\@@+b@@(is_empty d@,!a@@@@@@@@@@C022!D022;@@Bc@@#mem e@/@@@@H!a@@@@@@@@@@@@_32l2p`32l2@@^d@@%equal f@@!a@@@@@@@@@@m@@@@s@@@#@@@@@@@@@@722723-@@e@@'compare g@@!a@@]@@@@@@@@@@@@@@@m@@@@@@@@@@=4(4,=4(4a@@f@@'for_all h@@@@@@!a@d@@@@@@@@ @@@n@@@@@@@@A45A450@@g@@&exists i@@@@@@!a@@@@@@@@@ @@@@@@@@@@@F55F55@@h@@'to_list j@!a@@@@@@@@@@@@@@@@@M6~6M6~6@@i@@'of_list k@ՠ@ @@@@!a@@@@@@(@@@@@@7Q668Q67@@6j@@&to_seq l@7!a@@@@&Stdlib#Seq!t@9@@@@@@@@@@@@^W77_W77@@]k@@*to_rev_seq m@^!a@@@@'#Seq!t@]@@@Š@@@@@@@@@[8A8E[8A8n@@l@@+to_seq_from n@n@@@@!a@@@@P#Seq!t@@@@̠@@@@@@@@@@@_88_88@@m@@'add_seq o@l#Seq!t@@@@Ѡ@!a@@@@@@@  @@@Ơ@@@@@@@@d99d99@@n@@&of_seq p@#Seq!t@@@@٠@!a@@@@@@@@@@@@h::h::>@@o@@@@u,.@q@@@@@b>>vSV@!r@@@#var ;@@@A!t@@@@@@@xXXxXj@@@@2s@A@!t ;@@#uid@@A!t@@@@@@.ykv/yk@@Kw@$desc@@$desc @@@<yk=yk@@Yx@,approximated@@@@@HykIyk@@ey@@@A@@@@@LykkMyk@@@@it@A@;@@#VarS@@@@@^{_{@@{z@#Abs@@@T@@@@@p|q|@@{@#App@@@@@@@@}}@@|@&Struct#Map!t'@@@@@@@@~~@@}@%Alias5@@@@@@@~@$Leaf@@@@@$ProjK@@@/!t@@@@@1@@@@)Comp_unit@@@@@242I@@A@%Error@@@@@JLJ]@@B@@@A@@@@@z@@@@u@B@%print @&Format)formatter@@@@@@@@@@@@@@@___@@C@@2strip_head_aliases @@@@@@@@@@  @@(D@@9for_unnamed_functor_param @@@@@@4E@@)fresh_var $name.@@@@@@@!t@@@@@@@@@@@@@@@@@@@A@@]F@@#var @$!t@@@@!t@@@@@@@@@@@[\:@@xG@@#abs #uidDD!t@@@@@@@@@@@ @@@@@@@@@@@@@~;;;`@@H@@#app #uidgg!t@@@@@@@*@@@#arg1@@@4@@@@@@@@@@aaa@@I@@#str #uid!t@@@@@@@0#Map!tV@@@@@@Z@@@@@@@@@@J@@%alias #uid!t@@@@@@@u@@@x@@@@@@@@@@K@@$proj #uidР!t@@@@@@@@@@@x!t@@@@@@@@@@@@@  @@)L@@$leaf @!t@@@@@@@@@ @@<M@@-decompose_abs @@@@@@@@栠@@@@@@@@@@@@>?>@@[N@@3for_persistent_unit @O@@@@@@@@@P@@Q@e@@mO@@/leaf_for_unpack @@@@\ff]f}@@yP@@Ӡ#Map @%shape q;@@@A@@@ @@@@pq@@@@Q@A@!t r;@@@A#Map!t@@@@@@@@@@@@@@R@@@%empty s@@@@@@S@@#add t@@@@@!t@@@@E@@@@@@@@@@@@@@@T@@)add_value u@-@@@@5!t@@@@!t@@@?@@@@@@@@@@%@@U@@.add_value_proj v@M@@@@U!t@@@ @?@@@!]@@@"@@#@@$@@%@&(&W@@ V@@(add_type w@k@@@&@s!t@@@'@]@@@({@@@)@@*@@+@@,@ Y[Y@@*W@@-add_type_proj x@@@@-@!t@@@.@{@@@/@@@0@@1@@2@@3@+,@@HX@@*add_constr y@@@@4@!t@@@5@@@@6@@@7@@8@@9@@:@IJ@@fY@@/add_constr_proj z@@@@;@!t@@@<@@@@=@@@>@@?@@@@@A@gh@@Z@@)add_label {@@@@B@!t@@@C@X!t@@@D@@@E@@F@@G@@H@E@@[@@.add_label_proj |@@@@I@ !t@@@J@@@@K@@@L@@M@@N@@O@FHFw@@\@@*add_module }@!@@@P@)!t@@@Q@@@@R1@@@S@@T@@U@@V@y{y@@]@@/add_module_proj ~@?@@@W@G!t@@@X@1@@@YO@@@Z@@[@@\@@]@@@^@@/add_module_type @]@@@^@e!t@@@_@!t@@@`o@@@a@@b@@c@@d@ @@_@@4add_module_type_proj @}@@@e@!t@@@f@o@@@g@@@h@@i@@j@@k@ E@@<`@@+add_extcons @@@@l@!t@@@m@@@@n@@@o@@p@@q@@r@=GI>Gu@@Za@@0add_extcons_proj @@@@s@!t@@@t@@@@u@@@v@@w@@x@@y@[vx\v@@xb@@)add_class @@@@z@!t@@@{@L!t@@@|@@@}@@~@@@@@{|@@c@@.add_class_proj @@@@@!t@@@@@@@@@@@@@@@@@ @@d@@.add_class_type @@@@@!t@@@@!t@@@'@@@@@@@@@@   <@@e@@3add_class_type_proj @5@@@@=!t@@@@'@@@E@@@@@@@@@@=?=s@@f@@@@tw@g@@@)dummy_mod x@@@@yyy@@h@@'of_path *find_shape@ .!t@@@@q!t@@@@@@@@@@)namespace B!t@@@@$Path!t@@@@@@@@@@@@@ @@9i@@/set_uid_if_none @@@@@!t@@@@@@@@@@@453@@Qj@@@&U9%Shape0oNՄBH)Unit_info0ڀh%(-Stdlib__Uchar056uf4[_+Stdlib__Set0\$;7 +Stdlib__Seq0nwzG&amg+Stdlib__Map0L5xE|O0~,J-/Stdlib__Hashtbl0ѱN][/!.Stdlib__Format0ܚ#G7m|.Stdlib__Either0Vy`u~c à.Stdlib__Domain0:M;׉<O$Ġ.Stdlib__Buffer08APF< t.&Stdlib0Lku]8_٠$Path0Y2kf֯J._Ϡ,Identifiable0 {d\FX'`%Ident0">WA+9*X*Format_doc0]mWϓ:Mݠ8CamlinternalFormatBasics0%FU(Q/Tu@@@Caml1999T037bH?!C%Shape*ocaml.text&_none_@@A q Shapes are an abstract representation of modules' implementations which allow the tracking of definitions through functor applications and other module-level operations. The Shape of a compilation unit is elaborated during typing, partially reduced (without loading external shapes) and written to the [cmt] file. External tools can retrieve the definition of any value (or type, or module, etc) by following this procedure: - Build the Shape corresponding to the value's path: [let shape = Env.shape_of_path ~namespace env path] - Instantiate the [Shape_reduce.Make] functor with a way to load shapes from external units and to looks for shapes in the environment (usually using [Env.shape_of_path]). - Completely reduce the shape: [let shape = My_reduce.(weak_)reduce env shape] - The [Uid.t] stored in the reduced shape should be the one of the definition. However, if the [approximate] field of the reduced shape is [true] then the [Uid.t] will not correspond to the definition, but to the closest parent module's uid. This happens when Shape reduction gets stuck, for example when hitting first-class modules. - The location of the definition can be easily found with the [cmt_format.cmt_uid_to_decl] table of the corresponding compilation unit. See: - {{:https://icfp22.sigplan.org/details/mlfamilyworkshop-2022-papers/10/Module-Shapes-for-Modern-Tooling} the design document} - {{:https://www.lix.polytechnique.fr/Labo/Gabriel.Scherer/research/shapes/2022-ml-workshop-shapes-talk.pdf} a talk about the reduction strategy 0typing/shape.mliP88r  @@@@@@3@@@@@@#intA;@@@A@@@@@:@A@$charB;@@A@@@@@>@A@&stringQ;@@ A@@@@@B@@@%bytesC;@@ A@@@@@F@@@%floatD;@@A@@@@@J@@@$boolE;@@%falsec@@T@$trued@@Z@@@A@@@@@[@A@$unitF;@@"()e@@e@@@A@@@@@f@A@ #exnG;@@@A@@@@@j@@@#effH;@@O@A@A@@@@@@s@@@,continuationI;@@Q@@P@B@A@nY@@@@@@@@@%arrayJ;@@R@A@A@@@@@@@@@ $listK;@@S@A"[]f@@@"::g@@@T@@@ @@A@Y@@@@@@@@&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@@A;5>4>@)Not_foundZ#O@@@AC=F<F@-Out_of_memoryW#W@@@AKENDN@.Stack_overflow^#_@@@ASMVLV@.Sys_blocked_io_#g@@@A[U^T^@)Sys_error[#o@j@@Ad^g]g@:Undefined_recursive_modulea#x@@w@s@u@@h@@Auoxnx@:Continuation_already_takenb#@@@A}wv@&Stdlib@Ax#Uid^Ay " )y " ,@T@@БA+!tBz 3 :z 3 ;@@;@@0Compilation_unitk@@@@@{ F J{ F f@@A@$Item)comp_unit@@|@@@| g w| g @@B@"id@@@@@| g | g @@C@$from8@@)Unit_info,intf_or_impl@@@W| g | g @@D@@@| g k| g @@E@(Internal9@@}  }  @@F@&Predef:@@@Z@@~  ~  @@G@@@@@@@@@z 3 5@@@@@@@#ZZ{ F L{ F \@S@г\&string{ F `]@@c3@s;@@@@@@@@@@@@@Ab@@@@d@#``| g m| g q@6@#bb] | g @\@@Ш@гe&string| g | g @@m@@p@@@l@#hhc| g @b@@Ш@гk#int(| g )| g @@s-@@v@@0@r@#nne1| g @d@@Ш@гq)Unit_info<| g =| g @v@| g t@u@@Ev@@@@XH@z@@@v@#rrI}  p@o@@@s@#ooO~  P~  @h@гq&stringY~  r@@x]s@@@@u@@@@q@@3XWWXXXXX@V@Aru@&reinit;e@  f@  @б@г$unitp@  q@  @@ @@@t3rqqrrrrr@q@A@@г,$unit@  @  @@ @@@u@@@@@v@@@@   @@M@@ @@"mk<B  B  @б,current_unitг&optionB  B  !@г!t)Unit_infoB  B  @ B  B  @@@@@@w3@F[4@A @@@" @@@y@@г9!tB  &B  '@@ @@@z@@8@@{B   @@@B   @@N@@@@6of_compilation_unit_idfC ( .C ( D@б@г%Ident!t%IdentC ( GC ( L@ C ( MC ( N@@@@@@3@Bl*@A @@гu!tC ( RC ( S@@ @@@@@@@@@@@C ( * @@(O@@ @@,of_predef_idgD T ZD T f@б@г;!t%Ident*D T i+D T n@ .D T o/D T p@@@@@@310011111@:Z(@A @@г!t>D T t?D T u@@ @@@@@@@@@@@ID T V @@aP@@ @@@)@@@j@.@@@i#intA@@@h@@g@@f@A@+Stdlib__MapA@@&output?@&Stdlib+out_channel@@@e@J@@@d$unitF@@@c@@b@@a@]@\C@@%print@@&Format)formatter@@@`@d@@@_@@@^@@]@@\@u@tD@@@@vus@@@t3@!t@@@[@@@@Zv@@@Y@@X@@W@@s@q4@@@@Vq@@@U@@T@@n@m5@"!@@@S@('@@@Rn@@@Q@@P@@O@@k@i6@he@@@N@;:@@@Me@@@L@@K@@J@@b@a7@|`_@@@I@ON@@@H_@@@G@@F@@E@@^@ӱ#Set8C@#eltAC;@@@Ac!t@@@c@@@@@@@K@A@!tBC;@@@A#Set$Makeu!t@@@b@@@@@@@L@A@%emptyC@@@a@@+Stdlib__SetE@@#addD@2@@@`@@@@_@@@^@@]@@\@@F@@)singletonE@@@@[$@@@Z@@Y@$@#G@@&removeF@"@@@X@4@@@W7@@@V@@U@@T@7@6H@@%unionG@B@@@S@G@@@RJ@@@Q@@P@@O@J@II@@%interH@U@@@N@Z@@@M]@@@L@@K@@J@]@\J@@(disjointI@h@@@I@m@@@H$boolE@@@G@@F@@E@s@rK@@$diffJ@~@@@D@@@@C@@@B@@A@@@@@L@@(cardinalK@@@@?#intA@@@>@@=@@M@@(elementsL@@@@<$listK@@@;@@@:@@9@@N@@'min_eltM@@@@8@@@7@@6@@O@@+min_elt_optN@@@@5&optionL@@@4@@@3@@2@@P@@'max_eltO@@@@1@@@0@@/@@Q@@+max_elt_optP@@@@.#@@@-@@@,@@+@@R@@&chooseQ@@@@*@@@)@@(@@S@@*choose_optR@ @@@'D@@@&@@@%@@$@@T@@$findS@@@@#@!@@@"@@@!@@ @@@$@#U@@(find_optT@"@@@@4@@@o.@@@@@@@@@@@<@;V@@*find_firstU@@<@@@@@@@@@R@@@H@@@@@@@@U@TW@@.find_first_optV@@U@@@@@@@@@k@@@e@@@ @@@ @@ @@ @s@rX@@)find_lastW@@s@@@ @@@@@@@@@@@@@@@@@@Y@@-find_last_optX@@@@@,@@@@@@@@@ݠ@@@@@@@@@@@@Z@@$iterY@@@@@$unitF@@@@@@@@@ @@@@@@@@@[@@$foldZ@@@@@@#acc@`@@@@@@@@@  @@@@@@@@\@@&filter[@@@@@@@@@@@@@@@@@@@@@@@^@@*filter_map\@@@@@A@@@@@@@@@@@@@@@@@@@@@_@@)partition]@@@@@@@@@@@,@@@@3@@@ؠ@8@@@@@@@@@@8@7`@@%split^@6@@@@H@@@@O@@@Р@@@@Ѡ@Z@@@@@@@@@@Z@Ya@@(is_empty_@e@@@@@@@@@i@hb@@#mem`@g@@@@y@@@ @@@@@@@@}@|c@@%equala@@@@@@@@ @@@@@@@@@d@@'compareb@@@@@@@@@@@@@@@@@e@@&subsetc@@@@@@@@H@@@@@@@@@f@@'for_alld@@@@@Y@@@@@@@@@b@@@@@@@@@g@@&existse@@@@@s@@@@@@@@@|@@@@@@@@@h@@'to_listf@@@@V@@@@@@@@@@i@@+to_seq_fromg@@@@@@@@&Stdlib#Seq!t@@@@@@@@@@@@k@@&to_seqh@)@@@#Seq!t&@@@@@@@@@4@3l@@*to_rev_seqi@?@@@/#Seq!t<@@@@@@@@@J@Im@@'add_seqj@B#Seq!tO@@@@@@@b@@@e@@@@@@@@e@dn@@&of_seqk@]#Seq!tj@@@@@@{@@@@@@{@zo@@&outputl@9+out_channel@@@@@@@6@@@@@@@@@M@@%printm@P&Format)formatter@@@@@@@N@@@@@@@@@N@@)to_stringn@@@@&stringQ@@@@@@@O@@'of_listo@$listK@@@~@@@}@@@|@@{@@P@@#mapp@@@@@z@@@y@@x@@@@w@@@v@@u@@t@@Q@@@@u@@@ӱ#Map9C@#keyqC;@@@Ay!t@@@@@@@@@@T@A@!trC;!a@ u@A@A#Map$Make!t@@@ɠI@B@@@@@@U@A@%emptys !a@ s@@@@$@E@@#addt@>@@@@!a@ o@ @@@! @@@@@@@@@@@@F@@+add_to_listu@@@@@!a@ g@8$listK@@@@@@C @@@@@@@@@@@@@g@&G@@&updatev@C@@@@@&optionL!a@ \@@@  @@@@@@m@@@q@@@@@@@@@@@OH@@)singletonw@l@@@@!a@ V@@@@@@@@@dI@@&removex@@@@@!a@ P@@@@@@@@@@@@}J@@%mergey@@@@@@W!a@ E@@@@b!b@ C@@@k!c@ A@@@@@@@@@@Ѡ@@@@נ@@@۠@@@@@@@@@@@K@@%unionz@@@@@@!a@ 5@ @@@@@@@@@@@@@@@@@@@@@@@@@@@$@L@@(cardinal{@!a@ 0@@@@@@@@@8@M@@(bindings|@%!a@ +@@@@$@@@@@@@@@@@@V@N@@+min_binding}@C!a@ %@@@@>@@@@@@@@@o@.O@@/min_binding_opt~@\!a@ @@@ @[@@@@@@@@@@@@@LP@@+max_binding@z!a@ @@@~@u@@@}@@@|@@{@@eQ@@/max_binding_opt@!a@ @@@z@@@@@y@@@x@@@w@@v@@R@@&choose@!a@ @@@u@@@@t@@@s@@r@@S@@*choose_opt@ʠ!a@ @@@qw@@@@p@@@o@@@n@@m@@T@@$find@@@@l@!a@ @@@k@@j@@i@@U@@(find_opt@@@@h@!a@ @@@g @@@f@@e@@d@*@V@@*find_first@@@@@c$boolE@@@b@@a@$!a@ @@@`@@@@_@@@^@@]@@\@P@W@@.find_first_opt@@.@@@[&@@@Z@@Y@H!a@ @@@X@G@@@W@@@V@@@U@@T@@S@y@8X@@)find_last@@W@@@RO@@@Q@@P@q!a@ @@@O@l@@@N@@@M@@L@@K@@\Y@@-find_last_opt@@{@@@Js@@@I@@H@!a@ @@@GB@@@@F@@@E@@@D@@C@@B@@Z@@$iter@@@@@A@!a@ $unitF@@@@@@?@@>@Ơ@@@= @@@<@@;@@:@@[@@$fold@@@@@9@!a@ @#acc@ @@8@@7@@6@@@@5@  @@4@@3@@2@ @\@@#map@@!a@ !b@ @@1@ @@@0 @@@/@@.@@-@&@]@@$mapi@@@@@,@!a@ !b@ @@+@@*@$ @@@)( @@@(@@'@@&@G@^@@&filter@@%@@@%@!a@ #@@@$@@#@@"@E @@@!I@@@ @@@@@h@'_@@*filter_map@@F@@@@!a@ !b@ @@@@@@@@k@@@o@@@@@@@@@M`@@)partition@@l@@@@!a@ j@@@@@@@@ @@@@@@@@@@@@@@@ @@ @@xa@@%split@@@@ @!a@ @@@ @ @@@@b@@@@Ġ@@@ @@@@@@@@b@@(is_empty@Р!a@ @@@@@@@@@@c@@#mem@@@@@!a@ @@@@@@@@@@@ @d@@%equal@@!a@ |@@@@@@@@@ @@@@@@@@@@@@@@@@@ 4@e@@'compare@@!a@ r@ @@@@@@@@/@@@@5@@@ @@@@@@@@@@ X@ f@@'for_all@@6@@@@!a@ h4@@@@@@@@V @@@>@@@@@@@@ y@ 8g@@&exists@@W@@@@!a@ _U@@@@@@@@w @@@_@@@@@@@@ @ Yh@@'to_list@!a@ Y@@@T@@@@ؠ@@@@@@@@@ @ wi@@&to_seq@!a@ S@@@&Stdlib#Seq!t@@@@Ӡ@@@@@@@@@ @ k@@*to_rev_seq@ɠ!a@ M@@@$#Seq!t@@@@Π@@@@@@@@@ @ l@@+to_seq_from@@@@@!a@ F@@@J#Seq!t@@@@Ƞ@@@@@@@@@@@ #@ m@@'add_seq@c#Seq!t@ @@@à@!a@ <@@@@@@' @@@+@@@@@@@@ J@ n@@&of_seq@#Seq!t@1@@@@!a@ 5@@@@@L@@@@@@ k@ *o@@'of_list@@O@@@@!a@ /@@@@@j@@@@@@ @ V@@.disjoint_union"eq&optionL@!a@ !@$boolE@@@@@@@@@@%print@ h&Format)formatter@@@@ c@@@@@@@@@@@)@@@@/@@@3@@@@@@@@@@@@ @ W@@+union_right@!a@ @@@@Ơ @@@ʠ@@@@@@@@ @ X@@*union_left@֠!a@ @@@@ @@@@@@@@@@@ @ Y@@+union_merge@@!a@ @@@@@@ @@@@@@@@@@@@@@@@@ #@ "Z@@&rename@@@@@@@@@@@ @@@@@@@@ :@ 9[@@(map_keys@@@@@@@@@@@1!a@@@@9@@@@@@@@ X@ W\@@$keys@E!a@@@@ !#Set$Make !t@@@@@@ r@ q]@@$data@_!a@@@@ @@@@@~@ @ ^@@&of_set@@e@@@}!a@@@|@ S#Set$Make "!t@@@{@@@z@@y@@x@ @ _@@7transpose_keys_and_data@@@@w@@@v@@@u@@@t@@s@ @ `@@;transpose_keys_and_data_set@@@@r@@@q #Set$Make X!t@@@p@@@o@@n@ @ a@@%print@@ &Format)formatter@@@m@!a@ @@@l@@k@@j@ &Format)formatter@@@i@@@@h @@@g@@f@@e@@d@ @ b@@@@  v@@@ӱ#Tbl:C@#keyC;@@@A !t@@@U@@@@ @@@ h@A@!tC;!a@ @A@A 'Hashtbl$Make !t@@@TO@B@@@ 7@@@ 6i@A@&create@ @@@S&!a@ @@@R@@Q@ L@ 3e@@%clear@!a@ @@@P$unitF@@@O@@N@ b@ If@@%reset@'!a@ @@@M@@@L@@K@ v@ ]g@@$copy@;!a@ @@@JC@@@I@@H@ @ qh@@#add@O!a@ @@@G@@@@F@ F@@@E@@D@@C@@B@ @ i@@&remove@k!a@ @@@A@@@@@_@@@?@@>@@=@ @ j@@$find@!a@ @@@<@5@@@; @@:@@9@ @ k@@(find_opt@!a@ @@@8@J@@@7&optionL@@@6@@5@@4@ @ l@@(find_all@!a@ @@@3@f@@@2$listK@@@1@@0@@/@ @ m@@'replace@Ѡ!a@ @@@.@@@@-@ @@@,@@+@@*@@)@ '@ n@@#mem@!a@ @@@(@@@@' )@@@&@@%@@$@ @@ 'o@@$iter@@@@@#@!a@ @@@"@@!@@ @ @@@@@@@@@@@ a@ Hp@@2filter_map_inplace@@@@@@!a@ @@@@@@@@8@@@#@@@@@@@@ @ jq@@$fold@@@@@@!a@ @#acc@ @@@@@@@[@@@@  @@@@ @@ @ @ r@@&length@i!a@ @@@  @@@ @@ @ @ s@@%stats@}!a@ @@@ *statistics@@@@@@ @ t@@&to_seq@!a@ @@@&Stdlib#Seq!t@Q@@@@@@@@@@@@ @ u@@+to_seq_keys@@@ @@@"#Seq!tl@@@@@@@@@ @ v@@-to_seq_values@Ѡ!a@ @@@=#Seq!t @@@@@@$@ w@@'add_seq@!a@ @@@@W#Seq!t@@@@@@@@@@@@@@@@@@K@2x@@+replace_seq@!a@ @@@@~#Seq!t@@@@@@@@@@@@@@@@@@r@Yy@@&of_seq@#Seq!t@@@@렠@!a@ @@@@@L@@@@@@@zz@@'to_list@X!a@ @@@ @.!t@@@堠@@@@@@@@@@j@@'of_list@ @F!t@@@ᠠ@!a@ @@@@@@@@@@@@k@@&to_map@!a@ @@@#Map$Makek!t@@@@@@@l@@&of_map@#Map$Make~!t!a@ @@@ @@@@@@ @m@@'memoize@Π!a@ @@@@@@@@ @@@@@@@@@@@@@%@$n@@#map@!a@ |@@@@@ !b@ z@@@@@@@@@@A@@o@@@@BAw@@@@zC@ӱTD@SD;@@@AR@@@@@@@Q@@@PA@N@@@@@@@@M@@@@@@@@c@J@H@@@@~G@@@}@@|@o@D@C@@@@{@#@@@zB@@@y@@x@@w@@?@=@<9@@@v@5@@@u8@@@t@@s@@r@@5@4@O32@@@q@H@@@p1@@@o@@n@@m@@0@@@/@@@j.@@@l@4@@@k@@@j@@i@@h@@@@A@@@g@@@f@@e@@@@!N@@@d@'T@@@c@@@b@@a@@`@@@@@@@_@:g@@@^@@@]@@\@@[@@@@@@@Z@N{@@@Y@@@X@@W@@V@@@ӱ-D@,D;@@@A`+@@@t@@@@@@@*A@)D;@@@A('m&@@@s@@@@@@@%A@$@@@r@$@#@!@&@@@q@@@@p@@@o@@n@@m@6@ @@@@@l@@@k@@j@B@@@@@@i@-@@@h0@@@g@@f@@e@S@@@9@@@d@>@@@cA@@@b@@a@@`@d@@@J@@@_@O@@@^R@@@]@@\@@[@u@@@[@@@Z@`@@@Y@@@X@@W@@V@@@@l@@@U@q@@@Tt@@@S@@R@@Q@@@@}@@@P@@@O@@N@@ @ @@@@M @@@L@@@K@@J@@@@@@@I@@@H@@G@@@@@@@F@@@E@@@D@@C@@@@@@@B@@@A@@@@@@@@@@?@@@>@@@=@@<@@@@@@@;@@@:@@9@@@@@@@8@@@7@@@6@@5@@@@@@@4@@@@3@@@2@@1@@0@@@@@@@/@@@@.@@@-@@@,@@+@@*@-@@@@ @@@)@@@(@@'@@@@&@@@%@@$@@#@C@@@@!@@@"@@@!@@ @3@@@/@@@@@@@@@@@]@@@@;@@@@@@@@@M@@@F@@@@@@@@s@@@@Q@@@@@@@@@c@@@_@@@@@@@@ @@ @@@@@k@@@ @@@ @@ @}@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ҡ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@頠@@@@@@@@@@@@@@@@@@@@@@@@@ᠠ@@@@⠠@@@@@@@@@@@%@@@ @@@@@@@@@1@@@ @@@@@@@@@@@@@@@B@@@(@@@@-@@@@@@@@@@@S@@@9@@@@>@@@@@@@@@@@d@@@J@@@@O@@@@@@@@@@@u@@@@S@@@@@@@@@e@@@@@@@@@@@@@@@i@@@@@@@@@{@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@:@@@ @@@@@@@@@F@@@%@@@@@@3@@@@@@V@@@@4@@@7@@@@@@F@@@I@@@@@@@@l@@@@l@@ӱD@D;@@@A@@@@@@@{@@@A@D;~@A@A;zyx@@@wv@@@@@uA@t s@@@@@o@n @)@@@@m@r@@@v@@@@@@@@@@@i@h @@@@@g@(co@@@@@@0`w@@@@@@@@@@@@@@_@^ @3@@@@@]Z@@@V^@@@@@@Od@@@Sh@@@@@@@@@@@U@T @R@@@@SbV@@@@@@@@@O@N@a@@@@qM@@@uQ@@@@@@@@@I@H@@v@@@@GF@@@@BA@@@=<@@@@@@@@@@V@@@@Q@@@L@@@@@@@@@@2@8@7@@@@@@6@82;@@@@@@@@@@A@@@@G@@@àK@@@@@@@@@@U@1@0@͠/@@@+@@@@@@b@*@)@ڠ(@@@$@@@@@5@@@@@@@@y@#@"@!@@@@@@@@+@@@@@@@@@@@@@@@@(@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@ @.@@@@@@@@@@@@@ @@E@@@@B@@@@@@@@@@@@X@@@ @X@@@@@@@@@@@~@@ @ @d@@@}@t @@@| @@{@@z@@ @ @s@@@y@ @@@x  @@@w@@v@@u@@ @ @@@@@t @@@s@@r@ @@@q@@@@p@ @@o@@n@@m@6@ @ @@@@@l @@@k@@j@ @@@i ߠ@@@@h@ @@g@@@f@@e@@d@W@ @ @@@@@c @@@b@@a@٠ @@@`@@@@_@ @@^@@]@@\@t@ @ @@@@@[ @@@Z@@Y@ @@@X Р@@@@W@ @@V@@@U@@T@@S@@ @ @@@@@R@  @@@Q@@P@@O@ @@@N @@@M@@L@@K@@ @  @@@@@J@ @  @@I@@H@@G@1 @@@F@  @@E@@D@@C@@ @ !@@  @@B@A @@@AE @@@@@@?@@>@@ @ "@@F@@@=@  @@<@@;@X @@@:\ @@@9@@8@@7@@ @ #@@]@@@6@  @@@5@@4@@3@r @@@2v @@@1@@0@@/@@ @ $@@w@@@.@   @@@-@@,@@+@ @@@* @@@)@@(@@'@#@ @ %@@@@@&@  @@@%@@$@@#@ @@@"@ @@@ @ @@@!@@@@@@@G@ @ &@@@@@Ġ @@@@̠ @@@@  @@@@ؠ @@@@@@@@@@j@ @ '@ @@@ @@@@@@w@ @ (@@@@@ ~@@@ z@@@@@@@ @@ y@ x)@@ w@ y s@@@ @@ @@ @  @@@ @ @@@ r@@@@@@@@@@@ q@ p*@@ o@ q k@@@@@@@@& y@@@@, @@@ j@@@@@@@@@@@ i@ h+@@0@@@@ g c@@@@@@@@E o@@@ b@@@@@@@@@ a@ `,@@I@@@@ _ [@@@@@@@@^ g@@@ Z@@@@@@@@@ Y@ X-@k W@@@ S@k@@@頠@ d@@@@@@@@ @ R@ Q.@ P@@@ L I H@@@@䠠@ _@@@@@@@@#@ G@ F/@ E@@@ e A @@@@@ߠ@ T@@@@@@@@<@ ?@ >0@@@@@ =@@@  9 8@@@@٠@ L@@@@@@@@@@Z@ 7@ 61@  5 4@@@@Ԡ@ 3@@@@@@ 9@@@ =@@@@@@@@y@ /@ .2@  - ,@@@@͠@ +@@@@@ /@@@@@@@ '@ &3@ %@@@@Ƞ@ $@@@@@ (@@@@@@@ @ 4  @ @  @@@@@@@@@@  )@x  @@@@ - @@@@@@@@@@@@ 6@@@@F <@@@J @@@@@@@@@@@@@@ @ 5@T @@@@Z @@@^ @@@@@@@@@ @ 6@h @@@@n @@@r @@@@@@@@@ @ 7@@ @  @@@@@ @@@@ @@@ @@@@@@@@@@@ @ 8@@@@@@@@@@@@@@@@@@@3@ @ 9@@@@@@@@@@@ @@@ @@@@@@@@K@ @ :@à @@@   @@@@@@\@ @ ;@Ԡ @@@  @@@@@@j@ @ <@@@@@ @@@0   @@@ @@@@@@@@@ @ =@@@@@@@@@@@@@@@@@ @ >@@@@@@@_   @@@@@@@@@@ @ ?@@m  @@@~@  @@@}@@|@@{@y  @@@z@; @@@y @@@x@@w@@v@@u@@ @@@ @@ӱ D@ @D;@@@A 0 @@@f@@@@@@@ A@ AD; @A@A   >  @@@e  @@@@@ A@ B@ @@@d @@@c@@b@@ @ C@  @@@a @@@`@@_@ @ @ D@ @@@^ @@@]@@\@@ @ E@% @@@[) @@@Z@@Y@$@ @ F@3 @@@X@\@@@W@  @@@V@@U@@T@@S@9@ @ G@H @@@R@@@@Q @@@P@@O@@N@K@ @ H@Z @@@M@'@@@L @@K@@J@Z@ @ I@i @@@I@6@@@H  @@@G@@F@@E@m@ }@ |J@| {@@@D@I@@@C w @@@B@@A@@@@@ t@ sK@ r@@@?@\@@@>@ z n@@@=@@<@@;@@:@@ m@ lL@ k@@@9@p@@@8 g@@@7@@6@@5@@ f@ eM@@~@@@4@ d `@@@3@@2@@1@ l@@@0 _@@@/@@.@@-@@ ^@ ]N@@@@@,@ \ X _@@@+@@*@@)@۠ e@@@( W@@@'@@&@@%@@ V@ UO@@@@@$@ T@ P P@@#@@"@@!@ [@@@ @ X X@@@@@@@@ L@ KP@ J@@@ F@@@@@@@ E@ DQ@  C@@@ ? =@@@@@@ @ <@ ;R@ :@@@ 6 3 2@@@@@ I@@@@@@@@$@ 1@ 0S@3 /@@@ O - ,@@@@@@@@@7@ +@ *T@F )@@@  b % $ /@@@ @@ @G@ #@ "U@V !@@@ @ t  @,@@@ @ 2@@@@@ @@@@@@@@e@ @ V@t @@@@   @J@@@@ )@@@@@ @@@@@@@@@ @ W@   @b@@@@ @@@@@ @@@@@@@ @ X@ @@@ @  @@@@ @@@@@@@@@ @ Y@ @  @@@@ @@@@@Ѡ @@@@@@@ @ Z@۠ @@@   .  @@@@@@@ @ [@   <  @@@ @@@@@@@ @ \@ @@@@@@@@ @@@@@@ @@@@@@@@ @ ]@ @@@@@  @@ @@@@@@@@@ @@@ @@@I  7@@Q8@@}wA@@|:@3@@@@   r f T B /Ġa@3@ðr @  A@  @  @  @  @  @@@J       o n \ [ H@ G FA@ ? >A@ 4 3@ . -@  @  @  @  @  @  @  @  @  @  @  @  @  @ w v@ i h@ Z Y@ G F@ 3 2@  @  @  @  @  @  @  @  @ c b@ Y X@ J I@ ; :@ , +@  @  @@@@@@@@}|@lk@ba@TS@@@>@=@=@@@A@#==!V;@:@@@>@@A@:@@3!!!!!!!!@!@}A@@@@9@@@@ @  A@  @  @  @  @  @@@?@@  @  @ } |@ l k@ [ Z@ I@ H GA@ @ ?A@ 5 4@ / .@  @  @  @  @  @  @  @  @  @  @  @  @  @ x w@ j i@ [ Z@ H G@ 4 3@  @  @  @  @  @  @  @  @ d c@ Z Y@ K J@ < ;@ - ,@  @  @  @  @  @  @  @  @  @ ~ }@ m l@ c b@ U T@@@@@ A@ @ ?A@ 8 7A@ + *@ $ #@  @  @  @  @  @  @ p o@ e d@ P O@ ? >@ * )@  @  @@@@@@@kj@LK@54@ @@@@@@@|{@lk@RQ@87@! @  @@@@@@wv@ba@10@@  @@@@@@@@sr@@@#@@S@RQA@JIA@=<@10@&%@@@@@@@@@@@lk@WV@LK@@?@)(@@  @@@@@@~@on@[Z@@@c!@@@"_@@@@@@ @A@)to_stringi"cX"dX@б@г!t"nX"oX@@ @@@m3"p"o"o"p"p"p"p"p@k@A@@г"G&string"}X"~X@@ @@@n@@@@@o@@@"X @@"_@@ @@3can_appear_in_typesj"[!"[4@б@г$!t"[7"[8@@ @@@p3""""""""@1F@A@@г"k$bool"[<"[@@@ @@@q@@@@@r@@@"[ @j D Whether the name of a component of that kind can appear in a type. "Z"Z@@@@@@@"`@@@{"ِ@@@@@@1@`ZA@yR@K$@@3""""""""@8M&@A 3""""""""@@A"L "\AD@@@"L  @@$ItemG"b>E"b>I@#r@@БA+!tlH"cPW"cPX@@;@@@A@"@@@t@!t@@@|@@}@@@@#cPR#cPx@@@@#,b@@@AВ@г&string#!cP[#"cPa@@3# ### # # # # @@A@@x@@@M5;@@@A=@@@@s@@@@%@@@"@A@@@г.2Sig_component_kind#BcPd#CcPv@5#FcPw3@4@@<%5@@@G&)6@@8@@3#G#F#F#G#G#G#G#G@&@A98@$namem#Tdy#Udy@б@гb!t#_dy#`dy@@ @@@3#a#`#`#a#a#a#a#a@Amg@A@@г#8&string#ndy#ody@@ @@@@@@@@@@@#ydy{ @@#c@@ @@$kindn#e#e@б@г!t#e#e@@ @@@3########@1F@A@@г5!t2Sig_component_kind#e#e@ #e#e@@@@@@ @@@@@! @@@#e @@#d@@@@!$makeo#g#g@б@г#&string#g#g@@ @@@3########@:O@A@@б@гp!t2Sig_component_kind#g#g@ #g#g@@@@@@ @@г!t#g#g@@ @@@'@@@@@*@@@0@@-3 @@@#g@@$e@@@@3%valuep$i$ i@б@г!(!t%Ident$i$i@ $i$i@@@@@@3$$$$$$$$@Uj(@A @@г.!t$+i$,i@@ @@@@@@@@@@@$6i @@$Nf@@ @@%type_q$Aj $Bj@б@г!a!t%Ident$Pj$Qj@ $Tj$Uj@@@@@@3$W$V$V$W$W$W$W$W@:X(@A @@гg!t$dj $ej!@@ @@@@@@@@@@@$oj  @@$g@@ @@&constrr$zk"(${k".@б@г!!t%Ident$k"1$k"6@ $k"7$k"8@@@@@@3$$$$$$$$@:X(@A @@г!t$k"<$k"=@@ @@@@@@@@@@@$k"$ @@$h@@ @@%labels$l>D$l>I@б@г!!t%Ident$l>L$l>Q@ $l>R$l>S@@@@@@3$$$$$$$$@:X(@A @@г٠!t$l>W$l>X@@ @@@@@@@@@@@$l>@ @@$i@@ @@'module_t$mY_$mYf@б@г" !t%Ident$mYi$mYn@ $mYo%mYp@@@@@@3%%%%%%%%@:X(@A @@г!t%mYt%mYu@@ @@@@@@@@@@@%mY[ @@%2j@@ @@+module_typeu%%nv|%&nv@б@г"E!t%Ident%4nv%5nv@ %8nv%9nv@@@@@@3%;%:%:%;%;%;%;%;@:X(@A @@гK!t%Hnv%Inv@@ @@@@@@@@@@@%Snvx @@%kk@@ @@5extension_constructorv%^o%_o@б@г"~!t%Ident%mo%no@ %qo%ro@@@@@@3%t%s%s%t%t%t%t%t@:X(@A @@г!t%o%o@@ @@@@@@@@@@@%o @@%l@@ @@&class_w%p%p@б@г"!t%Ident%p%p@ %p%p@@@@@@3%%%%%%%%@:X(@A @@г!t%p%p@@ @@@@@@@@@@@%p @@%m@@ @@*class_typex%q%q@б@г"!t%Ident%q%q@ %q%q@@@@@@3%%%%%%%%@:X(@A @@г!t%q%q@@ @@@@@@@@@@@%q @@&n@@ @@%print& s& s @б@г$&Format)formatter&s &s@ &s&s@@@@@@3&&&&&&&&@:X(@A @@б@г1!t&.s!&/s"@@ @@@@@г%蠐$unit&;s&&<s*@@ @@@@@@@@!@@@'@@$/ @@@&Is@@&ao@@@@*#MapI&Vu,5&Wu,8@&oq@@УР$#Map!S&fu,;&gu,>@ &ju,?&ku,@@@3&k&j&j&k&k&k&k&k@Mk)@A @@#key(@#key&zu,K&{u,N@+ @;@@@A@@@ @@@@&u,F&u,R@@@@&p@@@Aг !t&u,Q @@$ @@ @@"VJ;@@@A@@@"D@@@@@@@A@!tWJ;!a@ @A@A@I@B@@@'map.mliI V ZI V e@@@@+Stdlib__MapD@A@%emptyX!a@ @@@"C@L  L  @@E@@#addY@6@@@"B@!a@ @  @@@"A$ @@@"@@@"?@@">@@"=@3O  4O  @@2F@@+add_to_listZ@@@@"<@!a@ @>$listK@@@";@@@":I @@@"9@@@"8@@"7@@"6@@"5@]X  ^X  @@\G@@&update[@I@@@"4@@&optionL!a@@@@"3  @@@"2@@"1@v@@@"0z@@@"/@@".@@"-@@",@^^@@H@@)singleton\@u@@@"+@!a@@@@"*@@")@@"(@jW[jW{@@I@@&remove]@@@@"'@!a@@@@"&@@@"%@@"$@@"#@oo@@J@@%merge^@@@@@""@`!a@@@@"!@k!b@@@@" t!c@@@@"@@"@@"@@"@@@@"@@@@"@@@"@@"@@"@@"@vY]x@@K@@%union_@@@@@"@!a@@ @@@"@@"@@"@@"@@@@"@@@@"@@@"@@" @@" @@" @)fj*f@@(L@@(cardinal`@)!a@@@@" #intA@@@" @@"@BC@@AM@@(bindingsa@B!a@@@@" @>@@@"@@@"@@@"@@"@c8<d8a@@bN@@+min_bindingb@c!a@@@@"@[@@@"@@@"@@!@bfb@@~O@@/min_binding_optc@!a@@@@!#@{@@@!@@@!@@@!@@!@JNJ|@@P@@+max_bindingd@!a@@@@!@@@@!@@@!@@!@484[@@Q@@/max_binding_opte@!a@@@@!`@@@@!@@@!@@@!@@!@ @@R@@&choosef@ݠ!a@@@@!@@@@!@@@!@@!@@@S@@*choose_optg@!a@@@@!@@@@!렠@@@!@@@!@@!@@@T@@$findh@@@@!@!a@@@@!@@!@@!@23@@1U@@(find_opti@@@@!@7!a@@@@!۠ @@@!@@!@@!@OIMPIs@@NV@@*find_firstj@@=@@@!$boolE@@@!@@!@\!a@@@@!@T@@@!ڠ@@@!@@!@@!@x  y  D@@wW@@.find_first_optk@@f@@@!)@@@!@@!@!a@@@@!'@@@@!Ҡ@@@!@@@!@@!@@!@"*"."*"l@@X@@)find_lastl@@@@@!U@@@!@@!@!a@@@@!@@@@!ɠ@@@!@@!@@!@#_#c#_#@@Y@@-find_last_optm@@@@@!|@@@!@@!@֠!a@{@@@!z@@@@!@@@!@@@!@@!@@!@$y$}$y$@@Z@@$itern@@@@@!@!a@q$unitF@@@!@@!@@!@ @@@! @@@!@@!@@!@%%%& @@[@@$foldo@@ @@@!@!a@h@#acc@f@@!@@!@@!@0@@@!@  @@!@@!@@!@A'%')B'3'l@@@\@@#mapp@@!a@a!b@_@@!@M @@@!Q @@@!@@!@@!@`(e(ia(e(@@_]@@$mapiq@@N@@@!@!a@X!b@V@@!@@!@q @@@!u @@@!@@!@@!@))))@@^@@&filterr@@r@@@!@!a@M;@@@!@@!@@!@ @@@!@@@!@@!@@!@****@@_@@*filter_maps@@@@@!@!a@EO!b@C@@@!@@!@@!@@@@! @@@!@@!@@!@ ,, ,,?@@`@@)partitiont@@@@@!@!a@9@@@!@@!@@!@ @@@!@@@@!@@@@!@@!@@!@@!@.../%@@a@@%splitu@@@@!@!a@0@@@!@ @@@!@@@@!@@@@!@@!@@!@@!@,$0'0+-$0'0\@@+b@@(is_emptyv@,!a@+@@@!~@@@!}@@!|@C022!D022;@@Bc@@#memw@/@@@!{@H!a@&@@@!z@@@!y@@!x@@!w@_32l2p`32l2@@^d@@%equalx@@!a@@@@@!v@@!u@@!t@m@@@!s@s@@@!r#@@@!q@@!p@@!o@@!n@722723-@@e@@'comparey@@!a@@]@@@!m@@!l@@!k@@@@!j@@@@!im@@@!h@@!g@@!f@@!e@=4(4,=4(4a@@f@@'for_allz@@@@@!d@!a@ d@@@!c@@!b@@!a@ @@@!`n@@@!_@@!^@@!]@A45A450@@g@@&exists{@@@@@!\@!a@@@@![@@!Z@@!Y@ @@@!X@@@!W@@!V@@!U@F55F55@@h@@'to_list|@!a@@@@!T@@@@!S@@@!R@@@!Q@@!P@M6~6M6~6@@i@@'of_list}@ՠ@ @@@!O@!a@@@!N@@@!M(@@@!L@@!K@7Q668Q67@@6j@@&to_seq~@7!a@@@@!J&Stdlib#Seq!t@9@@@!I@@@!H@@@!G@@!F@^W77_W77@@]k@@*to_rev_seq@^!a@@@@!E'#Seq!t@]@@@!D@@@!C@@@!B@@!A@[8A8E[8A8n@@l@@+to_seq_from@n@@@!@@!a@@@@!?P#Seq!t@@@@!>@@@!=@@@!<@@!;@@!:@_88_88@@m@@'add_seq@l#Seq!t@@@@!9@!a@@@!8@@@!7@  @@@!6Ơ@@@!5@@!4@@!3@d99d99@@n@@&of_seq@#Seq!t@@@@!2@!a@@@!1@@@!0@@@!/@@!.@h::h::>@@o@@@9B @@@,u,."@<#@@  A@ _ 8@ 1 @@@zJ@C@ @@n@g7@0@@@x@7@"r@@@3,,,,,,,,@]{@:9A@31A@" @@@@@@sq@64@  @@@@@@ca@IG@*(@@@@@@YW@53@@@@@@_]@42@@@@@@wu@XV@97@@@@@@@@A~3-&-%-%-&-&-&-&-&@ @A-+b>L-,vSV@@ -= Shape's items are elements of a structure or, in the case of constructors and labels, elements of a record or variants definition seen as a structure. These structures model module components and nested types' constructors and labels. -:^FF-;a1=@@@@@@@-=b>>@@A+#varK-HxX]-IxX`@@;@@ KA*h!t@@@"F@@@@-SxXX-TxXj@@@@-ls@@@Aг %Ident-_xXc-`xXh@-cxXi@@@3-b-a-a-b-b-b-b-b@ C @ s mA@  @  @  w@ p @@ 9 @ @@d@]-@&@@@?@7@A@A@@@@@_]@IG@/-@@@@@wu@XV@><@@@@@@@db@?=@@@@@@nl@GE@@@@@@wu@US@31@@@@@@_]@@@<@@@ @@@@@@ ;@@@A@@@"K@"E@@@@@@@@A@@@@3--------@@A@A+!tL.ykp.ykq@@;@@#uid@@-q,!t@@@"}@@@".ykv.yk@@.0w@$desc@@$descL@@@".%yk.&yk@@.>x@,approximated@@-@@@".1yk.2yk@@.Jy@@@A@@@@@.5ykk.6yk@@@@.Nt@@#22&.=yky@%@@Ш@г5&option.Fyk.Gyk@г:#Uid.Qyk{.Ryk~@A.Uyk.Vyk@@@I3.U.T.T.U.U.U.U.U@];@@@A@@@@@*@@@'=;@@@A@@@@@.az.bJ]@@@@.zu@@A@@@Z @@]@@"@R@#NNG.lyk@F@@Ш@гQ$desc.uyk.vyk@@Y@@\@@""@V@#RRM.~yk@L@@Ш@гU$bool.ykV@@\0W@@_@@"3@[@@A@W@+ll.z.z@@;@@#VarX@@@"@@.{.{@@.z@#Absf@@@"@@@"@@.|.|@@.{@#App@@@"@@@"@@.}.}@@.|@&Struct #Map!t@@@#@@@#@@.~.~@@.}@%Alias@@@#@@..@@/~@$Leaf@@..@@/ @$Proj@@@#֠ !t@@@#@@//1@@/ @@)Comp_unit.@@@#@@/24/2I@@/.A@%Error.@@@#@@/#JL@@/;B@@@A@@@@@@@@@#/*{/+{@@г#var/4{@@ݰ@@@@@#/:|/;|@@г#var/D|/E|@@@@г!t/N|@@@@@@@#/T}/U}@@г!t/^}/_}@@@@г!t/h}@@@@@@@#/n~/o~@@г$Item/|~/}~@/~/~@@/~@ @г!t/~/~@@8@@@9@@@@@#// @@г!t/@@I@@@@@#/@@@@@#//#@@г!t/'/(@@`@@г$Item/+//@/0@@@p@@@@@#/26/2?@@г&string/2C@@@@@@@#/JN/JS@@гà&string/JW@@@@@@@@A@@@3////////@@A@%print/_c/_h@б@г.&Format)formatter0_k0_q@ 0_r0_{@@@@@@$30 000 0 0 0 0 @~ @A @@б@г!t0_0_@@ @@@$@@г/Ӡ$unit0&_0'_@@ @@@$@@@@@$"@@@(@@$%0 @@@04__@@0LC@@@@+2strip_head_aliases0?0@@б@гG!t0J0K@@ @@@$30L0K0K0L0L0L0L0L@Db@A@@гV!t0Y0Z@@ @@@$@@@@@$@@@0d @@0|D@@ @@9for_unnamed_functor_param0o0p@г0#var0x0y@@ @@@$30z0y0y0z0z0z0z0z@/D@A@@@0 @@0E@@ @@)fresh_var00@б$nameг0d&string00@@ @@@$300000000@#6!@A@@б@г/,!t#Uid0 0 @ 0 0@@@@@@$ @@В@г}#var00@@ @@@$+@@@гѠ!t00@@ @@@$:@@@@@ @@$A @@@- @@$D5@@U0LN@@@$ @@$L0@@ @0@@1F@@@@S#var00"@б@г/!t#Uid1 %1 (@ 1 )1*@@@@@@$311111111@u(@A @@б@г.4!t%Ident1#.1$3@ 1'41(5@@@@@@$  @@г2!t15916:@@ @@@$!'@@@@@$"*@@@0@@$#-8 @@@1C@@1[G@@@@3#abs1N;?1O;B@б#uidг/!t#Uid1_;J1`;M@ 1c;N1d;O@@@@@@$$31f1e1e1f1f1f1f1f@Wu*@A @@б@г-#var1u;S1v;V@@ @@@$%@@б@г!t1;Z1;[@@ @@@$& @@г!t1;_1;`@@ @@@$'-@@@@@$(0@@@%@@$)3( @@M<@@@$* @@$+:1;E@@ @1;;@@1H@@@@A#app1ae1ah@б#uidг0@!t#Uid1ap1as@ 1at1au@@@@@@$,311111111@e*@A @@б@г֠!t1ay1az@@ @@@$-@@б#argг砐!t1a1a@@ @@@$."@@г!t1a1a@@ @@@$//@@@@$022a~ @@@(@@$16+ @@P ?@@@$2 @@$3=2 ak@@ @2aa@@2&I@@@@D#str22@б#uidг0!t#Uid2*2+@ 2.2/@@@@@@$432120202121212121@h*@A @@б@гU#Map!t$Item2H2I@ 2L2M@@2Q2R@ @гY!t2\2]@@ @@@$5-@@@)@@@$72 @@гk!t2n2o@@ @@@$8?@@@@@$9B@@\K@@@$: @@$;I2~@@ @2@@2J@@@@P%alias22@б#uidг1!t#Uid22@ 22@@@@@@$<322222222@t*@A @@б@г!t22@@ @@@$=@@г!t22@@ @@@$>@@@@@$?!@@;*@@@$@ @@$A(2@@ @2@@2K@@@@/$proj22@б#uidг1l!t#Uid22@ 22@@@@@@$B322222222@Ss*@A @@б@г!t33@@ @@@$C@@б@г(!t$Item33@ 33@@@@@@$D) @@г'!t3*3+@@ @@@$E6@@@@@$F9@@@.@@$G<1 @@VRE@@@$H @@$IC3=@@ @3@@@3XL@@@@J$leaf3K3L@б@г1!t#Uid3Z 3[ @ 3^ 3_@@@@@@$J33a3`3`3a3a3a3a3a@l(@A @@гk!t3n3o@@ @@@$K@@@@@$L@@@3y @@3M@@ @@-decompose_abs33&@б@г!t3)3*@@ @@@$M333333333@1O@A@@г2&option383>@В@гd#var3/32@@ @@@$N@@@г!t3536@@ @@@$O,@@@@@ @@$P3 @@@1 @@@$R83./@@@?@@$S<B2@@@35@@3N@@7@@B3for_persistent_unit3@D3@W@б@г3&string3@Z3@`@@ @@@$T333333333@[p@A@@г!t3@d3@e@@ @@@$U@@@@@$V@@@4@@ @@4O@@ @@/leaf_for_unpack4fj4fy@г!t4f|4f}@@ @@@$W344444444@/D@A@@@4!ff @@49P@@ @@#MapM4.4/@4Gg@@БA+%shapeN4=4>@@;@@@AE@@@$Y@@@@4F4G@@@@4_Q@@@Aг !t4P @@34N4M4M4N4N4N4N4N@7J5;@@@A#@@@$^@$X@@@@@@@@A@@@@34[4Z4Z4[4[4[4[4[@ @A@@+!tO4i4j@@;@@lA#Map!ty@@@$`@@@$b@@@@4{4|@@@@4R@@@Aг$Item44@44@@4@ @г !t44@@(344444444@Lf`@A@@@3%@@'@@'&@%empty44@гJ!t44@@ @@@$l344444444@UO@A@@@4 @@4S@@ @@#add44@б@гj!t44@@ @@@$m344444444@!4@A@@б@г!t$Item44@ 44@@@@@@$n @@б@г%shape44@@ @@@$o)@@г!t5 5 @@ @@@$p6@@@@@$q9@@@%@@$r<- @@@B@@$s?E@@@5@@52T@@@@E)add_value5%5&@б@гǠ!t50 51 @@ @@@$t35251515252525252@^s@A@@б@г2V!t%Ident5E5F@ 5I5J@@@@@@$u @@б@г3!t#Uid5]5^@ 5a5b @@@@@@$v2 @@г!t5o$5p%@@ @@@$w?@@@@@$xB@@@.@@$yE6 @@@K@@$zHN@@@5@@5U@@@@N.add_value_proj5&,5&:@б@г-!t5&=5&>@@ @@@${355555555@g|@A@@б@г2!t%Ident5&B5&G@ 5&H5&I@@@@@@$| @@б@г%shape5&M5&R@@ @@@$})@@гc!t5&V5&W@@ @@@$~6@@@@@$9@@@%@@$<- @@@B@@$?E@@@5&(@@5V@@@@E(add_type5Y_5Yg@б@г!t5Yj5Yk@@ @@@$355555555@^s@A@@б@г3!t%Ident6Yo6 Yt@ 6 Yu6 Yv@@@@@@$ @@б@гߠ%shape6Yz6Y@@ @@@$)@@г!t6)Y6*Y@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@6:Y[@@6RW@@@@E-add_type_proj6E6F@б@г砐!t6P6Q@@ @@@$36R6Q6Q6R6R6R6R6R@^s@A@@б@г3v!t%Ident6e6f@ 6i6j@@@@@@$ @@б@г<%shape6y6z@@ @@@$)@@г!t66@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@6@@6X@@@@E*add_constr66@б@гD!t66@@ @@@$366666666@^s@A@@б@г3!t%Ident66@ 66@@@@@@$ @@б@г%shape66@@ @@@$)@@гz!t66@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@6@@7 Y@@@@E/add_constr_proj67@б@г!t7 7 @@ @@@$37 7 7 7 7 7 7 7 @^s@A@@б@г40!t%Ident77 @ 7#7$ @@@@@@$ @@б@г%shape73 74@@ @@@$)@@гנ!t7@7A@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@7Q@@7iZ@@@@E)add_label7\7](@б@г!t7g+7h,@@ @@@$37i7h7h7i7i7i7i7i@^s@A@@б@г4!t%Ident7|07}5@ 7677@@@@@@$ @@б@г6!t#Uid7;7>@ 7?7@@@@@@@$2 @@г=!t7D7E@@ @@@$?@@@@@$B@@@.@@$E6 @@@K@@$HN@@@7@@7[@@@@N.add_label_proj7FL7FZ@б@гd!t7F]7F^@@ @@@$377777777@g|@A@@б@г4!t%Ident7Fb7Fg@ 7Fh7Fi@@@@@@$ @@б@г%shape7Fm7Fr@@ @@@$)@@г!t8Fv8Fw@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@8FH@@8,\@@@@E*add_module8y8 y@б@г!t8*y8+y@@ @@@$38,8+8+8,8,8,8,8,@^s@A@@б@г5P!t%Ident8?y8@y@ 8Cy8Dy@@@@@@$ @@б@г%shape8Sy8Ty@@ @@@$)@@г!t8`y8ay@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@8qy{@@8]@@@@E/add_module_proj8|8}@б@г!t88@@ @@@$388888888@^s@A@@б@г5!t%Ident88@ 88@@@@@@$ @@б@гs%shape88@@ @@@$)@@гT!t88@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@8@@8^@@@@E/add_module_type88@б@г{!t88@@ @@@$388888888@^s@A@@б@г6 !t%Ident88@ 88@@@@@@$ @@б@г7!t#Uid99@ 99@@@@@@$2 @@г!t9# 9$ @@ @@@$?@@@@@$B@@@.@@$E6 @@@K@@$HN@@@94@@9L_@@@@N4add_module_type_proj9?9@(@б@г᠐!t9J+9K,@@ @@@$39L9K9K9L9L9L9L9L@g|@A@@б@г6p!t%Ident9_09`5@ 9c69d7@@@@@@$ @@б@г6%shape9s;9t@@@ @@@$)@@г!t9D9E@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@9@@9`@@@@E+add_extcons9GM9GX@б@г>!t9G[9G\@@ @@@$399999999@^s@A@@б@г6!t%Ident9G`9Ge@ 9Gf9Gg@@@@@@$ @@б@г%shape9Gk9Gp@@ @@@$)@@гt!t9Gt9Gu@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@9GI@@:a@@@@E0add_extcons_proj9v|9v@б@г!t:v:v@@ @@@$3::::::::@^s@A@@б@г7*!t%Ident:v:v@ :v:v@@@@@@$ @@б@г%shape:-v:.v@@ @@@$)@@гѠ!t::v:;v@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@:Kvx@@:cb@@@@E)add_class:V:W@б@г!t:a:b@@ @@@$3:c:b:b:c:c:c:c:c@^s@A@@б@г7!t%Ident:v:w@ :z:{@@@@@@$ @@б@г9 !t#Uid::@ ::@@@@@@$2 @@г7!t::@@ @@@$?@@@@@$B@@@.@@$E6 @@@K@@$HN@@@:@@:c@@@@N.add_class_proj::@б@г^!t::@@ @@@$3::::::::@g|@A@@б@г7!t%Ident::@ ::@@@@@@$ @@б@г%shape::@@ @@@$)@@г!t:: @@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@;@@;&d@@@@E.add_class_type; ; @б@г!t;$ ";% #@@ @@@$3;&;%;%;&;&;&;&;&@^s@A@@б@г8J!t%Ident;9 ';: ,@ ;= -;> .@@@@@@$ @@б@г9!t#Uid;Q 2;R 5@ ;U 6;V 7@@@@@@$2 @@г!t;c ;;d <@@ @@@$?@@@@@$B@@@.@@$E6 @@@K@@$HN@@@;t  @@;e@@@@N3add_class_type_proj;=C;=V@б@г!!t;=Y;=Z@@ @@@$3;;;;;;;;@g|@A@@б@г8!t%Ident;=^;=c@ ;=d;=e@@@@@@$ @@б@гv%shape;=i;=n@@ @@@$)@@гW!t;=r;=s@@ @@@$6@@@@@$9@@@%@@$<- @@@B@@$?E@@@;=?@@;f@@@@E@A@sm@@4@@`@Y@@O@H@@5@.@@x$@@e@^ @@K@D@@1@@3;;;;;;;;@r3@A/3<;;<<<<<@@A<<tw@@@<@@)dummy_mod<y}<y@г!t<y<y@@ @@@$3<<<<<<<<@@A@@@o@h@ @U@N@@D@=@@~*@#@t@m@ @Z@S@@@@9@@@@I @A65@@5@8>9 =/builds/workspace/precheck/flambda/false/label/ocaml-linux-32 >10/.-,+*)('&%$#"! @@0V ΅k|V3>S>R>R>S>S>S>S>S@>Q@@8CamlinternalFormatBasics0%FU(Q/Tu*Format_doc0]mWϓ:Mݠ;t0">WA+9*X,Identifiable0 {d\FX'`0Y2kf֯J._Ϡ>0oNՄBH&Stdlib0Lku]8_٠.Stdlib__Buffer08APF< t..Stdlib__Domain0:M;׉<O$Ġ.Stdlib__Either0Vy`u~c à.Stdlib__Format0ܚ#G7m|/Stdlib__Hashtbl0ѱN][/!+Stdlib__Map0L5xE|O0~,J-+Stdlib__Seq0nwzG&amg+Stdlib__Set0\$;7 -Stdlib__Uchar056uf4[_