add MACRO_FUNC module