#include<bits/stdc++.h>
using namespace std;
long long n,m,x,y,gs,a[200010],b[200010],l[200010],r[200010],sum[200010],sq;
void upd(long long x)
{
sum[x]=0;
for(int i=l[x];i<=r[x];i++)
if(a[i])
sum[x]++;
return ;
}
void add(long long x,long long y)
{
if(b[x]==b[y])
{
for(int i=x;i<=y;i++)
a[i]=1;
upd(b[x]);
return ;
}
for(int i=x;i<=r[b[x]];i++)
a[i]=1;
for(int i=l[b[y]];i<=y;i++)
a[i]=1;
upd(b[x]);
upd(b[y]);
for(int i=b[x]+1;i<=b[y]-1;i++)
if(sum[i]!=sq)
sum[i]=sq;
return ;
}
void query()
{
long long ans=0;
for(int i=1;i<=gs;i++)
ans+=max(0ll,r[i]-l[i]-sum[i]+1);
cout<<ans<<endl;
}
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define endl '\n'
#define QwQ return 0;
int main()
{
IOS;
cin>>n>>m;
sq=sqrt(n);
for(int i=1;i<=n;i++)
{
l[i]=r[i-1]+1;
r[i]=min(sq*i,n);
for(int j=l[i];j<=r[i];j++)
b[j]=i;
if(l[i]>n)
{
gs=i;
break;
}
}
while(m--)
{
cin>>x>>y;
if(x>y)
swap(x,y);
add(x,y);
query();
}
QwQ;
}