#31275. An Instruction

An Instruction

A. An Instruction

小 S 分别沿图 (1) 中的两条虚线将卡片向后对折,均得到了图 (2) 所示的有重叠部分的卡片。他定义,对于图 (2) 中的 xx 点,设该点对应到的两个重叠的网格的权值从上到下分别为 a,ba,b,定义它的“折叠代价”Fx=abF_x=a-b

此外,对于整个图 (2) 以及其对应的折叠虚线,定义该虚线的“指示程度”为图 {\gyr(2)} 中共 n×2nn\times 2n 个点的“折叠代价”之和。

现在你只知道两块 n×nn\times n 的区域中所有网格的权值(即图 (1) 中阴影部分)和虚线 AB,CDAB,CD 分别对应的“指示程度” D1,D2D_1,D_2,请你判断是否存在一种填补空白部分权值的方法,使得 D1,D2D_1,D_2 是正确的值。

注意:你填写的值应当是任意的,即,不论正负、大小,但必须是整数。

输入格式

本题有多组数据。

第一行一个整数 TT,表示数据组数。

接下来若干行,描述每组数据。对于每组数据:

  • 第一行三个整数 n,D1,D2n,D_1,D_2,意义如题述。
  • 接下来 nn 行,每行 nn 个整数,表示左上角区域所有网格的权值,将这些数记作 aia_i
  • 接下来 nn 行,每行 nn 个整数,表示右下角区域所有网格的权值,将这些数记作 bib_i

输出格式

对于每组数据,输出仅一行一个字符串。若存在一种方案,输出 Yes;否则,输出 No(大小写敏感)。

样例

输入样例 1

2
2 0 0
1 1
1 1
1 1
1 1
1 1 0
1
0

输出样例 1

Yes
No

样例 1 说明

  • 对于数据 1,显然只要把网格全部填上 11 即可。
  • 对于数据 2,容易发现不存在任何一种方案。

样例 2

见选手目录下的 instruct/instruct2.in\textit{\textbf{instruct/instruct2.in}}instruct/instruct2.ans\textit{\textbf{instruct/instruct2.ans}}

该样例与测试数据 363\sim 6 满足同样的约束条件。

样例 3

见选手目录下的 instruct/instruct3.in\textit{\textbf{instruct/instruct3.in}}instruct/instruct3.ans\textit{\textbf{instruct/instruct3.ans}}

该样例与测试数据 7107\sim 10 满足同样的约束条件。

数据规模与约定

对于 100%100\% 的数据,有 1T101\le T\le 101n3001\le n\le 300109ai,bi109-10^9\le a_i,b_i\le 10^91018D1,D21018-10^{18}\le D_1,D_2\le 10^{18}