#pragma once #include struct XY { int x = 0; int y = 0; XY operator + (const XY &) const; XY operator - () const; XY operator - (const XY &) const; XY& operator += (const XY &); XY& operator -= (const XY &); bool operator == (const XY& other) const; bool operator != (const XY& other) const; }; template<> struct std::hash { size_t operator () (const XY &) const; };