working towards pubsub