//NiceDuck
#include "bits/stdc++.h"
typedef long long ll;
using namespace std;
#define FILE "000"
#define foru(i,a,b) for(int i=(int)(a); i<=(int)(b); ++i)
#define ford(i,a,b) for(int i=(int)(a); i>=(int)(b); --i)
#define fastio ios_base::sync_with_stdio(0);cin.tie(0);
#define pb push_back
#define fi first
#define se second
#define pii pair<int,int>
#define pil pair<int,ll>
#define pli pair<ll,int>
#define MOD 1000000007
#define el "\n"

const int MAX=102;
int n,w,ans[MAX];
pii a[MAX];

int main()
{
    fastio
    #ifndef ONLINE_JUDGE
    freopen(FILE ".inp","r",stdin);
    freopen(FILE ".out","w",stdout);
    #endif // ONLINE_JUDGE
    
    cin>>n>>w;
    foru(i,1,n)
    {
        cin>>a[i].fi;
        a[i].se=i;
    }
    sort(a+1,a+n+1);
    foru(i,1,n)
    {
        int need=ceil((double)a[i].fi/2);
        if(w<need)
        {
            cout<<-1;
            return 0;
        }
        w-=need;
        ans[a[i].se]=need;
    }
    ford(i,n,1)
    {
        int du=a[i].fi-ans[a[i].se];
        if(du==0) continue;
        if(w>du)
        {
            ans[a[i].se]+=du;
            w-=du;
        }
        else 
        {
            ans[a[i].se]+=w;
            break;
        }
    }
    foru(i,1,n) cout<<ans[i]<<' ';
    
    return 0;
}