#include
using namespace std;
int n;
int cena[2005], tezina[2005];
int W;
int rec(int at, int W_left) {
if(at == n) {
return 0;
}
int result = -2e9;
// da ne go zememe elementot
result = max(result, rec(at + 1, W_left));
if(W_left - tezina[at] >= 0)
result = max(result, rec(at + 1, W_left - tezina[at]) + cena[at]);
return result;
}
int main() {
cin >> n;
for(int i = 0; i < n; i++) {
cin >> cena[i] >> tezina[i];
}
cin >> W;
cout << rec(0, W) << endl;
return 0;
}