延误列车
题号:NC228153
时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

如果不知道那些遗失的话语
就在口袋里握紧双手吧
停止挣扎的呼吸
延误的今天
就睡个觉应付过去吧
如果不知道那些遗失的话语
就搭上各停列车启程吧


有一张  个点的完全图,现在删去其中一条包含   个点的简单链(没有交点)求它的生成树数量。

因为删除哪条链的答案都是相同的,所以你可以视为删除  ,  或者 

求答案对  取模后的值。

输入描述:

第一行输入两个正整数  

输出描述:

输出一行表示答案对  取模后的值。
示例1

输入

复制
5 3

输出

复制
40
示例2

输入

复制
4 2

输出

复制
8
示例3

输入

复制
5 4

输出

复制
21

说明

两棵生成树不同当且仅当存在至少一对点对  之间的边在一棵树上,且不在另一棵树上。