#include #include #include #include #include #include #include const int MOD = 1e9+7; long int countArray(int n, int k, int x) { // Return the number of ways to fill in the array. long long res = k-1; for (int i = 4; i <= n; i++) { res = ((res + (i&1 ? 1 : -1))*(k-1))%MOD; } if (x != 1) res += (n&1 ? -1 : 1); return (res%MOD+MOD)%MOD; } int main() { int n; int k; int x; scanf("%i %i %i", &n, &k, &x); long int answer = countArray(n, k, x); printf("%ld\n", answer); return 0; }