RNG 2

Count length-N arrays with entries from 0 to K whose bitwise XOR is nonzero, modulo 30011.

Medium7CombinatoricsMathBit manipulationNo attempts yetTime limit2sMemory limit512 MB

Problem

Consider every array of length NN whose elements are integers between 00 and KK, inclusive. Count how many of those arrays have a bitwise XOR of all their elements greater than 00.

A value may appear more than once, and two arrays that hold the same values in a different order count as different arrays.

Input

The first line contains NN and KK, separated by a space. (1N200001 \le N \le 20000, 1K500001 \le K \le 50000)

Output

Print the number of arrays that satisfy the condition, modulo 3001130011, on the first line.