docs: async def explain(self, query, *, dc=None, consistency=None):
          """Fetches existing prepared query
  
          Parameters:
              query (ObjectID): Query ID
              dc (str): Specify datacenter that will be used.
                        Defaults to the agent's local datacenter.
              watch (Blocking): Do a blocking query
              consistency (Consistency): Force consistency
          Returns:
              Object: the query
          Raises:
              NotFound: the query does not exist
          """
          query_id = extract_attr(query, keys=["ID"])
          path = "/v1/query/%s/explain" % query_id
          response = await self._api.get(path, consistency=consistency, params={
              "dc": dc})
          result = response.body
          return result