#include<bits/stdc++.h>
using namespace std;
const int N = 1010;
int f[N], p[N], L[N];
int main(){
int n, V;
scanf("%d%d", &n, &V);
for(int i = 1;i <= n;i ++) scanf("%d%d", &L[i], &p[i]);
for(int i = 1;i <= n;i ++)
for(int j = V;j >= L[i];j --)
f[j] = max(f[j], f[j - L[i]] + p[i]);
printf("%d", f[V]);
return 0;
}