handling string macros