Functional logic. Add listener.