add interfaces for Subscriber