local mod = 998244353 local mfl = math.floor local function bmul(x, y) local x0, y0 = x % 31596, y % 31596 local x1, y1 = mfl(x / 31596), mfl(y / 31596) return (x1 * y1 * 62863 + (x1 * y0 + x0 * y1) * 31596 + x0 * y0) % mod end local function badd(x, y) return (x + y) % mod end local n = io.read("*n", "*l") local s = io.read() local z = {25} for i = 2, n do z[i] = (z[i - 1] * 25) % mod end local ret = 0 local one = 0 for i = 1, n do local b = s:byte(i) - 96 if b == 1 then one = one + 1 if 1 < one then break end else if one == 0 then local v = 1 if i < n then v = z[n - i] end ret = badd(ret, v) if i < n then v = bmul(b - 2, n - i) if i + 1 < n then v = bmul(v, z[n - i - 1]) end ret = badd(ret, v) end else local v = b - 2 if i < n then v = bmul(v, z[n - i]) end ret = badd(ret, v) end end end print(ret)