added util macros