custom pair class without global overload operators