#5658. 子序列

子序列

题目描述

下载

小 T 在刚上小学时认识了很多同学,他将这些同学的性别按照学号顺序记作一个字符串 ss,其中男生记为 00,女生记为 11。在小学毕业时,小 T 在这些同学中交到了不少朋友,他将这些朋友的性别按照同样的学号顺序记作一个字符串 tt(这里假定同学的性别和学号均不会改变,即 tt 一定是 ss 的子序列)。

时光飞逝,已经进入大学的小 T 早已忘记了他在小学有哪些同学。他只记得他的同学中有 aa 个男生和 bb 个女生,以及他的朋友中有 cc 个男生和 dd 个女生(即 ssaa00bb11 组成,ttcc00dd11 组成)。他想知道,有多少对字符串 (s,t)(s,t) 满足上述所有条件,对 109+710^9+7 取模。注意如果 ttss 的不同位置得到,但是形成的字符串相同,视作同一个字符串,只计入一次答案。

输入格式

第一行四个整数 a,b,c,da,b,c,d

输出格式

输出一行一个整数,表示答案。

样例

样例 1 输入

2 3 1 1

样例 1 输出

18

样例 2 输入

87 65 43 21

样例 2 输出

814209149

附加样例

见下发文件,第 ii 组下发样例符合第 ii 个子任务的限制。

数据范围与约定

对于全部数据,0ca2000,0db2000,c+d>00\le c\le a\le 2000,0\le d\le b\le 2000,c+d>0

Subtask 分值 c,dc,d\le a,ba,b\le
1 5 1010
2 10 2020
3 20 100100
4 25 500500
5 15 1010 20002000
6 25 20002000