úÎ!Úä   Safe>?¸ atomic-modifyHA typeclass for mutable references that have an atomic modify operation.Type variables:ref - The reference (e.g.  ,  ,  , )m9 - The monad in which the modification takes place (e.g. , )šAs the name "atomic" implies, these functions are useful for using mutable references in a safe way to prevent race conditions in a multithreaded program. atomic-modify$Atomically modify the contents of a ref (type a) and produce a value (type b5). This is strict; it forces the value stored in the ref! as well as the value returned. atomic-modify$Atomically modify the contents of a ref (type a) and produce a value (type b2). This is lazy, which means if the program calls f many times, but seldomly uses the value, thunks will pile up in memory resulting in a space leak. atomic-modify$Atomically modify the contents of a ref4. This is strict; it forces the value stored in the ref as well as the value returned. atomic-modify$Atomically modify the contents of a ref (type a) and produce a value (type b2). This is lazy, which means if the program calls b many times, but seldomly uses the value, thunks will pile up in memory resulting in a space leak.       ,atomic-modify-0.1.0.2-ESd0uLIYQH9Fkpewnc7acTControl.Concurrent.AtomicModify AtomicModifyatomicModifyStrictatomicModifyLazyatomicModifyStrict_atomicModifyLazy_$fAtomicModifyTMVarIO$fAtomicModifyTVarIO$fAtomicModifyTMVarSTM$fAtomicModifyTVarSTM$fAtomicModifyMVarIO$fAtomicModifyIORefIObase GHC.IORefIORef GHC.Conc.SyncTVarGHC.MVarMVar"stm-2.4.5.1-1n1oRyz2WxkGi5pMiXlR3yControl.Concurrent.STM.TMVarTMVarghc-prim GHC.TypesIOSTM