描述

在无向连通图中,若一条边被删除后,图会分成不连通的两部分,则称该边为割边。求满足如下条件的无向连通图的数量:
  • 由N个节点构成,节点有标号,编号为1~N。
  • 割边恰好有M条。
  • 没有自环和重边。
数据范围:2≤N≤50, 0≤M≤N*(N-1)/2。答案可能很大,你只需要输出对 10^9+7 取模后的结果。

输入格式

为了方便配置测试,输入输出内容与题目描述稍有不同。

输入只包含一个整数MAX_N。

输出格式

对于所有的1<=N<=MAX_N, 0<=M<=MAX_N*(MAX_N-1)/2,若N个点恰好有M条割边的无向连通图数量对10^9+7取模后的结果不为0,则输出一行3个由空格隔开的正整数:N, M, 结果。

简单来说输出就是打一张表。请参考样例。

样例输入

8

样例输出

1 0 1
2 1 1
3 0 1
3 2 3
4 0 10
4 1 12
4 3 16
5 0 253
5 1 200
5 2 150
5 4 125
6 0 11968
6 1 7680
6 2 3600
6 3 2160
6 5 1296
7 0 1047613
7 1 506856
7 2 190365
7 3 68600
7 4 36015
7 6 16807
8 0 169181040
8 1 58934848
8 2 16353792
8 3 4695040
8 4 1433600
8 5 688128
8 7 262144

样例解释

  • 考虑8以内的所有N。
  • N=1, M=0时答案为1,故第一行输出1 0 1。
  • N=2, M=0时答案为0,故不输出。
  • N=2, M=1时答案为1,故第二行输出2 1 1。
  • 依此类推。