code: def get_parts(self):
          
          parts = []
          start_byte = 0
          for i in range(1, self.total + 1):
              end_byte = start_byte + self.part_size
              if end_byte >= self.file_size - 1:
                  end_byte = self.file_size
              parts.append({
                  'part': i,
                  'offset': start_byte,
                  'limit': end_byte
              })
              start_byte = end_byte
          return parts
docs: Partitions the file and saves the parts to be uploaded
          in memory.