St Andrews Online Judge

Array Convergence

By Kay Akashi

Time: 1000 ms
Memory: 256000 kB

The code judging system is only available during contests. Check out the github repo for test cases and solutions.

Please log in.

Problem Statement

Given an array consisting of nn integers a1a_{1}, …, ana_{n}, you can do a following operation to each element only once: choose any integer xx (kxk)(-k \leq x \leq k) and add xx to an element.

As a result of performing the operations to all the elements in the array, can you make all the elements equivalent?

Constraints

1n1041 \leq n \leq 10^{4}, 1k2×1041 \leq k \leq 2 × 10^{4}, 104ai104(1in)-10^{4} \leq a_i \leq 10^{4} (1 \leq i \leq n).

Input

The first line of input contains two integers, nn and kk. The second line of input contains nn integers that form an array aa.

Output

Output "Yes" if you can make all the elements of aa equivalent. Otherwise, output "No".

Examples

Input

5 2
-1 3 2 2 0

Output

Yes

Explanation

You can create the new array by adding following numbers to each element respectively: (2,2,1,1,1)(2, -2, -1, -1, 1). As a result of those operations, the new array consists of 11 only and the goal is achieved. Hence the answer is "Yes".

Input

4 1
-83 -10 910 23

Output

No