#include using namespace std; #define MOD 1000000007; int n, k, x; long long ta, tb; int main() { scanf("%d%d%d", &n, &k, &x); ta = 1; for (int i = 1; i < n; i++) { ta = (tb * (k - 2) + ta) % MOD; tb = tb * (k - 1) % MOD; swap(ta, tb); } printf("%lld\n", x == 1 ? ta : tb); return 0; }