#include <stdio.h>
struct yao{
long long day,yyao;
}yao[300010];
void quicky(long long l,long long r)
{
if(l>=r)
return;
long long key=yao[l].day;
long long key1=yao[l].yyao;
long long i=l,j=r;
long long hole=l;
while(i<j)
{
while(i<j&&yao[j].day>=key)
j--;
yao[hole].day=yao[j].day;
yao[hole].yyao=yao[j].yyao;
hole=j;
while(i<j&&yao[i].day<=key)
i++;
yao[hole].day=yao[i].day;
yao[hole].yyao=yao[i].yyao;
hole=i;
}
yao[l].day=yao[i].day;
yao[i].day=key;
yao[l].yyao=yao[i].yyao;
yao[i].yyao=key1;
quicky(l, i-1);
quicky(i+1, r);
return;
}
int main(void)
{
int n;
long long k;
long long yyao=0,tian=0;
scanf("%d %lld",&n,&k);
for(int i=1;i<=n;i++)
{
scanf("%lld %lld",&yao[i].day,&yao[i].yyao);
yyao+=yao[i].yyao;
}
quicky(1, n);
if(yyao<=k)
printf("1\n");
else
{
for(int i=1;i<=n;i++)
{
yyao-=yao[i].yyao;
if(yyao<=k)
{
tian=yao[i].day+1;
break;
}
}
printf("%lld\n",tian);
}
return 0;
}