CF1425C.Captain of Knights

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Mr. Chanek just won the national chess tournament and got a huge chessboard of size N×MN \times M . Bored with playing conventional chess, Mr. Chanek now defines a function F(X,Y)F(X, Y) , which denotes the minimum number of moves to move a knight from square (1,1)(1, 1) to square (X,Y)(X, Y) . It turns out finding F(X,Y)F(X, Y) is too simple, so Mr. Chanek defines:

G(X,Y)=i=XNj=YMF(i,j)G(X, Y) = \sum_{i=X}^{N} \sum_{j=Y}^{M} F(i, j)

Given X and Y, you are tasked to find G(X,Y)G(X, Y) .

A knight can move from square (a,b)(a, b) to square (a,b)(a', b') if and only if aa>0|a - a'| > 0 , bb>0|b - b'| > 0 , and aa+bb=3|a - a'| + |b - b'| = 3 . Of course, the knight cannot leave the chessboard.

输入格式

The first line contains an integer TT (1T100)(1 \le T \le 100) , the number of test cases.

Each test case contains a line with four integers XX YY NN MM (3XN109,3YM109)(3 \leq X \leq N \leq 10^9, 3 \leq Y \leq M \leq 10^9) .

输出格式

For each test case, print a line with the value of G(X,Y)G(X, Y) modulo 109+710^9 + 7 .

输入输出样例

  • 输入#1

    2
    3 4 5 6
    5 5 8 8

    输出#1

    27
    70
首页