Caml1999I037,Stdlib__Pair!t;!a@!b@@B@A@@ @@YY@@@@@@(pair.mliW{{W{@@@@!@@A@$make@!a@@!b@@@ @@@@@@@ZZ@@@@=@9@;@@a@@AV5Y4Y@)Not_foundZ#O@@@A^=a<a@-Out_of_memoryW#W@@@AfEiDi@.Stack_overflow^#_@@@AnMqLq@.Sys_blocked_io_#g@@@AvUyTy@)Sys_error[#o@j@@A^]@:Undefined_recursive_modulea#x@@w@s@u@@h@@Aon@:Continuation_already_takenb#@@@Awv@&Stdlib@A1 {1:pairs Pairs} UccUcy@@@@@@A+!tAW{W{@А!a@3@;@@@@@B@A@@@@@@@@GG@BB@@@W{{W{@)ocaml.doc吠5 The type for pairs. XX@@@@@@@@@@@@AW{W{@@BAА!b@;W{W{@@ @;C @B@A@LB@@B@@@YY@@@@@@63@@#@@AВ@А!aYW{W{@@@А!baW{F@@@ c G@@IF*ED@DD@@@D@D@@"TS@$make.Z/Z@б@А!a@B@376677777@6H@A=Z>Z@@б@А!b@B@JZKZ@@В@А!aTZUZ@@@А!b!\Z]Z@@@@-@ @@*@@@# @@- @@@5@@0.@@@mZ@ " [make a b] is the pair [(a, b)]. z[{[@@@@@@@A@@!@@@@@@@O#fst]]@б@В@А!a@B@3@hy8@A]]@@@А!b@B@]]@@@@@@@@@А!a!] ]@@@&@@!@@@]@򐠠6 [fst (a, b)] is [a]. ^^*@@@@@@@B@@@搠@@@@@@@#snd`,0`,3@б@В@А!a@B@3@Yn8@A`,5`,7@@@А!b@B@ `,: `,<@@@@@@@@@А!b`,@`,B@@@@@!@@@`,,@J6 [snd (a, b)] is [b]. *aCC+aC^@@@@@@@CC@@@Z>@@@@@@@$swapAc`dBc`h@б@В@А!a@B@3NMMNNNNN@Yn8@ATc`jUc`l@@@А!b@B@ac`obc`q@@@@@@@@@В@А!b rc`usc`w@@@А!a-(zc`z{c`|@@@@%@6@@1@@@" @@42 @@@c``@< [swap (a, b)] is [(b, a)]. d}}d}@@@@@@@D@@@@@@@@@S5 {1:iters Iterators} ff@@@@@@3@ez1@A$foldhh@б@б@А!a@B@hh@@б@А!b@B@%hh@@А!c@B@0hh@@@ @@5@@@%@@8 @@б@В@А!a/Bhh@@@А!b*Jhh@@@@>@3@@S@@А!c,W hh@@@1@@\@@@)@@_h@@@h @E - [fold f (a, b)] applies [f] to [a] and [b]. %i&i@@@@@@@>E@@@U9@@@@@@#map9kAkC@@@А!b'AkFkH@@@@M@0@@J@@В@А!cJRkLkN@@@А!d5ZkQkS@@@@Y@>@@c@@@" @@f- @@@<@@ik3@@@]@@mk%@@@k@萠 5 [map f g (a, b)] applies [f] to [a] and [g] to [b]. lTTlT@@@@@@@F@@&@ܐ@@@@@@$iternn@б@б@А!a@ B@3@6@Ann@@г$unitnn@@ @@@@@@@@@@б@б@А!b@ B@!nn@@г$unitnn@@ @@@0@@@@@3@@б@В@А!aB=+n,n@@@А!b)E3n4n@@@@Q@2@@N@@г砐$unitCnDn@@ @@@[@@@@@^!@@@0@@aOn @@@S@@eSn@@@Vn@ B [iter f g (a, b)] first applies [f] to [a], and then [g] to [b]. codo@@@@@@@|G@@#@w@@@@@@'map_fstzq{q@б@б@А!a@B@ 3@6@Aq!q#@@А!c@B@ q'q)@@@ @@@@б@В@А!a!q.q0@@@А!b@B@)q3q5@@@@5@@@2@@В@А!c2:q9q;@@@А!bBq>q@@@@@A@'@@K@@@" @@N2 @@@A@@Qq @@@q@ 5 [map_fst f p] applies [f] to [p]'s first component. rAArA{@@@@@@@H@@"@@@@@@@q'map_sndt}t}@б@б@А!b@&B@3        @6@At}t}@@А!c@(B@ t}t}@@@ @@@@б@В@А!a@$B@!1t}2t}@@@А!b.)9t}:t}@@@@@7@@2@@В@А!a:Jt}Kt}@@@А!c:BRt}St}@@@@-@C@@ K@@@" @@!N- @@@A@@"Qat}@@@dt}}@ 6 [map_snd f p] applies [f] to [p]'s second component. quru@@@@@@@I@@"@@@@@@@q & {1:preds Predicates and comparisons} ww@@@@@@3@1@A%equalyy@б@б@А!a@9B@)z #z %@@б@А!a  z )z +@@гp$boolz /z 3@@ @@@*/@@@@@+2@@@"@@,5 @@б@б@А!b@;B@-Bz 9z ;@@б@А!b Jz ?z A@@г$boolz Ez I@@ @@@.Y@@@@@/\@@@"@@0_ @@б@В@А!aViz Nz P@@@А!b4qz Sz U@@@@e@=@@1z@@б@В@А!aqz Yz [@@@А!bOz ^z `@@@@@X@@2@@г㠐$bool.z d/z h@@ @@@3@@@@@4!@@@4@@5? @@@N@@6=z 8@@@|@@7Az "@@@Dy@q m [equal eqa eqb (a1, b1) (a2, b2)] is [true] if and only if [eqa a1 a2] and [eqb b1 b2] are both [true]. Q{iiR|@@@@@@@jJ@@&@e@@@@@@'compareh~i~@б@б@А!a@LB@<3srrsssss@6@Ayz@@б@А!a @@г]#int@@ @@@=@@@!@@>@@@$@@? @@б@б@А!b@NB@@,  @@б@А!b 4  @@г#int  @@ @@@AC@@@@@BF@@@"@@CI @@б@В@А!aXS  @@@А!b4[  @@@@g@=@@Dd@@б@В@А!asn ! #@@@А!bOv & (@@@@@X@@E@@гР#int , /@@ @@@F@@@@@G!@@@4@@H? @@@N@@I  @@@|@@J@@@~@@ [compare cmpa cmpb] is a total order on pairs using [cmpa] to compare the first component, and [cmpb] to compare the second component. It is implemented by a lexicographic order.  @ 0 0!B  @@@@@@@9K@@&@P4@@@@@@@=A@ @r@R@@%@@d@f@F@@6@@3DCCDDDDD@8@A@ H************************************************************************MA@@NA@L@ H SBMMTBM@ H OCaml YCZC@ H _D`D3@ H The OCaml programmers eE44fE4@ H kFlF@ H Copyright 2024 Institut National de Recherche en Informatique et qGrG@ H en Automatique. wHxHg@ H }Ihh~Ih@ 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@ %* Operations on pairs. @since 5.4 2* {1:pairs Pairs} 6* The type for pairs. Š #* [make a b] is the pair [(a, b)]. 07* [fst (a, b)] is [a]. ۠7* [snd (a, b)] is [b]. =* [swap (a, b)] is [(b, a)]. 6* {1:iters Iterators}  .* [fold f (a, b)] applies [f] to [a] and [b].  6* [map f g (a, b)] applies [f] to [a] and [g] to [b].  C* [iter f g (a, b)] first applies [f] to [a], and then [g] to [b]. \ 6* [map_fst f p] applies [f] to [p]'s first component. ؠ 7* [map_snd f p] applies [f] to [p]'s second component. T '* {1:preds Predicates and comparisons} 9 n* [equal eqa eqb (a1, b1) (a2, b2)] is [true] if and only if [eqa a1 a2] and [eqb b1 b2] are both [true]. z * [compare cmpa cmpb] is a total order on pairs using [cmpa] to compare the first component, and [cmpb] to compare the second component. It is implemented by a lexicographic order. @?)../ocamlc0-strict-sequence(-absname"-w5+a-4-9-41-42-44-45-48"-g+-warn-error"+A*-bin-annot)-nostdlib*-principal"-o0stdlib__Pair.cmi"-cې [/home/teraram/ci/builds/workspace/parallel-build/flambda/false/label/ocaml-manycores/stdlib @@0.H4wh} x 3@@@8CamlinternalFormatBasics0%FU(Q/Tu&Stdlib0Lku]8_٠ 0C [ U?@0C [ U?ALC@@@@Ր@հY@(9Ͱِ"@r@@@5~@@@@Rv@@@P@@