#include <bits/stdc++.h>
using namespace std;
long long n, lt, rt, pal[2002][2002], st[2002], ed[2002];
string s;
void palindrome(void) {
  for (long long i = 0; i < n; i++) {
    for (long long j = 0; j < n; j++) {
      lt = j;
      rt = j + i;
      if (rt >= n) break;
      if (lt == rt)
        pal[lt][rt] = 1;
      else if (lt + 1 == rt && s[lt] == s[rt])
        pal[lt][rt] = 1;
      else if (s[lt] == s[rt] && pal[lt + 1][rt - 1])
        pal[lt][rt] = 1;
    }
  }
  for (long long i = 0; i < n; i++) {
    for (long long j = 0; j < n; j++) {
      st[i] += pal[i][j];
      ed[j] += pal[i][j];
    }
  }
  for (long long i = n - 2; i >= 0; i--) st[i] += st[i + 1];
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  cin >> s;
  n = s.size();
  palindrome();
  long long ans = 0;
  for (long long i = 0; i < n - 1; i++) ans += ed[i] * st[i + 1];
  cout << ans << endl;
  return 0;
}
