#include<bits/stdc++.h>
using namespace std;
int n,q;
struct so
{
int x,y;
}a[1000100];
bool sor(so a1,so b1)
{
return a1.x<b1.x;
}
int main()
{
cin>>n>>q;
for (int i=1;i<=n;++i)
{
cin>>a[i].x;
a[i].y=i;
}
sort(a+1,a+1+n,sor);
for (int i=1;i<=q;++i)
{
int f,x1,y1;
cin>>f;
if(f==1)
{
cin>>x1>>y1;
for (int j=1;j<=n;++j)
{
if (a[j].y==x1)
{
a[j].x=y1;
for (int l=n-1;l<=1;--l)
if (a[l].x>=a[l+1].x)
{
int t=a[l].x;
a[l].x=a[l+1].x;
a[l+1].x=t;
t=a[l].y;
a[l].y=a[l+1].y;
a[l+1].y=t;
}
for (int l=1;l<=n-1;++l)
if (a[l].x>=a[l+1].x)
{
int t=a[l].x;
a[l].x=a[l+1].x;
a[l+1].x=t;
t=a[l].y;
a[l].y=a[l+1].y;
a[l+1].y=t;
}
break;
}
}
}
else
{
cin>>x1;
for (int j=1;j<=n;++j)
{
if (a[j].y==x1)
{
cout<<j<<endl;
break;
}
}
}
}
}