На шёлковой равнине Фарлума расставлены $$$n$$$ насекомых. У каждого из них одна из трёх ролей: ровно одна Певчая, $$$s - 1$$$ Эхо и $$$n - s$$$ Молчаливых.
В момент времени $$$0$$$ единственная Певчая издаёт «клич». Звуковая волна не гаснет и распространяется равномерно во все стороны с одинаковой скоростью, то есть достигает точки на расстоянии $$$d$$$ от Певчей за $$$d$$$ времени. Затем каждый Эхо издает клич ровно в тот момент, когда до него впервые доходит чужой клич. Эта звуковая волна распространяется так же, как и первая. Разные звуковые волны не взаимодействуют друг с другом и не влияют друг на друга.
Слушатель находится в точке $$$(0, 0)$$$ и отмечает моменты прихода волн: сначала до него доходит ровно один клич, затем через некоторый ненулевой промежуток времени — одновременно ещё $$$c_2$$$ кличей, затем ещё через ненулевой промежуток — $$$c_3$$$, и так всего $$$k$$$ раз: получается последовательность $$$c_1, c_2, c_3, \ldots, c_k$$$.
Обратите внимание, что каждый не-Молчаливый издает клич только один раз, поэтому $$$\sum\limits_{i=1}^k c_i = s$$$.
Известны координаты всех $$$n$$$ насекомых на плоскости. Требуется посчитать число способов выбрать из них ровно одну Певчую и ровно $$$s-1$$$ Эхо (остальные автоматически становятся Молчаливыми) так, чтобы наблюдения Слушателя совпали с указанной последовательностью $$$c_i$$$. Ответ выведите по модулю $$$10^9+7$$$.
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ — количество наборов входных данных ($$$1 \leq t \leq 500$$$). Далее следует описание наборов входных данных.
В первой строке набора входных данных даны целые числа $$$n$$$, $$$k$$$ — число насекомых и ожидаемое число моментов, когда клич слышен в точке $$$(0, 0)$$$ ($$$1 \leq n \leq 1000$$$; $$$1 \leq k \leq \min(n, 10)$$$).
Во второй строке перечислены $$$n$$$ целых чисел — $$$x$$$-координаты насекомых. В третьей строке также перечислены $$$n$$$ целых чисел — $$$y$$$-координаты насекомых ($$$|x_i|, |y_i| \leq 10^9$$$).
В четвертой строке содержатся целые числа $$$c_1, \ldots, c_k$$$ — в каком количестве кличи приходят в точку $$$(0, 0)$$$ в разные моменты времени ($$$1 \leq c_i \leq n$$$; $$$c_1 = 1$$$; $$$\sum\limits_{i=1}^k c_i \leq n$$$). Значения $$$c_i$$$ даны в хронологическом порядке (иными словами, их порядок совпадает с течением времени вперед).
Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$1000$$$.
Для каждого набора входных данных выведите единственное число — количество способов назначить роли, по модулю $$$10^9 + 7$$$.
81 11112 12 00 112 21 20 01 13 21 0 20 1 01 23 20 1 00 0 11 24 30 1 0 10 0 1 11 2 16 30 1 0 1 -1 10 0 1 1 1 -11 2 33 21 0 -10 1 01 1
12101116
Обратите внимание, что $$$c_1 = 1$$$ не гарантирует, что любое насекомое может стать Певчим.
Далее идут пояснения к примерам из условия. Будем считать, что звук идет со скоростью $$$1$$$.