updated MACROS.hpp