object Main extends App {
  val sc = new java.util.Scanner(System.in)
  val k = sc.nextInt()
  val s = sc.next().length

  val mod = 1000000007

  def plus(a: Long, b: Long): Long = (a + b) % mod
  def times(a: Long, b: Long): Long = (a * b) % mod

  def pow(a: Long, n: Int, res: Long = 1): Long = {
    if (n == 0) {
      res
    } else if ((n&1) == 0) {
      pow(times(a,a), n >> 1, res)
    } else {
      pow(times(a,a), n >> 1, times(res,a))
    }
  }

  def inv(a: Long): Long = pow(a, mod-2)

  def initFactTable(n: Int): IndexedSeq[Long] = {
    (1 to n).scanLeft(1L)(times(_,_))
  }

  val fact = initFactTable(s+k)

  def initInvFactTable(n: Int): IndexedSeq[Long] = {
    (1 to n).scanRight(inv(fact(n)))(times(_,_))
  }

  val invFact = initInvFactTable(s+k)

  def comb(n: Int, k: Int): Long = {
    times(times(fact(n), invFact(k)), invFact(n-k))
  }

  val pow25 = (0 until k).scanLeft(1L){ case (res, _) => times(res, 25)}
  val pow26 = (0 until k).scanLeft(1L){ case (res, _) => times(res, 26)}

  val ans = (s to s+k).map{ i =>
    times(times(comb(i-1, s-1), pow25(i-s)), pow26(s+k-i))
  }.reduceLeft(plus)

  println(ans)
}
