docs: def set_contents(self, stream, progress_callback=None):
          """Save contents of stream to part of file instance.
  
          If a the MultipartObject is completed this methods raises an
          ``MultipartAlreadyCompleted`` exception.
  
          :param stream: File-like stream.
          :param size: Size of stream if known.
          :param chunk_size: Desired chunk size to read stream in. It is up to
              the storage interface if it respects this value.
          """
          size, checksum = self.multipart.file.update_contents(
              stream, seek=self.start_byte, size=self.part_size,
              progress_callback=progress_callback,
          )
          self.checksum = checksum
          return self