//Java代码
package pta;
import java.util.*;
public class Main {
static List[HTML_REMOVED]>list=new ArrayList<>();
public static void dfs(int n,int []v,char[] str,List[HTML_REMOVED]t) {
if(t.size()==n) {
list.add(new ArrayList<>(t));
return ;
}
for(int i=0;i<n;i++) {
if(v[i]==1)continue;
v[i]=1;
t.add(str[i]);
dfs(n,v,str,t);
v[i]=0;
t.remove(t.size()-1);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
char [] str=sc.nextLine().toCharArray();
Arrays.sort(str);
int n=str.length;
int [] v=new int [n+1];//标记数组
List<Character>t=new ArrayList<>();//存储数组
dfs(n,v,str,t);
for(int i=0;i<list.size();i++) {
for(int j=0;j<list.get(i).size();j++) {
System.out.print(list.get(i).get(j));
}
System.out.println();
}
}
}