H. Задача для разминки бровей
ограничение по времени на тест
1.5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

K1o0n придумал для своего друга Noobish_Monk такую забаву. Берут прямоугольную таблицу целых чисел, и за каждый сплошной прямоугольный кусок этой таблицы Noobish_Monk что-то получает или, наоборот, что-то теряет — смотря какой формы кусок. Посчитать, сколько наберётся в сумме, стало задачей Noobish_Monk, но он опять 998244353 раз неправильно прочитал условие, из-за чего зациклился на незначимом куске.

Мы предлагаем и вам попробовать свои силы в данной забаве!

Дана таблица целых чисел $$$A$$$ из $$$n$$$ строк и $$$m$$$ столбцов. Подматрица — это любой сплошной прямоугольный кусок таблицы; она задаётся номерами первой и последней строки и номерами первого и последнего столбца. Пусть подматрица занимает $$$a$$$ подряд идущих строк и $$$b$$$ подряд идущих столбцов, а сумма всех стоящих в ней чисел равна $$$S$$$. Если число $$$a+b$$$ чётно, то Noobish_Monk получает $$$S^2$$$, а если нечётно — теряет $$$S^2$$$. Эта величина и называется ценой подматрицы:

$$$$$$(-1)^{a+b}\,S^2.$$$$$$

Цена таблицы — это сумма цен всех её подматриц, в том числе всей таблицы целиком. Помогите ему: найдите цену таблицы $$$A$$$. Она бывает и отрицательной, и очень большой по модулю, поэтому выведите её по модулю $$$\mathbf{10^9+7}$$$.

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

Первая строка содержит целое число $$$t$$$ ($$$1 \le t \le 10^4$$$)  — количество наборов входных данных.

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

В следующих $$$n$$$ строках по $$$m$$$ целых чисел: $$$j$$$-е число $$$i$$$-й строки равно $$$A_{i,j}$$$ ( $$$-10^9 \le A_{i,j} \le 10^9$$$).

Гарантируется, что сумма $$$n \cdot m$$$ по всем наборам входных данных не превосходит $$$10^6$$$.

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

Для каждого набора входных данных выведите в отдельной строке одно целое число из отрезка $$$[0,\;10^9+6]$$$ — остаток от деления цены таблицы на $$$10^9+7$$$.

Пример
Входные данные
4
3 3
1 5 2
7 9 8
3 6 4
2 4
1 -1 -2 2
-2 2 1 -1
3 2
4 5
8 2
0 0
4 4
1 1 1 1
-1 -1 -1 -1
1 1 1 1
-1 -1 -1 -1
Выходные данные
100
6
999999967
999999971