úÎ*&;9      !"#$%&'()*+,-./012345678I2006-2007 Cale Gibbard, Russell O'Connor, Dan Doel, Remi Turk, Eric Kidd. OtherLicense experimentalBnon-portable (multi-parameter type classes, undecidable instances)Safe<=?}An interface to monads with splittable state (as most random number generation monads will have). The intention is that the d action splits the state, returning one half of the result, and setting the new state to the other.0An interface to random number generation monads.)Return a randomly-selected value of type a. See 9 for details.3Return an infinite stream of random values of type a. See : for details.)Return a randomly-selected value of type a in the range [lo,hi]. See ; for details.=Return an infinite stream of randomly-selected value of type a in the range [lo,hi]. See < for details. I2006-2007 Cale Gibbard, Russell O'Connor, Dan Doel, Remi Turk, Eric Kidd. OtherLicense experimentalBnon-portable (multi-parameter type classes, undecidable instances) Trustworthy9;<=I A basic random monad.OA monad transformer which adds a random number generator to an existing monad. Lift arbitrary action to RandT Lift arbitrary action to Rand 1Evaluate a RandT computation using the generator g. Note that the generator gG is not returned, so there's no way to recover the updated version of g. ,Run a RandT computation using the generator g2, returning the result and the updated generator. 2Evaluate a random computation using the generator g. Note that the generator gG is not returned, so there's no way to recover the updated version of g.-Run a random computation using the generator g2, returning the result and the updated generator.|Evaluate a random computation in the IO monad, splitting the global standard generator to get a new one for the computation.]Sample a random value from a weighted list. The total weight of all elements must not be 0.ASample a value from a uniform distribution of a list of elements.+= .action returning value and new generator state .action returning value and new generator state  !"#$%&'()*+,-./0#>?@ABCDEFGH9;<:IJ   *=  !"#$%&'()*+,-./0K      !"#$%&'()*+,-./0123456789:;<=><=?<=@<=A <=B<=C<=D<=E<=F<=G<=H<=I<=J<=K<=L<=M<=NO*MonadRandom-0.4.2.3-BeY4MXl2TWH5X5ex76pU0BControl.Monad.Random.ClassControl.Monad.Random MonadSplitgetSplit MonadRandom getRandom getRandoms getRandomR getRandomRsRandRandT liftRandTliftRand evalRandTrunRandTevalRandrunRand evalRandIOfromListuniform$fMonadSplitStdGenIO$fMonadRandomIO$fMonadStatesRandT$fMonadSplitgContT$fMonadSplitgMaybeT$fMonadSplitgErrorT$fMonadSplitgExceptT$fMonadSplitgRWST$fMonadSplitgRWST0$fMonadSplitgReaderT$fMonadSplitgWriterT$fMonadSplitgWriterT0$fMonadSplitgStateT$fMonadSplitgStateT0$fMonadSplitgIdentityT$fMonadRandomContT$fMonadRandomMaybeT$fMonadRandomErrorT$fMonadRandomExceptT$fMonadRandomRWST$fMonadRandomRWST0$fMonadRandomReaderT$fMonadRandomWriterT$fMonadRandomWriterT0$fMonadRandomStateT$fMonadRandomStateT0$fMonadRandomIdentityT$fMonadSplitgRandT$fMonadRandomRandT$fAlternativeRandT$fApplicativeRandT$fFunctorRandT $fMonadRandT$fMonadPlusRandT$fMonadTransRandT$fMonadIORandT$fMonadFixRandT$fMonadReaderRandT$fMonadWriterRandT!random-1.1-54KmMHXjttlERYcr1mvsAe System.RandomrandomrandomsrandomRrandomRs getStdRandom newStdGen getStdGen setStdGenmkStdGen RandomGennextgenRangesplitStdGenRandom randomRIOrandomIO