#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ii = pair<int, int>;
using i3 = pair<int, ii>;
using li = pair<ll, int>;
using lii = pair<ll, ii>;
using pll = pair<ll, ll>;
using vi = vector<int>;
using vl = vector<ll>;
using vii = vector<ii>;
using vpll = vector<pll>;
using vi3 = vector<i3>;
using vlii = vector<lii>;
const int N = 2e5 + 5;
const ll INF = 1e17 + 7;
const double eps = 1e-9, PI = acos(-1);
int n, k;
char s[N];
void solve(int testCase) {
  scanf("%d %d %s", &n, &k, s);
  string ans = "";
  for (int i = 0; s[i]; i++) {
    int diff1 = int('z' - s[i]);
    int diff2 = int(s[i] - 'a');
    if (max(diff1, diff2) <= k) {
      if (diff1 >= diff2) {
        ans += 'z';
        k -= diff1;
      } else {
        ans += 'a';
        k -= diff2;
      }
    } else {
      if (diff1 >= k) {
        ans += s[i] + k;
        k = 0;
      } else {
        ans += s[i] - k;
        k = 0;
      }
    }
  }
  if (k == 0) {
    printf("%s\n", ans.c_str());
  } else {
    printf("-1\n");
  }
}
int main() {
  int t = 1;
  for (int testCase = 1; testCase <= t; testCase++) {
    solve(testCase);
  }
  return 0;
}
