#include <bits/stdc++.h>
using namespace std;
#include <atcoder/all>
using namespace atcoder;
#define ll long long
#define rep(i, n) for (ll i = 0; i < (ll)(n); i++)
using mint = modint998244353;
#define ull unsigned long long
random_device rnd;
mt19937 mt(rnd());
int RandInt(int a, int b) {
    return a + mt() % (b - a + 1);
}
int dx[4]={1,0,-1,0};
int dy[4]={0,1,0,-1};

int n,q;
int main(){
    cin>>n>>q;
    vector<int>a(n);
    rep(i,n)cin>>a[i];
    vector<int>rui(n+1);
    rep(i,q){
        int l,r;
        cin>>l>>r;
        l--;
        rui[l]++;
        rui[r]--;
    }
    rep(i,n-1)rui[i+1]+=rui[i];
    rep(i,n)if(rui[i]%2==1)cout<<(a[i]^1)<<" ";
    else cout<<a[i]<<" ";
    cout<<endl;
    return 0;
}