code: def slicelist(b):
      
  
      slicelst = []
      started = False
      for i, e in enumerate(b):
          if e and not started:
              start = i
              started = True
          elif not e and started:
              slicelst.append(slice(start, i))
              started = False
  
      if e:
          slicelst.append(slice(start, i + 1))  # True in the end.
  
      return slicelst
docs: Produce a list of slices given the boolean array b.
  
      Start and stop in each slice describe the True sections in b.