using System;
using System.IO;
using System.Linq;
using System.Collections;
using System.Collections.Generic;
using System.Numerics;
using System.Diagnostics;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using static System.Math;
using static System.Console;

namespace yukicoder
{
    class Program
    {
        static void Main()
        {

            // アルファベットを全て管理する変数
            string s = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
            string n = Console.ReadLine().Trim();

            // カウント変数
            int cnt = 0;
            // チェック変数
            int chk = 0;

            // 変換したアルファベットを格納する変数
            string[] ans = new string[n.Length];

            for (int i = 0; i < n.Length; i++)
            {
                chk = s.IndexOf(n[i]);
                // 何番目の文字列か
                int num = i % 26;

                // 該当の文字を格納
                ans[i] =
                    (chk - (num)) <= 0 ?
                        s[chk - (num+1) + 26].ToString() : s[chk - (num+1)].ToString(); 
            }

            Console.WriteLine(String.Join("" , ans));
        }
    }
}