proto-macros