updated listener.py