úÎ!Œ8Ä      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢĪĨͧĻĐŠŦŽ­ŪŊ°ąēģīĩķ·ļđšŧž―ūŋĀÁÂÃNone&'-.4=>?@AHMSUVXgš.generic-randomGet the name contained in a Ä tag.generic-random"Given a list of custom generators gs!, find one that applies, or use  Arbitrary a by default.g and gs" follow this little state machine: ĸO g, gs | result ---------------------+----------------------------- (), () | END (), g :+ gs | g, gs g :+ h, gs | g, h :+ gs Gen a, gs | END if matching, else (), gs FieldGen a, gs | idem ConstrGen a, gs | idem Gen1 a, gs | idem Gen1_ a, gs | idem generic-randomGeneric Arbitrary generic-randomGeneric Arbitrarygeneric-randomsCustom generators for unary type constructors that are not "containers", i.e., which don't require a generator of a to generate an f a.A custom generator  f5 will be used for any field whose type has the form f x.generic-random+Custom generators for "containers" of kind  Type -> Type;, parameterized by the generator for "contained elements".A custom generator  f5 will be used for any field whose type has the form f x, requiring a generator of x.generic-randomCustom generator for the i#-th field of the constructor named c.Available only for  base >= 4.9 ( GHC >= 8.0.1).generic-random)Custom generator for record fields named s.Available only for  base >= 4.9 ( GHC >= 8.0.1).generic-random!Heterogeneous list of generators.%generic-random@Whether to decrease the size parameter before generating fields.(generic-randomType-level options for  .+generic-random1Derived uniform distribution of constructors for a.3generic-random6A binary constructor for building up trees of weights.4generic-randomA synonym for (~)P, except on GHC 7.10 and older, where it's the trivial constraint. See note on 8.8generic-randomrType of a single weight, tagged with the name of the associated constructor for additional compile-time checking. ((9 :: 8 "Leaf") 3 (8 :: 8 "Node") 3 ()) ^Note: these annotations are only checked on GHC 8.0 or newer. They are ignored on older GHCs.:generic-random2Trees of weights assigned to constructors of type a1, rescaled to obtain a probability distribution.Two ways of constructing them. (x1 3 x2 3 ... 3 xn 3 ()) :: : a K :: : a Using (3)C, there must be exactly as many weights as there are constructors.K is equivalent to (1 3 ... 3 1 3 ())3 (automatically fills out the right number of 1s).Ageneric-random[Pick a constructor with a given distribution, and fill its fields with recursive calls to Å.Example *genericArbitrary (2 % 3 % 5 % ()) :: Gen a-Picks the first constructor with probability 2/10, the second with probability 3/10, the third with probability 5/10.Bgeneric-random>Pick every constructor with equal probability. Equivalent to A K. genericArbitraryU :: Gen aCgeneric-randomÅ0 for types with one constructor. Equivalent to B, with a stricter type. genericArbitrarySingle :: Gen aDgeneric-randomRDecrease size at every recursive call, but don't do anything different at size 0. /genericArbitraryRec (7 % 11 % 13 % ()) :: Gen a5N.B.: This replaces the generator for fields of type [t] with U arbitrary instead of  arbitrary (i.e.,  arbitrary for lists).Egeneric-randomA with explicit generators.Example +genericArbitraryG customGens (17 % 19 % ()).where, for example to override generators for Æ and Į fields, customGens :: Gen String $ Gen Int customGens = (filter (/= '\NUL') Č arbitrary)  (getNonNegative Č arbitrary)  () Note on multiple matches9If the list contains multiple matching types for a field x of type a (i.e., either a or  "x" a5), the generator for the first match will be picked.Fgeneric-randomB% with explicit generators. See also E.Ggeneric-randomC% with explicit generators. See also E.Hgeneric-randomD% with explicit generators. See also E.Igeneric-random.General generic generator with custom options.Jgeneric-randomQA smart constructor to specify a custom distribution. It can be omitted for the 3& operator is overloaded to insert it.Kgeneric-randomUniform distribution.Lgeneric-random'Default options for unsized generators.Mgeneric-random%Default options for sized generators.Ngeneric-random4Default options overriding the list generator using U.Rgeneric-random3 constructor with the field name given via a proxy.Sgeneric-random9 constructor with the constructor name given via a proxy.Tgeneric-randomAn alternative to É< that divides the size parameter by the length of the list.Ugeneric-randomAn alternative to x that divides the size parameter by the length of the list. The length follows a geometric distribution of parameter 1/(sqrt size + 1).Vgeneric-randomAn alternative to • (nonempty lists) that divides the size parameter by the length of the list. The length (minus one) follows a geometric distribution of parameter 1/(sqrt size + 1).Wgeneric-random$Geometric distribution of parameter 1/(sqrt n + 1) (n >= 0).pgeneric-random(Matching custom generator for container f!. Start the search for containee a , discarding field information.qgeneric-random,Matching custom generator for non-container frgeneric-randomMatching custom generator for i-th field of constructor c.sgeneric-random$Matching custom generator for field s.tgeneric-randomMatching custom generator for a.ugeneric-random>None of the INCOHERENT instances match, discard the candidate g# and look at the rest of the list gs.vgeneric-randomVThis can happen if the generators form a tree rather than a list, for whatever reason.wgeneric-randomExamine the last candidate (g is not of the form _ :+ _)xgeneric-randomExamine the next candidateygeneric-random"All candidates have been exhaustedAgeneric-random%List of weights for every constructorDgeneric-random%List of weights for every constructorHgeneric-random%List of weights for every constructorZ  !"#$%'&()*+,-./1023456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHI@>?<=:;89JK765423/10-.,+()*LMN%'&$#"!OP QRSTUVW  X  Y1 131None-.8=>?@AHSUVX}å—generic-random3Custom instances can override the default behavior.˜generic-randomGenerator of base cases.™generic-random+Progressively increase the depth bound for .generic-randomFind a base case of type a with maximum depth z, recursively using # instances to search deeper levels.y' is the depth of a base case, if found.e4 is the original type the search started with, that a- appears in. It is used for error reporting.Ÿgeneric-randomiDecrease size to ensure termination for recursive types, looking for base cases once the size reaches 0. .genericArbitrary' (17 % 19 % 23 % ()) :: Gen a5N.B.: This replaces the generator for fields of type [t] with  arbitrary instead of Ę arbitrary (i.e.,  arbitrary for lists). generic-randomEquivalent to Ÿ K. genericArbitraryU' :: Gen a5N.B.: This replaces the generator for fields of type [t] with  arbitrary instead of Ę arbitrary (i.e.,  arbitrary for lists).Ągeneric-randomURun the first generator if the size is positive. Run the second if the size is zero. %defaultGen `withBaseCase` baseCaseGenĒgeneric-random OverlappableŸgeneric-random%List of weights for every constructor!‚ƒ…„†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ą!Ÿ Ąž›œ™š—˜–•”“’‘ŽŒŠ‹ˆ‰†‡ƒ…„‚None,5  "#$%&'(+38:ABCDEFGHIKLMNOPQRSTUV—˜Ÿ Ą5ABCDŸ EFGH:83K RSUVTĄ—˜(I%&'OPQ#M"N$L +NoneË       !"##$%&'()*++,-./0123456789::;;<<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢĪĨͧĻĐŠŦŽ­ŪŊ°ąēģīĩķ·ļđšŧž―ūŋĀÁÂÃÄÅÆĮÂČÉĘËĖÂÍÎÅÏÐÅÏŅ-generic-random-1.3.0.0-70WYeNQ91lsDL9u0CmBGOGGeneric.Random.Internal.GenericGeneric.Random Generic.Random.Internal.BaseCaseTest.QuickChecklistOflistOf1listOf'Generic.Random.TutorialWeightedName ArbitraryOr arbitraryOrArity GAProduct' gaProduct' GAProduct gaProductGASumgaSum GArbitraryGAgaGen1_unGen1_Gen1unGen1 ConstrGen unConstrGenFieldGen unFieldGenSetGens HasGenerators generators GeneratorsOf:+SizingOf SizedOptsDef SizedOpts UnsizedOptsSizingSizedUnsizedOptions _generatorsGUniformWeightUniformWeight_ UniformWeight uniformWeight WeightBuilderPrec%.WeightBuilder'%~.Prec'First'FirstWWeightsL:|NWeights_genericArbitrarygenericArbitraryUgenericArbitrarySinglegenericArbitraryRecgenericArbitraryGgenericArbitraryUGgenericArbitrarySingleGgenericArbitraryRecGgenericArbitraryWithweightsuniform unsizedOpts sizedOpts sizedOptsDefsetSized setUnsized setGeneratorsfieldGen constrGen vectorOf'listOf1'geomgaSum'liftGen$f~.kab$fWeightBuilder()$fWeightBuilderL$fWeightBuilder:|$fWeightBuilder'(,,)$fWeightBuilder'Weights$fUniformWeight()$fUniformWeightL$fUniformWeight:|$fUniformWeight_f$fGUniformWeighta$fHasGeneratorsOptions $fGAoptsM1$fGArbitraryoptsa$fGASumopts:+: $fGAopts:+:$fGAProductkSizedcoptsU1$fGAProduct'kcioptsU1$fGAProductkSizedcoptsM1$fGAProductkUnsizedcoptsf$fGAProduct'kciopts:*:$fGAProductkSizedcoptsf$fArbitraryOrfgGen1gself$fArbitraryOrfgGen1_gself$fArbitraryOrfgConstrGeng(,,)a'$fArbitraryOrfgFieldGeng(,,)a'$fArbitraryOrfgGengsela$fArbitraryOrfgggssela$fArbitraryOrfg:+gssela$fArbitraryOrfg()gsela$fArbitraryOrfg():+sela$fArbitraryOrfg()()sela$fGAProduct'kcioptsM1 $fGASumoptsM1 $fGAoptsM10$fAlternativeWeighted$fApplicativeWeighted$fNumW$fFunctorWeightedGBaseCaseSearchgBaseCaseSearchIsMaybeifMmapifM GBCSProduct gbcsProductGBCSSumComparegbcsSumCompareGBCSSumgbcsSumGBCSgbcsMinOfMinMaxOfMax&&?||?IsEQ==IfMBaseCasebaseCaseBaseCaseSearchingbaseCaseSearchingBaseCaseSearching_baseCaseSearching_BaseCaseSearchbaseCaseSearchgenericArbitrary'genericArbitraryU' withBaseCase $fBaseCasea!$fBaseCaseSearching_NattazNothing$fBaseCaseSearching_ktazJust$fBaseCaseSearchingNataz$fBaseCaseSearchOrderingzye$fBaseCaseSearch[]zye$fBaseCaseSearchBoolzye$fBaseCaseSearch()zye$fBaseCaseSearchWordzye$fBaseCaseSearchDoublezye$fBaseCaseSearchFloatzye$fBaseCaseSearchIntegerzye$fBaseCaseSearchIntzye$fBaseCaseSearchCharzye $fGBCSkfzye $fGBCSkU1zye $fGBCSkK10ye $fGBCSkM1zye$fGBCSSumkkkfgzeNothingJust$fGBCSSumkkkfgzeJustNothing$fGBCSSumkkkfgzeNothingNothing $fGBCSk:+:zye!$fGBCSSumComparekkkOrderingfgzeGT!$fGBCSSumComparekkkOrderingfgzeLT!$fGBCSSumComparekkkOrderingfgzeEQ$fGBCSSumkkkfgzeJustJust$fGBCSProductkkkfgzeJustJust$fGBCSProductkkkfgzeyfyg $fGBCSk:*:zye $fGBCSkK1zye$fIsMaybetNothing$fIsMaybetJust$fGBaseCaseSearchNatNatTYPEazye$fBaseCaseSearchazyebase GHC.GenericsMeta(QuickCheck-2.13.2-1FftnVviu6BCWJanU0jy5VTest.QuickCheck.Arbitrary arbitraryGHC.BaseStringghc-prim GHC.TypesInt Data.Functor<$>Test.QuickCheck.GenvectorOf