#include <cstdio>
#include <cstring>
using namespace std;
#define IN "permutari.in"
#define OUT "permutari.out"
int k = 1 , n;
int fr[10],st[10];
bool OK ()
{
int i;
memset ( fr , 0 , sizeof(fr));
for ( i = 1 ; i <= k ; i ++ )
fr[st[i]] ++;
for ( i = 1 ; i <= n ; i ++ )
if ( fr[i] > 1 )
return 0;
return 1;
}
void Back()
{
int i;
while ( k > 0 )
{
if ( st[k] < n )
{
st[k] ++;
if ( OK() )
{
if ( k == n )
{for ( i = 1 ; i <= n ; i ++ )
printf ( "%d " , st[i] );
printf ("\n");}
else
{
k++ , st[k] = 0;
}
}
}
else k--;
}
}
int main()
{
freopen ( IN , "r" , stdin );
freopen ( OUT , "w" , stdout );
scanf ( "%d" , &n );
Back();
}