import sys sys.setrecursionlimit(100050) N = int(input()) UV = [list(map(int,input().split())) for _ in range(N-1)] E = [[] for _ in range(N)] for u, v in UV: u -= 1 v -= 1 E[u].append(v) E[v].append(u) LR = [[N,N] for _ in range(N)] LR[0][0] = 0 def dfs(x,p=-1): ret = N for y in E[x]: if y != p: LR[y][0] = LR[x][0] + 1 ret = min(ret, dfs(y,x) + 1) if ret == N: LR[x][1] = 0 return 0 else: LR[x][1] = ret return ret dfs(0) nv = [1] * N Q = [0] nv[0] = 0 while Q: x = Q.pop() for y in E[x]: if nv[y]: nv[y] = 0 Q.append(y) LR[y][1] = min(LR[x][1] + 1,LR[y][1]) for lr in LR: print(min(lr))