#include <iostream>
#define f(i,j,k) for(int i=j;i<k;i++)
#define MAX 2147483647
using namespace std;
int c[200000];
void update(int a,int b){
    c[a]=b;
    a=a/2;
    while(a!=0){
        c[a]=min(c[2*a],c[2*a+1]);
        a=a/2;
    }
    
}
int find(int d,int e){
    if(d==e){
        return c[d];
    }
    else if(d%2==1){
        return min(c[d],find(d+1,e));
    }
    else if(e%2==0){
        return min(find(d,e-1),c[e]);
    }
    else{
        return find(d/2,e/2);
    }
}
int main(){
    int n,q,com,x,y;
    cin>>n>>q;
    f(i,0,n*2){
        c[i]=MAX;
    }
    f(i,0,q){
        cin>>com>>x>>y;
        if(com==0){
            update(x+n,y);
        }
        else{
            cout<<find(x+n,y+n)<<endl;
        }
    }
    return 0;
}


