You are given an array of integers $l_1, l_2, \dots, l_n$ and an integer $d$. Is it possible to construct a tree satisfying the following three conditions?
- The tree contains
$n + 1$nodes. - The length of the
$i$-th edge is equal to$l_i$. - The (weighted) diameter of the tree is equal to
$d$.
Input
Each test consists of multiple test cases. The first line contains a single integer $t$ ($1 \leq t \leq 250$) — the number of test cases. The description of the test cases follows.
The first line of each test case contains two integers $n$, $d$ ($2 \leq n \leq 2000, 1 \leq d \leq 2000$).
The second line of each test case contains $n$ integers $l_1, l_2, \dots, l_n$ ($1 \leq l_i \leq d$).
It is guaranteed that the sum of $n$ over all test cases does not exceed $2000$.
Output
For each test case, output $\texttt{Yes}$ if it is possible to construct a tree that satisfies all the conditions, and $\texttt{No}$ otherwise.
You can print the letters in any case (upper or lower).
Note
Below, you are given the illustrations of trees for the first and third test cases. One of the diameters is highlighted by coloring its edges in red.

样例
3
4 10
1 2 3 4
4 7
1 4 3 4
6 18
2 4 3 7 6 7
Yes
No
Yes
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。