#include<bits/stdc++.h>
#define rep(i,n)for(int i=0;i<(n);i++)
using namespace std;
typedef long long ll;

ll fact[21];
int main(){
	fact[0]=1;
	for(int i=1;i<=20;i++)fact[i]=fact[i-1]*i;
	string s;cin>>s;
	map<int,int>mp;
	for(char c:s)mp[c]++;
	int k=0;
	for(auto p:mp){
		if(p.second&1)k++;
	}
	if(k!=s.size()%2){
		puts("0");return 0;
	}
	k=s.size()/2;
	ll cnt=1;
	for(auto p:mp){
		if(p.second==1)continue;
		p.second/=2;
		cnt*=fact[k]/fact[k-p.second]/fact[p.second];
		k-=p.second;
	}
	printf("%lld\n",cnt);
}