use new AbstractSubscriber