code: func Wrap(err error, message string) error {
  	if err == nil {
  		return nil
  	}
  	err = &withMessage{
  		cause: err,
  		msg:   message,
  	}
  	return &withStack{
  		err,
  		callers(),
  	}
  }
docs: // Wrap returns an error annotating err with a stack trace
  // at the point Wrap is called, and the supplied message.
  // If err is nil, Wrap returns nil.