#include <bits/stdc++.h>
using namespace std;
struct l{
int x;
int cnt=0;
}a[111];
bool cmp(l a,l b){
if(a.cnt==b.cnt){
return a.x<b.x;
}
return a.cnt<b.cnt;
}
int main(){
int n,m,u,v,c[111]={},cnt=0;
vector<int> b[111];
cin>>n>>m;
for(int i=0;i<m;i++){
cin>>u>>v;
b[u].push_back(v);
b[v].push_back(u);
a[u].cnt++;
a[v].cnt++;
}
for(int i=1;i<=n;i++){
a[i].x=i;
}
sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;i++){
int k=a[i].x;
if(c[k]==0){
for(int j=0;j<b[k].size();j++){
if(c[b[k][j]]==0){
cnt++;
}
c[b[k][j]]=1;
}
}
}
cout<<n-cnt<<endl;
for(int i=1;i<=n;i++){
cout<<abs(c[i]-1)<<" ";
}
}