Caml1999I0372 % #+Odoc_moduleӠ&StringA$Misc&Stdlib&String@8ocamldoc/odoc_module.mliR||R|@@@@@Ӡ$NameA)Odoc_name@TT@ A@@@.module_element;@@.Element_moduleq(t_module@@@@@$Y%Y@@6L@3Element_module_typer-t_module_type@@@@@4Z5Z(@@FM@7Element_included_modules/included_module@@@@@D[)+E[)W@@VN@-Element_classt*Odoc_class't_class@@@@@V\XZW\X@@hO@2Element_class_type,t_class_type@@@@@f]g]@@xP@-Element_value*Odoc_value't_value@@@@@x^y^@@Q@6Element_type_extension.Odoc_extension0t_type_extension@@@@@__@@R@1Element_exception.Odoc_exception+t_exception@@@@@``K@@S@,Element_type)Odoc_type&t_type@@@@@aLNaLp@@T@6Element_module_comment*Odoc_types$text@@@@@bqsbq@@U@@@A@@@@@X@@@@B@A@#mmt;@@#Mod@@@@@dd@@V@'Modtype@@@@@dd@@W@@@A@@@@@d@@@@C@B@;@@'im_name@@!t@@@f f1@@ X@)im_moduleA@&optionL@@@@@@@ g24 g2S@@Y@'im_infoA@_$info@@@@@@hTVhT@@0Z@@@A@@@@@"e#i@@@@4D@B@,module_alias;@@'ma_name@@>!t@@@5j6j@@G[@)ma_moduleA@=;@@@@@@EjFj@@W\@@@A@@@@@IjJj@@@@[E@B@0module_parameter;@@'mp_name@@&stringQ@@@]l^l@@o]@'mp_typeG@@e%Types+module_type@@@@@@rmsm@@_@,mp_type_codeH@@#@@@~n n6@@`@'mp_kindI@@0module_type_kind@@@o79o7T@@a@@@A@@@@@kpUV@@@@F@B@+module_kind;@@-Module_structJ$listK@@@@@@@@rimri@@b@,Module_aliasK@@@@@ss@@c@.Module_functorLw@@@5@@@@@tt@@d@,Module_applyM@@@@@@@@uu @@e@1Module_apply_unitN@@@@@v  v  :@@f@+Module_withOn@@@@@@@@w ; =w ; g@@g@1Module_constraintP>@@@@@@@@ x h jx h @@h@-Module_typeofQ@@@@@y  y  @@-i@-Module_unpackR@@@1module_type_alias@@@@@0z  1z  @@Bj@@@A@@@@@4qWW@@@@EG@B@;@@&m_nameS@@M!t@@@ҰD|  E|  @@Vk@&m_typeTA@+module_type@@@ѰR}  S}  5@@dl@&m_infoUA@Z$info@@@@@@аe~ 6 8f~ 6 `@@wm@.m_is_interfaceV@@$boolE@@@ΰs a ct a y@@n@&m_fileW@@$@@@Ͱ@ z |@ z @@o@&m_kindXA@@@@̰A  A  @@p@%m_locYA@(location@@@˰B  B  @@q@*m_top_depsZA@!t@@@@@@ʰC  C  @@r@&m_code[A@_@@@@@@ȰD  D  @@s@+m_code_intf\A@àp@@@@@@ưE  E  @@@t@+m_text_only]@@g@@@İF A CF A V@@u@@@A@@@@@{  G W X@@@@H@B@;@@(mta_name^@@!t@@@հI s uI s @@v@*mta_module_A@@@@@@@԰J  J  @@w@@@A@@@@@H Y YK  @@@@I@B@~;@@2Module_type_struct`om@@@@@@@@M  M  @@)x@3Module_type_functora^@@@۠@@@@@(N  )N  :@@:y@1Module_type_aliasb@@@@@5O ; =6O ; e@@Gz@0Module_type_withc@@@ؠ@@@@@GP f hHP f @@Y{@2Module_type_typeofd@@@@@UQ  VQ  @@g|@@@A@@@@@YL  @@@@jJ@B@-;@@'mt_namee@@r!t@@@iS  jS  @@{}@'mt_infofA@q$info@@@@@@|T  }T  @@~@'mt_typegA@+module_type@@@@@@U  U  <@@@/mt_is_interfaceh@@*@@@V = ?V = V@@@@'mt_filei@@L@@@W W YW W j@@A@'mt_kindjA@-@@@@@@X k mX k @@B@&mt_lockA@(location@@@ްY  Y  @@C@@@A@@@@@R  Z  @@@@K@B@&values@42@@@@@@<p't_value@@@@@@@@@^  ^ @@D@@%types@RP@@@@@@ZX&t_type@@@@@@@@@aWWaW@@E@@/type_extensions@pn@@@@@@x0t_type_extension@@@@@@@@@#d$e$@@5F@@*exceptions@@@@@@@+t_exception@@@@@@@@@AhppBhp@@SG@@'classes@@@@@@@ 't_class@@@@@@@@@_k`k:@@qH@@+class_types@ʠ@@@@@@Ҡ(,t_class_type@@@@@@@@@}n~~~n~@@I@@'modules@@@@@@@v@@@@@@ @@ @q  q =@@J@@)mod_types@@@@ @@@  @@@ @@@@@@tt@@K@@(comments@@@@@@@&$text@@@@@@@@@ww=@@L@@0included_modules@<:@@@@@@D@@@@@@@@@zz@@M@@4module_type_elements%trans@@@@@@@@@@ge@@@@@@@@@@ @}~2g@@!N@@/module_elements%trans#@@@!@@@"@@@@#@@@$@@@%@@&@@'@12:@@CO@@-module_values%transE@@@(@@@)@*@@@*'t_value@@@+@@@,@@-@@.@VW @@hP@@0module_functions%transj@@@/@@@0@O@@@1Р't_value@@@2@@@3@@4@@5@{|@@Q@@4module_simple_values%trans@@@6@@@7@t@@@8)'t_value@@@9@@@:@@;@@<@mmm@@R@@,module_types%transC@@@=@@@>@@@@?&t_type@@@@@@@A@@B@@C@PPP@@S@@6module_type_extensions%trans٠h@@@D@@@E@@@@F?a0t_type_extension@@@G@@@H@@I@@J@6w@@T@@1module_exceptions%trans@@@K@@@L@@@@Mdt+t_exception@@@N@@@O@@P@@Q@[@@!U@@.module_classes%trans#@@@R@@@S@@@@T't_class@@@U@@@V@@W@@X@45-@@FV@@2module_class_types%transH@@@Y@@@Z@-@@@[,t_class_type@@@\@@@]@@^@@_@YZ@@kW@@.module_modules%transm@@@`@@@a@R@@@bӠY@@@c@@@d@@e@@f@{|@@X@@3module_module_types%trans@@@g@@@h@t@@@ik@@@j@@@k@@l@@m@XXX@@Y@@7module_included_modules%trans@@@@n@@@o@@@@p}@@@q@@@r@@s@@t@,,,y@@Z@@/module_comments%transӠb@@@u@@@v@@@@w9%$text@@@x@@@y@@z@@{@   N@@[@@6module_type_parameters%trans@@@|@@@}@@@@~^@C@@@@ W$text@@@@@@@@@@@@@@@@H@@)\@@1module_parameters%trans+@@@@@@@@@@@v@@@@>$text@@@@@@@@@@@@@@@@JK :@@\]@@5module_all_submodules%trans^@@@@@@@C@@@ĠJ@@@@@@@@@@@l  m !@@~^@@6module_type_is_functor@I@@@ @@@@@@~!!!!@@_@@1module_is_functor@k@@@@@@@@@"O"O"O"w@@`@@2module_type_values%trans3@@@@@@@y@@@ >'t_value@@@@@@@@@@@"""#,@@a@@1module_type_types%transɠX@@@@@@@@@@/-&t_type@@@@@@@@@@@###$@@b@@;module_type_type_extensions%trans}@@@@@@@@@@Tv0t_type_extension@@@@@@@@@@@$$$$@@c@@6module_type_exceptions%trans@@@@@@@@@@y+t_exception@@@@@@@@@@@$%%%%%@@6d@@3module_type_classes%trans8@@@@@@@ @@@'t_class@@@@@@@@@@@I&l&lJ&&@@[e@@7module_type_class_types%trans]@@@@@@@2@@@à,t_class_type@@@@@@@@@@@n'G'Go'e'@@f@@3module_type_modules%trans@@@@@@@W@@@n@@@@@@@@@@@(/(/(/(v@@g@@8module_type_module_types%trans3@@@@@@@y@@@ @@@@@@@@@@@(())Q@@h@@*%"e+Outcometree0euWS~d栠*Odoc_value0IlX+KE`*Odoc_types0fX cx3H~)Odoc_type0~b:x_B.Odoc_parameter0ץ~D3vNm)Odoc_name0{Y/3..Odoc_extension0?*sR(6]!$..Odoc_exception0>@ӽX4Id*Odoc_class0_"#C{$Misc0ob]6>Vê>)Longident0s `7mɕc(Location0a7cK_H%9,Identifiable0 {d\FX'`%Ident0">WA+9*X*Format_doc0]mWϓ:Mݠ0CamlinternalLazy0&͂7 Pˆ8CamlinternalFormatBasics0%FU(Q/Tu5Build_path_prefix_map0z HkGs(Asttypes0>n{T8cئ@@@Caml1999T037"j_C+Odoc_module*ocaml.text&_none_@@A > Representation and manipulation of modules and module types. 8ocamldoc/odoc_module.mliP77P7z@@@@@@3@@@@#intA;@@A@@@@@9@A@$charB;@@A@@@@@>@A@&stringQ;@@A@@@@@C@@@%bytesC;@@A@@@@@H@@@%floatD;@@A@@@@@M@@@$boolE;@@%falsec@@W@$trued@@]@@@A@@@@@^@A@$unitF;@@"()e@@h@@@A@@@@@i@A@ #exnG;@@@A@@@@@m@@@#effH;@@O@A@A@@@@@@v@@@,continuationI;@@Q@@P@B A@nY@@@@@@@@@%arrayJ;@@R@AA@@@@@@@@@ $listK;@@S@A"[]f@@@"::g@@@T@@@ @@A@Y@@@@@@@@&optionL;@@V@A$Noneh@@@$Somei@@@@@A@Y@@@@@@@@)nativeintM;@@A@@@@@@@@%int32N;@@A@@@@@@@@%int64O;@@A@@@@@@@@&lazy_tP;@@X@AA@Y@@@@@@@@ 5extension_constructorR;@@A@@@@@@@@*floatarrayS;@@A@@@@@@@@&iarrayT;@@Y@AA@Y@@@@@@@@ *atomic_locU;@@Z@AA@@@@@@@@@ .Assert_failure`#@@@@@J@@@@@@@@[@@A=ocaml.warn_on_literal_pattern@@0Division_by_zero]#@@@A  @+End_of_file\#$@@@A#&&@'FailureY#,@'@@A,//@0Invalid_argumentX#5@0@@A5$8#8@-Match_failureV#>@@=@9@;@@a@@AF5I4I@)Not_foundZ#O@@@AN=Q<Q@-Out_of_memoryW#W@@@AVEYDY@.Stack_overflow^#_@@@A^MaLa@.Sys_blocked_io_#g@@@AfUiTi@)Sys_error[#o@j@@Ao^r]r@:Undefined_recursive_modulea#x@@w@s@u@@h@@Aon@:Continuation_already_takenb#@@@Awv@&Stdlib@A&StringeAR|R|@@@AХ$Misc&Stdlib&String$MiscR|R|@ R|R|@@R|R|@ @@@@R||@@$NamefBTT@A@AХ)Odoc_name)Odoc_nameTT@ 3@EA=@ @@A@@@T @ @䐠+ {1 Types} VV@@@@@@3@/A'@*@AA+.module_elementgCXX@@;@@.Element_moduleq(t_modulemC@@@@@YY@@L@3Element_module_typer-t_module_typepC@@@@@ZZ(@@*M@7Element_included_modules/included_moduleiC@@@@@![)+"[)W@@:N@-Element_classt*Odoc_class't_class@@@ @@3\XZ4\X@@LO@2Element_class_type,t_class_type@@@ @@C]D]@@\P@-Element_value*Odoc_value't_value@@@ @@U^V^@@nQ@6Element_type_extension.Odoc_extension0t_type_extension@@@ 7@@g_h_@@R@1Element_exception.Odoc_exception+t_exception@@@ V@@y`z`K@@S@,Element_type)Odoc_type&t_type@@@ @@aLNaLp@@T@6Element_module_comment*Odoc_types$text@@@ |@@bqsbq@)ocaml.doc , To keep the order of elements in a module. cc@@@@@@@U@@@A@@@@@X@@@@B@@#Y@@г(t_moduleY@@3@;@@@A@@@@@@@@#mmthC;@@@A@@@@@dd@@@@C@;@@@A@@@@@ei@@@@D@,module_aliasjC;@@@A@@@@@jj@@@@E@0module_parameterkC;@@@A@@@@@kpUV@@@@F@+module_kindlC;@@@A@@@@@qWWz  @@@@ G@;@@@A@@@@@{  G W X@@@@H@1module_type_aliasnC;@@@A@@@@@H Y YK  @@@@I@0module_type_kindoC;@@@A@@@@@L   Q  @@@@!J@;@@@A@@@@@R  Z  @@@@'K@@AQ@@@@@#ZZ@@г-t_module_type Z@@_@@@@@#&[)-'[)D@@г/included_module0[)H@@o@@@@@#6\X\7\Xi@@г*Odoc_classB\XmC\Xw@F\Xx@@@@@@@@#M]N]@ @г*Odoc_classY]Z]@]]@@@#@@@@@#d^e^@@г*Odoc_valuep^q^@!t^@ @@*!@@@@#@#{_|_@@г!.Odoc_extension__@&_$@%@@/˰&@@@@(@#$$``-@@г&.Odoc_exception`1`?@+`@)@*@@4+@@@@-@#))aLPaL\@@г+)Odoc_typeaL`aLi@0aLj.@/@@90@@@@2@#..bqubq@@г0*Odoc_typesbqbq@5bq3@4@@>5@@@@74㐠32@22@@@2@2@@A@.@+dd@@;@@#Mod@@@ }@@dd@@ V@'Modtype@@@ ~@@d+@@W@@@A@@@@@.@@@+@#d@@г(t_moduled@@$N@@@@!@#dd@@г-t_module_typedK@@&^L@@@@#@@A@N@+%e &e@@;@@'im_name@@{!t@@@ 4f 5f1@@MX@)im_moduleA@s@@@ @@@ Eg24Fg2S@@^Y@'im_infoA@$info@@@ @@@ XhTVYhT@@qZ@@@A@@@@@@@@@#33,`f'@+@@Ш@г6$Namekf*lf.@=of/pf0@@@E@@H@@ @B@#>>yg2<zg2E@4A@Ш@гB&optiong2Lg2R@гG#mmtg2Hg2K@@O̰@@@TͰ @@W@@ @N@#JJhT^hTe@>A@Ш@гN&optionhTxhT~@гS*Odoc_typeshThhTr@ZhTshTw@@@b@@@g @@j@@ @_@@A@@+۠۰jj@@;@@'ma_name@@!t@@@ jj@@[@)ma_moduleA@3@@@ @@@ jj@@\@@@A@@@@@@@@@#  j@@@Ш@г#$Namejj@*jj@@@22@@5@@ 5@/@#++jj@!A@Ш@г/&optionjj@г4#mmtjj@@<N@@@AO @@D@@ R@;@@A@3@+11kk@@;@@'mp_name@@@@@ $%l&l@@>]@'mp_typeG@@%Types+module_type@@@X@@@Z:m;m@@S_@,mp_type_codeH@@@@@]Fn Gn6@@_`@'mp_kindI@@M@@@`Ro79So7T@@ka@@@A@@@@@l@@@i@#::5Zl@4@@Ш@г=&stringcldl@@E@@H@@ %@D@#@@2lm@1@@Ш@гC&optionumvm@гH%Typesmm @Mm m@@@WŰ@@@\ư @@_@@[@R@#NNIn,@H@@Ш@гQ&stringn/n5@@Yذ@@\@@^@X@#TTOo7@@N@@Ш@гW0module_type_kindo7Co7S@@_@@b@@a@^@@A@@+ĠİqW[qWf@@;@@-Module_structJ=@@@c@@@e@@rimri@@b@,Module_aliasK@@@f@@ss@@c@.Module_functorL@@@g@@@h@@tt@@d@,Module_applyM@@@i @@@j@@uu @@e@1Module_apply_unitN@@@k@@ v   v  :@@"f@+Module_withO@@@l@@@m@@w ; =w ; g@@5g@1Module_constraintP;@@@n*@@@o@@/x h j0x h @@Hh@-Module_typeofQ @@@p@@=y  >y  @@Vi@-Module_unpackR@@@qS@@@r@@Pz  ^@@hj@@@A@@@@@a@@@^@#Wriz@@г$list`ri@г.module_elementhri~iri@@@@@@@@@@#psqs@@г,module_aliaszs@@@@@@@#tt@@г0module_parametertt@@ʰ@@г+module_kindt@@Ӱ@@@@@#uu@@г+module_kinduu @@@@г+module_kindu @@@@@@@#v  v  +@@г+module_kindv  /@@@@@@@#w ; ?w ; J@@г0module_type_kindw ; Nw ; ^@@@@г&stringw ; a@@@@@@@#x h lx h }@@г+module_kindx h x h @@(@@г 0module_type_kindx h @@1@@@@@# °y  y  @@гĠ&stringy  @@A@@@@@#Ġİz   z  @@гƠ&stringz  z  @@R@@гˠ1module_type_aliasz  *@@[+@@@@@@A@-@+##"{  #{  @@;@@&m_nameS@@x!t@@@s1|  2|  @@Jk@&m_typeTA@+module_type@@@v?}  @}  5@@Xl@&m_infoUA@$info@@@y@@@{R~ 6 8S~ 6 `@@km@.m_is_interfaceV@@@@@~^ a c_ a y@@wn@&m_fileW@@6@@@j@ z |k@ z @@o@&m_kindXA@@@@vA  wA  @@p@%m_locYA@(location@@@B  B  @@q@*m_top_depsZA@ !t@@@@@@C  C  @@r@&m_code[A@s@@@@@@D  D  @@s@+m_code_intf\A@@@@@@@E  E  @@@t@+m_text_only]@@@@@F A CF A V@@u@@@A@@@@@@@@@#|  @@@Ш@г$Name|  |  @|  |  @@@@@@@t @@#}  }  @A@Ш@г%Types}  #}  (@}  )}  4@@@7@@@@w:@@#~ 6 @~ 6 F@A@Ш@г&option ~ 6 Y ~ 6 _@гà*Odoc_types~ 6 I~ 6 S@ʰ~ 6 T~ 6 X@@@Z@@@[ @@@@|^@@#ˠ˰$ a q@@@Ш@гΠ$bool- a t. a x@@m@@@@p@@#ѠѰ6@ z @@@Ш@гԠ&string?@ z @@ z @@@@@@@@#נװHA  IA  @A@Ш@г۠+module_kindRA  SA  @@@@@@@@#ޠް[B  \B  @A@Ш@г⠡*Odoc_typesgB  hB  @kB  lB  @@@@@@@@@#uC  vC  @A@Ш@г$listC  C  @г󠡠$NameC  C  @C  C  @@@ϰ@@@а @@ @@@@#D  D  @A@Ш@г&optionD  D  @г&stringD  D  @@ @@@ @@@@@ @#E  $E  /@A@Ш@г &optionE  9E  ?@г&stringE  2E  8@@ @@@  @@ @@ @@#F A N@ @@Ш@г$boolF A QF A U@@@@!@@@@@A@@+H Y ]H Y n@@;@@(mta_name^@@;!t@@@I s uI s @@ v@*mta_module_A@^@@@@@@ J   J  @@ w@@@A@@@@@ @@@@#   I s }@@@Ш@г#$Name I s  I s @* I s  I s @@@2]@@5@@`@/@#++ &J   'J  @!A@Ш@г/&option 0J   1J  @г4-t_module_type 9J   :J  @@<y@@@Az @@D@@}@;@@A@@@+>> CL   DL  @@;@@2Module_type_struct`͠h@@@@@@@@ WM   XM  @@ px@3Module_type_functora~@@@e@@@@@ jN   kN  :@@ y@1Module_type_aliasb{@@@@@ xO ; = yO ; e@@ z@0Module_type_withc@@@ W@@@@@ P f h P f @@ {@2Module_type_typeofd e@@@@@ Q  @@ |@@@A@@@@@@@@@#UUI M  @H@гV$list M  R@гZ.module_element M   M  @@b@@@g]@@@@_@#[[ N   N  @O@г]0module_parameter N   N  '@@e@@гb0module_type_kind N  *c@@i d@@@@f@#bb O ; ? O ; P@[@гd1module_type_alias O ; Te@@kf@@@@h@#dd P f j P f z@X@гf0module_type_kind P f ~ P f @@n-@@гk&string P f l@@r6m@@@@o@#kk Q   Q  @e@гm&string Q  @@tF@@@@q@@A@@+ R   R  @@;@@'mt_namee@@c!t@@@ S   S  @@ 5}@'mt_infofA@ $info@@@@@@ /T   0T  @@ H~@'mt_typegA@  +module_type@@@@@@ BU   CU  <@@ [@/mt_is_interfaceh@@ @@@ NV = ? OV = V@@ g@@'mt_filei@@ &@@@ ZW W Y [W W j@@ sA@'mt_kindjA@ Ġe@@@@@@ư kX k m lX k @@ B@&mt_lockA@(location@@@ɰ yY   zY  @@ C@@@A@@@@@o@@@l@#lle S  @d@@Ш@гo$Name S   S  @v S   S  @@@~Ѱ@@@@@{@#ww T   T  @kA@Ш@г{&option T   T  @г*Odoc_types T   T  @ T   T  @@@@@@ @@@@@@# U   U  @|A@Ш@г&option U  5 U  ;@г%Types U  # U  (@ U  ) U  4@@@@@@ @@@@@@# V = N@@@Ш@г$bool V = Q V = U@@+@@@@.@@# W W `@@@Ш@г&string W W c W W i@@=@@@@@@@# X k u X k |@A@Ш@г&option X k  X k @г0module_type_kind X k  X k @@Y@@@Z @@@@]@@# #Y   $Y  @A@Ш@г*Odoc_types /Y   0Y  @ 3Y   4Y  @@@t@@@@w@@@A@,@@ V+@ M L/ {1 Functions}  I\   J\  @@@@@@3 H H H H H H H H@ r IGS[o Y2iq<y 9/r j d@A&valuesl ^^   _^  @б@г ⠐$list i^   j^  @г .module_element s^   t^  @@ @@@-@@@@@@2 @@г $list ^  ^ @г <'t_value*Odoc_value ^   ^ @  ^  ^ @@@@@@R @@@ @@@W@@@,@@Z3 @@@ ^  #@ ; Returns the list of values from a list of module_element.  _ _U@@@@@@@ D@@3@  ɐ@@@@@@y%typesm aW[ aW`@б@г P$list aWr aWv@г .module_element aWc aWq@@ @@@3        @B@A@@@ @@@ @@г n$list aW aW@г v&t_type)Odoc_type aWz aW@  aW aW@@@@@@' @@@ @@@,@@@,@@/5 @@@ aWW#@ z : Returns the list of types from a list of module_element.  %b &b@@@@@@@ >E@@3@  9@@@@@@N/type_extensionsn <d =d@б@г $list Ge He@г a.module_element Qe Re@@ @@@3 S S S S S S S S@qB@A@@@ @@@ @@г ޠ$list ee  fe$@г 0t_type_extension.Odoc_extension se te@  we xe@@@@@@' @@@ @@@,@@@,@@/5 @@@ d#@ ꐠ D Returns the list of type extensions from a list of module_element.  f%% f%n@@@@@@@ F@@3@  @@@@@@N*exceptionso hpt hp~@б@г 0$list hp hp@г Ѡ.module_element hp hp@@ @@@3        @qB@A@@@ @@@ @@г N$list hp hp@г h+t_exception.Odoc_exception hp hp@  hp hp@@@@@@' @@@ @@@,@@@,@@/5 @@@ hpp#@ Z ? Returns the list of exceptions from a list of module_element.  i i@@@@@@@ G@@3@ j @@@@@@N'classesp k k @б@г $list 'k (k@г A.module_element 1k  2k@@ @@@3 3 3 3 3 3 3 3 3@qB@A@@@ @@@ @@г $list Ek6 Fk:@г 't_class*Odoc_class Sk# Tk-@  Wk. Xk5@@@@@@' @@@ @@@,@@@,@@/5 @@@ hk#@ ʐ < Returns the list of classes from a list of module_element.  ul;; vl;|@@@@@@@ H@@3@  @@@@@@N+class_typesq n~ n~@б@г $list n~ n~@г .module_element n~ n~@@ @@@3        @qB@A@@@ @@@ @@г .$list n~ n~@г ,t_class_type*Odoc_class n~ n~@  n~ n~@@@@@@' @@@ @@@,@@@,@@/5 @@@ n~~#@ : @ Returns the list of class types from a list of module_element.  o o @@@@@@@ I@@3@ J @@@@@@N'modulesr q  q @б@г $listq (q ,@г !.module_elementq q '@@ @@@3@qB@A@@@ @@@ @@г $list%q 9&q =@г .(t_module/q 00q 8@@ @@@@@@@@@# @@@#@@&,@@@?q  @ < Returns the list of modules from a list of module_element. Lr>>Mr>@@@@@@@eJ@@*@ `@@@@@@E)mod_typessctdt@б@г 砐$listntot@г .module_elementxtyt@@ @@@3zzzzzzzz@hB@A@@@ @@@ @@г$listtt@г -t_module_typett@@ @@@@@@@@@# @@@#@@&,@@@t@  A Returns the list of module types from a list of module_element. uu@@@@@@@K@@*@ ǐ@@@@@@E(commentstww@б@гN$listw!w%@г .module_elementww @@ @@@3@hB@A@@@ @@@ @@гl$listw9w=@г b$text*Odoc_typesw)w3@ w4w8@@@@@@' @@@ @@@,@@@,@@/5 @@@w#@ x C Returns the list of module comment from a list of module_element. #x>>$x>@@@@@@@<L@@3@ 7@@@@@@N0included_modulesu:z;z@б@г$listEzFz@г _.module_elementOzPz@@ @@@3QQQQQQQQ@qB@A@@@ @@@ @@гܠ$listczdz@г L/included_modulemznz@@ @@@@@@@@@# @@@#@@&,@@@}z@ ߐ E Returns the list of included modules from a list of module_element. {{@@@@@@@M@@*@ @@@@@@E4module_type_elementsv}}/@б%transгi$bool~2;~2?@@ @@@3@`:@A@@б@г -t_module_type~2C~2P@@ @@@@@гE$list~2c~2g@г 栐.module_element~2T~2b@@ @@@(@@@@@@- @@@"@@0%@@AI:@@@ @@8~24 @@ @}#@ Q Returns the list of elements of a module type. @param trans indicates if, for aliased modules, we must perform a transitive search.hh@@@@@@@N@@3@ a@@@@@@X/module_elementsw @б%transг۠$bool !@@ @@@3""""""""@s:@A@@б@г0(t_module12#@@ @@@@@г$list>6?:@гX.module_elementH'I5@@ @@@(@@@@@@- @@@"@@0%@@Ar9@@@  @@ 7] @@ @`"@  Returns the list of elements of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. m;;n@@@@@@@O@@2@ @@@@@@W-module_valuesx@б%transгL$bool@@ @@@ 3@r:@A@@б@г(t_module@@ @@@ @@г($list @гf't_value*Odoc_value@ @@@@@@ 1 @@@ @@@6@@@+@@9. @@JB@@@ @@@(@@ @+@<  Returns the list of values of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.  8@@@@@@@P@@;@L@@@@@@`0module_functionsy@б%transгƠ$bool  @@ @@@3        @{:@A@@б@г(t_module@@ @@@@@г$list)*@г't_value*Odoc_value78@ ;<@@@@@@1 @@@ @@@6@@@+@@9. @@JfB@@@ @@@Q(@@ @T+@ Returns the list of functional values of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.abk@@@@@@@zQ@@;@u@@@@@@`4module_simple_valueszxmqym@б%transг@$boolmm@@ @@@3@{:@A@@б@г(t_modulemm@@ @@@@@г$listmm@гZ't_value*Odoc_valuemm@ mm@@@@@@1 @@@ @@@6@@@+@@ 9. @@JB@@@! @@"@m(@@ @mm+@0 Returns the list of non-functional values of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.N@@@@@@@R@@;@@@@@@@@`,module_types{PTP`@б%transг$boolPjPn@@ @@@#3@{:@A@@б@г(t_modulePrPz@@ @@@$@@г$listPP@г&t_type)Odoc_type+P~,P@ /P0P@@@@@@%1 @@@ @@@'6@@@+@@(9. @@JZB@@@) @@*@EPc(@@ @HPP+@ ~ Returns the list of types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.UV@@@@@@@nS@@;@i@@@@@@`6module_type_extensions|lm3@б%transг4$booly6?z6C@@ @@@+3{{{{{{{{@{:@A@@б@г(t_module6G6O@@ @@@,@@г$list6s6w@г<0t_type_extension.Odoc_extension6S6a@ 6b6r@@@@@@-1 @@@ @@@/6@@@+@@09. @@JԠB@@@1 @@2@68(@@ @+@$ Returns the list of type extensions of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.xx@@@@@@@T@@;@4㐠@@@@@@`1module_exceptions} @б%transг$bool(,@@ @@@33@{:@A@@б@г(t_module08@@ @@@4@@г$listW[@г+t_exception.Odoc_exception< J@ #K$V@@@@@@51 @@@ @@@76@@@+@@89. @@JNB@@@9 @@:@9!(@@ @<+@ Returns the list of exceptions of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.I\\J@@@@@@@bU@@;@]@@@@@@`.module_classes~`a@б%transг($boolmn@@ @@@;3oooooooo@{:@A@@б@г}(t_module~ @@ @@@<@@г$list)-@гd't_class*Odoc_class @ !(@@@@@@=1 @@@ @@@?6@@@+@@@9. @@JȠB@@@A @@B@(@@ @+@ Returns the list of classes of a module. @param trans indicates if, for aliased modules, we must perform a transitive search...[@@@@@@@V@@;@(א@@@@@@`2module_class_types@б%transг$bool@@ @@@C3@{:@A@@б@г(t_module@@ @@@D@@г~$list@г,t_class_type*Odoc_class@ @@@@@@E1 @@@ @@@G6@@@+@@H9. @@JBB@@@I @@J@-(@@ @0+@ Returns the list of class types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.=>9@@@@@@@VW@@;@Q@@@@@@`.module_modulesTU@б%transг$boolab@@ @@@K3cccccccc@{:@A@@б@гq(t_modulers@@ @@@L@@г$list@г(t_module@@ @@@M(@@@@@@O- @@@"@@P0%@@A9@@@Q @@R7@@ @"@ Returns the list of modules of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.V@@@@@@@X@@2@@@@@@@W3module_module_typesX\Xo@б%transг$boolXyX}@@ @@@S3@r:@A@@б@г⠐(t_moduleXX@@ @@@T@@гi$listXX@г預-t_module_typeXX@@ @@@U(@@@@@@W- @@@"@@X0%@@A$9@@@Y @@Z7Xr@@ @XX"@t Returns the list of module types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. *@@@@@@@8Y@@2@3@@@@@@W7module_included_modules6,07,G@б%transг$boolC,QD,U@@ @@@[3EEEEEEEE@r:@A@@б@гS(t_moduleT,YU,a@@ @@@\@@гڠ$lista,ub,y@гJ/included_modulek,el,t@@ @@@](@@@@@@_- @@@"@@`0%@@A9@@@a @@b7,J@@ @,,"@吠 Returns the list of included module of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.zz@@@@@@@Z@@2@@@@@@@W/module_comments   @б%transгo$bool & *@@ @@@c3@r:@A@@б@гĠ(t_module . 6@@ @@@d@@гK$list J N@гA$text*Odoc_types : D@  E I@@@@@@e1 @@@ @@@g6@@@+@@h9. @@JB@@@i @@j@ (@@ @  +@_ Returns the list of comments of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. OO }@@@@@@@#[@@;@o@@@@@@`6module_type_parameters!"@б%transг預$bool./@@ @@@k300000000@{:@A@@б@г.-t_module_type?@@@ @@@l@@гŠ$listLDMH@В@гq0module_parameterZ[)@@ @@@m,@@@гŠ&optioni<jB@г$text*Odoc_typesw,x6@ {7|;@@@@@@nN @@@ @@@pS@@@@/@ @@qZ4$@@@I @@@s_G@@@U@@tcXJ@@tl@@@u @@vjR@@ @U@ Access to the parameters, for a functor type. @param trans indicates if, for aliased modules, we must perform a transitive search.II{@@@@@@@\@@e@@@@@@@1module_parameters@б%transг$bool@@ @@@w3@:@A@@б@г⠐(t_module @@ @@@x@@гi$list 6 :@В@г0module_parameter  @@ @@@y,@@@гi&option  . 4@г|$text*Odoc_types  (@  )  -@@@@@@zN @@@ @@@|S@@@@/@ @@}Z4$@@@I @@@_7 G@@@U@@cXJ@@tWl@@@ @@jBR@@ @EU@ Access to the parameters, for a functor. @param trans indicates if, for aliased modules, we must perform a transitive search.R ; ;S h @@@@@@@k]@@e@f@@@@@@5module_all_submodulesi  j  @б%transг1$boolv  w  @@ @@@3xxxxxxxx@:@A@@б@г(t_module    @@ @@@@@г $list ! !@г(t_module   !@@ @@@(@@@@@@- @@@"@@0%@@AȠ9@@@ @@7  @@ @  "@ access to all submodules and submodules of submodules ... of the given module. @param trans indicates if, for aliased modules, we must perform a transitive search.!!![!@@@@@@@^@@2@(א@@@@@@W6module_type_is_functor!!!!@б@гԠ-t_module_type!!!!@@ @@@3@p8@A@@г$bool!!!!@@ @@@@@@@@@@@!! @a ` The module type is a functor if it is defined as a functor or if it is an alias for a functor.  !! !"M@@@@@@@%_@@@q @@@@@@11module_is_functor#"O"S$"O"d@б@г-(t_module."O"g/"O"o@@ @@@300000000@J_8@A@@г$bool="O"s>"O"w@@ @@@@@@@@@@@H"O"O @ [ The module is a functor if it is defined as a functor or if it is an alias for a functor. U"x"xV"x"@@@@@@@n`@@@i@@@@@@12module_type_valuesl""m""@б%transг4$booly""z"#@@ @@@3{{{{{{{{@La:@A@@б@гy-t_module_type"#"#@@ @@@@@г$list"#("#,@гN't_value*Odoc_value"#"#@ "# "#'@@@@@@1 @@@ @@@6@@@+@@9. @@JԠB@@@ @@@""(@@ @""+@$ Returns the list of values of a module type. @param trans indicates if, for aliased modules, we must perform a transitive search.#-#-#^#@@@@@@@a@@;@4㐠@@@@@@`1module_type_types####@б%transг$bool####@@ @@@3@{:@A@@б@г-t_module_type####@@ @@@@@г$list#$#$@г&t_type)Odoc_type## ##@ ###$#$@@@@@@1 @@@ @@@6@@@+@@9. @@J NB@@@ @@@9##(@@ @<##+@ ~ Returns the list of types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.I$$J$1$@@@@@@@bb@@;@]@@@@@@`;module_type_type_extensions`$$a$$@б%transг($boolm$$n$$@@ @@@3oooooooo@{:@A@@б@гm-t_module_type~$$$$@@ @@@@@г$list$$$$@г00t_type_extension.Odoc_extension$$$$@ $$$$@@@@@@1 @@@ @@@6@@@+@@9. @@J ȠB@@@ @@@$$(@@ @$$+@ Returns the list of type extensions of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.$$%)%@@@@@@@c@@;@(א@@@@@@`6module_type_exceptions%%%%@б%transг$bool%%%%@@ @@@3@{:@A@@б@г砐-t_module_type%%%%@@ @@@@@г~$list%%%%@г+t_exception.Odoc_exception%%%%@ %%%%@@@@@@1 @@@ @@@6@@@+@@9. @@J BB@@@ @@@-%%(@@ @0%%+@ Returns the list of exceptions of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.=%%>&&j@@@@@@@Vd@@;@Q@@@@@@`3module_type_classesT&l&pU&l&@б%transг$boola&&b&&@@ @@@3cccccccc@{:@A@@б@гa-t_module_typer&&s&&@@ @@@@@г$list&&&&@гX't_class*Odoc_class&&&&@ &&&&@@@@@@1 @@@ @@@6@@@+@@9. @@J B@@@ @@@&&(@@ @&l&l+@ Returns the list of classes of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.&&&'E@@@@@@@e@@;@ː@@@@@@`7module_type_class_types'G'K'G'b@б%transг$bool'e'n'e'r@@ @@@3@{:@A@@б@г۠-t_module_type'e'v'e'@@ @@@@@гr$list'e''e'@г,t_class_type*Odoc_class'e''e'@  'e' 'e'@@@@@@1 @@@ @@@6@@@+@@9. @@J 6B@@@ @@@!'e'g(@@ @$'G'G+@ Returns the list of class types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.1''2'(-@@@@@@@Jf@@;@E@@@@@@`3module_type_modulesH(/(3I(/(F@б%transг$boolU(/(PV(/(T@@ @@@3WWWWWWWW@{:@A@@б@гU-t_module_typef(/(Xg(/(e@@ @@@@@г점$lists(/(rt(/(v@г|(t_module}(/(i~(/(q@@ @@@(@@@@@@- @@@"@@0%@@A 9@@@ @@7(/(I@@ @(/(/"@ Returns the list of modules of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.(w(w((@@@@@@@g@@2@@@@@@@W8module_type_module_types()()@б%transг$bool))&))*@@ @@@3@r:@A@@б@гƠ-t_module_type)).));@@ @@@@@г]$list))M))Q@гݠ-t_module_type))?))L@@ @@@(@@@@@@- @@@"@@0%@@A 9@@@ @@7))@@ @(("@h Returns the list of module types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.)R)R))@@@@@@@,h@@2@x'@@@@@@W/included_module_**#`**2@@ @@@(@@@@@@- @@@"@@0%@@A 9@@@ @@7t**@@ @w))"@ِ Returns the list of included module of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.*8*8*m*@@@@@@@i@@2@@@@@@@W4module_type_comments****@б%transгc$bool****@@ @@@3@r:@A@@б@г-t_module_type***+@@ @@@@@г?$list*+*+@г5$text*Odoc_types*+*+@ *+*+@@@@@@1 @@@ @@@6@@@+@@9. @@J B@@@ @@@**(@@ @**+@S Returns the list of comments of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.+++G+@@@@@@@j@@;@c@@@@@@`5module_type_functions++++@б%transгݠ$bool"++#++@@ @@@3$$$$$$$$@{:@A@@б@г"-t_module_type3++4++@@ @@@@@г$list@++A++@г't_value*Odoc_valueN++O++@ R++S++@@@@@@1 @@@ @@@6@@@+@@9. @@J }B@@@ @@@h++(@@ @k+++@͐ Returns the list of functional values of a module type. @param trans indicates if, for aliased modules, we must perform a transitive search.x++y,3,@@@@@@@k@@;@@@@@@@`9module_type_simple_values,,,,@б%transгW$bool,,,,@@ @@@3@{:@A@@б@г-t_module_type,,,,@@ @@@@@г3$list,,,,@гq't_value*Odoc_value,,,,@ ,,,,@@@@@@1 @@@ @@@6@@@+@@9. @@J B@@@ @@@,,(@@ @,,+@G Returns the list of non-functional values of a module type. @param trans indicates if, for aliased modules, we must perform a transitive search.,,-'-@@@@@@@ l@@;@W@@@@@@` , {1 Functions for modules and module types}  -- --@@@@@@3@r1@A2module_all_classes -- --@б%transг䠐$bool) --* --@@ @@@@@б@г7(t_module8 --9 --@@ @@@+@@г$listE --F --@г't_class*Odoc_classS --T --@ W --X --@@@@@@K @@@ @@@P@@@+@@S. @@H@@@@ @@Zm --(@@ @p --+@Ґ The list of classes defined in this module and all its modules, functors, .... @param trans indicates if, for aliased modules, we must perform a transitive search.} ..~ .S.@@@@@@@m@@;@@@@@@@z7module_type_all_classes....@б%transг\$bool....@@ @@@3@:@A@@б@г-t_module_type....@@ @@@@@г8$list././@г't_class*Odoc_class....@ ....@@@@@@1 @@@ @@@6@@@+@@9. @@JB@@@ @@@..(@@ @..+@L The list of classes defined in this module type and all its modules, functors, .... @param trans indicates if, for aliased modules, we must perform a transitive search.///]/@@@@@@@n@@;@\ @@@@@@`@A]@[{@@UAC@=O@@"A@A,B@B@7XB@1B@+cB@B@!5B@B@B@|@\@@2@@V@6@@l@@I@)@b@B @  r@ R @  @ b @  @ r @  @  <@  @  U@ 5@@@[@;@@|$@@4@@D@$@f@F@@_@@\@@@3ssssssss@@A@ H************************************************************************|A@@}A@L@ H BMMBM@ H OCaml CC@ H DD3@ H Sebastien Hinderer, projet Cambium, INRIA Paris E44E4@ H FF@ H Copyright 2022 Institut National de Recherche en Informatique et GG@ H en Automatique. HHg@ H IhhIh@ H All rights reserved. This file is distributed under the terms of JJ@ H the GNU Lesser General Public License version 2.1, with the KKN@ H special exception on linking described in the file LICENSE. LOOLO@ H MM@ H************************************************************************NN5@ ?* Representation and manipulation of modules and module types. Р,* {1 Types}  -* To keep the order of elements in a module. )0* {1 Functions}  <* Returns the list of values from a list of module_element. ' ;* Returns the list of types from a list of module_element.  E* Returns the list of type extensions from a list of module_element. M @* Returns the list of exceptions from a list of module_element. ࠠ =* Returns the list of classes from a list of module_element. s A* Returns the list of class types from a list of module_element.  =* Returns the list of modules from a list of module_element.  B* Returns the list of module types from a list of module_element. > D* Returns the list of module comment from a list of module_element. Ѡ F* Returns the list of included modules from a list of module_element. m * Returns the list of elements of a module type. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of elements of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.  * Returns the list of values of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of functional values of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of non-functional values of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.+ * Returns the list of types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of type extensions of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. = * Returns the list of exceptions of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. Ơ * Returns the list of classes of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. O * Returns the list of class types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. ؠ * Returns the list of modules of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. j * Returns the list of module types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of included module of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of comments of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.  * Access to the parameters, for a functor type. @param trans indicates if, for aliased modules, we must perform a transitive search. v * Access to the parameters, for a functor. @param trans indicates if, for aliased modules, we must perform a transitive search.ՠ * access to all submodules and submodules of submodules ... of the given module. @param trans indicates if, for aliased modules, we must perform a transitive search.g a* The module type is a functor if it is defined as a functor or if it is an alias for a functor. ! \* The module is a functor if it is defined as a functor or if it is an alias for a functor. ۠ * Returns the list of values of a module type. @param trans indicates if, for aliased modules, we must perform a transitive search.d * Returns the list of types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of type extensions of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.v * Returns the list of exceptions of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of classes of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of class types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of modules of a module. @param trans indicates if, for aliased modules, we must perform a transitive search. * Returns the list of module types of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.5 * Returns the list of included module of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.Ǡ * Returns the list of comments of a module. @param trans indicates if, for aliased modules, we must perform a transitive search.P * Returns the list of functional values of a module type. @param trans indicates if, for aliased modules, we must perform a transitive search.٠ * Returns the list of non-functional values of a module type. @param trans indicates if, for aliased modules, we must perform a transitive search.b -* {1 Functions for modules and module types} G * The list of classes defined in this module and all its modules, functors, .... @param trans indicates if, for aliased modules, we must perform a transitive search.ݠ * The list of classes defined in this module type and all its modules, functors, .... @param trans indicates if, for aliased modules, we must perform a transitive search.f@,./ocamlc.opt)-nostdlib"-I(./stdlib"-g0-strict-sequence*-principal(-absname"-w8+a-4-9-40-41-42-44-45-48+-warn-error"+a*-bin-annot/-strict-formats"-I(ocamldoc"-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  S/home/teraram/ci/builds/workspace/parallel-build/flambda/true/label/ocaml-manycores <10/.-,+*)('&%$#"! @@0AڨBw 3        @ @@(Asttypes0>n{T8cئ5Build_path_prefix_map0z HkGs8CamlinternalFormatBasics0%FU(Q/Tu0CamlinternalLazy0&͂7 Pˆ*Format_doc0]mWϓ:Mݠ%Ident0">WA+9*X,Identifiable0 {d\FX'`(Location0a7cK_H%9)Longident0s `7mɕcE0ob]6>Vê>0_"#C{O0>@ӽX4Idj0?*sR(6]!$.! 0z8P*%"e$Path0Y2kf֯J._Ϡ)Primitive0²~$xzT෠%Shape0oNՄBH&Stdlib0Lku]8_٠.Stdlib__Buffer08APF< t..Stdlib__Digest0l!LHgErζ .Stdlib__Domain0:M;׉<O$Ġ.Stdlib__Either0Vy`u~c à.Stdlib__Format0ܚ#G7m|/Stdlib__Hashtbl0ѱN][/!,Stdlib__Lazy0* -S$.)"0D.Stdlib__Lexing0e<.V +Stdlib__Map0L5xE|O0~,J-.Stdlib__Result06 ]/J+Stdlib__Seq0nwzG&amg+Stdlib__Set0\$;7 .Stdlib__String0h<)@װʕ) P Z@8@7/]@  Ɠ“@ k @N  @Y@ QΓzm@0@@9&@@@8@@J.@  @ - g`˰ ,-@ @@ 9 @Ef F@ ()@F+/@֕2_.@ 6 YH@ @,@@s@ ,/@̐-ؓ@Ε@@P@@