use listen instead of add_listener