#include #include #include #include #include #include #include #include #include static const int MOD = 1000000007; using ll = long long; using u32 = unsigned; using u64 = unsigned long long; using namespace std; template constexpr T INF = ::numeric_limits::max() / 32 * 15 + 208; int main() { string s; ll n; cin >> s >> n; for (int i = 0; i < 100; ++i) { if(n == 0) break; string t; for (auto &&j : s) { if(islower(j)) t += ((j-'a')+1)%26+'a'; else if(isupper(j)) t += ((j-'A')+1)%26+'A'; else if(j == '9') t += "CpCzNkSuTbEoA"; else t += j+1; } n--; s = t; } string t; for (auto &&j : s) { if(islower(j)) t += ((j-'a')+n)%26+'a'; else if(isupper(j)) t += ((j-'A')+n)%26+'A'; } cout << t << "\n"; return 0; }