#include<bits/stdc++.h>
using namespace std;
#define ll long long
int n;
ll big=4*(1<<30);
vector<int> t(big);
void build(int a[],int v,int tl,int tr,int sw)
{
if(tl==tr)
t[v]=a[tl];
else
{
int tm=(tl+tr)/2;
build(a,2*v,tl,tm,-1*sw);
build(a,2*v+1,tm+1,tr,-1*sw);
if(n%2==0 && sw==1)
t[v]=(t[2*v]|t[2*v+1]);
else if(n%2==0 && sw==-1)
t[v]=(t[2*v]^t[2*v+1]);
if(n%2!=0 && sw==1)
t[v]=(t[2*v]^t[2*v+1]);
else if(n%2!=0 && sw==-1)
t[v]=(t[2*v]|t[2*v+1]);
}
}
void update(int v,int tl,int tr,int pos,int b,int sw)
{
if(tl==tr)
t[v]=b;
else
{
int tm=(tl+tr)/2;
if(pos<=tm)
{
update(2*v,tl,tm,pos,b,-1*sw);
}
else
{
update(2*v+1,tl,tm,pos,b,-1*sw);
}
if(n%2==0 && sw==1)
t[v]=(t[2*v]|t[2*v+1]);
else if(n%2==0 && sw==-1)
t[v]=(t[2*v]^t[2*v+1]);
if(n%2!=0 && sw==1)
t[v]=(t[2*v]^t[2*v+1]);
else if(n%2!=0 && sw==-1)
t[v]=(t[2*v]|t[2*v+1]);
}
}
int main()
{
int m,s,p,b;
cin>>s>>m;
n=1<<s;
int a[n];
for(int i=0;i<n;++i)
cin>>a[i];
int x=1;
build(a,1,0,n-1,x);
while(m--)
{
cin>>p>>b;
update(1,0,n-1,p,b,x);
cout<<t[1]<<"\n";
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBsbCBsb25nIGxvbmcKCmludCBuOwpsbCBiaWc9NCooMTw8MzApOwp2ZWN0b3I8aW50PiB0KGJpZyk7Cgp2b2lkIGJ1aWxkKGludCBhW10saW50IHYsaW50IHRsLGludCB0cixpbnQgc3cpCnsKCWlmKHRsPT10cikKCQl0W3ZdPWFbdGxdOwoJZWxzZQoJewoJCWludCB0bT0odGwrdHIpLzI7CgkJYnVpbGQoYSwyKnYsdGwsdG0sLTEqc3cpOwoJCWJ1aWxkKGEsMip2KzEsdG0rMSx0ciwtMSpzdyk7CgkJCgkJaWYobiUyPT0wICYmIHN3PT0xKQoJCXRbdl09KHRbMip2XXx0WzIqdisxXSk7CgkJZWxzZSBpZihuJTI9PTAgJiYgc3c9PS0xKQoJCXRbdl09KHRbMip2XV50WzIqdisxXSk7CgkJCgkJaWYobiUyIT0wICYmIHN3PT0xKQoJCXRbdl09KHRbMip2XV50WzIqdisxXSk7CgkJZWxzZSBpZihuJTIhPTAgJiYgc3c9PS0xKQoJCXRbdl09KHRbMip2XXx0WzIqdisxXSk7Cgl9Cn0Kdm9pZCB1cGRhdGUoaW50IHYsaW50IHRsLGludCB0cixpbnQgcG9zLGludCBiLGludCBzdykKewoJaWYodGw9PXRyKQoJCXRbdl09YjsKCWVsc2UKCXsKCQlpbnQgdG09KHRsK3RyKS8yOwoJCWlmKHBvczw9dG0pCgkJewoJCQl1cGRhdGUoMip2LHRsLHRtLHBvcyxiLC0xKnN3KTsKCQl9CgkJZWxzZQoJCXsKCQkJdXBkYXRlKDIqdisxLHRsLHRtLHBvcyxiLC0xKnN3KTsKCQl9CgkJCgkJaWYobiUyPT0wICYmIHN3PT0xKQoJCXRbdl09KHRbMip2XXx0WzIqdisxXSk7CgkJZWxzZSBpZihuJTI9PTAgJiYgc3c9PS0xKQoJCXRbdl09KHRbMip2XV50WzIqdisxXSk7CgkJCgkJaWYobiUyIT0wICYmIHN3PT0xKQoJCXRbdl09KHRbMip2XV50WzIqdisxXSk7CgkJZWxzZSBpZihuJTIhPTAgJiYgc3c9PS0xKQoJCXRbdl09KHRbMip2XXx0WzIqdisxXSk7Cgl9Cn0KaW50IG1haW4oKQp7CglpbnQgbSxzLHAsYjsKCWNpbj4+cz4+bTsKCW49MTw8czsgCgoJaW50IGFbbl07Cglmb3IoaW50IGk9MDtpPG47KytpKQoJCWNpbj4+YVtpXTsKCWludCB4PTE7CglidWlsZChhLDEsMCxuLTEseCk7Cgl3aGlsZShtLS0pCgl7CgkJY2luPj5wPj5iOwoJCXVwZGF0ZSgxLDAsbi0xLHAsYix4KTsKCQljb3V0PDx0WzFdPDwiXG4iOwoJfQp9