code: async def get_subscription(self, name, root):
          
          self._check_receive_loop()
          self._ensure_subscription_queue_exists(name, root)
          res = await self.sub_by_root[root][name].get()
          self._check_error(res)
          return res
docs: Retrieve the data associated with a named subscription
  
          Returns None if there is no data associated with `name`
  
          If root is not None, then only return the subscription
          data that matches both root and name.  When used in this way,
          remove processing impacts both the unscoped and scoped stores
          for the subscription data.