improvements to subscribing