#include <bits/stdc++.h> using namespace std; int n, m; int a[101][101], d[101]; void topo(){ for(int i = 1; i <= m; i++){ for(int j = 1; j <= m; j++){ if(!d[j]){ d[j]--; printf("%d ", j); for(int k = 1; k <= m; k++){ if(a[j][k] == 1) d[k]--; } break; } } } } int main(){ while(scanf("%d%d", &n, &m) == 2){ memset(d, 0, sizeof(d)); memset(a, 0, sizeof(a)); for(int i = 0; i < n; i++){ int x, y; scanf("%d%d", &x, &y); if(!a[x][y]){ a[x][y] = 1; d[y]++; } } topo(); } } /* 6 6 1 2 2 3 2 4 5 2 5 4 4 6 */