#include <bits/stdc++.h>
using namespace std;
const int N = 8;
int path[N];
bool flag[N];
int n;
void dfs(int h) {
if (h == n + 1) {
for (int i = 1; i <= n; i ++)
cout << path[i] << (i == n ? '\n' : ' ');
return;
}
for (int i = 1 ; i <= n ; i ++) {
if (!flag[i]) {
flag[i] = true;
path[h] = i;
dfs(h + 1);
flag[i] = false;
}
}
}
int main() {
cin >> n;
dfs(1);
return EXIT_SUCCESS;
}