#include <bits/stdc++.h>

#define ll long long

using namespace std;

int main(){

    int n;
    cin >> n;
    vector<char> slova;

    for(int i = 0; i < n; i++){
        char a;
        cin >> a;
        slova.push_back(a);
    }

    map<char, int> sva_slova;

    for(int i = 1; i < slova.size(); i++){
        char s = slova.at(i);

        if(s != slova.at(i-1)){
            sva_slova[s] = 0;
        }
    }

    int ponovljeno = 0;

    sva_slova[slova.at(0)] = 1;

    for(int i = 1; i < slova.size(); i++){
        char s = slova.at(i);

        if(s < slova.at(i - 1) ){
            ponovljeno+=1;
        }else if(ponovljeno > 0 && s == slova.at(i-1) - 1){
            sva_slova[slova.at(i-1)] += ponovljeno;
            sva_slova[s] += 1;
            ponovljeno = 0;
        }
        else if(ponovljeno > 0 && s < slova.at(i-1-ponovljeno)){
            ponovljeno += 1;
        }else if(s >= slova.at(i - 1)){
            sva_slova[s] += 1;
        }

    }

    ll proizvod = 1;

    for(auto it : sva_slova){
        proizvod *= it.second;
    }

    ll pw = pow(10, 9);
    pw+=7;
    ll res = proizvod % pw;

    cout << res;

    return 0;
}