// inputに入力データ全体が入る
function Main(input) {

  // 1行目がinput[0], 2行目がinput[1], …に入る
  var input1 = input.split("\n");
  // console.log(input1)
  var i = Number(input1[0])
  var str = input1[1]

  const alph = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"]

  const v1 = str.split('')

  var v2 = v1.map(function (v) {
    var v11 = alph.findIndex(function (v2) { return v2 === v })
    var v12 = ((v11 + i) % alph.length)
    return alph[v12]
  }).join('')

  // //文字列から10進数に変換するときはparseIntを使います
  // // var a = parseInt(i[0], 10);
  // // var b = parseInt(i[1], 10);
  // // var c = parseInt(i[2], 10);
  // var i1 = i.map(v => parseInt(v, 10))


  // console.log(input1[0])
  // // console.log(input1[0], i, i1, i1.some(v => v % 2 !== 0))

  // var count1 = 0
  // while (!i1.some(v => v % 2 !== 0)) {
  //   i1 = i1.map(v => v / 2)
  //   count1++
  // }

  // console.log(a,b,a + b, (a + b) % 2)
  // var s = a + b + c

  //出力
  console.log(v2);
}



//*この行以降は編集しないでください（標準入出力から一度に読み込み、Mainを呼び出します）
Main(require("fs").readFileSync("/dev/stdin", "utf8"));