no, listeners should be public since they lazy loaded