#include <iostream> using namespace std; typedef long long ll; ll N,K; ll A[100010],B[100010]; int main(){ cin >> N >> K; for(int i=1;i<=N;i++){ cin >> A[i] >> B[i]; } int l = 0,r = 1e9+1; while(l+1<r){ int m = (l+r)/2; ll cnt = 0; for(int i=1;i<=N;i++){ if(m<A[i]) continue; cnt += min(m-A[i]+1,B[i]-A[i]+1); } if(cnt<K) l = m; else r = m; } cout << r << endl; }