#include #define NIL (-1) #define ll long long using namespace std; const int64_t MOD = 1e9 + 7; const int INF = INT_MAX; const double PI = acos(-1.0); int main() { string S; ll N; cin >> S >> N; vector vec(26); vec[0] = "CpCzNkSuTbEoA"; for (int i = 1; i < 26; i++) { for (int j = 0; j < vec[i - 1].size(); j++) { if (vec[i - 1][j] >= 'a' && vec[i - 1][j] <= 'z') { vec[i] += (vec[i - 1][j] - 'a' + 1) % 26 + 'a'; } else { vec[i] += (vec[i - 1][j] - 'A' + 1) % 26 + 'A'; } } } //for (int i = 0; i < 26; i++) cout << vec[i] << endl; string T = ""; for (int i = 0; i < S.size(); i++) { char c = S[i]; if (c >= 'a' && c <= 'z') { T += (c- 'a' + N) % 26 + 'a'; } else if (c >= 'A' && c <= 'Z') { T += (c - 'A' + N) % 26 + 'A'; } else { ll n = c - '0' + N; if (n >= 0 && n <= 9) T += '0' + n; else T += vec[(n-10) % 26]; } } cout << T << endl; return 0; }