#include <bits/stdc++.h>
using namespace std;
int a[100000],size[10000];
int find_parent(int x){
if(x!=a[x]){
find_parent(a[x]);
}
return a[x];
}
int uniono (int ay,int b){
int g=0;
int x=find_parent(ay);
int y=find_parent(b);
if(size[x]>size[y]){
a[y]=x;
g=size[x]-size[y];
size[x]+=size[y];
}
else{
a[x]=y;
g=size[y]-size[x];
size[y]+=size[x];
}
return g;
}
int main() {
int n,q,i,j,ay,b,ans;
cin>>n>>q;
for(i=1;i<=n;i++){
a[i]=i;
size[i]=1;
}
for(i=0;i<q;i++){
cin>>ay>>b;
ans=uniono(ay,b);
cout<<ans<<endl;
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBhWzEwMDAwMF0sc2l6ZVsxMDAwMF07CmludCBmaW5kX3BhcmVudChpbnQgeCl7CglpZih4IT1hW3hdKXsKCQlmaW5kX3BhcmVudChhW3hdKTsKCX0KCXJldHVybiBhW3hdOwp9CmludCB1bmlvbm8gKGludCBheSxpbnQgYil7CglpbnQgZz0wOwoJaW50IHg9ZmluZF9wYXJlbnQoYXkpOwoJaW50IHk9ZmluZF9wYXJlbnQoYik7CglpZihzaXplW3hdPnNpemVbeV0pewoJCWFbeV09eDsKCQlnPXNpemVbeF0tc2l6ZVt5XTsKCQlzaXplW3hdKz1zaXplW3ldOwoJfQoJZWxzZXsKCQlhW3hdPXk7CgkJZz1zaXplW3ldLXNpemVbeF07CgkJc2l6ZVt5XSs9c2l6ZVt4XTsKCX0KCXJldHVybiBnOwp9CmludCBtYWluKCkgewogICBpbnQgbixxLGksaixheSxiLGFuczsKICAgY2luPj5uPj5xOwogICBmb3IoaT0xO2k8PW47aSsrKXsKICAgCWFbaV09aTsKICAgCXNpemVbaV09MTsKICAgfQogICBmb3IoaT0wO2k8cTtpKyspewogICAJY2luPj5heT4+YjsKICAgCWFucz11bmlvbm8oYXksYik7CiAgIAljb3V0PDxhbnM8PGVuZGw7CiAgIH0KfQ==