template <typename T> bool operator<=(T lhs, uint128_t rhs){ if (rhs.upper()) return true; return ((uint64_t) lhs <= rhs.lower()); }
template <typename T> bool operator!=(T lhs, uint128_t rhs){ return (rhs.upper() | ((uint64_t) lhs != rhs.lower())); }
template <typename T> bool operator>=(T lhs, uint128_t rhs){ if (rhs.upper()) return false; return ((uint64_t) lhs >= rhs.lower()); }
// Comparison Operators template <typename T> bool operator==(T lhs, uint128_t rhs){ return (!rhs.upper() && ((uint64_t) lhs == rhs.lower())); }