#include <bits/stdc++.h>
using namespace std;
int main() {
  int a[105], b[105], vis[105];
  int n, m;
  while (cin >> n >> m) {
    int i, fl = 1;
    int sum1 = 0, sum2 = 0;
    for (i = 0; i < n; i++) {
      cin >> a[i];
      vis[i] = 0;
      sum1 = sum1 + (a[i] + 1) / 2;
      sum2 = sum2 + a[i];
    }
    if (sum1 > m || sum2 < m) {
      printf("-1\n");
    } else {
      for (i = 0; i < n; i++) {
        b[i] = (a[i] + 1) / 2;
        m = m - (a[i] + 1) / 2;
      }
      int s = 0;
      while (m > 0) {
        int p, maxx = 0;
        for (i = 0; i < n; i++) {
          if ((maxx < a[i]) && (vis[i] == 0)) {
            p = i;
            maxx = a[i];
          }
        }
        if (m > (a[p] - b[p])) {
          m = m - (a[p] - b[p]);
          b[p] = a[p];
          vis[p] = 1;
        } else {
          b[p] += m;
          m = 0;
          break;
        }
      }
      for (i = 0; i < n - 1; i++) {
        printf("%d ", b[i]);
      }
      printf("%d\n", b[n - 1]);
    }
  }
  return 0;
}
