code: def _remove_self_similar_shapelets(shapelet_heap):
      to_keep = [True] * len(shapelet_heap)
  
      for i in range(len(shapelet_heap)):
          if to_keep[i] is False:
              continue
  
          for n in range(i + 1, len(shapelet_heap)):
              if to_keep[n] and _is_self_similar(
                  shapelet_heap[i], shapelet_heap[n]
              ):
                  if (shapelet_heap[i][0], shapelet_heap[i][1]) >= (
                      shapelet_heap[n][0],
                      shapelet_heap[n][1],
                  ):
                      to_keep[n] = False
                  else:
                      to_keep[i] = False
                      break
  
      return to_keep
  
file_path: sktime/sktime/transformations/panel/_shapelet_transform_numba.py
imports: import heapq
  import math
  import numpy
  from sktime.utils.numba.njit import njit
label_desc: Use image node_id 8 for calling a global function with example usage: _remove_self_similar_shapelets(shapelet_heap) and returns: to_keep