#include<bits/stdc++.h>
using namespace std;
#define ing long long
#define MAX (1LL<<31)-1
signed main(){
  int n,q;
  cin>>n>>q;
  int bucket[1010];
  int data[100010];
  int sq=1000;
  for(int i=0;i<1010;i++)bucket[i]=MAX;
  for(int i=0;i<100010;i++)data[i]=MAX;
  for(int cnt=0;cnt<q;cnt++){
    int com,x,y;
    cin>>com>>x>>y;
    if(com){
      int ans=MAX,i=x;
      for(;i<=y;i++){
	if(i%sq==0)break;
	ans=min(ans,data[i]);
      }
      for(;i+sq-1<=y;i+=sq){
	ans=min(ans,bucket[i/sq]);
      }
      for(;i<=y;i++){
	ans=min(ans,data[i]);
      }
      cout<<ans<<endl;
    }else{
      data[x]=y;
      bucket[x/sq]=MAX;
      for(int i=0;i<sq;i++){
	bucket[x/sq]=min(bucket[x/sq],data[(x/sq)*sq+i]);
      }
    }
  }
  return 0;
}

