using System;

namespace ConsoleApp1
{
    class Program
    {
        static int pozicija (char [] a , char b)
        {
            int po = 0;
            for (int i = 0; i < 26; i++)
            {
                if (b == a[i])
                {
                    po = i;
                }
            }
            return po;
        }
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            string niz = Console.ReadLine();
            char[] b = new char[n];
            // b je niz slova kako su ukucana
            for (int i = 0; i < n; i++)
            {
                 b[i]= niz[i];
            }
            int[] brs = new int[26];
            //brs je broj jednog slova, uzastopnih
            string p = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
            char[] a = new char[26];
            // a je niz slova u alfabetu
            for (int i = 0; i < 26; i++)
            {
                a[i] = p[i];
            }
            int k = 0;
            brs[0] = 1;
            if (a[0] != b[0])
            {
                brs[0] = 0;
            }
            for (int i = 1; i < n; i++)
            {
                if (b[i] != b[i - 1])
                {
                    int poz = pozicija(a, b[i]);
                    if (brs[poz] != 0)
                        k -= 1;
                    k += 1;
                    //ako je broj vec prosao onda se k ne menja
                }
                if (b[i] == a[k])
                {
                    brs[k] += 1;
                }
            }
            long proizvod = 1;
            for (int i = 0; i < 26; i++)
            {
                proizvod *= brs[i];
            }
            if (proizvod < 1000000007)
            {
                Console.WriteLine(proizvod);
            }
            else
            {
                long o = proizvod % 1000000007;
                Console.WriteLine(o);
            }     
        }
    }
}