Getting rid of DualListener and ListenerBase