program P1427;
var
a:array[1..100000] of longint;
x,y,m,n,i,k,qiu,j:longint;
begin
assign(input,'zwei.in');
reset(input);
assign(output,'zwei.out');
rewrite(output);
readln(n,m);
for i:=1 to n do read(a[i]);
readln;
for i:=1 to m do
begin
readln(k,x,y);
if k=0 then a[x]:=y else begin qiu:=a[x]; for j:=x+1 to y do qiu:=qiu xor a[j]; writeln(qiu); end;
end;
end.