#include<bits/stdc++.h>
using namespace std;
long long a[3000001];
long long fa[3000001];
long long sum;
long long n,m;
void pre()
{
for(int i=1;i<=n;i++)
{
fa[a[i]]=a[i];
}
}
int get(long long aa)
{
sum^=aa;
if(aa==fa[aa])return aa;
return get(fa[aa]);
}
int main()
{
freopen("td.in","r",stdin);
freopen("td.out","w",stdout);
cin>>n>>m;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
for(int i=1;i<=m;i++)
{
long long a,b,c;
sum=0;
cin>>a;
if(a==1)
{
cin>>b>>c;
fa[b]=c;
}
if(a==2)
{
cin>>b;
get(b);
cout<<sum<<endl;
}
}
return 0;
}