spoj#NUMOFPAL. Number of Palindromes

Number of Palindromes

Each palindrome can be always created from the other palindromes, if a single character is also a palindrome. For example, the string "malayalam" can be created by some ways:


* malayalam = m + ala + y + ala + m
* malayalam = m + a + l + aya + l + a + m

We want to take the value of function NumPal(s) which is the number of different palindromes that can be created using the string S by the above method. If the same palindrome occurs more than once then all of them should be counted separately.


Input

The string S.


Output

The value of function NumPal(s).


Limitations

0 < |s| <= 1000


Example


Input:

malayalam

Output:

15