func_code_string: #include <bits/stdc++.h>   using namespace std;   const long long mod = (1e9 + 7);   const long long inf = (1e18 + 3);   const long long N = 1e7 + 5;   void no() {     cout <<  -1 ;     exit(0);   }   void yes() {     cout <<  YES ;     exit(0);   }   long long powmod(long long a, long long b) {     long long res = 1;     a %= mod;     assert(b >= 0);     for (; b; b >>= 1) {       if (b & 1) res = res * a % mod;       a = a * a % mod;     }     return res;   }   long long inv(long long a) { return powmod(a, mod - 2); }   long long gcd(long long a, long long b) { return b ? gcd(b, a % b) : a; }   long long mul(long long a, long long b) { return a * b % mod; }   long long add(long long a, long long b) { return (a + b) % mod; }   long long sub(long long a, long long b) { return (a - b + mod) % mod; }   int main() {     string s;     cin >> s;     long long cnt = 1, res = 0;     for (auto i : s) {       if (i ==  a )         cnt <<= 1, cnt %= mod;       else         res = add(res, cnt - 1);     }     cout << res;     return 0;   }   