import sys
input = sys.stdin.readline
n,m=map(int,input().split())
adj=[[] for _ in range(n)]
for _ in range(m):
  u,v=map(int,input().split())
  adj[u-1].append(v-1)
  adj[v-1].append(u-1)
from collections import deque
dist = [-1]*n
que = deque([0])
dist[0] = 0
while que:
  v = que.popleft()
  e = dist[v]
  for w in adj[v]:
    if dist[w] > -1:
      continue
    dist[w] = e + 1
    que.append(w)
if max(dist[1:])==-1:
	for i in range(n):
		print(0)
	exit()
cnt=[0]*(n+10)
for i in range(n):
  cnt[dist[i]]+=1
even=1
odd=0
for t in range(1,n+1):
  if t%2==0:
    even+=cnt[t]
    print(even)
  else:
    odd+=cnt[t]
    print(odd)