#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;
}