#!/bin/python import sys def countArray(n, k, x): mod = 10**9+7 if x == 1: nox = 1 full = 1 else: nox = 0 full = 1 for i in range(1,n): nox = (full-nox+mod)%mod full = (full*(k-1))%mod return nox # Return the number of ways to fill in the array. 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