add new methods to Listener interface and implementation