expand operator overload macros to make the code more readable