code: def from_json(cls, json):
      
      obj = cls(key_range.KeyRange.from_json(json["key_range"]),
                model.QuerySpec.from_json(json["query_spec"]))
      cursor = json["cursor"]
      # lint bug. Class method can access protected fields.
      # pylint: disable=protected-access
      if cursor and json["cursor_object"]:
        obj._cursor = datastore_query.Cursor.from_websafe_string(cursor)
      else:
        obj._cursor = cursor
      return obj
docs: Reverse of to_json.