code: async def _upload_chunks(
              cls, rfile: BootResourceFile, content: io.IOBase, chunk_size: int,
              progress_callback=None):
          
          content.seek(0, io.SEEK_SET)
          upload_uri = urlparse(
              cls._handler.uri)._replace(path=rfile._data['upload_uri']).geturl()
          uploaded_size = 0
  
          insecure = cls._handler.session.insecure
          connector = aiohttp.TCPConnector(verify_ssl=(not insecure))
          session = aiohttp.ClientSession(connector=connector)
  
          async with session:
              while True:
                  buf = content.read(chunk_size)
                  length = len(buf)
                  if length > 0:
                      uploaded_size += length
                      await cls._put_chunk(session, upload_uri, buf)
                      if progress_callback is not None:
                          progress_callback(uploaded_size / rfile.size)
                  if length != chunk_size:
                      break
docs: Upload the `content` to `rfile` in chunks using `chunk_size`.