from collections import deque N, M = map(int, input().split()) G = [[] for _ in range(N)] for _ in range(M): u, v = map(int, input().split()) G[u-1].append(v-1) G[v-1].append(u-1) even, odd = 1, 0 visited = [-1]*N que = deque() que.append(0) visited[0] = 0 ans = [] pre = 0 n = 0 while que: n = que.popleft() if pre != visited[n]: if pre%2 == 0: ans.append(odd) else: ans.append(even) pre = visited[n] for v in G[n]: if visited[v] == -1: visited[v] = visited[n]+1 que.append(v) if visited[v]%2 == 0: even += 1 else: odd += 1 now = visited[n]+1 while now <= N: if now%2 == 0: ans.append(even) else: ans.append(odd) now += 1 for a in ans: print(a)