#include<bits/stdc++.h> using namespace std; using Int = long long; template<typename T1,typename T2> inline void chmin(T1 &a,T2 b){if(a>b) a=b;} template<typename T1,typename T2> inline void chmax(T1 &a,T2 b){if(a<b) a=b;} //INSERT ABOVE HERE signed main(){ Int n,k; cin>>n>>k; vector<Int> a(n),b(n); for(Int i=0;i<n;i++) cin>>a[i]>>b[i],b[i]++; auto check= [&](Int x)->Int{ Int res=0; for(Int i=0;i<n;i++){ if(a[i]<x) res+=min(b[i],x)-a[i]; } return res<k; }; Int l=0,r=1e9+1; while(l+1<r){ Int m=(l+r)>>1; if(check(m)) l=m; else r=m; } cout<<l<<endl; return 0; }