#include <stdio.h>

int main(){
	int a[10000],b=1,c,d,N,W,v[10000],w[10000],Q=0,D=0,X=0,i,j,k;
	scanf("%d %d",&N,&W);
	for(i=0;i<N;i++){
		scanf("%d %d",&v[i],&w[i]);
	}
	for(i=0;i<N;i++){
		b=b*2;
	}
	for(i=0;i<N;i++){
		a[i]=0;
	}
	for(i=0;i<b;i++){
		a[0]+=1;
		for(j=0;j<N;j++){
			if(a[j]==2){
				a[j]=0;
				a[j+1]+=1;
			}
			for(k=0;k<N;k++){
				if(a[k]==1){
					D+=w[k];
					Q+=v[k];
				}
			}
			if(D<=W&&Q>=X){
				X=Q;
			}
			D=0;
			Q=0;
		}
	}
	printf("%d\n",X);
	return 0;
}