P1306 [CF1228E] Another Filling the Grid
提高+
题目描述

You have $n \times n$ square grid and an integer $k$. Put an integer in each cell while satisfying the conditions below.

  • All numbers in the grid should be between $1$ and $k$ inclusive.
  • Minimum number of the $i$-th row is $1$ ($1 \le i \le n$).
  • Minimum number of the $j$-th column is $1$ ($1 \le j \le n$).

Find the number of ways to put integers in the grid. Since the answer can be very large, find the answer modulo $(10^{9} + 7)$.

These are the examples of valid and invalid grid when $n=k=2$.

Input

The only line contains two integers $n$ and $k$ ($1 \le n \le 250$, $1 \le k \le 10^{9}$).

Output

Print the answer modulo $(10^{9} + 7)$.

输入格式

见题面 Input 部分

输出格式

见题面 Output 部分

样例输入
2 2
样例输出
7
提示

In the first example, following $7$ cases are possible.

In the second example, make sure you print the answer modulo $(10^{9} + 7)$.