func_code_string: #include <bits/stdc++.h>   using namespace std;   long long power(long long x, long long y, long long m);   long long modInverse(long long n, long long m);   long long nCr(long long n, long long r, long long m);   long long ceiling(long long x, long long y);   bool sortbyth(const tuple<long long, int, int>& a,                 const tuple<long long, int, int>& b) {     if (get<0>(a) != get<0>(b))       return get<0>(a) > get<0>(b);     else       return get<1>(a) < get<1>(b);   }   int dx[] = {-1, -1, -1, 0, 1, 1, 1, 0};   int dy[] = {-1, 0, 1, 1, 1, 0, -1, -1};   void aksayushx() {     string s;     cin >> s;     int n = s.length();     stack<pair<int, int>> st;     for (int i = 0; i < n; i++) {       if (s[i] ==  0  && (!st.empty() && st.top().first ==  1 ))         st.pop();       else         st.push({s[i], i});     }     while (!st.empty()) {       s[st.top().second] =  0 ;       st.pop();     }     cout << s <<   n ;   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(NULL);     cout.tie(NULL);     int t = 1;     while (t--) aksayushx();     return 0;   }   long long power(long long x, long long y, long long m) {     long long res = 1;     x = x % m;     if (x == 0) return 0;     while (y > 0) {       if (y & 1) res = (res * x) % m;       y = y >> 1;       x = (x * x) % m;     }     return res;   }   long long modInverse(long long n, long long m) { return power(n, m - 2, m); }   long long ceiling(long long x, long long y) { return (x + y - 1) / y; }   