def split_block(R, groupMax): 
  totalOriginal = groupMax + 1

  for i in range(0, totalOriginal):
    swap_later = False
    group = i
    group_use = False
  
    for r in R:
      if swap_later == True and group_use:
        swap_later = False
        group = groupMax + 1
        group_use = False

      if r['group'] == i:
        input_lines = 0
        output_lines = 0

        if len(r['links'][0]) > 1 or len(r['links'][1]) > 1:
          input_lines = len(r['links'][0])
          output_lines = len(r['links'][1])

          if input_lines > 1 and group_use:
            group = groupMax + 1
            group_use = False

          if output_lines > 1:
            swap_later = True

        r['group'] = group
        group_use = True
        
        if r['group'] > groupMax:
          groupMax = r['group']

  return groupMax
