#2313. 分组

内存限制:128 MiB 时间限制:10 Sec

题目描述

小Z最近在研究数学,尤其是分组问题最令小Z感兴趣。

分组问题是指将n个不同的人分到若干组中,使得每个组中的人数一样,求方案数。譬如n=4时,不同的分组方案如下:

1.{1}{2}{3}{4}

2.{1,2}{3,4}

3.{1,3}{2,4}

4.{1,4}{2,3}

5.{1,2,3,4}

小Z自然不满足于此,他还想用m种颜色给这些方案染色,再计算染色的方案数。如n=4 m=2时,一共有5种分组方案,那么答案则是2*2*2*2*2=32种。

Your Task

给定n m,计算染色的方案数。

由于答案可能很大,请输出它对10^9-401取模后的结果。

输入格式

第一行T表示数据组数

对于每组数据,仅一行n m

输出格式

对于每组数据,在一行中输出答案

样例

样例输入


			
2

4 2

2 3

样例输出


			
32
9

数据范围与提示



100%:T≤10,1≤n,m≤2*10^9