Refactor subscribing