!`EX      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Safe  (c) Roman Leshchinskiy 2009 BSD-style'Roman Leshchinskiy <rl@cse.unsw.edu.au> experimental non-portableNoneF  32 (c) Roman Leshchinskiy 2008-2010 BSD-style'Roman Leshchinskiy <rl@cse.unsw.edu.au> experimental non-portableNone&'=?@AEHSXT WrstreamMonadic streamsrstream*Result of taking a single step in a stream#rstream Length of a $rstream Check if a  is empty%rstreamEmpty &rstream Singleton 'rstream#Replicate a value to a given length(rstreamYield a O of values obtained by performing the monadic action the given number of times*rstream"Generate a stream from its indices+rstreamPrepend an element,rstreamAppend an element-rstreamConcatenate two s.rstreamFirst element of the  or error if empty/rstreamLast element of the  or error if empty0rstreamElement at the given position1rstream!Element at the given position or  if out of bounds2rstreamGExtract a substream of the given length starting at the given position.3rstreamAll but the last element4rstreamAll but the first element5rstream The first n elements6rstreamAll but the first n elements7rstreamMap a function over a 8rstreamMap a monadic function over a 9rstream1Execute a monadic action for each element of the :rstream Transform a  to use a different monad<rstreamPair each element in a  with its index=rstreamPair each element in a ; with its index, starting from the right and counting down>rstreamZip two !s with the given monadic functionNrstream Check if two  s are equalOrstreamLexicographically compare two sPrstream0Drop elements which do not satisfy the predicateRrstream8Drop elements which do not satisfy the monadic predicateSrstream Drop repeated adjacent elements.Trstream5Longest prefix of elements that satisfy the predicateUrstream=Longest prefix of elements that satisfy the monadic predicateVrstream>Drop the longest prefix of elements that satisfy the predicateWrstreamFDrop the longest prefix of elements that satisfy the monadic predicateXrstreamCheck whether the  contains an elementYrstream Inverse of XZrstreamYield 3 the first element that satisfies the predicate or  if no such element exists.[rstreamYield < the first element that satisfies the monadic predicate or  if no such element exists.\rstreamYield A the index of the first element that satisfies the predicate or  if no such element exists.]rstreamYield I the index of the first element that satisfies the monadic predicate or  if no such element exists.^rstream Left fold_rstream!Left fold with a monadic operator`rstreamSame as _arstreamLeft fold over a non-empty brstreamLeft fold over a non-empty  with a monadic operatorcrstreamSame as bdrstream#Left fold with a strict accumulatorerstream:Left fold with a strict accumulator and a monadic operatorfrstreamSame as egrstreamLeft fold over a non-empty  with a strict accumulatorhrstreamLeft fold over a non-empty 2 with a strict accumulator and a monadic operatorirstreamSame as hjrstream Right foldkrstream"Right fold with a monadic operatorlrstream"Right fold over a non-empty streammrstream:Right fold over a non-empty stream with a monadic operatorrrstream Create a  of values from a  of streamable thingssrstreamUnfoldtrstreamUnfold with a monadic functionvrstreamUnfold at most n" elements with a monadic functionswrstreamJApply monadic function n times to value. Zeroth element is original value.xrstreamBApply function n times to value. Zeroth element is original value.yrstream Prefix scanzrstream#Prefix scan with a monadic operator{rstream#Prefix scan with strict accumulator|rstream:Prefix scan with strict accumulator and a monadic operator}rstream Suffix scan~rstream#Suffix scan with a monadic operatorrstream#Suffix scan with strict accumulatorrstream;Suffix scan with strict acccumulator and a monadic operatorrstreamHaskell-style scanrstream*Haskell-style scan with a monadic operatorrstream*Haskell-style scan with strict accumulatorrstreamAHaskell-style scan with strict accumulator and a monadic operatorrstreamScan over a non-empty rstreamScan over a non-empty  with a monadic operatorrstreamScan over a non-empty  with a strict accumulatorrstreamScan over a non-empty 2 with a strict accumulator and a monadic operatorrstreamYield a + of the given length containing the values x, x+y, x+y+y etc.rstreamEnumerate valuesWARNING:B This operation can be very inefficient. If at all possible, use  instead.rstream#Enumerate values with a given step.WARNING:> This operation is very inefficient. If at all possible, use  instead.rstream Convert a  to a listrstreamConvert a list to a rstreamConvert the first n elements of a list to a Bundle2rstreamstarting indexrstreamlengthu !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~u !"#$%&+,'()*-./0123456789:;pr<=?>@ABCDEFGHIJKLMNOPRSQTUVWXYZ[\]^_ab`cdeghfijklmnoqstuvxwyz{|}~-509 19 X4Y4        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~%rstream-0.1.0.0-GNti5B0djy6vA9cXXkwwrRStream Internal.BoxInternal.Checkghc-prim GHC.TypesSPECSPEC2BoxunBoxIdunId delay_inline delayed_min $fMonadId$fApplicativeId $fFunctorId $fMonadBox$fApplicativeBox $fFunctorBoxChecksBoundsUnsafeInternaldoCheckserror internalErrorcheck checkIndex checkLength checkSlice $fEqChecksStreamStepYieldSkipDonelengthnullempty singleton replicate replicateMgenerate generateMconssnoc++headlast!!!?sliceinittailtakedropmapmapMmapM_transunboxindexedindexedRzipWithM zipWithM_ zipWith3M zipWith4M zipWith5M zipWith6MzipWithzipWith3zipWith4zipWith5zipWith6zipzip3zip4zip5zip6eqBycmpByfiltermapMaybefilterMuniq takeWhile takeWhileM dropWhile dropWhileMelemnotElemfindfindM findIndex findIndexMfoldlfoldlMfoldMfoldl1foldl1Mfold1Mfoldl'foldlM'foldM'foldl1'foldl1M'fold1M'foldrfoldrMfoldr1foldr1Mandor concatMap concatMapMflattenunfoldrunfoldrMunfoldrN unfoldrNM iterateNMiterateNprescanl prescanlM prescanl' prescanlM' postscanl postscanlM postscanl' postscanlM'scanlscanlMscanl'scanlM'scanl1scanl1Mscanl1'scanl1M' enumFromStepN enumFromToenumFromThenTotoListfromList fromListN $fFunctorStep$fFunctorStream&&||base GHC.MaybeNothingJust