code: def make_ranges(self, file_url):
          
          size = file_url.size
          bytes_per_chunk = self.determine_bytes_per_chunk(size)
          start = 0
          ranges = []
          while size > 0:
              amount = bytes_per_chunk
              if amount > size:
                  amount = size
              ranges.append((start, start + amount - 1))
              start += amount
              size -= amount
          return ranges
docs: Divides file_url size into an array of ranges to be downloaded by workers.
          :param: file_url: ProjectFileUrl: file url to download
          :return: [(int,int)]: array of (start, end) tuples