#include <bits/stdc++.h>
using namespace std;
struct p{
int cnt;
int num;
};
print(vector<p> v){
for(int i=0;i<v.size();i++) cout<<"cnt "<<v[i].cnt<<" num "<<v[i].num<<" ";
cout<<endl;
}
permutations(vector<p> v,int num){
if(v.size()>0){
for(int i=0;i<v.size();i++){
//cout<<"nownum "<<num<<endl;
if(v[i].cnt==1){
p temp=v[i];
int add=v[i].num;
v.erase(v.begin()+i);
//print(v);
permutations(v,num*10+add);
v.insert(v.begin()+i,temp);
//print(v);
}else
{
v[i].cnt--;
permutations(v,num*10+v[i].num);
v[i].cnt++;
}
}
}else
{
cout<<num<<endl;
}
}
int main()
{
vector<p> v(2);
v[0].cnt=1;
v[0].num=3;
v[1].cnt=2;
v[1].num=2;
permutations(v,0);
return 0;
}