#1255. 棋盘计数

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: Komeiji Koishi

题目描述

n×nn\times n的棋盘上,有多少种方式放 nn 个棋子,使得没有两个棋子在同一列,没有两个棋子在同一行,且有kk对棋子满足其曼哈顿距离为 22 ,答案模109+710^9+7输出。

曼哈顿距离,即 11-范数,按如下方法计算:设 (x1,y1)(x_1,y_1)(x2,y2)(x_2,y_2) 是平面上的两点,则这两点间的曼哈顿距离为 x1x2+y1y2\left|x_1-x_2\right|+\left|y_1-y_2\right|

输入格式

第一行一个正整数 T (1T1000)T\ (1\leq T \leq 1000),表示数据组数。

接下来 TT 行,每行两个整数 n,k (1n1000,0kn)n,k\ (1\leq n\leq 1000,0\leq k\leq n)

输出格式

输出 TT 行,每行一个非负整数表示答案。

样例

样例输入

5
1 0
2 0
3 1
3 2
4 2

样例输出

1
0
4
2
10