úÎ$J!P$      !"#SafeSafe !"+>ILN3Erlang inspired strategies. At the moment only the  is implemented.PSmart constructor which offers a default throttling based on fibonacci numbers.Creates a new SupervisorSpec". The reason it doesn't return a  Supervisor is to force you to call  supervise6 explicitly, in order to start the supervisor thread.ÚGives you access to the event this supervisor is generating, allowing you to react. It's using a bounded queue to explicitly avoid memory leaks in case you do not want to drain the queue to listen to incoming events.?Returns the number of active threads at a given moment in time.¹Shutdown the given supervisor. This will cause the supervised children to be killed as well. To do so, we explore the children tree, killing workers as we go, and recursively calling  in case we hit a monitored  Supervisor.#Fork a thread in a supervised mode.@Monitor another supervisor. To achieve these, we simulate a new  Ö, so that the first supervisor will effectively restart the monitored one. Thanks to the fact that for the supervisor the restart means we just copy over its internal state, it should be perfectly fine to do so..$% &' ( )*+,-./01The  SupervisorThe retry policy to useThe computation to run2345678   $% &' (  )*+,-./012345678Safe !"+>ILNCreates a new ". The reason it doesn't return a  is to force you to call  supervise6 explicitly, in order to start the supervisor thread.Like >, but give the user control over the size of the event queue.9$The default size of the queue where (s) are written.9 9Safe !"+>ILN"Creates a new !". The reason it doesn't return a   is to force you to call  supervise6 explicitly, in order to start the supervisor thread. !"#  !"#! "# !"#:      ! "#$%&&'()*+,-./0123456threa_9ok8nhfzsrc1UxyT2cam8I#Control.Concurrent.Supervisor.Types%Control.Concurrent.Supervisor.BoundedControl.Concurrent.Supervisor&Control.Concurrent.Supervisor.TutorialRestartStrategy OneForOneSupervisionEvent ChildBorn ChildDiedChildRestartedChildRestartLimitReached ChildFinished RestartActionChild_ DeadLetter QueueLike newQueueIO readQueue writeQueue Supervisor0SupervisorSpec0fibonacciRetryPolicynewSupervisorSpec newSupervisor eventStreamactiveChildrenshutdownSupervisorforkSupervisedmonitorChild SupervisorSupervisorSpecnewSupervisorSpecBoundedMonitorRequestMonitoredSupervisionWorkerSupvsr Supervisor_ _sp_myTid _sp_strategy _sp_children _sp_mailbox_sp_eventStream Initialised Uninitialised supervised restartChildrestartOneForOne handleEvents$fExceptionMonitorRequest$fQueueLikeTBQueue$fQueueLikeTQueuedefaultEventQueueSize