#include <bits/stdc++.h>
using namespace std;
pair<int, int> arr[105];
int brr[105];
int main() {
  int i, j, n, w, limit, idx, left, adder;
  scanf("%d %d", &n, &w);
  for (i = 0; i < n; i++) {
    scanf("%d", &arr[i].first);
    arr[i].second = i;
  }
  for (i = 0; i < n; i++) {
    if (w < (arr[i].first + 1) / 2) {
      printf("-1\n");
      return 0;
    } else {
      brr[i] = (arr[i].first + 1) / 2;
      w -= brr[i];
    }
  }
  sort(arr, arr + n);
  for (i = n - 1; i >= 0; i--) {
    limit = arr[i].first;
    idx = arr[i].second;
    left = limit - brr[idx];
    adder = min(left, w);
    w -= adder;
    brr[idx] += adder;
  }
  for (i = 0; i < n; i++) printf("%d ", brr[i]);
  printf("\n");
  return 0;
}
