#include
#include
#include
using namespace std;
void fun(int a[],int i,set &s){
if(a[i]==’\0’){
string t(a);
s.insert(t);
return;
}
for(int j=i;a[j]!=’\0’;j++){
swap(a[i],a[j]);
fun(a,i+1,s);
swap(a[i],a[j]);
}
}
int main() {
int n,
cin>>n;
int a[n];
for(int i=0;i<n;i++){
cin>>a[i];
}
set<string> s;
fun(a,0,s);
for(auto x:s){
for(auto y:x){
cout<<y<<" ";
}
cout<<endl;
}
return 0;
}