func (e Error) Error() string {
	if msg, ok := Message(e); ok {
		return fmt.Sprintf("%s (%d)", msg, e)
	}
	return "unknown error"
}
func (e Error) Error() string {
	if msg, ok := Message(e); ok {
		return fmt.Sprintf("%s (%d)", msg, e)
	}
	return "unknown error"
}
// Error returns an error message of a given error.