slightly simplified subscription behavior