# Average Query

SEC Inter University Juni...
Limits 2s, 512 MB

You are given an array $s_1, s_2, \ldots, s_n$ of length $n$ and an arbitrary integer $x$.

For an array, $c_1, c_2,\ldots, c_n$ of length $n$, we can define its score as $\frac{1}{L}\times \sum_{i=1}^{n}{c_i\times s_i}$ and cost as $U-2^{-L}$.

where $U = \sum_{i=1}^{n}{[c_i > 0]}$ and $L = \sum_{i=1}^{n}{c_i}$.

Now, we have to print an array $a_1, a_2,\ldots, a_n$ of length $n$ whose score is equal to $x$. If there are multiple such arrays print the array whose cost is minimum. If there are multiple such arrays with minimum cost print any.

• $[E]$ refers to the boolean expression, i.e. $[E] = 1$ when $E$ is true, and $0$ otherwise.

## Input

The first line of the input contains integers $n(1\le n \le 10^5)$ and $x(1\le x \le 10^9)$— the size of the set $s$ and an arbitrary integer mentioned in the statement.

The second line contains $n$ integers $s_1, s_2, s_3,\ldots, s_n$$(1\le s_i \le 10^{9})$, all $s_i$ are distinct — the elements of the array $s$.

## Output

If there is no array whose score is equal to $x$, print NO in a single line.

If there is a solution, print YES and in the second line print $n$ space separated integers $a_1, a_2,\ldots, a_n(0\le a_i \le 10^9)$ — the array $a$ satisfying the conditions mentioned in the statement.

## Sample

InputOutput
3 2
1 3 5

YES
1 1 0