동전이 $N$종류가 있습니다. $i$번째 종류의 동전은 $C_i$개가 있고, 동전 한 개는 $V_i$원의 가치를 가집니다. $(1 \le i \le N)$ 동전을 적당히 골라서 가치의 합이 $X$원이 되도록 할 수 있나요? 가능하다면 방법을 하나 출력하세요.
첫 줄에 테스트케이스의 수 $T$가 주어집니다. $(1 \le T \le 100)$ 각 테스트케이스의 첫 줄에 $N$과 $X$가 공백으로 구분되어 주어집니다. $(1 \le N \le 50; 1 \le X \le 10^{18})$
다음 $N$ 개의 줄의 $i$번째 줄에는 $C_i$와 $V_i$가 공백으로 구분되어 주어집니다. 한 테스트 케이스에서 주어지는 모든 $V_i$는 서로 다릅니다. $(1 \le C_i \le 10^{12}; 1 \le V_i \le 500\,000)$
주어지는 모든 $N$의 합은 $500$을 넘지 않으며, 주어지는 모든 $V_i$의 합은 $500\,000$을 넘지 않습니다.
각 테스트케이스에 대해, 동전을 적당히 써서 가치의 합이 $X$원이 되도록 할 수 있다면 첫 줄에 YES를, 아니면 NO를 출력하세요. 첫 줄에 YES를 출력했다면, 둘째 줄에 $N$개의 정수 $A_1,\cdots ,A_N$을 공백으로 구분하여 출력하세요. 해당 수는 다음 조건을 만족해야 합니다.