#!/bin/python import sys M = 10**9+7 def countArray(n, k, x): A = 1 B = 0 for i in range(n-2): B, A = (A*(k-1))%M, ((A*(k-2)%M)+B%M)%M return A%M if x!=1 else B%M if __name__ == "__main__": n, k, x = raw_input().strip().split(' ') n, k, x = [int(n), int(k), int(x)] answer = countArray(n, k, x) print answer