大盗
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Z来到了三体人的博物馆,馆里是 n 个房间,房间里可能是一件重量为 a_i 的藏品也可能是一个体重为 a_i 的三体人,大Z会依次经过这些房间,途中不能返回。

对于每一个藏品,他可以选择拿或者不拿,不过大Z的背包有限,他只能装重量和不超过 k 的藏品。

在经过三体人时,如果当前大Z背包中藏品的重量和不等于这个三体人本身的体重 a_i ,那么三体人就把他背包里的东西全部拿走。

请你帮助大Z计算他能带走藏品的最大重量和。

输入描述:

第一行两个整数 n,k,表示有 n 个房间和大Z的背包容量。

随后 n 行每行两个整数op,a_i 表示第 i 个房间的藏品重量为 a_i 表示第 i 个房间三体人的体重为 a_i 。




输出描述:

一个整数表示大Z经过 n 个房间后所拿出藏品的最大重量和。

示例1

输入

复制
4 10
1 2
1 3
1 4
2 9

输出

复制
9

说明

Z将前三件藏品拿走,到第四个房间时,其背包重量正好等于三体人的体重
示例2

输入

复制
5 10
1 2
1 3
1 4
2 10
1 1

输出

复制
1

说明

Z只能带走最后一件藏品