#include <bits/stdc++.h>
using namespace std;
const long long maxn = 1e7 + 5;
const long long mod = 1e9 + 7;
long long n, x, t, num[maxn], dp[maxn];
string str;
int main() {
  cin >> t;
  while (t--) {
    cin >> x >> str;
    dp[0] = str.size();
    for (int i = 1; i <= x; i++) {
      long long t = str[i - 1] - '0';
      if (str.size() <= x) {
        string h = str.substr(i, str.size() - i);
        for (int j = 1; j < t; j++) str += h;
      }
      dp[i] = ((dp[i - 1] - i) * (t - 1) % mod + dp[i - 1] + mod) % mod;
    }
    cout << dp[x] << endl;
  }
  return 0;
}
