#include <bits/stdc++.h>
using namespace std;
pair<double, double> arr[101];
int ans[101];
int n;
double w;
int main() {
  cin >> n >> w;
  for (int i = 0; i < n; i++) {
    cin >> arr[i].first;
    arr[i].second = i;
  }
  sort(arr, arr + n, [](pair<double, double> &a, pair<double, double> &b) {
    return a.first > b.first;
  });
  for (int i = 0; i < n; i++) {
    ans[i] = ceil(arr[i].first / 2.0);
    w -= ans[i];
  }
  if (w < 0) {
    cout << -1 << endl;
    return 0;
  }
  for (int i = 0; i < n; i++) {
    if (w == 0) break;
    int k = min(w, double(arr[i].first - ans[i]));
    ans[i] += k;
    w -= k;
  }
  if (w > 0) {
    cout << -1 << endl;
    return 0;
  }
  for (int i = 0; i < n; i++) arr[i].first = ans[i];
  sort(arr, arr + n, [](pair<double, double> &a, pair<double, double> &b) {
    return a.second < b.second;
  });
  for (int i = 0; i < n; i++) cout << arr[i].first << ' ';
  return 0;
}
