added % macro