cleaner code, macros to set modulus, direct modulus and delayed modulus computations