-@'     SafeIN A  (Model s a b) converts a stream of (a)s into a stream of (b)%s while interacting with a state (s)An effectful sink Vcontramap f (v1 <> v2) = contramap f v1 <> contramap f v2 contramap f mempty = memptyA concurrent source Bfmap f (c1 <> c2) = fmap f c1 <> fmap f c2 fmap f mempty = mempty Create a  from an 0Think of the type as one of the following types: okeeps :: Prism' a b -> Controller a -> Controller b keeps :: Traversal' a b -> Controller a -> Controller b(keeps prism controller) only emits values if the prism matches the  controller 's output. 4keeps (p1 . p2) = keeps p2 . keeps p1 keeps id = id Fkeeps p (c1 <> c2) = keeps p c1 <> keeps p c2 keeps p mempty = mempty  Create a  from a sink  Create a  from a  0Think of the type as one of the following types: [handles :: Prism' a b -> View b -> View a handles :: Traversal' a b -> View b -> View a(handles prism view) only runs the view if the prism matches the input. <handles (p1 . p2) = handles p1 . handles p2 handles id = id Nhandles p (v1 <> v2) = handles p v1 <> handles p v2 handles p mempty = mempty  Create a  from a  ;asPipe (p1 <-< p2) = asPipe p1 . asPipe p2 asPipe cat = id  Connect a , , and 3 and initial state into a complete application. Connect a , , and _ and initial state into a complete application over arbitrary monad given a morphism to IO.    Initial state Program logicEffectful output and inputReturns final stateMonad morphism Initial state Program logicEffectful output and inputReturns final state!"#$%`&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst     !"#$%Safe .Fork managed computation in a new thread. See  source for usage example. Create a  from a U, using the given qIf you're not sure what q to use, try nRead lines from standard inputRead lines from a fileu? values from a file, one value per line, skipping failed parses.Emit empty values spaced by a delay in seconds Create a  from a VWrite lines to standard outputWrite lines to a filev% values to a file, one value per line Read from a w using a  x Write to a w using a  x @Setup action returning thread's main, managed value, finalizer.   y      !"#$%&'()*+,-./0123425627827927:27;27<2=>2=?2@A2BC2BD2BE2BF2BG2BH2BIJKLJKMNOPNOQRSTRSUNVWNVXYZY[Y\Y]Y^Y_Y`YaYbYcYdYeYfYgYhYiYjYkYlYm(n(o(p(q(r(s(tuvuwxyz"#{"#|"#}"#~"#"#"#"#"#"#"#$"#"#"#"#"#"#"#"#"#"#NNN2222mvc_6nmkEHMpqsKGUDW8JBtpCyMVC MVC.Preludemanag_JaAn7xUeL0w4p0LqXk8hK7Control.Monad.ManagedmanagedManagedpipes_77ihSQ5c6PS0Tlq86aN8G4 Pipes.PreludeloopModelModelMView ControllerasInputkeepsasSinkasFoldhandlesasPiperunMVC generalizeMVC forkManagedproducer stdinLinesinLinesinReadtickconsumer stdoutLinesoutLinesoutShowinHandle outHandlepipes_ElwEggEKQ2k5Tbmk6pAFIkPipes.ConcurrentInputfoldl_DwdazujVKslIVdObbwH7K1 Control.FoldlFoldM Pipes.CorePipeAsPipeAsFoldAsInput$fCategory*ModelM$fContravariantView $fMonoidView$fMonoidController$fFunctorControllerbase Data.FoldableFoldable System.Mem performGC GHC.Conc.SyncreadTVar newTVarIO atomicallyforkIOSTM Data.Monoid<>First Data.FunctorvoidGHC.BasemconcatmappendmemptyMonoidmplusmzero MonadPluscontr_7dAWB2x4yN9BZDQgwGJsfmData.Functor.Contravariant contramap Contravarianttrans_GZTjP9K5WFq01xC9BAGQpFControl.Monad.IO.ClassMonadIOliftIOmmorp_2Jm5FlYBlmjDhcU1ovZRKPControl.Monad.MorphhoistMFunctorControl.Monad.Trans.Classlift MonadTransPipes<-<discardeveryeachnextrunListT>->cat~<>~await<~~>foryield enumerateSelectListTtoListT Enumerable runEffectEffectProducerConsumerEffect' Producer' Consumer'Pipes.InternalProxyXstm_EyxFXFfnfY05IrjGaqCxeDControl.Concurrent.STM.TVar mkWeakTVarnewestlatestbounded unbounded withSpawnspawn'spawn fromInputtoOutputrecvsendOutputNewNewestLatestSingleBounded UnboundedBufferData.Functor.Constant getConstantConstant Text.ReadreadGHC.ShowshowGHC.IOFilePathGHC.IO.Handle.TypesHandle