func_code_string: #include <bits/stdc++.h>   using namespace std;   int mod = 1000000007;   const int inf = 1034567891;   const long long LL_INF = 1234567890123456789ll;   template <typename Arg1>   void __f(const char* name, Arg1&& arg1) {     cout << name <<   :   << arg1 <<   n ;   }   template <typename Arg1, typename... Args>   void __f(const char* names, Arg1&& arg1, Args&&... args) {     const char* comma = strchr(names + 1,  , );     cout.write(names, comma - names) <<   :   << arg1 <<   |  ;     __f(comma + 1, args...);   }   template <typename T>   T GCD(T a, T b) {     long long t;     while (a) {       t = a;       a = b % a;       b = t;     }     return b;   }   template <typename T>   string toString(T a) {     return to_string(a);   }   template <typename T>   void toInt(string s, T& x) {     stringstream str(s);     str >> x;   }   inline int add(int x, int y) {     x += y;     if (x >= mod) x -= mod;     return x;   }   inline int sub(int x, int y) {     x -= y;     if (x < 0) x += mod;     return x;   }   inline int mul(int x, int y) { return (x * 1ll * y) % mod; }   inline int powr(int a, long long b) {     int x = 1 % mod;     while (b) {       if (b & 1) x = mul(x, a);       a = mul(a, a);       b >>= 1;     }     return x;   }   inline int inv(int a) { return powr(a, mod - 2); }   string str;   long long give(int l, int r) {     long long ans = 0, p = 0;     for (int i = r; i >= l; i--) {       ans += (1ll << p) * (str[i] - 48);       p++;     }     return ans;   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(NULL);     int test;     cin >> test;     while (test--) {       cin >> str;       int n = str.size();       long long ans = 0;       int nxt = -1;       bool ok = false;       for (int i = n - 1; i >= 0; i--) {         if (!ok) {           nxt = i;         }         if (str[i] ==  1 ) {           nxt = i;         }         int e = nxt - i;         for (int j = nxt; j < nxt + 20 && j < n; j++) {           long long num = give(nxt, j);           if (num == (j - nxt + 1 + e)) {             ans++;           }         }         if (str[i] ==  1 ) {           ok = true;           nxt = i;         }       }       cout << ans <<   n ;     }     return 0;   }   