Nonmembers are functions too: Nonmember functions that are designed to be part of the interface of a class
X (notably operators and helper functions) must be defined in the same namespace as the
X in order to be called correctly.