#cf16exhibitionfinalj. [cf16_exhibition_final_j]123 Pairs

[cf16_exhibition_final_j]123 Pairs

问题描述

#nck { width: 30px; height: auto; }

考虑介于 112N2N 之间(包括边界值)的所有整数。Snuke 想要将这些整数分成 NN 对,使得:

  • 每个介于 112N2N 之间的整数恰好包含在这些对之一中。
  • 恰好有 AA 对整数的差为 11
  • 恰好有 BB 对整数的差为 22
  • 恰好有 CC 对整数的差为 33

注意:约束条件保证 N=A+B+CN = A + B + C,因此没有一对整数的差大于等于 44

计算完成这种分配的方式数量,模 109+710^9+7

约束条件

  • 1N50001 ≤ N ≤ 5000
  • 0A,B,C0 ≤ A, B, C
  • A+B+C=NA + B + C = N

输入

输入以以下格式从标准输入给出:

NN AA BB CC

输出

打印答案。


输入示例1

3 1 2 0

输出示例1

2

有两种可能性:12,35,461-2, 3-5, 4-6 或者 13,24,561-3, 2-4, 5-6


输入示例2

600 100 200 300

输出示例2

522158867