public static MethodResult <TResult> MapMethodResult <TResult>(
     this MethodResult @this,
     TResult value) => @this
 .OnSuccess(value)
 .OnFail(methodResult => MethodResult <TResult> .Fail(methodResult.Detail));
 public static MethodResult <TSource> TryTeeOnSuccess <TSource, TResult>(
     this MethodResult <TSource> @this,
     Func <TSource, TResult> function) => @this
 .OnSuccess(value => value.TryTee(function));
 public static MethodResult TryTeeOnSuccess <TResult>(
     this MethodResult @this,
     Func <TResult> function) => @this
 .OnSuccess(() => TeeExtensions.TryTee(function));
 public static MethodResult TryTeeOnSuccess(
     this MethodResult @this,
     Action action) => @this
 .OnSuccess(() => TryExtensions.Try(action));
 public static MethodResult <T> TryTeeOnSuccess <T>(
     this MethodResult <T> @this,
     Action action) => @this
 .OnSuccess(value => value.TryTee(action));
 public static MethodResult <TSource> TeeOnSuccess <TSource, TResult>(
     this MethodResult <TSource> @this,
     Func <TResult> function) => @this
 .OnSuccess(() => @this.Tee(function));
 public static MethodResult TeeOnSuccess(
     this MethodResult @this,
     Action action) =>
 @this.OnSuccess(() => @this.Tee(action));
 public static MethodResult <IConfiguration> AddConfig <T>(
     this MethodResult <IConfiguration> @this,
     IServiceCollection services) where T : class => @this
 .OnSuccess(configuration => configuration.AddConfig <T>(services));