The arithmetic classes provide at least the following signatures:
self_t(int n);
self_t& self_t::operator += (const self_t&);
self_t& self_t::operator -= (const self_t&);
self_t& self_t::operator *= (const self_t&);
self_t& self_t::operator /= (const self_t&);
self_t operator - (const self_t& x);
self_t operator +(const self_t& x, const self_t& y);
self_t operator -(const self_t& x, const self_t& y);
self_t operator *(const self_t& x, const self_t& y);
self_t operator /(const self_t& x, const self_t& y);
bool operator ==(const self_t& x, const self_t& y);
bool operator !=(const self_t& x, const self_t& y);