utility functions, logger lib