* changing to pubsub logic