code: def _filter_repeating_items(download_list):
          
          unique_requests_map = {}
          mapping_list = []
          unique_download_list = []
          for download_request in download_list:
              if download_request not in unique_requests_map:
                  unique_requests_map[download_request] = len(unique_download_list)
                  unique_download_list.append(download_request)
              mapping_list.append(unique_requests_map[download_request])
          return unique_download_list, mapping_list
docs: Because of data_filter some requests in download list might be the same. In order not to download them again
          this method will reduce the list of requests. It will also return a mapping list which can be used to
          reconstruct the previous list of download requests.
  
          :param download_list: List of download requests
          :type download_list: list(sentinelhub.DownloadRequest)
          :return: reduced download list with unique requests and mapping list
          :rtype: (list(sentinelhub.DownloadRequest), list(int))