úÎP*Safe- is very similar to  from the async, package, but it has an explicit error type e.The ^ instance runs two actions concurrently, waits until they finish, and combines their results. *However, if any of the actions fails with eS the other action is immediately cancelled and the whole computation fails with e. To put it another way:  behaves like  Concurrently for successes and like   for errors.  Construct a  as if it were a .Run a  as if it were a .Works similarly to  from the async4 package, but if any of the computations fails with eL, the others are immediately cancelled and the whole computation fails with e. Verbatim copy of the internal  concurrently' function from the async package.   is concurrent.  & is a computation that never finishes.1 makes its two arguments race against each other.        conce_8RDL3HC2jciGzYoe4teYkzControl.Concurrent.ConceitControl.Concurrent.Async ConcurrentlymapConcurrentlyConceit runConceit_Conceit _runConceit mapConceitconceitconceit'baseGHC.Base Applicativerace$fApplyConceitsemig_GyBxf5nlRJVAWR49dEcgrbData.Functor.Bind.Class<.> $fPlusConceitData.Functor.Pluszero $fAltConceitData.Functor.AltcatchAll$fMonoidConceit$fSemigroupConceit$fAlternativeConceit$fApplicativeConceit$fBifunctorConceit