from collections import deque, Counter N,M = list(map(int,input().split())) edge = [[] for _ in range(N)] for _ in range(M): u,v = list(map(int,input().split())) u -= 1;v -= 1 edge[u].append(v) edge[v].append(u) q = deque([(0,0)]) dist = [-1] * N while(q): v,now = q.popleft() if(dist[now] != -1):continue dist[now] = v for i in edge[now]: q.append((v+1,i)) dist.sort() dc = Counter(dist[1:]) if(not edge[0]): ans = [0] * N print("\n".join(map(str,ans))) exit() black = 1 white = 0 ans = [] for i in range(1,N+1): if(i%2 == 0): black += dc[i] ans.append(black) else: white += dc[i] ans.append(white) print("\n".join(map(str,ans)))