static public ProcessWithLog <LogEntryT, Result <ErrT, NewOkT> > ResultMapContinue <LogEntryT, ErrT, OkT, NewOkT>( this ProcessWithLog <LogEntryT, Result <ErrT, OkT> > orig, Func <OkT, ProcessWithLog <LogEntryT, NewOkT> > map) => orig.ResultAndThenContinue(previousOk => map(previousOk).MapResult(newOk => new Result <ErrT, NewOkT>(Ok: newOk)));