编程题
### 问题描述
作为一名探险小队成员,你们被千年乌龟带过大河,来到一个装满宝石的花园。花园里有 $m$ 种颜色的宝石,每种宝石的数量可以看作无限个。现在你需要随机取 $n$ 个宝石,保证相邻的宝石颜色不同,并且求出有多少种摆法。如果你能够解决这个问题,守护者不仅会赠送你一大堆的宝石,还会为你指引下一个目的地。答案可能非常大,因此你需要对 $10^9+7$ 取模。
### 输入格式
第一行输入两个整数 $m$ 和 $n$ 。
数据保证 $1\leq n,m \leq 10^5$ 。
### 输出格式
输出一个整数表示答案,答案需要对 $10^9+7$ 取模 。
### 样例输入
```
2 2
```
### 样例输出
```
2
```
### 说明
样例用 $0$ 和 $1$ 表示两种颜色的宝石,只有 $[0,1]$ 和 $[1,0]$ 两种合法的摆法。