h&b      Safe-Inferred$&',.157:<>TkiCall an action with asynchronous exceptions interruptibly masked.kiCall an action with asynchronous exceptions uninterruptibly masked. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ Safe-Inferred$&',.157:<>okikiA number of bytes.kiA number of kilobytes.kiA number of megabytes. Safe-Inferred$&',.157:<> ki affinityThe affinity of a thread. A thread can be unbound, bound to a specific capability, or bound to a specific OS thread. Default:  allocationLimitThe maximum number of bytes a thread may allocate before it is delivered an  exception. If caught, the thread is allowed to allocate an additional 100kb (tunable with +RTS -xq) to perform any necessary cleanup actions; if exceeded, the thread is delivered another. Default: Nothing (no limit)label&The label of a thread, visible in the  https://downloads.haskell.org/ghc/latest/docs/html/users_guide/runtime_control.html#rts-eventlog event log (+RTS -l). Default: "" (no label) maskingState9The masking state a thread is created in. To unmask, use  . Default: Unmasked ki(What, if anything, a thread is bound to. kiUnbound. kiBound to a capability. kiBound to an OS thread. ki A thread.  DetailsA thread's lifetime is delimited by the scope in which it was created.The thread that creates a scope is considered the parent of all threads created within it.If an exception is raised in a child thread, the child either propagates the exception to its parent (see  ,), or returns the exception as a value (see  ).All threads created within a scope are terminated when the scope closes.kiDefault thread options.   {   =  ,  = Nothing ,  = "" ,  =  } kiWait for a thread to terminate.  Safe-Inferred$&',.157:<>~ kiA scope.  Details?A scope delimits the lifetime of all threads created within it.6A scope is only valid during the callback provided to .The thread that creates a scope is considered the parent of all threads created within it.All threads created within a scope can be awaited together (see ).All threads created within a scope are terminated when the scope closes.kiOpen a scope, perform an IO action with it, then close the scope.  DetailsThe thread that creates a scope is considered the parent of all threads created within it.6A scope is only valid during the callback provided to .When a scope closes (i.e. just before  returns):The parent thread raises an exception in all of its living children.7The parent thread blocks until those threads terminate.ki8Wait until all threads created within a scope terminate.ki:Create a child thread to execute an action within a scope.Note: The child thread does not mask asynchronous exceptions, regardless of the parent thread's masking state. To create a child thread with a different initial masking state, use .ki Variant of   for threads that never return.ki Variant of  + that takes an additional options argument.ki Variant of  for threads that never return.kiLike  , but the child thread does not propagate exceptions that are both: Synchronous (i.e. not an instance of ).An instance of e.ki Variant of  + that takes an additional options argument.  Safe-Inferred$&',.157:<>      !"# $% &'()*+,-.)/0)/1)23)45)46)*7)*8)*9,-:);<);=)*>)?@)?A)?B)?C)?D)?E)?F)?G)?H)?I)?J)?K,LM,LN,LO)PQ)PR)PS)PT)PU)PV)PW)PX)PY)PZ)P[)P\)P])P^)P_)P`)Pa)Pb)Pc);d);e);f);g);h);i);j);k);l);m);n);o)*p)*q)*r)*s)tu)*v)*w)*x)yz)y{)y|)y})y~)y)y)y,L,L,L,L,L,L,L,L)))););)P)P)P)P)P)P)P)P)P)P)P)P)P)P)P););););););)))))))*)*)*)*)*))))))))))))))))))))*)*)*)*)*)*,,,)*,,,,))))))),,,,);,,))))))2)2)2)2)2)2)2)2)2)2)2)2))))))))))))))))))))))))))))))))))))))))))))););););););))))))/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/)/))))))))4)4)))))))))))y)*)*)*)*)*)*)*)*)*)*)))),L,L,L))ki-1.0.0.1-inplaceKiKi.Internal.PreludeKi.Internal.CounterKi.Internal.ByteCountKi.Internal.ThreadControl.ExceptionAllocationLimitExceededGHC.IO unsafeUnmaskforkforkTry ThreadOptionsaffinityUnboundallocationLimitlabel maskingStateKi.Internal.ScopescopedawaitAllforkWith ByteCount kilobytes megabytes$sel:affinity:ThreadOptions"$sel:allocationLimit:ThreadOptions$sel:label:ThreadOptions$sel:maskingState:ThreadOptionsThreadAffinity CapabilityOsThreadThreaddefaultThreadOptionsawaitScopefork_ forkWith_ forkTryWithinterruptiblyMaskeduninterruptiblyMaskedbaseGHC.Base++ghc-primGHC.PrimseqGHC.Listfilterzip System.IOprint Data.Tuplefstsnd otherwisemap$coerceGHC.Real fromIntegral realToFracjoinGHC.EnumBoundedmaxBoundminBoundEnumsuccpredenumFromThenTo enumFromTo enumFromThenenumFromfromEnumtoEnum GHC.ClassesEq==/= GHC.FloatFloatingtanhtansqrtsinhsinpilogBaselogexpcoshcosatanhatanasinhasinacosh**acos Fractionalrecip fromRational/IntegralremquotRemquotdivModdivmod toIntegerMonad>>>>=return Data.DataDataFunctorfmap<$GHC.NumNumsignumabs*+negate fromInteger-Ord<<=>maxmincompare>=GHC.ReadRead readsPrecreadListReal toRational RealFloat significand scaleFloatisNegativeZeroisNaN isInfiniteisIEEEisDenormalized floatRange floatRadix floatDigitsexponent encodeFloatatan2 decodeFloatRealFractruncateroundproperFractionceilingfloorGHC.ShowShowshowListshow showsPrecControl.Monad.Fail MonadFailfail Applicative<**><*>pure Data.FoldableFoldablefoldMapsumproductnullminimummaximumfoldr1foldl1elemfoldrfoldllengthData.Traversable TraversabletraversesequencemapM sequenceA GHC.GenericsGeneric Semigroup<>Monoidmconcatmemptymappend GHC.TypesBoolFalseTrueStringCharDoubleFloatIntGHC.IntInt8Int16Int32Int64 ghc-bignumGHC.Num.IntegerIntegerGHC.Num.NaturalNatural GHC.MaybeMaybeNothingJustOrderingGTLTEQRationalIOWordGHC.WordWord32 Data.EitherEitherRightLeftControl.Applicativeoptional writeFilereadLnreadIOreadFileputStrLnputStrputCharinteractgetLine getContentsgetChar appendFile GHC.Conc.IO threadDelayControl.Concurrent.MVarwithMVarMaskedwithMVarswapMVar modifyMVar_modifyMVarMasked_modifyMVarMasked modifyMVar mkWeakMVaraddMVarFinalizerControl.Exception.Basetry GHC.Conc.SyncThreadIdthrowTo myThreadIdGHC.IO.ExceptionioErrorFilePathuninterruptibleMask_uninterruptibleMaskthrowIOmask_IOError userErrorGHC.Exception.Type Exception traverse_ sequence_ornotElemmapM_for_ concatMapconcatanyandall Data.OldListwordsunwordsunlineslines Text.Readreadsreadeither readParenlexText.ParserCombinators.ReadPReadSoddlcmgcdeven^^^ShowSshows showString showParenshowCharzipWith3zipWithzip3unzip3unzip takeWhiletaketailsplitAtspanscanr1scanrscanl1scanlreverse replicaterepeatlookuplastiterateinithead dropWhiledropcyclebreak!! Data.Maybemaybe fromMaybe Data.Functionfix Data.Functorvoid<&><$>$>uncurrycurryGHC.MVarMVar tryTakeMVar tryReadMVar tryPutMVartakeMVarreadMVarputMVarnewMVar newEmptyMVar isEmptyMVarsubtract<|>whenuntilidflipconstasTypeOf=<<.$!GHC.Err undefinederrorWithoutStackTraceerror SomeException&&not||containers-0.6.5.1Data.IntMap.InternalIntMapData.Map.InternalMapData.Sequence.InternalSeqData.Set.InternalSetforkIOforkOnCounter newCounter incrCounterbyteCountToInt64Unmasked ThreadFailed$sel:childId:ThreadFailed$sel:exception:ThreadFailed makeThreadunwrapThreadFailedSomeAsyncException