N,K = map(int,input().split()) AB = [] inf = 10**100 for i in range(N): a,b = map(int,input().split()) AB.append([a,b]) def check(x): count = 0 for i in range(N): if A[i] <= x: count += min(B[i],x) -A[i] +1 return K <= count def main(): ng = 0 ok = inf while(ng + 1 != ok): mid = (ng+ok)/2 if check(mid): ok = mid else: ng = mid print(ok) main()