added macro-math