#include<bits/stdc++.h>
using namespace std;
int ans;
int n; string a;
int st[100];
int dfs(int end,string now)
{

   if(end==n)
   {
    ans++;
     return 0;
   }

  for(int i=0;i<n;i++)
  {
    if(end==0||!st[i]&&a[i]!=now[end-1])
    {
    if(i>=1&&a[i]==a[i-1]&&!st[i-1]) //当前数和前一个数相同,并且前一个数已经用过并回溯
       {
        continue;
       }
    st[i]=1;
    dfs(end+1,now+a[i]);
    st[i]=0;
    }
  }
 return 0;

}


int main() {
std::ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
 cin>>a;
sort(a.begin(), a.end());
 n=a.length();
 string now="";
 dfs(0,now);
cout<<ans;
}
// 64 位输出请用 printf("%lld")