spend hours on macros, go figure