cover macros with begin-block/end-block