55.5.0+dev0-2025-04-28/$Pair!tA;!a@!b@@B@A@B@@B@@@YY@@@@@@5../../stdlib/pair.mliWW@@@@$Pair@@A@$make@!a@B@@!b@B@@@ @@@@@@@!Z"Z@@ A@@#fst@@!a@B@Ġ@!b@B@@@@@@>]?]*@@=B@@#snd@@!a@B@̠@!b@B@@@@@@[`HH\`H^@@ZC@@$swap@@!a@B@Ԡ@!b@B@@@@ @@@@@@~c||c|@@}D@@$fold@@!a@B@@!b@B@!c@B@@@@@@@@@@@@@@@hh@@E@@#map@@!a@B@!c@B@@@@@!b@B@!d@B@@@@@"@@@@"@@@@@@@@@@k88k8o@@F@@$iter@@!a@ B@$unit@@@@@@@!b@ B@@@@@@@@!@@@ @@@@@@@@@@nn@@G@@'map_fst@@!a@B@ !c@B@@@@@@!b@B@@@@@ @@@@@@@@q//Aq/\@@?H@@'map_snd@@!b@&B@!c@(B@@@@@!a@$B@@@@@ @@@ @@!@@"@mtnt@@lI@@%equal@@!a@9B@)@$bool!@@@*@@+@@,@@!b@;B@-@"@@@.@@/@@0@@%@@@1@@-@@@2'#@@@3@@4@@5@@6@@7@y11z<@@J@@'compare@@!a@LB@<@#int$@@@=@@>@@?@@!b@NB@@@%@@@A@@B@@C@@%@@@D@@-@@@E'&@@@F@@G@@H@@I@@J@~  K@@K@@@34Operations on pairs.@@@@#5.4@@@@@@@A5../../stdlib/pair.mliA%pairs%Pairs@@#&Pair.t33The type for pairs.@@@@@@@@@@@@+Y(Y@@A$@@@)Pair.make3(make a b- is the pair &(a, b)!.@@@@@@@@@@@@!@ #@@@@@(Pair.fst3*fst (a, b)$ is !a!.@@@@@@@@@@@@@@!@@$@@@(Pair.snd3*snd (a, b)$ is !b!.@@@@@@@@@@@@@;@>@@$@@@)Pair.swap3+swap (a, b)$ is &(b, a)!.@@@@@@@@@@@@@X@[@@$@@@A%iters)Iterators@@)Pair.fold3-fold f (a, b)) applies !f$ to !a% and !b!.@@@@@@@@@@@@-@.@1@,@@@@@(Pair.map3.map f g (a, b)) applies !f$ to !a% and !g$ to !b!.@@@@@@@@@@@@6@7@*@=@0@@"@@@)Pair.iter3/iter f g (a, b)/ first applies !f$ to !a+, and then !g$ to !b!.@@@@@@@@@@@@4@5@(@;@.@@!@@@,Pair.map_fst3+map_fst f p) applies !f$ to !p3's first component.@@@@@@@@@@@@(@)@,@ @@!@@@,Pair.map_snd3+map_snd f p) applies !f$ to !p4's second component.@@@@@@@@@@@@!@>"@C@F(@@@@@ A%preds:Predicates and comparisons@@*Pair.equal3?equal eqa eqb (a1, b1) (a2, b2)$ is $true0 if and only if )eqa a1 a2) and )eqb b1 b2* are both $true!.@@@@@@@@@@@@/@y0@|!@6@'@@>@/@@@@@,Pair.compare31compare cmpa cmpb ! is a total order on pairs using $cmpa ) to compare the first component, and $cmpb Q to compare the second component. It is implemented by a lexicographic order.@@@@@@@@@@@@@ @@&@@@.@@@@@@@@@@A@@@@@