#include <bits/stdc++.h>
using namespace std;
const long long md = 1e9 + 7;
const long long MX = 2e5 + 5;
const long long INF = 1e18;
const long double PI = 4 * atan((long double)1);
long long power(long long a, long long n) {
  long long res = 1;
  while (n) {
    if (n % 2) res *= a;
    a *= a;
    n /= 2;
  }
  return res;
}
long long abst(long long a) { return ((a < 0) ? (-1 * a) : (a)); }
int32_t main() {
  ios_base::sync_with_stdio(false), cin.tie(NULL);
  long long n;
  cin >> n;
  map<long long, vector<long long> > mp;
  for (long long i = 1; i <= n; i++) {
    long long a, b;
    cin >> a >> b;
    mp[a].push_back(b);
    mp[b].push_back(a);
  }
  long long s = -1, d = -1;
  for (auto it = mp.begin(); it != mp.end(); it++) {
    if ((it->second).size() == 1) {
      if (s == -1)
        s = it->first;
      else {
        d = it->first;
        break;
      }
    }
  }
  long long c = s;
  map<long long, long long> vis;
  while (1) {
    cout << c << " ";
    vis[c]++;
    long long t = -1;
    vector<long long> v = mp[c];
    for (long long i = 0; i < v.size(); i++) {
      if (!vis[v[i]]) {
        t = v[i];
        break;
      }
    }
    if (t == -1)
      break;
    else
      c = t;
  }
  return 0;
}
