#include #define mo 1000000007 using namespace std; typedef long long int lli; //long int fac[100000]={0}; long long int fact(lli N) { //if(N>=100000&&fac[N]) return fac[N-100000]; /*long long int result; if(N==1) return 1; else {result=N%mo; result*=fact(N-1)%mo; result%=mo; } cout<<"Calculating factt\n"; //if(N>=100000) fac[N-100000]=result; return result;*/ return N*fact(N); } string s; lli res(lli l,lli r) { int arr[26]={0}; for(lli i=l;i<=r;i++) arr[s[i]-'a']++; lli pair=0,unpair=0; for(int i=0;i<26;i++) { if(arr[i]==1) unpair++; if(arr[i]>=2) pair++; } for(lli f=pair-1;f>=1;f--) pair*=f; if(unpair==0) return pair; return unpair*pair; } int main() { lli q; cin>>s>>q; while (q--) { lli l,r; cin>>l>>r; l--;r--; cout<