You know how they say, 'It's been a pleasure?' It hasn't.
- Mike Ehrmantraut, Breaking Bad
When Mike Ehrmantraut started being a cop, he wanted all people to be equal before the law. Now he is retired, but he still prefers \textbf{almost equal} arrays.
Here two arrays and of length are called \textbf{almost equal} if the following condition holds:
- For any ,
Given two integers and , find the number of \textbf{almost equal} pairs of integer arrays of length with elements from to . As this number can be large, output it modulo .
Input data
The only line of the input contains two integers ().
Output data
Output a single integer - output to the problem modulo .
Example 1
stdin
1 3
stdout
9
Explanation
In the first sample, any pair of arrays with satisfies the conditions from the statement, there are of them.
Example 2
stdin
2 2
stdout
10
Explanation
In the second sample, there are the pairs of arrays: , , , , , , , , , .
Example 3
stdin
69 42
stdout
608932821