add; global macros