h*      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~0.5.1Safe7< strictThe strict choice type.strictCase analysis: if the value is  a, apply the first function to a ; if it is  b, apply the second function to b.strictYields ! iff the argument is of the form Left _.strictYields ! iff the argument is of the form Right _.strictExtracts the element out of a + and throws an error if the argument is a .strictExtracts the element out of a + and throws an error if the argument is a .strict Analogous to   in  Data.Either. strict Analogous to   in  Data.Either. strict Analogous to   in  Data.Either.   Safe7< *strict#The type of strict optional values.-strictYields ! iff the argument is of the form Just _..strictYields  iff the argument is +./strictExtracts the element out of a ,) and throws an error if the argument is +.0strictGiven a default value and a *", yield the default value if the * argument is +" and extract the value out of the , otherwise.1strict(Given a default value, a function and a *) value, yields the default value if the * value is +6 and applies the function to the value stored in the , otherwise.2strict Analogous to   in  Data.Maybe.3strict Analogous to   in  Data.Maybe.4strict Analogous to  in  Data.Maybe.5strict Analogous to  in  Data.Maybe. *+,-./012345 *+,-./012345Safe"7< KKstrictThe strict these type.OstrictCase analysis for the K type.Pstrict.Takes two default values and produces a tuple.Qstrict%Coalesce with the provided operation.Rstrict2 and coalesce results with the provided operation.Sstrict?Select each constructor and partition them into separate lists.TstrictSelect here and there1 elements and partition them into separate lists.UstrictLike  but for  types.either all are either all are or there is both  and  stuffNote: this is not online algorithm. In the worst case it will traverse the whole list before deciding the result constructor.,partitionEithersNE $ Left 'x' :| [Right 'y']These ('x' :| "") ('y' :| "").partitionEithersNE $ Left 'x' :| map Left "yz"This ('x' :| "yz")KNLMOPQRSTUVWXYKNLMOPQRSTUVWXYSafe7<; |strictThe type of strict pairs.~strict-Extract the first component of a strict pair.strict.Extract the second component of a strict pair.strict!Curry a function on strict pairs.strict9Convert a curried function to a function on strict pairs.strict Analogous to  from  Data.Tuplestrict,Zip for strict pairs (defined with zipWith).strict2Unzip for stict pairs into a (lazy) pair of lists.strictreadsPrec2 0 "'a' :!: ('b' :!: 'c')" :: [(Pair Char (Pair Char Char), String)][('a' :!: ('b' :!: 'c'),"")]readsPrec2 0 "('a' :!: 'b') :!: 'c'" :: [(Pair (Pair Char Char) Char, String)][(('a' :!: 'b') :!: 'c',"")] |}{~ |}{~{2}2SafestrictAd hoc conversion between "strict" and "lazy" versions of a structure.Unfortunately all externally defined instances are doomed to be orphans:  1https://gitlab.haskell.org/ghc/ghc/-/issues/11999 See also  4https://qfpl.io/posts/orphans-and-fundeps/index.html forSafe3KNLMOPQRSTUVWXY|}{~*+,1-./03245 (c) Don Stewart 2007/BSD-style (see the file libraries/base/LICENSE)dons@galois.comstableportableSafestrict Computation  hdl returns the list of characters corresponding to the unread portion of the channel or file managed by hdl, which is immediate closed..Items are read strictly from the input Handle.This operation may fail with: isEOFError% if the end of file has been reached.strictThe  operation returns all user input as a single string, which is read stirctly (same as  stdin).strictThe # function takes a function of type String->String as its argument. The entire input from the standard input device is passed to this function as its argument, and the resulting string is output on the standard output device.strictThe  function reads a file and returns the contents of the file as a string. The file is read strictly, as with .    !"#$%&'()*+,-./0123456789:;<=>?@  ABCDEFGHIJKLMNOPQRSTUVWXVYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ #strict-0.5.1-CGNsivZhFfR7ssgu68HkPFData.Strict.EitherData.Strict.MaybeData.Strict.TheseData.Strict.TupleData.Strict.ClassesSystem.IO.StrictstrictLleftsrightspartitionEithers listToMaybe maybeToList catMaybesmapMaybeswap Data.StrictEitherLeftRighteitherisLeftisRightfromLeft fromRight $fRead1Either $fRead2Either $fShow2Either $fShow1Either $fOrd1Either $fOrd2Either $fEq1Either $fEq2Either $fSwapEither $fAssocEither$fHashable2Either$fHashable1Either$fHashableEither$fBitraversableEither$fBifoldableEither$fBifunctorEither$fBinaryEither$fNFData2Either$fNFData1Either$fNFDataEither$fSemigroupEither$fTraversableEither$fFoldableEither$fFunctorEither $fEqEither $fOrdEither $fReadEither $fShowEither $fDataEither$fGenericEither$fGeneric1TYPEEitherMaybeNothingJustisJust isNothingfromJust fromMaybemaybe $fRead1Maybe $fShow1Maybe $fOrd1Maybe $fEq1Maybe$fHashable1Maybe$fHashableMaybe $fBinaryMaybe$fNFData1Maybe $fNFDataMaybe$fTraversableMaybe$fFoldableMaybe$fFunctorMaybe $fMonoidMaybe$fSemigroupMaybe $fEqMaybe $fOrdMaybe $fReadMaybe $fShowMaybe $fDataMaybe$fGenericMaybe$fGeneric1TYPEMaybeTheseThisThatthese fromThese mergeThesemergeTheseWithpartitionThesepartitionHereTherepartitionEithersNEdistrThesePairundistrThesePairdistrPairTheseundistrPairThese$fHashable2These$fHashable1These$fHashableThese $fBinaryThese$fNFData2These$fNFData1These $fNFDataThese $fAssocThese $fSwapThese $fRead1These $fRead2These $fShow2These $fShow1These $fOrd1These $fOrd2These $fEq1These $fEq2These $fMonadThese$fApplicativeThese$fBitraversableThese$fBifoldableThese$fBifunctorThese$fTraversableThese$fFoldableThese$fFunctorThese$fSemigroupThese $fEqThese $fOrdThese $fReadThese $fShowThese $fDataThese$fGenericThese$fGeneric1TYPEThese:!:Pairfstsndcurryuncurryzipunzip $fRead1Pair $fRead2Pair $fShow2Pair $fShow1Pair $fOrd1Pair $fOrd2Pair $fEq1Pair $fEq2Pair $fSwapPair $fAssocPair$fHashable2Pair$fHashable1Pair$fHashablePair$fBitraversablePair$fBifoldablePair$fBifunctorPair $fBinaryPair $fNFData2Pair $fNFData1Pair $fNFDataPair $fMonoidPair$fSemigroupPair$fTraversablePair$fFoldablePair $fFunctorPair$fEqPair $fOrdPair $fReadPair $fShowPair $fDataPair $fGenericPair $fBoundedPair$fIxPair$fGeneric1TYPEPairStricttoStricttoLazy$fStrictWriterTWriterT$fStrictStateTStateT$fStrictRWSTRWST $fStrictSTST$fStrictTextText$fStrictByteStringByteString$fStrictTheseThese$fStrictEitherEither$fStrict(,)Pair$fStrictMaybeMaybe hGetContents getContentsinteractreadFileghc-prim GHC.TypesTruebaseData.Bifunctorbimap Data.EitherGHC.BaseNonEmpty