#include <bits/stdc++.h>   using namespace std;   int n, k, x;   vector<long long> a;   void ans() {     for (int i = 0; i < n; i++) {       cout << a[i] <<    ;     }     exit(0);   }   int main(int argc, char* argv[]) {     srand((unsigned int)time(NULL));     cin >> n >> k >> x;     a.resize(n);     int ch = 1;     for (int i = 0; i < n; i++) {       cin >> a[i];       if (a[i] < 0) {         ch *= -1;       }     }     if (ch == 1) {       set<pair<long long, int> > s;       for (int i = 0; i < n; i++) {         if (a[i] >= 0) {           s.insert({abs(-1 - a[i]), i});         } else {           s.insert({abs(1 - a[i]), i});         }       }       auto q = *s.begin();       int id = q.second;       if (a[id] >= 0) {         while (a[id] >= 0) {           a[id] -= x;           k--;           if (k == 0) {             ans();           }         }       } else {         while (a[id] <= 0) {           a[id] += x;           k--;           if (k == 0) {             ans();           }         }       }     }     set<pair<long long, int> > s;     for (int i = 0; i < n; i++) {       s.insert({abs(a[i]), i});     }     while (k > 0) {       auto q = *s.begin();       s.erase(s.begin());       int id = q.second;       if (a[id] >= 0) {         a[id] += x;       } else {         a[id] -= x;       }       k--;       s.insert({abs(a[id]), id});     }     ans();   }   