4605 - NOIP 2020 提高 第四题 微信步数(walk)

通过次数

0

提交次数

1

Time Limit : 1 秒
Memory Limit : 512 MB

Input

第一行两个用单个空格分隔的整数 n,k。分别表示路线步数与场地维数。 接下来一行 k 个用单个空格分隔的整数 wi,表示场地大小。 接下来 n 行每行两个用单个空格分隔的整数 ci,di,依次表示每一步的方向,具体 意义见题目描述

Output

仅一行一个整数表示答案。答案可能很大,你只需要输出其对 10^9 + 7 取模后的值。 若小 C 的计划会使得他在某一天在场地中永远走不出来,则输出一行一个整数 -1。

Examples

Input

3 2
3 3
1 1
2 −1
1 1

Output

21

Input

5 4
6 8 6 5
3 1
2 1
1 1
2 1
2 −1

Output

10265

Input

5 5
3 3 1 3 2
4 1
4 -1
1 -1
3 -1
2 1

Output

150

Hint

【样例 1 解释】 从 (1, 1) 出发将走 2 步,从 (1, 2) 出发将走 4 步,从 (1, 3) 出发将走 4 步。 从 (2, 1) 出发将走 2 步,从 (2, 2) 出发将走 3 步,从 (2, 3) 出发将走 3 步。 从 (3, 1) 出发将走 1 步,从 (3, 2) 出发将走 1 步,从 (3, 3) 出发将走 1 步。 共计 21 步。

样例4输入 100 3 8 7 6 1 1 1 -1 3 1 3 -1 3 1 3 -1 3 1 3 -1 1 1 1 -1 1 1 1 -1 2 1 2 -1 1 1 1 -1 2 1 2 -1 3 1 3 -1 3 1 3 -1 3 1 3 -1 2 1 2 -1 3 1 3 -1 3 1 3 -1 1 1 1 -1 1 1 1 -1 3 1 3 -1 3 1 3 -1 1 1 1 -1 1 1 1 -1 2 1 2 -1 1 1 1 -1 2 1 2 -1 2 1 2 -1 2 1 2 -1 3 1 3 -1 1 1 1 -1 3 1 3 -1 3 1 3 -1 3 1 3 -1 3 1 3 -1 1 1 1 -1 3 1 3 -1 1 1 1 -1 2 1 2 -1 1 1 1 -1 1 1 1 -1 2 1 2 -1 2 1 2 -1 1 1 1 -1 3 1 3 -1 1 1 1 -1 2 1 2 -1 1 1 1 -1 3 1 3 -1 3 1 3 -1 3 1 3 -1 2 1 2 -1 3 1 3 -1

样例4输出 -1