#include <vector>
#include <iostream>
using namespace std;
int n;
vector<bool> flag(10, false);
vector<int> res;
void dfs(int pos){
if(pos == n){
for(int i = 0; i < res.size(); ++ i){
cout << res[i] << ' ';
}
cout << endl;
return;
}
for(int i = 1; i <= n; ++ i){
if(flag[i] == false){
flag[i] = true;
res.push_back(i);
dfs(pos + 1);
res.pop_back();
flag[i] = false;
}
}
}
int main(){
cin >> n;
dfs(0);
return 0;
}