moving macros to header