#include <bits/stdc++.h>
using namespace std;
int tt, t, m, n, z, i, j;
string s;
long long chr, fac, sum;
long long fc[100020];
long long _fc[100020];
long long pw25[100020];
long long pw26[100020];
long long ans[201][100020];
long long res[100020];
long long pw(long long A, long long B) {
  if (!B) return 1;
  long long D = pw(A, B / 2);
  D *= D;
  D %= 1000000007;
  if (B % 2) D *= A;
  return D % 1000000007;
}
void inp() {
  m = 0;
  char ch = getchar();
  while (!(ch >= 'a' && ch <= 'z')) ch = getchar();
  while (ch >= 'a' && ch <= 'z') ch = getchar(), m++;
}
int main() {
  pw25[0] = pw26[0] = fc[0] = _fc[0] = 1;
  for (i = 1; i <= 100000; i++) {
    pw25[i] = (pw25[i - 1] * 25) % 1000000007;
    pw26[i] = (pw26[i - 1] * 26) % 1000000007;
    fc[i] = (fc[i - 1] * i) % 1000000007;
    _fc[i] = pw(fc[i], 1000000007 - 2);
  }
  for (j = 1; j <= 200; j++) {
    ans[j][j] = 1;
    for (i = j + 1; i <= 100000; i++)
      ans[j][i] = ((ans[j][i - 1] * 26LL) % 1000000007 +
                   (pw25[i - j] *
                    ((((fc[i - 1] * _fc[i - j]) % 1000000007) * _fc[j - 1]) %
                     1000000007)) %
                       1000000007) %
                  1000000007;
  }
  cin >> tt;
  inp();
  if (m > 200) {
    for (i = 0; i < m; i++) res[i] = 0;
    res[m] = 1;
    for (i = m + 1; i <= 100000; i++)
      res[i] = ((res[i - 1] * 26LL) % 1000000007 +
                (pw25[i - m] *
                 ((((fc[i - 1] * _fc[i - m]) % 1000000007) * _fc[m - 1]) %
                  1000000007)) %
                    1000000007) %
               1000000007;
  }
  while (tt--) {
    scanf("%d", &t);
    if (t == 1) {
      inp();
      if (m > 200) {
        for (i = 0; i < m; i++) res[i] = 0;
        res[m] = 1;
        for (i = m + 1; i <= 100000; i++)
          res[i] = ((res[i - 1] * 26LL) % 1000000007 +
                    (pw25[i - m] *
                     ((((fc[i - 1] * _fc[i - m]) % 1000000007) * _fc[m - 1]) %
                      1000000007)) %
                        1000000007) %
                   1000000007;
      }
    } else {
      scanf("%d", &n);
      if (m <= 200)
        printf("%d\n", ans[m][n]);
      else
        printf("%d\n", res[n]);
    }
  }
}
