add filtering to subscriptions, including visibility filtering