from copy import deepcopy
N, u, v = map(int, input().split())
edge = [[] for _ in range(N)]
for _ in range(N-1):
    a, b = map(int, input().split())
    a, b = a-1, b-1
    edge[a].append(b)
    edge[b].append(a)

aoki = [0] * N
takahasi = [0] * N
dist_list = [0] * N
def dfs(pv, v, dist):
    dist_list[v] = dist
    for nv in edge[v]:
        if nv == pv:
            continue
        dfs(v, nv, dist+1)

dfs(-1,u-1,0)
takahasi = deepcopy(dist_list)
dist_list = [0] * N
dfs(-1,v-1,0)
aoki = deepcopy(dist_list)
print(takahasi)
print(aoki)

