code: def fetch_raw(self, **kw):
          
          self.sockopt.update(kw)
          with SMCSocketProtocol(self, **self.sockopt) as protocol:
              for result in protocol.receive():
                  if 'records' in result and result['records'].get('added'):
                      yield result['records']['added']
docs: Fetch the records for this query. This fetch type will return the
          results in raw dict format. It is possible to limit the number of
          receives on the socket that return results before exiting by providing
          max_recv.
          
          This fetch should be used if you want to return only the result records
          returned from the query in raw dict format. Any other dict key/values
          from the raw query are ignored.
          
          :param int max_recv: max number of socket receive calls before
              returning from this query. If you want to wait longer for
              results before returning, increase max_iterations (default: 0)
          :return: list of query results
          :rtype: list(dict)