func_code_string: #include <bits/stdc++.h>   using namespace std;   void err(istream_iterator<string> it) {}   template <typename T, typename... Args>   void err(istream_iterator<string> it, T a, Args... args) {     cout << *it <<   =   << a << endl;     err(++it, args...);   }   const long long MOD = 1e9 + 7;   long long modExp(long long b, long long p) {     long long res = 1;     while (p > 0) {       if (p & 1) {         res = (res * b) % MOD;       }       b = (b * b) % MOD;       p >>= 1;     }     return res;   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     int n, m;     cin >> n >> m;     long long ans = 1;     for (int i = 1; i <= n; i++) {       ans = ((2 * m - 1) * ans + modExp(m, i - 1)) % MOD;     }     cout << ans;     return 0;   }   