added logging macros