Macros are bad for the soul, missing semicolons for the compiler