There are N balls placed in a row. AtCoDeer the deer is painting each of these in one of the K colors of his paint cans. For aesthetic reasons, any two adjacent balls must be painted in different colors.

Find the number of the possible ways to paint the balls.

Constraints

* 1≦N≦1000
* 2≦K≦1000
* The correct answer is at most 2^{31}-1.

Input

The input is given from Standard Input in the following format:


N K


Output

Print the number of the possible ways to paint the balls.

Examples

Input

2 2


Output

2


Input

1 10


Output

10
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp70
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] NK = Console.ReadLine().Split(' ');
            int N = int.Parse(NK[0]);
            int K = int.Parse(NK[1]);

            long answer=K;
            for (int i = 1; i < N - 1; i++)
            {
                answer = answer * (K - i);
            }

            long answer2 = K;
            for(int i = 1; i < N; i++)
            {
                answer2 *=(K - 1);
            }
            if (N < K)
            {
                Console.WriteLine(answer);
            }
            else
            {
                Console.WriteLine(answer2);
            }

        }
    }
}