#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, w, sum, wa;
  int q, max_num;
  int num1[105];
  int num2[105];
  int sum_num;
  int num3[105];
  scanf("%d%d", &n, &w);
  wa = 0;
  memset(num3, 0, sizeof(num3));
  sum = 0;
  q = -1;
  sum_num = 0;
  max_num = -1;
  for (int i = 1; i <= n; i++) {
    scanf("%d", &num1[i]);
    num2[i] = num1[i];
    num3[i] = (num1[i] + 1) / 2;
    sum += num1[i];
    sum_num += num3[i];
  }
  if (sum == w) {
    for (int i = 1; i <= n; i++) printf("%d ", num2[i]);
    return 0;
  }
  if (w < sum_num)
    printf("-1\n");
  else {
    w -= sum_num;
    do {
      num2[q] = -2;
      max_num = -1;
      for (int i = 1; i <= n; i++)
        if (max_num < num2[i]) {
          max_num = num2[i];
          q = i;
        }
      if (w <= (num2[q] - num3[q])) {
        num3[q] += w;
        w = 0;
      } else {
        w -= (num2[q] - num3[q]);
        num3[q] = num1[q];
      }
    } while (w != 0);
    for (int i = 1; i <= n; i++) printf("%d ", num3[i]);
  }
  return 0;
}
