#include <bits/stdc++.h>
#define long long
using namespace std;
const int N=3410;
int n,m,a[N],b[N],f[N];
int main(){
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin>>n>>m;
for(int i=1;i<=n;i++) cin>>a[i]>>b[i];
for(int i=1;i<=n;i++){
for(int j=m;j>=a[i];--j){
f[j]=max(f[j],f[j-a[i]]+b[i]);
}
}int maxn=0;
for(int i=1;i<=m;i++)
maxn=max(f[i],maxn);
cout<<maxn;
return 0;
}