A. Они одинаковые?
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Даны два массива целых чисел $$$a$$$ и $$$b$$$, каждый длины $$$n$$$. Кроме того, дано целое число $$$k$$$.

Разрешается выполнять любые из следующих операций ноль или более раз:

  • Выбрать индекс $$$i$$$ ($$$1\le i\le n$$$) и присвоить $$$a[i] := 2\cdot a[i] + k$$$.
  • Выбрать индекс $$$i$$$ ($$$1\le i\le n$$$) и присвоить $$$a[i] := a[i] + 2$$$.
  • Выбрать индекс $$$i$$$ ($$$1\le i\le n$$$) и присвоить $$$a[i] := a[i] - 2$$$.

Определите, можно ли применить эти операции так, чтобы получившийся массив $$$a$$$ был перестановкой$$$^{\dagger}$$$ массива $$$b$$$. Обратите внимание, что на значения элементов массива в процессе выполнения операций не накладывается никаких ограничений: они могут становиться отрицательными или сколь угодно большими.

$$$^{\dagger}$$$Массив $$$a$$$ является перестановкой массива $$$b$$$, если $$$a$$$ состоит из элементов массива $$$b$$$, взятых в произвольном порядке. Например, $$$[4,2,3,4]$$$ является перестановкой $$$[3,2,4,4]$$$, а $$$[1,2,2]$$$ не является перестановкой $$$[1,2,3]$$$.

Входные данные

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 500$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.

Первая строка каждого набора входных данных содержит два целых числа $$$n$$$ и $$$k$$$ ($$$1\le n\le 100$$$, $$$0\le k\le 10^6$$$) — $$$n$$$ — длина массивов $$$a$$$ и $$$b$$$.

Вторая строка каждого набора входных данных содержит $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$0 \le a_i \le 10^6$$$).

Третья строка каждого набора входных данных содержит $$$n$$$ целых чисел $$$b_1, b_2, \ldots, b_n$$$ ($$$0 \le b_i \le 10^6$$$).

Выходные данные

Для каждого набора входных данных выведите «YES», если возможно применить эти операции так, чтобы получившийся массив $$$a$$$ был перестановкой массива $$$b$$$, и «NO» в противном случае.

Вы можете выводить каждую букву в любом регистре (строчную или заглавную). Например, строки «yEs», «yes», «Yes» и «YES» будут приняты как положительный ответ.

Пример
Входные данные
5
3 4
1 2 7
5 3 8
1 1
0
1
1 1
1
0
6 1
0 0 0 0 0 0
1 3 7 15 31 63
2 1000000
999999 1
1000000 1
Выходные данные
YES
YES
NO
YES
YES
Примечание

В первом наборе входных данных рассмотрим применение следующих операций:

  • Применить $$$a[1] := a[1] + 2$$$
  • Применить $$$a[2] := 2 \cdot a[2] + k$$$
  • Применить $$$a[3] := a[3] - 2$$$
В результате этих операций $$$a$$$ становится равным $$$[3, 8, 5]$$$, что является перестановкой $$$[5, 3, 8]$$$.

Во втором наборе входных данных можно применить операцию $$$a[1] := 2\cdot a[1] + k$$$, чтобы получить $$$a = [1]$$$.

В третьем наборе входных данных можно показать, что сделать $$$a = [0]$$$ невозможно.