code: func onRecover(e interface{}, info string) (err Error) {
  	if e != nil {
  		switch {
  		case isSystemError(e):
  			return e.(Error)
  		case isGenericError(e):
  			return newSystemErrorWithCause(info, e.(error))
  		default:
  			return newSystemErrorf(info+" - recovered: %s", e)
  		}
  	}
  	return nil
  }
docs: // ----------------------------------------------------------------------
  // error handling helper functions
  // ----------------------------------------------------------------------