2*-      !"#$%&'()*+,None2:BOT*A set of laws associated with a typeclass.+Name of the typeclass whose laws are testedPairs of law name and propertyA convenience 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.Tests the following properties: Partial IsomorphismfromList . toList "a idLength Preservation&fromList xs "a fromListN (length xs) xsTests 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:  Transitivea "d b "' b "d c ! a "d c Comparable 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 a  Test that a - instance obey the several laws.+Tests the following applicative properties: Identity. / "a / Compositionfmap (f . g) "a . f . . gConst(<$) "a . 0+Tests the following applicative properties: Identity1 / 2 v "a v Composition1 (.) 2 u 2 v 2 w "a u 2 (v 2 w) Homomorphism1 f 2 1 x "a 1 (f x) Interchangeu 2 1 y "a 1 (3 y) 2 u LiftA2 (1)(2) "a 4 /'Tests the following monadic properties:  Left Identity5 a 6 k "a k aRight Identitym 6 5 "a m Associativitym 6 (\x -> k x 6 h) "a (m 6 k) 6 hReturn1 "a 5Ap(2) "a 7Tests the following 8 properties: fold9 "a : /foldMap: f "a ; (< . f) =foldr; f z t "a > (: (? . f) t ) zfoldr'@ f z0 xs = let f' k x z = k A f x z in B f' / xs z0foldlB f z t "a > (C (: (D . ? . E f) t)) zfoldl'F f z0 xs = let f' x k z = k A f z x in ; f' / xs z0toListG "a ; (:) []nullH "a ; (0 (0 I)) JlengthK "a getSum . foldMap (0 (L 1))%Note that this checks to ensure that foldl' and foldr' are suitably strict.qMNOPQRSTUVWXYZ[\]^_`abc defghijklmnopqrstuvwxyz{|}~ !"#$%   aMNOPQRSTUVWXYZ[\]^_`abc defghijklmnopqrstuvwxyz{|}~ !"#$%      !"#$%&'()*+,-./012312412512612712812912:12;12<1=>1=?1=@1=A12B12C1DE1DF1=G12H1=I1DJ1DK12L1=M1=N1=OPQRPQS1=T1DUVVWWXXYYZ[\\]^_`aabbccdefghijklmnopqrstuvwxyz{|}~-quickcheck-classes-0.3-6sqnuI5rKX0HPnxNHQxfUeTest.QuickCheck.ClassesLaws lawsTypeclasslawsProperties lawsCheckjsonLaws isListLaws showReadLaws semigroupLawseqLawsordLaws monoidLawscommutativeMonoidLawsprimLaws storableLaws functorLawsapplicativeLaws monadLaws foldableLaws$fArbitraryApply $fShowApply$fArbitraryEquationTwo$fShowEquationTwo$fArbitraryEquation$fShowEquation$fArbitraryLinearEquation$fArbitraryLinearEquationM$fShowLinearEquationM$fEqLinearEquationM $fEqApply$fArbitraryBottom$fArbitraryLastNothing$fArbitraryChooseFirst$fArbitraryChooseSecond $fShowBottom$fShowLastNothing$fShowChooseSecond$fShowChooseFirst$fEqChooseSecond$fEqChooseFirst$fEqLastNothing $fEqBottom$fEqLinearEquation $fEqEquation$fEqEquationTwo(primitive-0.6.2.0-4578caNkWQ54Gt1mxLF2YhData.Primitive.TypesPrimbaseGHC.Basefmapidconstpure<*>$liftA2return>>=ap Data.FoldableFoldablefoldfoldMapfoldrmappendmempty Data.MonoidappEndoEndofoldr'$!foldlgetDualDualflipfoldl'toListnullghc-prim GHC.TypesFalseTruelengthSum EquationTwoEquationLinearEquationMLinearEquation_linearEquationLinear_linearEquationConstantApplygetApplyBottomBottomUndefined BottomValue LastNothing ChooseFirst ChooseSecond foldlMapMisListPartialIsomorphismisListLengthPreservationshowReadPartialIsomorphismjsonEncodingEqualsValuejsonEncodingPartialIsomorphism eqTransitive ordTransitive ordComparable eqSymmetric eqReflexivesemigroupAssociativemonoidAssociativemonoidLeftIdentitymonoidRightIdentitymonoidCommutativeprimListByteArray primListAddrprimSetGetByteArrayprimGetSetByteArrayprimSetSetByteArrayprimSetGetAddrprimGetSetAddrstorableSetGetstorableGetSet storableListarrayEqfoldableLawsInternalfoldableFoldl'foldableFoldr' bottomToMaybe maybeToBottomrunLinearEquationrunLinearEquationM showLinearshowLinearList runEquationrunEquationTwofunctorIdentityfunc1func2functorComposition functorConstapplicativeIdentityapplicativeCompositionapplicativeHomomorphismapplicativeInterchangeapplicativeLiftA2_1monadLeftIdentitymonadRightIdentitymonadAssociativity monadReturnmonadAp