#B12865. 가치 합의 최댓값

가치 합의 최댓값

Background

정해진 무게 제한 안에서 선택한 물건들의 가치 합을 최대로 만든다.

Description

NN개의 물건이 주어진다. 각 물건 ii는 무게 WiW_i와 가치 ViV_i를 가진다.

각 물건은 최대 한 번만 선택할 수 있다. 선택한 물건들의 무게 합이 KK 이하가 되도록 하면서, 선택한 물건들의 가치 합의 최댓값을 구하여라.

Format

Input

첫째 줄에 두 정수 NNKK가 공백으로 구분되어 주어진다.

다음 NN개의 줄에는 두 정수 WiW_iViV_i가 공백으로 구분되어 주어진다.

입력은 다음 조건을 만족한다.

1N1001 \leq N \leq 100

1K1000001 \leq K \leq 100000

1Wi1000001 \leq W_i \leq 100000

0Vi10000 \leq V_i \leq 1000

Output

무게 합이 KK 이하가 되도록 물건을 선택했을 때 얻을 수 있는 가치 합의 최댓값을 출력한다.

Samples

5 10
6 30
4 18
3 14
5 25
2 9
48
6 8
9 100
4 7
4 8
3 6
2 4
1 1
15

Limitation

5s, 512MiB for each test case.