#include <bits/stdc++.h>

using namespace std;

map<char, int> find_substr(string str) {
    char c = 'Z';
    map<char, int> m;

    for (int ind = str.length() - 1; ind >= 0; --ind) {
        if (str[ind] == c) {
            m[c] = ind;
            --c;
        }
    }

    return m;
}

int main() {
    ios_base::sync_with_stdio(false); cin.tie(NULL);

    int n;
    long long res = 0;
    string str;
    map<char, int> m;

    cin >> n >> str;

    map<char, int> loc = find_substr(str);

    for (int i = 0; i < n; ++i) {
        if (str[i] == 'A') {
            if (i >= 0 && i <= loc['A']) {
                ++m['A'];
            }
        } else {
            if (i > loc[str[i] - 1] && i <= loc[str[i]]) {
                ++m[str[i]];
            }
        }
    }

    for (int i = 'A'; i <= 'Z'; ++i) {
        if (m[i] > 1) {
            if (res) {
                res = (res * m[i]) % 1000000007;
            } else {
                res = m[i];
            }
        }
    }

    cout << res;
}