#include <iostream>
#include <cstdio>
using namespace std;
int n;
const int N = 16;
int st[N];//1表示选,2表示不选,0表示还未选
void dfs(int u)
{
if(u > n)
{
for(int i = 1;i <= n;i++)
if(st[i] == 1)
cout << i << ' ';
puts("");
return;
}
st[u] = 2;//不选
dfs(u + 1);
st[u] = 0;//恢复现场
st[u] = 1;
dfs(u + 1);//选
st[u] = 0;//恢复现场
}
int main()
{
cin >> n;
dfs(1);
return 0;
}