#634. 数序列数

数序列数

Background

Special for beginners, ^_^

Description

给定n和m,有多少个由n个数字组成的数列满足: 1Aim(i=1,2,,n)1 \leq A_i \leq m \left(i = 1, 2, \ldots, n\right) Ai+1 A_{i+1} AiA_i的倍数 (i=1,2,,N1)\left(i = 1, 2, \ldots, N - 1\right)。 由于答案很大,输出对2e9+7的取模后的结果。

Format

Input

每行输入两个是n和m,满足 1n,m2×1051 \leq n,m \leq 2 \times 10^5

Output

每行输出一个答案,表示满足条件的序列数(对2e9+7的取模)。

Samples

1 1
2 2
1
3

Limitation

1s, 1024KiB for each test case.