#include<bits/stdc++.h>
using namespace std;
const int MAXX = 1e2 + 5;
int n, a[MAXX], v[MAXX];
bool dfs(int sum){
if(sum == n){
for(int i = 1; i <= sum; i++){
cout << a[i] << ' ';
}
cout << '\n';
}
for(int i = 1; i <= n; i++){
if(!v[i]){
v[i] = 1;
a[sum + 1] = i;
dfs(sum + 1);
v[i] = 0;
}
}
}
int main(){
cin >> n;
dfs(0);
return 0;
}