Oh hell, macros are bad...