better macros still