#include<bits/stdc++.h>
using namespace std;
int main()
{
    ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
    long long N,brojaca=0,brojacb=0,brojacc=0,brojacd=0,brojace=0,brojacf=0,brojacg=0,brojach=0,brojaci=0,brojacj=0,brojack=0,brojacl=0,brojacm=0,brojacn=0,brojaco=0,brojacp=0,brojacq=0,brojacr=0,brojacs=0,brojact=0,brojacu=0,brojacv=0,brojacw=0,brojacx=0,brojacy=0,brojacz=0,ukupno,brojaca1=0,brojacb1=0,brojacc1=0,brojacd1=0,brojace1=0,brojacf1=0,brojacg1=0,brojach1=0,brojaci1=0,brojacj1=0,brojack1=0,brojacl1=0,brojacm1=0,brojacn1=0,brojaco1=0,brojacp1=0,brojacq1=0,brojacr1=0,brojacs1=0,brojact1=0,brojacu1=0,brojacv1=0,brojacw1=0,brojacx1=0,brojacy1=0,brojacz1=0,rez;
    cin>>N;
    string s;
    cin>>s;
    if(N<=26) cout<<0;
    else
    {
        if(N==27) cout<<1;
        else
        {
            for(long long i=0;i<s.size();i++)
            {
                if(s[i]=='A') brojaca++;
                if(s[i]=='B') brojacb++;
                if(s[i]=='C') brojacc++;
                if(s[i]=='D') brojacd++;
                if(s[i]=='E') brojace++;
                if(s[i]=='F') brojacf++;
                if(s[i]=='G') brojacg++;
                if(s[i]=='H') brojach++;
                if(s[i]=='I') brojaci++;
                if(s[i]=='J') brojacj++;
                if(s[i]=='K') brojack++;
                if(s[i]=='L') brojacl++;
                if(s[i]=='M') brojacm++;
                if(s[i]=='N') brojacn++;
                if(s[i]=='O') brojaco++;
                if(s[i]=='P') brojacp++;
                if(s[i]=='Q') brojacq++;
                if(s[i]=='R') brojacr++;
                if(s[i]=='S') brojacs++;
                if(s[i]=='T') brojact++;
                if(s[i]=='U') brojacu++;
                if(s[i]=='V') brojacv++;
                if(s[i]=='W') brojacw++;
                if(s[i]=='X') brojacx++;
                if(s[i]=='Y') brojacy++;
                if(s[i]=='Z') brojacz++;
            }
            if(brojaca==0 || brojacb==0 || brojacc==0 || brojacd==0 || brojace==0 || brojacf==0 || brojacg==0 || brojach==0 || brojaci==0 || brojacj==0 || brojack==0 || brojacl==0 || brojacm==0 || brojacn==0 || brojaco==0 || brojacp==0 || brojacq==0 || brojacr==0 || brojacs==0 || brojact==0 || brojacu==0 || brojacv==0 || brojacw==0 || brojacx==0 || brojacy==0 || brojacz==0) cout<<0;
            else
            {
                ukupno=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                for(int i=0;i<s.size();i++)
                {
                    for(int j=0;j<i;j++)
                    {
                        if(s[j]>s[i])
                        {
                            if(s[i]=='A') brojaca1++;
                            if(s[i]=='B') brojacb1++;
                            if(s[i]=='C') brojacc1++;
                            if(s[i]=='D') brojacd1++;
                            if(s[i]=='E') brojace1++;
                            if(s[i]=='F') brojacf1++;
                            if(s[i]=='G') brojacg1++;
                            if(s[i]=='H') brojach1++;
                            if(s[i]=='I') brojaci1++;
                            if(s[i]=='J') brojacj1++;
                            if(s[i]=='K') brojack1++;
                            if(s[i]=='L') brojacl1++;
                            if(s[i]=='M') brojacm1++;
                            if(s[i]=='N') brojacn1++;
                            if(s[i]=='O') brojaco1++;
                            if(s[i]=='P') brojacp1++;
                            if(s[i]=='Q') brojacq1++;
                            if(s[i]=='R') brojacr1++;
                            if(s[i]=='S') brojacs1++;
                            if(s[i]=='T') brojact1++;
                            if(s[i]=='U') brojacu1++;
                            if(s[i]=='V') brojacv1++;
                            if(s[i]=='W') brojacw1++;
                            if(s[i]=='X') brojacx1++;
                            if(s[i]=='Y') brojacy1++;
                            if(s[i]=='Z') brojacz1++;
                        }
                        long long sa=brojaca1*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sb=brojaca*brojacb1*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sc=brojaca*brojacb*brojacc1*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sd=brojaca*brojacb*brojacc*brojacd1*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long se=brojaca*brojacb*brojacc*brojacd*brojace1*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sf=brojaca*brojacb*brojacc*brojacd*brojace*brojacf1*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sg=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg1*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sh=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach1*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long si=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci1*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sj=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj1*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sk=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack1*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sl=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl1*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sm=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm1*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sn=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn1*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long so=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco1*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sp=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp1*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sq=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq1*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sr=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr1*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long ss=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs1*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long st=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact1*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long su=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu1*brojacv*brojacw*brojacx*brojacy*brojacz;
                        long long sv=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv1*brojacw*brojacx*brojacy*brojacz;
                        long long sw=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw1*brojacx*brojacy*brojacz;
                        long long sx=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx1*brojacy*brojacz;
                        long long sy=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy1*brojacz;
                        long long sz=brojaca*brojacb*brojacc*brojacd*brojace*brojacf*brojacg*brojach*brojaci*brojacj*brojack*brojacl*brojacm*brojacn*brojaco*brojacp*brojacq*brojacr*brojacs*brojact*brojacu*brojacv*brojacw*brojacx*brojacy*brojacz1;

                        rez=ukupno-(sa+sb+sc+sd+se+sf+sg+sh+si+sj+sk+sl+sm+sn+so+sp+sq+sr+ss+st+su+sv+sw+sx+sy+sz);
                    }
                }
                cout<<rez % 1000000007;
            }
        }
    }
    return 0;
}