output_description: In the order i = 1, 2, ..., M, print the inconvenience just after the i-th
  bridge collapses. Note that the answer may not fit into a 32-bit integer type.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N M
      A_1 B_1
      A_2 B_2
      \vdots
      A_M B_M
attempt: n, m = map(int, input().split())
  ab = []
  for _ in range(m):
      ab.append(list(map(lambda x: int(x) - 1, input().split())))
  ab.reverse()
  pre = [i for i in range(n)]
  num = [1 for _ in range(n)]
  ans = n * (n - 1) // 2
  out = []
  for i in range(m):
      out.append(ans)
      x, y = ab[i]
      X = []
      while pre[x] != x:
          X.append(x)
          x = pre[x]
      Y = []
      while pre[y] != y:
          Y.append(y)
          y = pre[y]
      if x != y:
          ans -= num[x] * num[y]
          if num[x] >= num[y]:
              win = x
              pre[y] = x
              num[x] += num[y]
          else:
              win = y
              pre[x] = y
              num[y] += num[x]
          for xx in X:
              pre[xx] = win
          for yy in Y:
              pre[yy] = win
  out.reverse()
  for o in out:
      print(o)
  
problem_description: Statement
  
  There are N islands and M bridges.
  
  The i-th bridge connects the A_i-th and B_i-th islands bidirectionally.
  
  Initially, we can travel between any two islands using some of these bridges.
  
  However, the results of a survey show that these bridges will all collapse
  because of aging, in the order from the first bridge to the M-th bridge.
  
  Let the **inconvenience** be the number of pairs of islands (a, b) (a < b)
  such that we are no longer able to travel between the a-th and b-th islands
  using some of the bridges remaining.
  
  For each i (1 \leq i \leq M), find the inconvenience just after the i-th
  bridge collapses.
samples: [{"input": "4 5\n    1 2\n    3 4\n    1 3\n    2 3\n    1 4", "output": "0\n    0\n    4\n    5\n    6\n    \n\nFor example, when the first to third bridges have collapsed, the inconvenience\nis 4 since we can no longer travel between the pairs (1, 2), (1, 3), (2, 4)\nand (3, 4).\n\n* * *"}, {"input": "6 5\n    2 3\n    1 2\n    5 6\n    3 4\n    4 5", "output": "8\n    9\n    12\n    14\n    15\n    \n\n* * *"}, {"input": "2 1\n    1 2", "output": "1"}]