simplify adding new listeners