code: def parse_timemap_from_blocks(profile_block_list):
      
      prefix_list = []
      timemap = ut.ddict(list)
      for ix in range(len(profile_block_list)):
          block = profile_block_list[ix]
          total_time = get_block_totaltime(block)
          # Blocks without time go at the front of sorted output
          if total_time is None:
              prefix_list.append(block)
          # Blocks that are not run are not appended to output
          elif total_time != 0:
              timemap[total_time].append(block)
      return prefix_list, timemap
docs: Build a map from times to line_profile blocks