code: async def blob_load(self, elem_type, params=None, elem=None):
          
          ivalue = await load_uvarint(self.iobj)
          fvalue = bytearray(ivalue)
          await self.iobj.areadinto(fvalue)
  
          if elem is None:
              return fvalue  # array by default
  
          elif isinstance(elem, x.BlobType):
              setattr(elem, elem_type.DATA_ATTR, fvalue)
              return elem
  
          else:
              elem.extend(fvalue)
  
          return elem
docs: Loads blob from reader to the element. Returns the loaded blob.
  
          :param reader:
          :param elem_type:
          :param params:
          :param elem:
          :return: