Macros per module (2nd version)