func_code_string: #include <bits/stdc++.h>   using namespace std;   vector<long long> seive() {     long long n = 2;     vector<long long> pr(200000, -1);     for (int i = n; i < 200000; i++) {       if (pr[i] == -1)         pr[i] = 1;       else         continue;       for (int j = 2 * i; j < 200000; j += i) pr[j] = 0;     }     return pr;   }   long long powmod(long long a, long long b) {     long long res = 1;     a %= 1000000007;     assert(b >= 0);     for (; b; b >>= 1) {       if (b & 1) res = res * a % 1000000007;       a = a * a % 1000000007;     }     return res;   }   bool isprime(long long n) {     bool flag = true;     for (long long i = 2; i <= sqrt(n); i++) {       if (n % i == 0) {         flag = false;         break;       }     }     return flag;   }   long long gcd(long long a, long long b) { return b ? gcd(b, a % b) : a; }   long long lcm(long long a, long long b) { return a * b / gcd(a, b); }   int main() {     ios::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     string s;     cin >> s;     vector<int> le, ri;     int l = 0, r = s.size() - 1;     while (l < r) {       while (l < s.size() && s[l] ==  ) ) l++;       while (r >= 0 && s[r] ==  ( ) r--;       if (l < s.size() && r >= 0 && l < r) {         le.push_back(l + 1);         ri.push_back(r + 1);         l++;         r--;       }     }     if (le.empty()) {       cout <<  0 n ;       return 0;     }     cout <<  1 n ;     cout << 2 * le.size() <<   n ;     for (auto x : le) cout << x <<    ;     reverse(ri.begin(), ri.end());     for (auto x : ri) cout << x <<    ;     cout <<   n ;     return 0;   }   