further work on pubsub