("      Safe-InferredHM 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.  Create a  from a  transformation 9loop (k1 >=> k2) = loop k1 >-> loop k2 loop return = cat   Initial state Program logicEffectful output and inputReturns final state  !"#]$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop      !"# Safe-Inferred  Create a  from a R, using the given mIf you're not sure what m to use, try iRead lines from standard inputRead lines from a fileq? values from a file, one value per line, skipping failed parses.Emit empty values spaced by a delay in seconds Create a  from a SWrite lines to standard outputWrite lines to a filer% values to a file, one value per line Read from a s using a  t Write to a s using a  t    u      !"#$%#&'()*+,-./01203405607807907:07;07<0=>0=?0=@0=A0=B0=C01D01E01FGHIGHJKLMKLNOPQOPRKSTKSU#&V#&W#&X#&Y#&Z#&[#&\#&]#&^#&_#&`#&a#&b#&c#&d#&e#&f#&g#&h#$i#$j#$k#$l#$m#$n#$o#pq#prstuvwxyz{|}~KKK0000 mvc-1.1.0MVC MVC.Prelude managed-1.0.0Control.Monad.ManagedmanagedManagedModelView ControllerasInputkeepsasSinkasFoldhandlesasPiperunMVCloopproducer stdinLinesinLinesinReadtickconsumer stdoutLinesoutLinesoutShowinHandle outHandlepipes-concurrency-2.0.3Pipes.ConcurrentInput foldl-1.1.0 Control.FoldlFoldM pipes-4.1.5 Pipes.CorePipePipesListTAsPipeAsFoldAsInput$fCategory*Model$fContravariantView $fMonoidView$fMonoidController$fFunctorControllerbase Control.Monad MonadPlus Data.FoldableFoldable System.Mem performGC GHC.Conc.SyncreadTVar newTVarIO atomicallyforkIOSTM Data.Monoid<>mconcatmappendmemptyMonoidFirstvoidmplusmzerocontravariant-1.3.1.1Data.Functor.Contravariant contramap Contravarianttransformers-0.3.0.0Control.Monad.IO.ClassMonadIOliftIO mmorph-1.0.4Control.Monad.MorphhoistMFunctorControl.Monad.Trans.Class MonadTranslift<-<discardeveryeachnextrunListT>->cat~<>~await<~~>foryield enumerateSelecttoListT Enumerable runEffectEffectProducerConsumerEffect' Producer' Consumer'Pipes.InternalProxyX stm-2.4.4Control.Concurrent.STM.TVar mkWeakTVarnewestlatestbounded unboundedspawn'spawn fromInputtoOutputrecvsendOutput UnboundedBoundedSingleLatestNewestNewBufferData.Functor.Constant getConstantConstant Text.ReadreadGHC.ShowshowGHC.IOFilePathGHC.IO.Handle.TypesHandle