func_code_string: #include <bits/stdc++.h>   using namespace std;   const int INF = 0x3f3f3f3f;   const long long LL_INF = 0x3f3f3f3f3f3f3f3f;   const double PI = 3.14159265359;   const int mod = 1000 * 1000 * 1000 + 7;   int dx[4] = {1, -1, 0, 0};   int dy[4] = {0, 0, 1, -1};   string s;   int dp[100005];   int solve(int idx) {     if (idx == s.size()) return 1;     int &ret = dp[idx];     if (~ret) return ret;     ret = 0;     if (s[idx] ==  u  or s[idx] ==  n ) {       if (idx + 1 < s.size() and s[idx + 1] == s[idx]) {         ret = (solve(idx + 1) + solve(idx + 2)) % mod;       } else         ret = solve(idx + 1) % mod;     } else       ret = solve(idx + 1) % mod;     return ret;   }   int main() {     cin >> s;     if (s.find( w ) != -1 or s.find( m ) != -1) return cout << 0 << endl, 0;     memset(dp, -1, sizeof dp);     cout << solve(0) % mod << endl;     return 0;   }   