code: def process_response(self, response_json, resource, elapsed_time, lightweight):
          
          if isinstance(response_json, list):
              result = response_json
          else:
              result = response_json.get('result', response_json)
  
          if lightweight:
              return result
          elif self.client.lightweight and lightweight is not False:
              return result
          elif isinstance(result, list):
              try:
                  return [resource(elapsed_time=elapsed_time, **x) for x in result]
              except TypeError:
                  raise InvalidResponse(response=result)
          else:
              try:
                  return resource(elapsed_time=elapsed_time, **result)
              except TypeError:
                  raise InvalidResponse(response=result)
docs: :param dict/list response_json: Response in dict format
          :param BaseResource resource: Resource data structure
          :param float elapsed_time: Elapsed time of request
          :param bool lightweight: If True will return dict not a resource (22x faster)