Паліндромний рядок
У дівчинки Ксюши є рядок s. Вона стала гратись з ним — переставляти букви рядка місцями.
Зараз Ксюші дуже цікаво, а скільки різних паліндромов вона може отримати, переставляючи буквы рядка s?
Рядок називається паліндромом, якщо він читається однаково, як зліва направо, так і зправа наліво. Наприклад, рядок "ded" — паліндром.
Вхідні дані
У першому рядку записано рядок s (1 ≤ |s| ≤ 20). Складається лише з маленьких латинських букв.
Вихідні дані
Виведіть єдине ціле число — скільки різних паліндромів Ксюша може отримати, переставляючи букви рядка s.
Примітка. Рядок x = x_1x_2...x_p лексикографічно менший рядка y = y_1y_2...y_q, якщо або p < q і x_{1 }= y_1, x_{2 }= y_{2 },..., x_{p }= y_p, або існує таке число r (r < p, r < q), що x_1 = y_1, x_2 = y_2, ..., x_r = y_r і x_{r+1} < y_{r+1}. Символи рядків порівюються як їхні ASCII коди.