#include #include #include #include std::set sets; void f(std::list& ls,std::string str){ if(ls.empty()==true){ sets.insert(str); }else{ char c=ls.front(); ls.pop_front(); f(ls,str+c); ls.push_front(c); c=ls.back(); ls.pop_back(); f(ls,str+c); ls.push_back(c); } } int main() { std::string str; std::cin>>str; std::list ls; for(int i=0;i