def readfile(filename, directed = None):
	with open(filename) as f:
		n = int(f.readline())
		res = [set() for i in range(n)]
		s = f.readline()
		while s != '':
			x, y = tuple([int(z) for z in s.split()])
			res[x].add(y)
			if not directed:
				res[y].add(x)
			s = f.readline()
	return n, res

def DFS(G, v):
	print(v)
	vis[v] = True
	for u in G[v]:
		if not vis[u]:
			DFS(G, u)

n, G = readfile('dfs_input1.txt', False)
print(n, G)
vis = [False] * n
DFS(G, 1)