Put macros at top to keep the byte-compiler happy