// editor5
#include <iostream>
#include <string>
using namespace std;

void combinations(string s, string curr, int index, string &out){
    
    if(!curr.empty())
    out+= curr + " ";
    
    for(int i = index; i<s.length();i++){
        combinations(s, curr+ s[i], i+ 1,out);
    }
}

void permutations(striung s, int l, int r, string &out){
    if(l==r){
        out += s+ " ";
        return;
    }
    for(int i=l; i<=r; i++){
        swap(s[l], s[i]);
        permutatiobns(s,l+1, r, out);
        swap(s[l], s[i]);
    }
}

int main(){
    string s;
    cin>>s;
    
    for(char c: s){
        if(isdigit(c)){
            cout<< "Invalid input";
            return 0;
        }
    }
    string combout= "";
    combinations(s, "", 0, combout);
    if(!combout.empty())
    combout.pop_back();
    cout<< combout<<endl;
    
    string permout= "";
    permutations(s, 0, s.length()- 1,permout);
    
    
if(!permout.empty())
permout.pop_back();
cout<< permout;
return 0;
    
}