Caml1999T031r(</Signature_group*ocaml.text&_none_@@A 1 Fold on a signature by syntactic group of items 9typing/signature_group.mlP77P7m@@@@@@0@@@@@@%arrayH8@@M@A@A@@@@@@8@@@$boolE8@@%false^@@B@$true_@@H@@@A@@@@@I@A@$charB8@@@A@@@@@M@A@#exnG8@@AA@@@@@Q@@@5extension_constructorP8@@@A@@@@@U@@@%floatD8@@@A@@@@@Y@@@*floatarrayQ8@@@A@@@@@]@@@#intA8@@@A@@@@@a@A@%int32L8@@@A@@@@@e@@@%int64M8@@@A@@@@@i@@@&lazy_tN8@@O@A@A@Y@@@@@r@@@$listI8@@P@A"[]a@@@"::b@@@Q@@@ @@A@Y@@@@@@@@)nativeintK8@@@A@@@@@@@@&optionJ8@@S@A$Nonec@@@$Somed@@@@@A@Y@@@@@@@@&stringO8@@@A@@@@@@@@$unitF8@@"()`@@@@@A@@@@@@A@ .Assert_failure\ p@@@@Jm@@@@@@V@@A͠=ocaml.warn_on_literal_patternѐ@@0Division_by_zeroY @@@Aנ  @+End_of_fileX !@@@Aߠ@'FailureU )@%@@A蠰@0Invalid_argumentT 2@.@@A񠰠$#@-Match_failureR ;@:67@@\@@A21@ )Not_foundV I@@@A: 9 @-Out_of_memoryS Q@@@ABA@.Stack_overflowZ Y@@@AJI@.Sys_blocked_io[ a@@@AR"Q"@)Sys_errorW i@e@@A([+Z+@:Undefined_recursive_module] r@qmn@@c@@A6i9h9@ %bytesC8@@@A@@@@@=@@@&Stdlib@@A((sig_item A>T?T@@8@@#srcv@%Types.signature_item@@@ OVPV @@gB+post_ghostsw@.signature_item@@@ @@@ bW cX8i@)ocaml.doct ' ghost classes types are post-declared qX8<rX8h@@@@@@@C@@A@@@@@uTvYjm@ e Classes and class types generate ghosts signature items, we group them together before printing RooS@@@@@@@@@@@DD;V@@Ш@гG%TypesGVV @@P0@^8@@@A@@@@@%"@@@@@@V@C@ @N@JJ>W @@Ш@гM$listW 3W 7@гR%TypesTW W 2@@[@@@`  @@c@C@ #@XU@A@EB@ED@@ࠠ'flattenxZnrZny@@@@@@@ ,B@ p@@@ 'B@ !@@@ #B@ @@ B@ 0@@@@@!xzZnzZn{@@@!0@-ZnnZn@@@@@ภ"::ZnZn@8(@@R@B@AA@A @@ఐ$!x Zn~ Zn@A@!@#E@@C0        @#/@@@#srcZnZn@,J@@@ @@,@A@A@A@̰@@D@ఐB!x(Zn)Zn@@@_@+post_ghosts/Zn>@ ?@@`@@B@ %B@ -B@ **@@0H@@hB@ -@@ASKA@@sm@@ /0<;;<<<<<@R@@@@P@PO@cA(.core_rec_group{BJ\K\@@8@@'Not_rec|@@@ 0@@Y]Z]@@qG)Rec_group}/@@@ 1@@@ 3@@l^m^@@H@@A@@@@@p\@@@@F@%%w]x]@@г'(sig_item](@@.0~~@@@DA8@@@A@@@@@@@@@@/@@@@1@--^^@@г/$list^+@г3(sig_item^^@@;@@@@ 6@@@@8@@A@4@@47@0@!@@@ࠠ)rec_items~``@@@@v@@@ EC@ Bp@@@ WC@ R@@@ TC@ C@@ DC@ A0@F~@@@@%paramĠ'Not_recaa@8 @@@ @@A@@B@A@@ࠠ!xa a @@@@@@ G0@#?`b&@@@@@@ @@:@@ภ"::aaAఐ!x a@@@J@@A0@'@@@ภ"[] A8@@@@AA@A@@@A@T@@D@ VD@ \@@a!@@\C@ P@Ġ)Rec_group#b$b@8M@AA@B@A@@ࠠ!x.b /b!@@@Ϡ@@@ L@@@ K054455555@N@@@@@ @@@@ఐ!xAb%S@@@YKV@@C@ ^C@ ]0FEEFFFFF@`! @@@@AL`^@@@@@ i0LKKLLLLL@e@@@@c@cb@A()rec_groupCZg[g@@8@@*pre_ghosts@ .signature_item@@@ j@@@ lnhoh@@M%group@2@@@ ozh{h(@@N@@A@@@@@~gh*@ Private row types are manifested as a sequence of definitions preceding a recursive group, we collect them and separate them from the syntactic recursive group. d((f@@@@@@@@@L@11%h@@Ш@г4$listhh@г9%Types;hh @@B0@@@IW8@@@A@@@@@1.@@!@@ @@@M @@P@E@ m @E@AA<h@@Ш@гD.core_rec_grouphE@@KF@@N@E@ p@J@@A@FC@FE@0@@@@ࠠ*next_groupj,0j,:@@@@@@@D@ @@@ D@ _!@@@D@̠zK@ @@@D@@@D@ @@@ D@ @@ D@ 0@S@@@@3ԠĠ"[]kFJ kFL@@@@@40@@j,,A U }@@@@@ภ$NonekFPkFT@86@@T@@@@AA@A*@@@@@=D@ @Ġ"::)lU]*lU_@0ࠠ#src2lUY3lU\@@@_D@D@D@D@ 098899999@1@@@ࠠ!qDlU`ElUa@@@̠@@@ @@@@@u@@@ࠠ&ghostsYmeoZmeu@@@*F@ @@@ F@ 0`__`````@Z82@3@}P("@#@Q@@@ࠠ!qqmewrmex@@@@@@ F@ @@" @@" @@ @ఐV#srcn{n{@$@@V0@(@@@Ġ%Types)Sig_classoo@8)Sig_class%Types.signature_item@@@ s@%Ident!t@@@ k1class_declaration@@@ l*rec_status@@@ m*visibility@@@ n@DE@G@A0typing/types.mliXPyP{XPyP@@@$@oo@@%@@I@ 0@j@@@@ @"@@I@ @@@!@@I@  @@@ @@I@ @@@F@@@@@@ఐ!qr>Vr>W@@@o@@@ !@Ġϰs]ms]o@ࠠ"cts]k @ @@D@ K@ 7@Ġ s]p s]r@ࠠ!t @ @@K@ H@Ġs]ts]v@!ࠠ"ht @ @@,W@ࠠ!q+s]w@@@8@@@ d@@@(@@"@@J@ i@@@@ @@9@@J@ n@@@=@@ @@J@ s@@s@@ภRGs]|Hs]ANఐR"ct Qs]~@R@S@iT@@T0RQQRRRRR@_LH@I@qU=e@:@sV72@3@uW@@@ภpes]Akఐ\!t ns]@ @@]@ภus].A{ఐ["ht ~s]@# @@+@ภy=Aw@>A@ I@ @@H@ H@ 9@@GA@I@ @@H@ H@ B@@3PA@<@@H@ H@ I@@s]{X@@̠B@@H@ O@ఐ!qs]s]@P@@9Z@@@@9F@ F@ _@@tt@@A@@J@ @@@@ภ%falsett@8@@@N@@@@B@@A@@@ @@@@H@ @t @@&F@  @@Ar>Ju@@+F@ z@Ġ%Types.Sig_class_typevv@8.Sig_class_typeQ@I!t@@@ oY6class_type_declaration@@@ pG@@@ qE@@@ r@DF@G@ACYPPDYPQ@@@f@ v v@@@@I@ 0        @@@@@ @@@I@ @@@c@@I@  @@@b@@I@ @@@7@@@@@@ఐ堐!q)y ^ u*y ^ v@ð@@@@@ !@Ġ8z | 9z | @?ࠠ!tAz |  @ @@BK@ #6@Ġ#Jz | Kz | @Qࠠ"ht @ @@SK@ 'G@ࠠ!q]z | @@@@@@ )T@@@+@@$@@J@ *Y@@@( @@7@@J@ +^@@^@@ภtz | uz | A{ఐ=!t ~z | @=@>@X@@?0~~@"I73@4@Y/*@+@Z@@@ภz | AఐE"ht z | @ @@F@ภ*A@+A@'I@ =@@H@ BH@ G&@@4A@0F@ 7@@H@ ;H@ A/@@z | >@@ߠ@@H@ :5@ఐb!qz | z | @9@@NF@ HB@@@@NF@ 5F@ 2G@@{  {  @@V@@J@ -@@@@ภ{  {  @@@@@@H@ N@{  @@F@ J@@Ay ^ i|  @@$F@ @Ġ*Sig_module}  }  @8*Sig_modulee@]!t@@@ cm/module_presence@@@ ds2module_declaration@@@ ea@@@ f_@@@ g@EC@G@A]UOO^VOP:@@@@$}  %}  @@$@@M@ 0&%%&&&&&@ǐ@@@@ @%@@M@ @@@$@@M@  @@@@@M@ @@@@@M@ @@@D@@ @@ @Ġ)Sig_valueI}  J}  @8)Sig_value@!t@@@ X1value_description@@@ Y@@@ Z@C@@G@AROOROOH@@@@f}  g}  @@@@M@ B@@@@@M@ G@@ @@@M@ L@@@-@@AM@@AM@@z@@BN@Ġ(Sig_type}  }  @8(Sig_type@!t@@@ [0type_declaration@@@ \@@@ ]@@@ ^@DA@G@ASOIOKSOIO@@@@}  }  @@@@L@ |@@@@@L@ @@ @@@L@ @@@@@L@ @@@6@@@@@@@@@Ġ*Sig_typext}  }  @8*Sig_typext&@!t@@@ _.5extension_constructor@@@ `4*ext_status@@@ a@@@ b@DB@G@ATOOTOO@@@=@}  }  @@ @@K@ @@@@@K@ @@ @@@K@ @@@8@@K@ @@@8@@@@@@@@@Ġ+Sig_modtype~  )~  4@8+Sig_modtypeg@_!t@@@ ho3modtype_declaration@@@ iW@@@ j@CD@G@AUWP;P=VWP;Px@@@x@~  5~  6@@@@J@ @@@@@J@ @@ @n@@J@ @@@-@@@@@@0@%Types4}  5}  @ 7~  7@@@@@ภ9@ ; GA ; I@4@@@oEF@ [@@G@ ]0FEEFFFFF@@@@ఐ!qR ; JS ; K@@@F@ ^@@@@F@ YF@ V@@A]n{ @@@@_mek @@ภ$SomefA U [gA U _@8O@A@AA@Av@@Ϡຠ[#srcwA U axA U dAఐN @@J0|{{|||||@-'@(@R@@S@@@k+post_ghostsA U fA U q@ఐ<&ghostsA U rA U x@@@F@@F@F@F@!@@@A U `A U y@@$@ఐ:!qA U {A U |@)@@/@@H@@D@2@@L@@ΠD@@@E@9@Z@@D@D@ Z@@Aj,=@@@@@@@@@Ǡ@ࠠ1recursive_sigitemՠC  C  @@@@:@@@D@@@@BD@?7@@@CD@@@@AD@<@@@=D@@@D@0@%@ @ O@@@@)ߠĠ%Types(Sig_type D   D  @ࠠ%identנ D   D  @@@@@@I@0        @)O C   H J @@@@@ D   !D  @@@@J@@ࠠ"rsؠ ,D   -D  @@@}@@@I@@@ 7D   8D  @@@@J@%@@@7 =D  @@j'@Ġ%Types)Sig_class FE   GE  @@%ident NE   OE  @@@AG@ H@=@@ WE   XE  @@@@J@E@7"rs bE   cE  @@@8G@H@Q@@ kE   lE  @@@@J@Y@@@+ qE  @@[@@m@@\@Ġ%Types.Sig_class_type {F   |F  @u%ident F   F  @@@3o@@ F   F  @@@@I@w@i"rs F   F  @@@0@@ F   F  @@@@I@@@@% F  @@@@@@@Ġ%Types*Sig_module G   G  "@%ident G  # G  (@@@@@ G  * G  +@@@@H@@@ G  - G  .@@@@H@@"rs G  0 G  2@@@@@ G  4 G  5@@@@H@@@@- G  6@@@@@@@@ภ$Some G  : G  >@yఐݠ%ident G  @ G  E@@@ ^@@ 0        @@@ _@@@ఐҠ"rs G  F G  H@ @@@@ G  ? G  I@@&D@D@@(@@.D@:@Ġ)Sig_value H J U H J ^@̠@ H J _ H J `@@@@I@$0        @ @@@@ @@@I@%@@@o@@I@& @@@@@Y@Ġ+Sig_modtype 3H J c 4H J n@4@ 8H J o 9H J p@@6@@I@+@@@4@@I@,#@@ @@@I@-(@@@@@t)@@4@@u*@Ġ*Sig_typext OH J s PH J }@@ TH J ~ UH J @@@@H@3:@@@@@H@4?@@ @@@H@5D@@@@@H@6I@@@@@J@@U@L%Types qH J N rH J S@T tH J @@@V@@ภ$None {H J `@c@a@@D@HD@E0 ~ } } ~ ~ ~ ~ ~@j@@@@A C  h@@@@@0        @o@@@@m@ml@@ࠠ$next J   J  @@@@ ! E@@@%@@@%D@X@@@%Р 5@@@%@@%@@@%D@@@D@0        @@@ ]@@@@!x⠰ J   J  @@@,0        @8 J   e@@@@@@ࠠ*cons_group K   K  @@@@$listI@@@HE@L@@@TE@@@@@E@,@@@4E@@@@>E@ c@@@DE@=@@?E@:@@@;E@@@E@@@E@@@E@0        @NZ|@Q@ ,a@@@@#pre堰 !K   "K  @@@G0 !   ! ! ! ! !@S (K   )M  @@@@@@%group栰 4K   5K  @@@H0 4 3 3 4 4 4 4 4@ ]@@ Pc@@@@@!q砰 EK   FK  @@@J0 E D D E E E E E@\@@ ad@@@@@ࠠ%group VL   WL  @@@@@@F@0 [ Z Z [ [ [ [ [@#c@@ we@@@ภ)Rec_group hL   iL  @Eడ ?$List#rev wL   xL  @@!a@@@@ @@@@@@(list.mliZ  Z  @@,Stdlib__ListK@@@@@F@-@@F@+@F@*<@@ఐt%group L   L  @\@@I@@ L   L  @@ L@@F@F@7F@3T@@K @@@@@X@@ L  @@ภ$Some M   M  @Xຠ,h@@@ ~j@@,ZY@A@AU@R@Aa@^*pre_ghosts M   M  @డ $List#rev M   M  @j@@@@@F@Mf@@F@K@F@J0        @@@ f@@@@ఐߠ#pre M   M  @Ű@@"@@@@ @@F@GF@WF@S@<%group M   M  Aఐ @&@@@F@]F@_F@^/@@@ M   M  @@2@ఐ砐!q (M   )M  @ʰ@@-=@@m@@%E@`@@@q@@K+@@E@<E@} @@2E@@@AA@=E@0 6 5 5 6 6 6 6 6@@@@@AA@PE@0 : 9 9 : : : : :@@@@@AA@@dV@@f0 > = = > > > > >@@@@@@Aࠠ,not_in_group( LO  $ MO  0@@@@t@@@%r@@@%qE@i@  @@@@@@#E@j@@@$ @@@$F@$@@$@@@$E@k@@x@E@w0 u t t u u u u u@f@@ b@@@@#pre* O  1 O  4@@@80        @D@@@7.@@l@@mF@g@E@ g(in_group)#preLE@n#ids Р@@@#E@#@@@#E@o%group ߠ R@@@%pE@#@@@#E@p@ME@q[E@r@@s@@t@@u@@vF@h@ \4: \4B@@ h@@@@@!l+ O  5 O  6@@@xE@E@0        @NZ@Q@ i@@@@ఐ *next_group O  ? O  I@@@@  @@F@@@F@  )@@F@ @@F@@F@@@F@@F@0        @+;1@2@ j@@@@ఐC!l O  J O  K@@@?@@-@@ . J@@@ @@@@@@@@!@Ġ$None +P Q W ,P Q [@ @@@@ J f@@H@ @@H@@H@@@H@0 : 9 9 : : : : :@=@@@@@@డ != KQ _ r LQ _ s@@!a@@$boolE@@@'@@&@@%&%equalBA @@@@*stdlib.mliyy@@&StdlibQ@@@*E@%sE@$E@$E@#E@#E@#E@#E@E@@(@@G@@G@@G@D@@ఐ #pre Q _ oA@B@@<P@@ภ I Q _ u@ @K@@,E@\@@ Q _ n Q _ v@@ t@@G@H@e@ Q _ g @@ @@F@G@m@ภ$None R x  R x @ @@@ ϠPE@#E@@@F@~@ @@YE@E@@Ġ$Some S   S  @cࠠ#elt, S   S  @@@ @@@@ࠠ!q- S   S  @@@ j@@@@@  S  @@ @H@@@@'@@  (@@H@Ġ @@H@@H@@@H@@@@@ఐ=1recursive_sigitem T   T  @U@@@ s@@G@ .@@G@ h@@G@@G@@@G@@G@0@"RL@M@:kGA@B@W 4 B@ q@@@@ @@J@ $ @@J@ %@J@ #@@J@ "0@y@@@@@Ġ$SomeW 4 EW 4 I@<@W 4 KW 4 L@@@@J@ 2@Ġ%Types(Trec_notW 4 NW 4 \@8(Trec_not @@@ @@@@C@@A lReRi lReRq@@@ #@@  @@ @@J@ 5/@@W 4 JW 4 ]@@" @J@ 66@@@.@@ @@J@ 9 &@@J@ :@J@ 8@@J@ 7E@@E@@W@@ @@I@ = 5@@I@ >@I@ <@@I@ ;T@@@ࠠ&sgroupX a qX a w@@@Q@@@#H@#@ຠ;*pre_ghostsX a | X a @డ$List#revX a X a @@@@<E@#@@I@#@@I@#@I@#@@ఐ#pre.X a /X a @X@@@@@@ Ԡ@@I@#I@#I@#@n%group@X a AX a @ภ'Not_recHX a IX a @ rఐ}#eltRX a SX a @1@@@@I@#I@#I@#@@ @@ @@I@#I@#@@@cX a zdX a @@k@@fX a m@@ภ$SomemY  nY  @ఐ&sgroupzY  {Y  @@@n@@E@#0~}}~~~~~@b@@@ఐ!qY  Y  @h@@E@$E@#@@Y  Y  @@E@#@@*@@ E@#@@G@#@8 @@&E@#,@Ġ$SomeZ  Z  @Dࠠ"id/Z  Z  @@@ @@@ O0@@@@Ġ*Trec_firstZ  Z  @8*Trec_first@@@AC@@A mRR mRR@@@ . @@  @@ @@J@ R0@@@@Ġ)Trec_nextZ  Z  @8)Trec_next$@@@BC@@A !nRR "nRR@@@ D!@@  @@ 2@@J@ U@@$ @%TypesZ  Z  @ Z  @@@ A@@I@ V%@@Z  Z  @@E @I@ W0@@@@@@W@@  @@I@ Z W@@I@ [@I@ Y@@I@ X@@@@ఐ(in_group[ [@@@}rp@ec@G@#@G@#@G@#@G@#0      @sm@n@@A@Ԡ@@H@#H@#0@@T[ @@E@#4@ภi^[-_[1Aeఐ#elt h[0@F @@E@%vE@#J@ภf Ad@ A@@@H@#H@$V@@z[,@@E@#Z@@ఐ!q[2[3@d@@g@@s@@E@#j@@AT  @@0@o@@@@AO  9 @@E@W@@A A@?E@E@0@@@@@AA@@LC@@$C0@@@@@O  @@@   @@@|@@{@@z@E@y0@6@@@\4D\4G@@@0@2@@@@#\4I\4L@@@(E@%BE@$G0@D2@@p@@@@##(\4N\4S@@@-E@%oE@$M0@$@@q@@@@@#rem\4T\4W@@@cE@$S0@"@@ r@@@@ఐ1*next_group\4`\4j@ @@@2@@F@$`@@F@$a)E@@F@$^@@F@$_@F@$]@@F@$\@F@$[0@+8.@/@5s@@@@ఐ@#rem*\4k+\4n@@@<@@-@@Jf@@@$mE@$o@@@$n@@$l@@@$k#@Ġ$NoneI]tzJ]t~@2@@@@h@@H@$۠@@H@$@H@$@@H@$~0XWWXXXXX@?@@@@@@ఐ*cons_groupe]tf]t@@@@@@F@$@@F@$@@@F@$@@F@$@ @@F@$@F@$@@F@$@F@$@F@$@F@$,@@ఐܠ#pre]t]t@Ű@@9@@ఐȠ%group]t]t@@@F@@ภ]t]t@@@@F@$S@@J@@JE@$V@Ġ$Some^^@ Uࠠ#elt^^@@@@@@$@ࠠ$next^^@@@\@@@$@@^^@@ @H@$@@@(@@@@H@$r@@H@$@H@$@@H@$@@@@ఐ 01recursive_sigitem__@H@@@f@@G@$! @@G@$Ϡ[@@G@$@G@$@@G@$@G@$0@SM@N@-tHB@C@/u@@@@ఐ_#elt&_'_@@@]@@H@$@$@#src2_3_@@@@@H@$H@$H@$)@@@ @@Y A@@@$ܠ@@@$@@$@@@$8@Ġ$SomeU`V`@ ࠠ"ida`b`@@@ b@@@$0dccddddd@T@@@Ġ%Types)Trec_nextq`r`@@@@@@@I@$@@x`y`@@ @I@$@@@*@@ @@I@$@@I@$@I@$@@I@$&@@&@@ఐ(in_groupaa@@@@@G@%0@G@%/@G@%.@G@%-0@F@@A@v@@@ ఐ#preaa!@@@@ภ°a*a,@ఐb"ida( @! @@H@%C&@ఐ #idsa/@@@ 0@@a'a0@@2E@%A5@)ภa<a>@ఐ #elta9 @Ұ @@H@%KJ@ఐ%groupaC@@@T@@a8aD@@GE@%IY@@ఐ0$nextaEaI@@@E@%Mh@@t@@NE@%+k@Ġ$NonebJTbJX@@@@@7 @@J@% q@@J@% @J@% @@J@%@@@Ġ$Some1bJ[2bJ_@ ˠ@9bJa:bJb@@ 9@@J@%0;::;;;;;@+@@@Ġ(Trec_notHbJkIbJs@@@@@@@K@%0KJJKKKKK@<@@@Ġ*Trec_firstWbJtXbJ~@@@@@@@K@%@@@%TypesebJdfbJi@hbJ@@@@@J@%@@mbJ`nbJ@@7 @J@% 0pooppppp@`@@@@@D@@ y@@J@%#@@J@%$@J@%"@@J@%!@@@@l@@ @@I@%'@@I@%(@I@%&@@I@%%+@@ఐ Š*cons_groupcc@#@@@ =@@G@%[@@G@%Z@ ʠF@@G@%Y@@G@%X@(E@$pG@%WҠ @@G@%V@G@%U@@G@%T@G@%S@G@%R@G@%QZ@@ఐ#precc@@@1g@@ఐ%groupcc@@@t@@ఐ#remcc@ɰ@@@@N@@/E@%lE@%O@@A_ @@3E@$0@@@@@A\4Z@@E@$X@@A A@OE@$UE@$R0@ @@@@A\4MA@XE@$OE@$L0@"@@@@A\4HA@aE@$IE@$F0@=@@@@A \4C&A@sqf@@%0        @@@@@\46+@@ఐΠ,not_in_groupee@@@@ @@@D@%@@D@%@@@D@%@@D@%K @@D@%@@D@%@D@%@@D@%@D@%@D@%@@ภ?FeGe@:@@@ l@@E@%@@E@%E@%@@ఐ !x\e @ H @@ @@E @@ @ @@ @ 9 @@ D@ P@@A  A@@  @@%0cbbccccc@ @@@@ @  @ @ࠠ#seqsgtg@@@@%@@@+@@@,D@%$#Seq!t @@@+D@(@@@+D@%@@%D@%0@   @ @`@@@@!lgg@@@+0@7gg@@@@@డ#Seq&unfoldgg@@@!b@&&optionJ!a@&۠@@(@@@(@@(@N @@@(@@(@@(@'seq.mlik77k78/@@+Stdlib__SeqY'&@@@@hD@("\ @D@(@@D@(@D@(@ ic@@D@(@D@(@D@(0@NZ{@Q@ x@@@@ఐ m$nextgg@l@@@@@E@+@@E@+( g@@E@+@@E@+@E@+@@E@+@E@+)@@ఐ!l%g|@2}@@5@@q~@@D@%8@@AA@@@@,0*))*****@@@@@@@@ࠠ$iter:h;h@@@@@ @@@,fD@,$unitF@@@,&@@,%D@,@۠@@@,R@@@,QD@, @@@,#D@, @@, D@,@@,D@,0`__`````@@@|w@@@@!fqhrh@@@30qppqqqqq@?xhyh@@@@@@!lhh@@@30@ I@@z@@@@డ_#Seq$iterhh@@@!a@'pX@@@'@@'@" @@@'L@@@'@@'@@'@!@@G@@@@rm@@D@,@D@,@7z@@D@,a@@D@,@D@,@D@,0@=Ir@@@{@@@@ఐd!fhh@J@@@@ఐm#seqhh@}@@@j@@F@,6@@F@,5g D@@F@,4@@F@,3@F@,20@@ఐ}!lhh@:@@=@@h@@} Z@@E@,d@@E@,cF@@s@@D@,I@@AA@D@, 0        @@@@@AA@@@@,{0@@@@@@@@ࠠ$fold i!i @@@@@@@,D@,@ @@@,D@, @@,@@,D@,}@D@,@Ơ@@@,@@@,D@,@@,D@,@@,D@,~@@,D@,|0EDDEEEEE@@@ay@@@@!fVi Wi @@@20VUUVVVVV@>]i^i1@@@@@@#acciiji@@@20ihhiiiii@ H@@}@@@@@!l zi{i@@@>0zyyzzzzz@F@@~@@@@డU#Seq)fold_leftii#@@@!a@'g@!b@'i @@'@@'@ @ @@@'@@'@@'@@'@@@H@@@@@@D@,@D@,@@0@@D@,@D@,@D@,@D@,0@=I}@@@@@@@ఐu!fi$i%@[@@@@ఐo#acci&i)@W@@@@ఐp#seqi+i.@@@@m@@F@,@@F@,j G@@F@,@@F@,@F@,=@@ఐ!li/i0@G@@J@@i*@@ ]@@E@,@@E@,S@@@@D@,U@@AA@D@,0  @@@@@AA@D@,0@@@@@AA@@@@,0@@@@@@@Ӡ@ࠠ/update_rec_next &k37'k3F@@@@{@@@-jD@,@d@@@-eD@-?@@@-AD@- D@-@@-D@-@@-D@,0@??@@@@@@)#@$@\|@@@@"rs Qk3GRk3I@@@'0QPPQQQQQ@3Xk33Yt@@@@@@#rem dk3Jek3M@@@10dccddddd@ =@@A@@@@ఐ'"rstlPXulPZ@ @@J0tssttttt@D@@B@@@Ġ%Types)Trec_nextm`dm`s@@@@@]0@@@@@^@@ఐ2#remm`wm`z@@@_D@- @Ġ*Trec_firstn{n{@@@@@x0@/^@@@@{@Ġ(Trec_notn{n{@@@@@@@@@@%Typesn{n{@n{@@@@@ఐh#remoo@Q@@0@T@@@Ġpp@۠Ġ%Types(Sig_typepp@`ࠠ"idpp@@@g@@@-0@w@@@ࠠ$declpp@@@n@@@-@Ġ)Trec_nextpp@'@@@@R@@H@-@ࠠ$privpp@@@Y@@@- (@@@8p@@D@-+@ࠠ#rem p!p@@@@@@-!9@@@I@@:@@:@@ภ5,q -q"@3ภ%Types(Sig_type7q8q @ఐY"idAq Bq@Y@Z@ZC@@@@F@-KF@-PF@-O0JIIJJJJJ@n`Z@[@iDHB@C@kE:4@5@mF@@@ఐj$decl`qaq@@@@@F@-LF@-RF@-Q@ఐ%"rsrqsq@ @@H(@ఐm$priv}q~q@+@@@@F@-NF@-UF@-T:@@Qq@@PD@-IF@-J?@ఐt#remq#q&@@@@ c@@F@-CF@-WF@-VR@@i @@jD@-=U@Ġr'ar'c@Ġ%Types*Sig_moduler'/r'?@ࠠ"idr'Ar'C@@@@@@-+@ࠠ$presr'Er'I@@@@@@-,@ࠠ#mtyr'Kr'N@@@@@@--@Ġ)Trec_nextr'Pr'Y@ @@@@4@@H@-0 @ࠠ$privr'[r'_@@@;@@@-1-@@@Dr'`@@qD@-#1@ࠠ#remr'dr'g@@@@@@-2?@@@V@@@@@@@@ภsksk@ภ%Types*Sig_moduleskusk@ఐf"id$sk%sk@f@g@=G@@+@@F@-gF@-mF@-l0-,,-----@|oi@j@MHd^@_@OILF@G@QJ=7@8@SK@@@ఐ{$presFskGsk@@@D@@F@-hF@-oF@-n @ఐ#mtyXskYsk@"@@P@@F@-iF@-qF@-p2@ఐ"rsjskksk@@@@=@ఐ$privuskvsk@=@@@@F@-kF@-tF@-sO@@fsk@@FF@-fS@ఐ#remsksk@Q@@ZD@-Z@@F@-^F@-vF@-uh@@ @@eD@-\D@-Xm@@tt@@o@@o@@ఐL#remtT@4U@@zD@-D@-w@@AoZ@@}D@-0@>@@@@AlPR_@@D@- 0@@AWbA@D@-0@V@@@@AnfA@@@@.0@m@@@@k@kj@A(.in_place_patchDvv@@8@@&ghosts@)signature@@@.ww@@M*replace_by@].signature_item@@@.@@@. xx@@N@@A@@@@@vy@@@@ L@&&w@@Ш@г)%Types+ww@@20@@@ @C8@@@A@@@@@@@@@@ @@;@F@. @5@11%x@@Ш@г4&optionxx@г9%Types;&x'x@@B"@@@G# @@J@F@. &@?@@A@;@@;:@0*))*****@&@@@ࠠ0replace_in_place9|:|/@@@@&ghosts@@@1@@@1@ @@@1n@@1@@@1@@1@@@1A@1A@1E@.@"@@@1E@.#0@@@1@@1@@@1E@.$@@.%E@.@@.E@.0xwwxxxxx@u@@@@!f|0|1@@@J0@V|@@@@@@"sg|2|4@@@70@ `@@P@@@@Aࠠ*next_group}7A}7K@@@@pTS@@@.@@@.F@/@}@@@/F@/@@1F@/|@@@/F@/@@/F@/@@@/F@/A@/F@/A@/F@.+@$listI0F@/.@@@/yF@.,@s F@.m@@@.F@.-+I@0@@@1F@1@@1F@1 @@@1F@..@@.A@@.@@F@.?0@jv@m@Q@@@@!f }7L}7M@@@g0@s@o@B@70@@./@@.0@@.1G@.)@v@9R*core_group@{F@.2&beforeQF@.3&ghostsF@.4,before_groupiF@.@@@.F@.5@s@@@.@@@.F@.6"sgfF@.7aF@.8@@.9@@.:@@.;@@.<@@.=@@.>G@.*@VW$@@nS@@@@@&before!c}7Nd}7T@@@8F@.K0eddeeeee@R^@U@T@@@@@)signature"v}7Uw}7^@@@F@/F@/F@.nF@.Q0}||}}}}}@'@@U@@@@ఐ$next~ak~ao@@@@=@@G@.^@@G@._@@G@.\*@@G@.]@G@.[@@G@.Z@G@.Y0@+>4@5@V@@@@ఐF)signature~ap~ay@@@B@@-@@ؠ@@@.kK@@@.l@@.j@@@.i!@Ġ$None@@@@@3@@I@.~g@@I@.@I@.}@@I@.|0@=@@@@@@ภ$None@@@@F@.F@. @Ġ$Some@ࠠ$item#  @@@b@@@.f@ࠠ"sg$@@@,@@@.t@@ @@ @I@.z@@@'@@A@@I@.A@@I@.@I@.@@I@.@@@@ఐ*core_group=>@@@@ @@G@.@G@.@G@.@G@.@G@.@G@.0IHHIIIII@IC@D@fW>8@9@hX@@@@ఐM!f]^@@@@4ఐ &beforejk@@@!@<ఐo$itemyz@,@@@@H@.@.5@*pre_ghosts@@@<@Qภ@@@@XF@.I@@ఐ)rec_items@@@@@@H@.ՠX@@H@.@@H@.@H@.d@@ఐ$item@o@@@@I@.@.x@%group @@@@@I@.I@.I@.@@@@@ఐȠ"sg@@@@@@@F@.@@A~ae@@F@.V@@At A@F@.SF@.P0@n@@@@AA@F@.MF@.J0@@@@@AA@@H@@/0@@@@@}79@۠۰@@@@@@.G@@.F@@.E@@.D@@.C@F@.B0        @@@@@!f%%&@@@0@@@@@&%(&.@@@IF@/0'&&'''''@@@CY@@@@'7086@@@F@/ 087788888@@@TZ@@@@( H8ID@@@F@15F@/0LKKLLLLL@!@@h[@@@@@'current)]E^L@@@F@/YF@/0a``aaaaa@%@@}\@@@@*qNrP@@@F@/0rqqrrrrr@"@@]@@@@@ࠠ&commit+S[Sa@@@@F@1,F@/B@@@/PG@/$@@@/:G@/%@@/&G@/#0@&2)@*@^@@@@&ghosts-SbSh@@@!0@-SWS@@@@@డ!@SxSy@@ޠ!a@i@@@@ @@@@@@@@@@@q:wwr:ww@@p@@@@@G@/0@@@G@//@@G@/-@G@/,@G@/+0@>Ja@A@`@@@@ఐ,before_groupSkSw@@@@@డ$List*rev_appendSz S@@!a@w@@@@8 @@@@@@@@@@@ii@@N@@@@@H@/D@@@H@/C@@H@/A@H@/@@H@/?M@@ఐ&ghosts?S@S@W@@Z@@ఐ*&beforeLS@@@&f@@G@@o@@H@/;H@/TH@/No@@b@@G@/)r@@AA@@@@/W0ZYYZZZZZ@@@@@@ఐ'currentgh@@@ 0gffggggg@@@_@@@Ġpwx@k@@@@0wvvwwwww@@@@@@@ఐ٠*next_group@l@@@@@@G@/f@G@/e@G@/d@@ఐ!f@m@@o @@ఐ#&commit@<@@@@@H@/sΠ@@H@/r@H@/q9@@ఐ&ghosts@n@@F@@@@I@@ఐ_"sg@3@@\V@@M@@F@/bX@Ġ@ࠠ!a.@@@F@18F@/\@ࠠ!q/@@@y@@@/^@@@@@@@@@ఐ!f  @ڰ@@0        @+%@&@ !a@@ #b@@@̐ఐ䠐Ѱ  @Ȱ@@@@ఐC!a & '@@@C"@#src - . @ @@m)@@-@@k*@Ġ$Some ; <@ՠࠠ$info0 G! H%@@@z0 G F F G G G G G@C@@@ঠ&ghosts T( U.A,@@@.@@,{z@A@Ao@l@A@ࠠ 1  @@@@@/@*replace_by j0 k:Aࠠ2@@@@@/@@@/.@@@ y' z;@@J@/3@@ ~  <@@ @J@/:@@@J@@;@@;@@@ࠠ%after3 @P @U@@@I@/@@@/I@/0        @Z@U@ cA?@@@ d31@2@ e@@@డv!@ @r @s@@@@@@I@/@#@@I@/ڠ'@@I@/@I@/@I@/&@@డ$List*concat_map @X @g@@@!a@$!b@"@@@/@@.@@@@- @@@,@@+@@*@eXXfX@@dY%$@@@@F@1-F@/F@/J@/%yF@0F@0{F@0F@/J@/@@J@/@J@/@)@@J@/(@@J@/@J@/@J@/|@@ఐZ'flatten!@h! @o@@@@V@@K@/S@@K@/@@K@/@K@/@@ఐG!q!8@p!9@q@.@@[K@@K@/K@/K@/@@v @@@@J@/J@/J@/@@ఐ蠐"sg!V@t!W@v@@@@@@@@@![@L@@@ࠠ%after4!fz!gz@@@@@@0iI@/0!l!k!k!l!l!l!l!l@@@!f@@@ఐ1recursive_sigitem!z!z@̰@@@@@J@/@@J@/@@J@/@J@/@@J@/@J@/0!!!!!!!!@(@@@@ఐ!a!z!z@@@@#src!z!z@ @@@@K@/K@/K@/@@5 @@Ҡ@@@/ @@@/@@/@@@/-@ఐZ*replace_by!z!z@-@@@@@/@@@/?@@V @@$ @@/D@Ġ$None!!@@@@@ @@M@0C@@M@0@M@0@@M@0@@!!@@@@M@0@@M@0@@ @@ @M@0@@@@""@@1@@M@0*k@@M@0+@M@0)@@M@0(@Ġ$Some"*"+@Ġ@"/"0@@K@@M@00@@@ @@SR@@M@02@@M@01@@* @@+ @M@03@@@@X@@aI@@L@07@@L@08@L@06@@L@05rq@@L@0:@@L@09@L@04@@ఐӠ%after"b"c@@@I@0h@Ġ$Some"t"u@@"|"}@@|@@L@0X@ࠠ"rs5""@@@@@@0Y@@"" @@ @L@0Z@@@"@@@@L@0]@@L@0^@L@0\@@L@0[ @Ġ$None" "@@@@@̠@@L@0d@@L@0c@@B @@# @L@0e#@@#@@ఐ /update_rec_next"""@@@@@@J@0p@ 4@@J@0o@@J@0n@J@0m@J@0l0""""""""@fRL@M@"h@@@@ఐZ"rs"#"%@@@5@@K@0|K@0~K@0}@@ఐg%after"&"+@@@I@0zK@0K@0+@@= @@I@0j.@@A#z @@@@#z@@@ࠠ&before6#;K#;Q@@@41@@@0I@00########@@@#2g@@@ఐ*replace_by#&;Z#';d@@@GF@@@0@@@00#-#,#,#-#-#-#-#-@@@@Ġ$None#;jz#<j~@$@@@@\[@@L@0@@L@0,@@,@@ఐˠ&commit#Nj#Oj@@@@Ǡ@@J@0vs@@J@0@J@0B@@ఐ&ghosts#ej#fj@Ȱ@@@@K@0R@@@@YI@0U@Ġ$Some#x#y@ࠠ!x7##@@@@@@0W@@@@@@@L@0@@L@0_@@_@@ภ!##@!ఐ!x##@@@#j@@0########@'@@@ఐ+&commit##@D@@@'&@@J@0֠@@J@0@J@0@@ఐc&ghosts##@(@@@@K@0)@@@@#UI@0@@J@0J@0J@04@@:@@I@0I@09@@A#;T@@@@#;G@@@ࠠ"sg8##@@@y@@@1I@00########@@@$ i@@@డ"$List*rev_append$$@@@@{@@I@0@ @@I@0@@I@0@I@0@I@0#@@ఐ&before$$ @-@@&@@J@1J@1J@18@@ఐΠ%after$4$5@@@$;@@J@1J@1 J@1 M@@> @@RN@@$A @@ภ$Some$H $I@ఐ$info$U$V@@@0$U$T$T$U$U$U$U$U@guo@p@$qk@@@ఐ{"sg$d$e@ @@g@@$h@@qF@1@@$@@ w@@H@1@0 @@@ @@Y@n @@@ @@F@/@Ġ$None$&$*@ i@@@@|@@|@@@ࠠ,before_group9$.>$.J@@@ I@1@@@1'I@1M@డ#k$List*rev_append$M[$Mj@@@@@@I@1@@@I@1 = @@I@1@I@1@I@1l@@ఐߠ!a$Mk$Ml@@@{@+post_ghosts$Mm$Mx@" @@D>@@J@1)J@1.J@1+@@ภ"$M$M@"ఐ!a$Mz$M{@߰@@@#src$M|$M@"ٰ @@aJ@17@ఐ,before_group$M$M@@@@@$My%M@@q@@J@1(J@14@@e@@v@@% .: @@ఐ렐*core_group%%@@@@@@H@1A@H@1@@H@1?@H@1>@H@1=@H@1<0%%%%%%%%@@@%;l@@@@ఐ!f%0%1@@@ @ ఐ&before%=%>@@@@ ఐ&ghosts%J%K@@@+@ ఐʠ,before_group%W%X@5@@ F@1T:@@ఐu!q%f%g@\@@ $F@1UI@ ఐ"sg%u%v@۰@@V@@f@@ %W@q@@F@12@@A%}@@ F@/~0%}%|%|%}%}%}%}%}@y@@@@A% @@ F@/" @@@@@A%MA@F@/F@/0%%%%%%%%@@@@@A1A@F@/F@/0%%%%%%%%@.@@@@A%7A@F@/F@/0%%%%%%%%@J@@@@A%/&A@F@/ F@/ 0%%%%%%%%@e@@@@A%'-A@F@/F@/0%%%%%%%%@}@@@@A3A@@ @@10%%%%%%%%@ @@@@%8@@ఐ *next_group%%@ @@@ z"\"[@@E@1@@E@1@$@@E@1! x v@@E@1@E@1@@E@1AE@1AE@1@ @@E@1@%d!@@E@1!  u,@@E@1@E@1@@E@1@E@1@E@1@E@1@@ఐ v!f%%@ \@@ @@ภ!&&@"@@@ ( @@F@1F@1@@ఐ "sg& @  @@ @@c @@ @! @@ E@.( @@A  A@ E@."0&&&&&&&&@ @@@@A  A@@  @@10&!& & &!&!&!&!&!@ @@@@ @  @ @$$A@$i#@##A@#"@""A@"fA@k}@@@@  @ 5@ x rA@  @ @&YO@@0&A&@&@&A&A&A&A&A@  @@@&ghosts%Types)signature@@@1@ .signature_item@@@1&optionJ!a@1ܠ.in_place_patchC@@@1@@1@@@1@@1@@1@')signature@@@15)signature@@@1@@1@@@1@@1@@1@:typing/signature_group.mliR i iU  @@/Signature_groupSN@@#acc@1@)rec_group>@@@1 @@1@@1@@Y)signature@@@1@@1@@1@@1@#A  $A  @@"Oj@@@@@1$unitF@@@1@@1@u)signature@@@1@@@1@@1@@1@C@  D@  @@BNo@)signature@@@1&Stdlib#Seq!tI@@@1@@@1@@1@`~ o oa~ o @@_M[@)signature@@@2c@@@1)signature@@@2@@1@@@1@@1@} - -} - n@@L#g@.core_rec_group<@@@2$listI(sig_item:@@@2@@@2@@2@p((p(V@@H$@@@@2)signature@@@2 @@2 @hAAhAi@@D@ H************************************************************************'BA@@'CA@L@ H 'HBMM'IBM@ H OCaml 'NC'OC@ H 'TD'UD3@ H Florian Angeletti, projet Cambium, Inria Paris 'ZE44'[E4@ H '`F'aF@ H Copyright 2021 Institut National de Recherche en Informatique et 'fG'gG@ H en Automatique. 'lH'mHg@ H 'rIhh'sIh@ H All rights reserved. This file is distributed under the terms of 'xJ'yJ@ H the GNU Lesser General Public License version 2.1, with the '~K'KN@ H special exception on linking described in the file LICENSE. 'LOO'LO@ H 'M'M@ H************************************************************************'N'N5@ 2* Fold on a signature by syntactic group of items ' f* Classes and class types generate ghosts signature items, we group them together before printing & (* ghost classes types are post-declared &+ * Private row types are manifested as a sequence of definitions preceding a recursive group, we collect them and separate them from the syntactic recursive group. $ | a class declaration for [c] is followed by the ghost declarations of class type [c], and types [c] and [#c] 'p'q=@ p a class type declaration for [ct] is followed by the ghost declarations of types [ct] and [#ct] 'w'x ' ]@@*./ocamlopt"-g)-nostdlib"-I&stdlib"-I1otherlibs/dynlink0-strict-sequence*-principal(-absname"-w>+a-4-9-40-41-42-44-45-48-66-70+-warn-error"+a*-bin-annot,-safe-string/-strict-formats"-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(toplevel2-function-sections"-c'"-I&typing' 3/home/barsac/ci/builds/workspace/step-by-step-build 0/$#"! @0BL #^0''''''''@'@@(Asttypes0'$O~7X0ī׸s|8CamlinternalFormatBasics0cEXyM$@  @@$%۰&&@@' '@@P(@&RA&*@@A&@&@@@\@@ A @@ABCp@^@@@@@%XA%$@@ABD&@%@@ @w@@AK@W@@B'A'<@@CE