func_code_string: #include <bits/stdc++.h>   using namespace std;   int n, m, k;   long long pow2(int x) {     if (x == 0) return 1;     if (x == 1) return 2;     long long h = pow2(x / 2);     return (h * h * (x & 1 ? 2 : 1)) % 1000000009;   }   int main() {     cin >> n >> m >> k;     int x = n / k;     int y = n % k;     int z = m - (x * (k - 1) + y);     if (z > 0) {       long long v = ((pow2(z + 1) + 1000000009 - 2 - z) * k) % 1000000009;       long long res = (v + m) % 1000000009;       cout << res << endl;     } else {       cout << m << endl;     }   }   