sparkListeners should be a val