"(      !"#$%&'None6KV]gh  Result of a fork is an Handle where you can await a result.BackendM is essentially (A, but also has the ability to report the status of the executor.C is responsible for running your functions in a remote environment.See: >http://hackage.haskell.org/package/distributed-fork-aws-lambdadistributed-fork-aws-lambdaShould run the current binary in the target environment, put the given string as standard input and return the executables answer on the standard output.)/An ExecutorClosure is a serialisable IO action.&We switch to executor mode only when argv[1] == argExecutorMode.On distributed-fork, we run the same binary both in your machine (called "driver") and in the remote environment (called "executor"). In order for the program to act according to where it is, you should call this function as the first thing in your main: &main = do initDistributedFork ... *CWhen on executor mode, we expect a serialised ExecutorClosure from +, run it and exit.,9Given an IO action and a static proof that the result is W, this function runs the action using the Backend in a separate thread and returns a - holding the ..  /)*,012.   /None   None0!5Asynchronously executes the given function using the  and returns an . {-# LANGUAGE StaticPointers #-} import Control.Distributed.Fork import Control.Distributed.Fork.LocalProcessBackend main :: IO () main = do  handle <- !  (static ?) (static (return "Hello World!")) await handle >>= putStrLn "Blocks until the  completes. Can throw .  !" !"  None&A = which uses local processes as executors. Useful for testing.&&None]'+Runs given closures concurrently using the  with a progress bar.Throws  if something fails.''3    !!"#$%&'()*++,-./0123456789:; <=>?/distributed-fork-0.0.1.3-K8hlrPZiBHWJ4fwc6jlT2R Control.Distributed.Fork.BackendControl.Distributed.Fork,Control.Distributed.Fork.LocalProcessBackendControl.Distributed.Fork.Utils!Control.Distributed.Fork.InternallocalProcessBackendbaseControl.Monad.IO.ClassliftIO!System.Environment.ExecutablePathgetExecutablePath'constraints-0.10-8EDr8M62baYIrdFVxMCmYVData.ConstraintDict0distributed-closure-0.4.0-AI9iaplWeBACg86w64daPf$Control.Distributed.Closure.Internalcapcpure SerializableClosureHandleExecutorFinalStatusExecutorFailedExecutorSucceededExecutorPendingStatusExecutorWaitingExecutorSubmittedExecutorStartedExecutorStatusExecutorPendingExecutorFinishedBackendMBackendbExecuteargExecutorModeinitDistributedForkwaiting waitingDesc submitted submittedDescstarted startedDescExecutorFailedExceptionforkawait"$fExceptionExecutorFailedException$fShowExecutorFailedException$fEqExecutorFailedExceptionmapConcurrentlyWithProgressghc-prim GHC.TypesIOExecutorClosure runExecutorGHC.IO.Handle.FDstdin runBackend GHC.Conc.SyncTVartoExecutorClosure parseAnswertryAwait