}Ns\      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[None 3<DFQTV_*A set of laws associated with a typeclass.+Name of the typeclass whose laws are testedPairs of law name and propertyA convenience function for working testing properties in GHCi. See the test suite of this library for an example of how to integrate multiple properties into larger test suite.VA convenience function for checking multiple typeclass instances of multiple types.Tests the following properties: Partial Isomorphismdecode . encode "a JustEncoding Equals Valuedecode . encode "a Just . toJSON9Note that in the second propertiy, the type of decode is ByteString -> Value, not ByteString -> aTests the following properties: Partial IsomorphismfromList . toList "a idLength Preservation&fromList xs "a fromListN (length xs) xsNote:2 This property test is only available when using base-4.7 or newer. Tests the following properties:  Associativea <> (b <> c) "a (a <> b) <> c Tests the following properties:  Transitivea == b "' b == c ! a == c Symmetrica == b ! b == a Reflexivea == aSome of these properties involve implication. In the case that the left hand side of the implication arrow does not hold, we do not retry. Consequently, these properties only end up being useful when the data type has a small number of inhabitants. Tests the following properties:  Antisymmetry@a "d b "' b "d a ! a = b  Transitivitya "d b "' b "d c ! a "d cTotality a "d b "( a > b Tests the following properties:  Associative1mappend a (mappend b c) "a mappend (mappend a b) c Left Identitymappend mempty a "a aRight Identitymappend a mempty "a a Tests everything from  monoidProps plus the following:  Commutativemappend a b "a mappend b aTests the following properties: Quotient Remainder(quot x y) * y + (rem x y) "a xDivision Modulus(div x y) * y + (mod x y) "a xInteger RoundtripfromInteger (toInteger x) "a xTests the following properties: Conjunction Idempotence n .&. n "a nDisjunction Idempotence n .|. n "a nDouble Complementcomplement (complement n) "a nSet BitsetBit n i "a n .|. bit i Clear Bit'clearBit n i "a n .&. complement (bit i)Complement Bit!complementBit n i "a xor n (bit i) Clear ZeroclearBit zeroBits i "a zeroBitsSet ZerosetBit zeroBits i "a bit i Test ZerotestBit zeroBits i "a FalsePop ZeropopCount zeroBits "a 0Count Leading Zeros of Zero,countLeadingZeros zeroBits "a finiteBitSize "Count Trailing Zeros of Zero-countTrailingZeros zeroBits "a finiteBitSize "#All of the useful instances of the \ typeclass also have ]L instances, so these property tests actually require that instance as well.Note:2 This property test is only available when using base-4.7 or newer. Test that a ^ instance obey the several laws.'Tests the following functor properties: Identity_ ` "a ` Compositionfmap (f . g) "a _ f . _ gConst(<$) "a _ a+Tests the following alternative properties: Identityb c x "a x x c b "a x Associativitya c (b c c) "a (a c b) c c) *Tests the following monad plus properties:  Left Identityd b x "a xRight Identityd x b "a x Associativityd a (d b c) "a d (d a b) c)  Left Zeroe f f "a e Right Zerom >> e "a e+Tests the following applicative properties: Identityg ` h v "a v Compositiong (.) h u h v h w "a u h (v h w) Homomorphismg f h g x "a g (f x) Interchangeu h g y "a g (i y) h u LiftA2 (1)(h) "a j `#Tests the following alt properties:  Associativity(a <!> b) <!> c "a a <!> (b <!> c)Left Distributivity@f k (a <!> b) = (f k a) <!> (f k b)'Tests the following monadic properties:  Left Identityl a f k "a k aRight Identitym f l "a m Associativitym f (\x -> k x f h) "a (m f k) f hReturng "a lAp(h) "a m/Tests the following monadic zipping properties:  Naturality=liftM (f *** g) (mzip ma mb) = mzip (liftM f ma) (liftM g mb)&In the laws above, the infix function ***" refers to a typeclass method of Arrow.Tests the following n properties: foldfold "a o `foldMapo f "a p (q . f) rfoldrp f z t "a appEndo (o (Endo . f) t ) zfoldr'foldr' f z0 xs = let f' k x z = k s f x z in t f' ` xs z0foldr1u! f t "a let Just (xs,x) = unsnoc (v t) in p f x xsfoldlt f z t "a appEndo (getDual (o (Dual . Endo . w f) t)) zfoldl'foldl' f z0 xs "a let f' x k z = k s f z x in p f' ` xs z0foldl1x f t "a let x : xs = v t in t f x xstoListy "a p (:) []nullz "a p (a (a {)) |length} "a getSum . foldMap (a (Sum 1))%Note that this checks to ensure that foldl' and foldr' are suitably strict.Tests the following ~ properties:  Naturalityt .  f =  (t . f)) for every applicative transformation tIdentity Identity = Identity Composition (Compose . _ g . f) = Compose . _ ( g) .  fSequence Naturalityt .  =  . _ t) for every applicative transformation tSequence Identity . _ Identity = IdentitySequence Composition . _ Compose = Compose . _  . foldMapo = fmap_ =  Where an applicative transformation is a function 1t :: (Applicative f, Applicative g) => f a -> g apreserving the  operations, i.e. Identity: t (g x) = g xDistributivity: t (x h y) = t x h t yTests the following  properties: Identity ` ` "a `First Identity ` "a `Second Identity ` "a `Bifunctor Composition f g "a  f .  g NoteH: This property test is only available when this package is built with  base-4.9+ or transformers-0.5+./Element is type name paired with typeclass lawsdestination pointer source arrayoffset into source arraynumber of prims to copydestination arrayoffset into destination array source arrayoffset into source arraynumber of bytes to copydestination arrayoffset into destination array source arrayoffset into source arraynumber of bytes to copy    None FQTVs TProperty for the generate^ function, which builds a container of a given length by applying a function to each index.XProperty for the filterD function, which keeps elements for which the predicate holds true.YProperty for the filterM^ function, which keeps elements for which the predicate holds true in an applicative context.ZProperty for the mapMaybeD function, which keeps elements for which the predicate holds true.Minput element typefoldr functionNinput element typefoldl functionOinput element typemonadic foldl functionPinput element typeoutput element type map functionQinput element typeoutput element typeindexed map functionRinput element typeoutput element typemonadic indexed map functionSinput element typeoutput element typetraverse functionTinput element typeUinput element typeVinput element typeWinput element typeX element type map functionY element typetraverse functionZinput element typeoutput element type map function[input element typeoutput element typetraverse functionMNOPQRSTUVWXYZ[MNOPQRSTUVWXYZ[      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`^_abcd^ef^eg^eh^ei^ej^ek^el^em^en^eo^ep^eq^rs^et^eu^vw^vx^vy^ez^e{^e|^v}^v~^^e^v^v^v^v^^^^^^e^^^^.quickcheck-classes-0.4.6-Q4HIAhOhmS2SOr5fHIf3TTest.QuickCheck.ClassesTest.QuickCheck.Classes.IsListLaws lawsTypeclasslawsProperties lawsCheck lawsCheckManyjsonLaws isListLaws showReadLaws semigroupLawseqLawsordLaws monoidLawscommutativeMonoidLaws integralLawsbitsLawsprimLaws storableLaws functorLawsalternativeLaws monadPlusLawsapplicativeLawsaltLaws monadLaws monadZipLaws foldableLawstraversableLaws bifunctorLaws$fMonoidStatus$fSemigroupStatus $fMonoidAp $fSemigroupAp$fTraversableTriple$fFoldableTriple$fApplicativeTriple$fFunctorTriple$fArbitraryTriple$fArbitrary1Triple $fShow1Triple $fEq1Triple$fArbitraryChooseSecond$fShowChooseSecond$fArbitraryChooseFirst$fShowChooseFirst$fArbitraryLastNothing$fShowLastNothing$fArbitraryBottom $fShowBottom$fArbitraryApply $fShowApply $fMonoidApply$fSemigroupApply $fEqApply$fArbitraryApply2 $fShowApply2 $fEqApply2$fArbitraryLinearEquation$fShowLinearEquation$fArbitraryLinearEquationM$fShowLinearEquationM$fEqLinearEquationM$fArbitraryEquation$fShowEquation$fArbitraryEquationTwo$fShowEquationTwo$fArbitraryBitIndex$fIsListPrimArray $fEqPrimArray $fShowTriple $fEqTriple$fEqChooseSecond$fEqChooseFirst$fEqLastNothing $fEqBottom$fEqLinearEquation $fEqEquation$fEqEquationTwo foldrProp foldlProp foldlMPropmapPropimapProp imapMProp traverseProp generateProp generateMProp replicatePropreplicateMProp filterProp filterMProp mapMaybeProp mapMaybeMPropbase Data.BitsBits FiniteBits(primitive-0.6.2.0-EI3NK1Xfv9zEcRtyXK2EwZData.Primitive.TypesPrimGHC.Basefmapidconstempty<|>mplusmzero>>=pure<*>$liftA2 Data.Functor<$>returnap Data.FoldableFoldablefoldMapfoldrmappendmempty$!foldlfoldr1GHC.ExtstoListflipfoldl1nullghc-prim GHC.TypesFalseTruelengthData.Traversable Traversabletraverse sequenceAfoldMapDefault fmapDefault ApplicativeData.Bifunctor BifunctorbimapfirstsecondcopyPrimArrayToPtrcopyMutablePrimArray copyPrimArrayMutablePrimArray PrimArrayBitIndex EquationTwoEquationLinearEquationMLinearEquation_linearEquationLinear_linearEquationConstantApply2 getApply2ApplygetApplyBottomBottomUndefined BottomValue LastNothing ChooseFirst ChooseSecondTripleApgetApStatusBadGood