#include <vector> #include <queue> #include <deque> #include <stack> #include <map> #include <set> #include <algorithm> #include <functional> #include <iostream> #include <cstdio> #include <cmath> #include <cstdlib> #include <ctime> #include <cctype> #include <string> #include <cstring> using namespace std; typedef long long ll; set <string> memo; string temp; void rec(string str, int i, int j) { if (str.size() == temp.size()) { memo.insert(str); return; } if (i < temp.size()) rec(str+temp[i], i+1, j); if (j >= 0) rec(str+temp[j], i, j-1); } int main() { cin >> temp; rec("", 0, temp.size()-1); cout << memo.size() << endl; }