added logging framework