Îõ³h$e~&      !"#$% Safe-InferredÊ&'()*+,-None  >?ÀÁÂÉר2 uniform-errorÉrunErr to avoid the depreceated message for runErrorT, which is identical uniform-errorÕrun an operation in ErrIO which is not returning anything simpler to use than runErr uniform-error+for type specification, not to be evaluated uniform-error&this is using catch to grab all errors uniform-error&a list of texts is output with failure uniform-error-computation to run first ("acquire resource") uniform-error,computation to run last ("release resource") uniform-errorcomputation to run in-between$   !"$ !"  .     !"#$%&'()*+,-./0123456789:;<=>*uniform-error-0.1.0-97bq30dDzql1JopsGHNWWu Uniform.ErrorPaths_uniform_errorbaseControl.Monad.IO.ClassliftIOMonadIO Control.MonadunlessControl.Exception.BasebracketGHC.IOcatchGHC.Exception.Type ExceptionGHC.Basewhen SomeExceptiontransformers-0.5.6.2Control.Monad.Trans.ErrorErrorErrorT(monads-tf-0.1.0.3-ETMQNdBlDWfJbOkLMFyAzVControl.Monad.Error.Class catchError throwError ErrorType MonadError runErrorT"safe-0.3.19-AfrHSVViU1189qUhjBUb5bSafereadNoteheadNoteErrIOErrOrVal toErrOrValrunErr runErrorVoidundef fromRightEOV bracketErrIOcallIO throwErrorT maybe2errorerrorT errorWords fromJustNoteTfromRightNoteString fromRightNote headNoteT startProg $fErrorText $fException[]$fCharChains2IOExceptionTextversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName