code: def read_serializable_array(self, class_name, max_size=sys.maxsize):
          
          module = '.'.join(class_name.split('.')[:-1])
          class_name = class_name.split('.')[-1]
          class_attr = getattr(importlib.import_module(module), class_name)
          length = self.read_var_int(max_size=max_size)
          items = []
          try:
              for _ in range(0, length):
                  item = class_attr()
                  item.Deserialize(self)
                  items.append(item)
          except Exception as e:
              raise SDKException(ErrorCode.param_err("Couldn't deserialize %s" % e))
          return items
docs: Deserialize a stream into the object specific by `class_name`.
  
          Args:
              class_name (str): a full path to the class to be deserialized into. e.g. 'neo.Core.Block.Block'
              max_size (int): (Optional) maximum number of bytes to read.
  
          Returns:
              list: list of `class_name` objects deserialized from the stream.