#include using namespace std; #define P 1000000007 long countArray(int n, int k, int x) { // Return the number of ways to fill in the array. long a_n = (x == 1) ? 0 : 1; long powers = 1; while (n-- > 2) { powers = (powers * (k-1)) % P; a_n = (powers - a_n + P) % P; } return a_n; } int main() { int n; int k; int x; cin >> n >> k >> x; long answer = countArray(n, k, x); cout << answer << endl; return 0; }