run Catching Safely
inline suspend fun <T> runCatchingSafely(noinline onException: ExceptionHandler<T> = defaultSafelyExceptionHandler, noinline block: suspend CoroutineScope.() -> T): Result<T>
inline suspend fun <T, R> T.runCatchingSafely(noinline onException: ExceptionHandler<R> = defaultSafelyExceptionHandler, noinline block: suspend T.() -> R): Result<R>