#include <iostream>
#include <algorithm>
#include <string>
#include <cmath>
using namespace std;
string A;
int main(){
	long long N,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,uku=0,br;
	cin>>N;
	cin>>A;
	for(int i=0;i<N;i++)if(A[i]>A[i+1] && i!=N-1){
	A.erase(i+1,1);
}
	a=count(A.begin(), A.end(), 'A');
	b=count(A.begin(), A.end(), 'B');
	c=count(A.begin(), A.end(), 'C');
	d=count(A.begin(), A.end(), 'D');
	e=count(A.begin(), A.end(), 'E');
	f=count(A.begin(), A.end(), 'F');
	g=count(A.begin(), A.end(), 'G');
	h=count(A.begin(), A.end(), 'H');
	i=count(A.begin(), A.end(), 'I');
	j=count(A.begin(), A.end(), 'J');
	k=count(A.begin(), A.end(), 'K');
	l=count(A.begin(), A.end(), 'L');
	m=count(A.begin(), A.end(), 'M');
	n=count(A.begin(), A.end(), 'N');
	o=count(A.begin(), A.end(), 'O');
	p=count(A.begin(), A.end(), 'P');
	q=count(A.begin(), A.end(), 'Q');
	r=count(A.begin(), A.end(), 'R');
	s=count(A.begin(), A.end(), 'S');
	t=count(A.begin(), A.end(), 'T');
	u=count(A.begin(), A.end(), 'U');
	v=count(A.begin(), A.end(), 'V');
	w=count(A.begin(), A.end(), 'W');
	x=count(A.begin(), A.end(), 'X');
	y=count(A.begin(), A.end(), 'Y');
	z=count(A.begin(), A.end(), 'Z');
	uku=a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z;
	if(uku>=(long long)pow(10,9))uku%=(long long)pow(10,9)+7;
	cout<<uku<<endl;
	return 0;
}