#include <bits/stdc++.h>
using namespace std;
char s[1000100];
int main() {
  int t;
  scanf("%d", &t);
  while (t--) {
    int x;
    scanf("%d%s", &x, s);
    long long real_len = strlen(s);
    bool flag = false;
    int l = 0;
    while (l < x) {
      l++;
      if (flag) {
        real_len =
            (real_len + (s[l - 1] - '1') * ((real_len - l + ((int)1e9 + 7)) %
                                            ((int)1e9 + 7))) %
            ((int)1e9 + 7);
      } else {
        int cur_len = real_len;
        for (int i = 0; i < s[l - 1] - '1'; i++) {
          for (int j = 0; j < cur_len - l; j++) {
            if (!flag) s[real_len] = s[l + j];
            real_len++;
            if (real_len == 1000100) flag = true;
          }
        }
      }
    }
    printf("%lld\n", real_len);
  }
}
