#include <bits/stdc++.h>
using namespace std;
const int N = 400005;
int A[N], sq, n;
vector<int> v[1000];
long long solve(int l, int r, long long cnt) {
  int id1 = (l + sq - 1) / sq, id2 = (r + sq - 1) / sq;
  int sz1 = (id1 - 1) * sq + 1, sz2 = (id2 - 1) * sq + 1,
      sz = (n + sq - 1) / sq;
  int n1 = A[l], n2 = A[r];
  for (int i = 1; i < id1; i++) {
    int it = lower_bound(v[i].begin(), v[i].end(), n1) - v[i].begin();
    cnt -= v[i].size() - it;
  }
  for (int i = id1 + 1; i <= sz; i++) {
    int it = lower_bound(v[i].begin(), v[i].end(), n1) - v[i].begin();
    cnt -= it;
  }
  for (int i = sz1; i < l; i++)
    if (A[i] > n1) cnt--;
  for (int i = l + 1; i < min(sz1 + sq, n + 1); i++)
    if (A[i] < n1) cnt--;
  vector<int>::iterator it = lower_bound(v[id1].begin(), v[id1].end(), n1);
  v[id1].erase(it);
  for (int i = 1; i < id2; i++) {
    int it = lower_bound(v[i].begin(), v[i].end(), n2) - v[i].begin();
    cnt -= v[i].size() - it;
  }
  for (int i = id2 + 1; i <= sz; i++) {
    int it = lower_bound(v[i].begin(), v[i].end(), n2) - v[i].begin();
    cnt -= it;
  }
  for (int i = sz2; i < r; i++)
    if (A[i] > n2 && A[i] != n1) cnt--;
  for (int i = r + 1; i < min(sz2 + sq, n + 1); i++)
    if (A[i] < n2 && A[i] != n1) cnt--;
  it = lower_bound(v[id1].begin(), v[id1].end(), n2);
  v[id1].insert(it, n2);
  it = lower_bound(v[id2].begin(), v[id2].end(), n2);
  v[id2].erase(it);
  swap(A[l], A[r]);
  for (int i = 1; i < id1; i++) {
    int it = lower_bound(v[i].begin(), v[i].end(), n2) - v[i].begin();
    cnt += v[i].size() - it;
  }
  for (int i = id1 + 1; i <= sz; i++) {
    int it = lower_bound(v[i].begin(), v[i].end(), n2) - v[i].begin();
    cnt += it;
  }
  for (int i = sz1; i < l; i++)
    if (A[i] > n2) cnt++;
  for (int i = l + 1; i < min(sz1 + sq, n + 1); i++)
    if (A[i] < n2) cnt++;
  it = lower_bound(v[id2].begin(), v[id2].end(), n1);
  v[id2].insert(it, n1);
  for (int i = 1; i < id2; i++) {
    int it = lower_bound(v[i].begin(), v[i].end(), n1) - v[i].begin();
    cnt += v[i].size() - it;
  }
  for (int i = id2 + 1; i <= sz; i++) {
    int it = lower_bound(v[i].begin(), v[i].end(), n1) - v[i].begin();
    cnt += it;
  }
  for (int i = sz2; i < r; i++)
    if (A[i] > n1 && A[i] != n2) cnt++;
  for (int i = r + 1; i < min(sz2 + sq, n + 1); i++)
    if (A[i] < n1 && A[i] != n2) cnt++;
  return cnt;
}
int main() {
  long long q;
  cin >> n >> q;
  sq = sqrt(n + 0.0);
  if (sq * sq < n) sq++;
  for (int i = 1; i <= n; i++) {
    A[i] = i;
    v[(i + sq - 1) / sq].push_back(i);
  }
  long long ans = 0;
  for (int i = 1; i <= q; i++) {
    int l, r;
    scanf("%d%d", &l, &r);
    if (r < l) swap(l, r);
    ans = solve(l, r, ans);
    printf("%I64d\n", ans);
  }
  return 0;
}
