code: func newWrappedError(err error, message string) *wrappedError {
  	if err == nil {
  		err = errors.New("Error")
  	}
  
  	var errWithCause errorWithCause
  
  	if len(message) > 0 {
  		errWithCause = errors.Wrap(err, message).(errorWithCause)
  	} else if ewc, ok := err.(errorWithCause); ok {
  		errWithCause = ewc
  	} else {
  		errWithCause = errors.Wrap(err, "LFS").(errorWithCause)
  	}
  
  	return &wrappedError{
  		context:        make(map[string]interface{}),
  		errorWithCause: errWithCause,
  	}
  }
docs: // newWrappedError creates a wrappedError.