#include <bits/stdc++.h>
using namespace std;
char s[2001];
bool b[2000][2000];
long long sum[2000][2000];
bool p(int i, int j) {
  for (int k = i; k <= j; k++)
    if (s[k] != s[i + j - k]) return 0;
  return 1;
}
int main() {
  long long STO = 0;
  cin >> s;
  int len = strlen(s);
  for (int i = 0; i < len; i++)
    for (int j = 0; j < len; j++)
      if (i + j < len) b[j][i + j] = p(j, i + j);
  for (int i = 0; i < len; i++)
    for (int j = 0; j < len; j++)
      if (!i)
        sum[j][j] = 1;
      else if (i + j < len)
        sum[j][i + j] = sum[j][i + j - 1] + sum[j + 1][i + j] -
                        (i >= 2 ? sum[j + 1][i + j - 1] : 0) + b[j][i + j];
  for (int i = 0; i < len; i++)
    for (int j = i; j < len; j++)
      STO += b[i][j] * ((i >= 1 ? sum[0][i - 1] : 0) +
                        (j + 2 <= len ? sum[j + 1][len - 1] : 0));
  cout << (STO >> 1) << endl;
  return 0;
}
