#include <iostream>
#include <fstream>
using namespace std;
fstream f("permutari1.in");
fstream g("permutari1.out");
int st[15],n;
void afis(int k)
{
for (int i=k-1; i>=1; i--)
{
cout <<st[i]<< "\t"<< "\n";
}
}
bool valid (int k)
{
int i;
for (i=1; i<k; i++)
{
if (st[k]==st[i])
return 0;
return 1;
}
}
void back(int k)
{
int i;
if (k==n+1)
{
afis(k);
}
else
{
for (i=1; i<=n; i++)
{
st[k]=i;
if (valid(k))
{
back(k+1);
}
}
}
}
int main()
{
f>>n;
back(1);
return 0;
}
CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPGZzdHJlYW0+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwpmc3RyZWFtIGYoInBlcm11dGFyaTEuaW4iKTsKZnN0cmVhbSBnKCJwZXJtdXRhcmkxLm91dCIpOwoKaW50IHN0WzE1XSxuOwoKdm9pZCBhZmlzKGludCBrKQp7CiAgICBmb3IgKGludCBpPWstMTsgaT49MTsgaS0tKQogICAgewogICAgICAgIGNvdXQgPDxzdFtpXTw8ICJcdCI8PCAiXG4iOwogICAgfQp9Cgpib29sIHZhbGlkIChpbnQgaykKewogICAgaW50IGk7CiAgICBmb3IgKGk9MTsgaTxrOyBpKyspCiAgICB7CiAgICAgICAgaWYgKHN0W2tdPT1zdFtpXSkKICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgcmV0dXJuIDE7CiAgICB9Cn0KCnZvaWQgYmFjayhpbnQgaykKewogICAgaW50IGk7IAogICAgaWYgKGs9PW4rMSkKICAgIHsKICAgICAgICBhZmlzKGspOyAKICAgIH0KICAgIGVsc2UKICAgIHsKICAgICAgICBmb3IgKGk9MTsgaTw9bjsgaSsrKQogICAgICAgIHsKICAgICAgICAgICAgc3Rba109aTsKICAgICAgICAgICAgaWYgKHZhbGlkKGspKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBiYWNrKGsrMSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCmludCBtYWluKCkKewogICAgZj4+bjsKICAgIGJhY2soMSk7CiAgICByZXR1cm4gMDsKfQ==