금융 전문가들이 수감된 교정 시설에서 곧 연례 사회봉사 활동이 열린다. 각 참가자에게는 재정 문제를 도와줄 수 있는 $N$명의 사람 집합 $P$와 $K$분의 시간 한도가 주어진다.
$j$번째 사람($1 \le j \le N$)에 대해서는 두 정수가 알려져 있다. 그 사람에게 조언을 하지 않기로 선택하면 부과되는 벌점 $e_j$와, 조언을 하는 데 필요한 시간 $d_j$(분)이다.
참가자는 시간 $T = 0$에 시작한다. 시간 $T$에 $j$번째 사람을 돕기 시작하면 늦어도 $T + d_j$까지는 마쳐야 하며, 값 $C_j = T + d_j$가 부과되고, 시간 $T + d_j$가 되기 전에는 다른 사람을 도울 수 없다(사람들은 한 번에 한 명씩, 연달아 돕는다).
실제로 도움을 받은 사람들의 집합을 $S$라 하면, 사용한 총 시간(분)은 다음과 같다.
$$\sum_{x \in S} C_x + \sum_{x \in P \setminus S} e_x.$$
시간 한도 $K$분을 넘기지 않으면서 한 참가자가 도울 수 있는 사람 수의 최댓값을 구하는 프로그램을 작성하여라.
입력은 여러 참가자에 대한 자료로 이루어진다. 각 참가자의 자료는 공백 하나로 구분된 두 정수 $N$과 $K$가 있는 줄로 시작한다. 각각 사람 수와 시간 한도를 의미하며 $0 < N \le 200$, $0 < K \le 6000$이다. 이어지는 $N$개의 줄에는 각각 도움을 줄 한 사람의 벌점과 소요 시간을 나타내는 두 정수가 공백 하나로 구분되어 주어지며, 모든 정수는 $0$ 이상 $10000$ 이하이다. 입력은 두 개의 $0$이 있는 줄로 끝난다.
각 참가자마다 i: X 형식의 한 줄을 출력한다. 여기서 i는 참가자가 등장한 순서대로 $1$부터 센 번호이고, X는 시간 한도 $K$분을 넘기지 않으면서 도울 수 있는 사람 수의 최댓값이다. 사용한 총 시간을 $K$ 이내로 유지하는 것이 불가능하면 대신 i: Mission Impossible을 출력한다.