#include<bits/stdc++.h>
using namespace std;
int n,q,pd,x,v,t[8005],s;
struct T{
int val,pos;
}a[8005];
bool cmp(T a,T b){
if(a.val==b.val) return a.pos<b.pos;
else return a.val<b.val;
}
int main(){
cin>>n>>q;
for(int i=1;i<=n;i++){
cin>>a[i].val;
a[i].pos=i;
}
sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;i++) t[a[i].pos]=i;
for(int j=1;j<=q;j++){
cin>>pd;
if(pd==1){
cin>>x>>v;
int tmp=t[a[x].val];
if(v>a[tmp].val){
for(int i=tmp;i<n;i++){
if(cmp(a[i],a[i+1])){
swap(a[i],a[i+1]);
}
}
}
for(int i=1;i<=n;i++){
t[a[i].pos]=i;
}
a[t[x]].val=v;
}else{
cin>>x;
cout<<t[x]<<endl;
}
}
return 0;
}