#include <bits/stdc++.h>
using namespace std;
void c_p_c() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
}
long long me(long long x, long long y, long long p) {
  long long res = 1;
  x = x % p;
  if (x == 0) return 0;
  while (y > 0) {
    if (y & 1) res = (res * x) % p;
    y = y >> 1;
    x = (x * x) % p;
  }
  return res;
}
bool check(vector<long long int> v, long long int l, long long int sum) {
  if (l >= v.size() || sum < 0) return false;
  if (sum == 0) return true;
  bool left = check(v, l + 1, sum - v[l]);
  if (!left) return check(v, l + 1, sum);
}
long long int max(long long int a, long long int b) { return (a > b) ? a : b; }
bool check2(vector<long long int> v, long long int l, long long int sum) {
  bool knap[v.size() + 1][sum + 1];
  for (int i = 0; i <= v.size(); i++) knap[i][0] = true;
  for (int i = 1; i <= sum; i++) knap[0][i] = false;
  for (long long int i = 1; i < v.size() + 1; i++) {
    for (long long int j = 1; j < sum + 1; j++) {
      if (v[i - 1] <= j)
        knap[i][j] = knap[i - 1][j] || knap[i - 1][j - v[i - 1]];
      else
        knap[i][j] = knap[i - 1][j];
    }
  }
  if (knap[v.size()][sum])
    return true;
  else
    return false;
}
long long int check33(long long int a[], long long int n) {
  for (long long int i = 0; i < n; i++)
    if (a[i] != 0) return 0;
  return 1;
}
void solve() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  string s;
  vector<long long int> v1, v2;
  cin >> s;
  long long int n = s.length();
  long long int f = 0, g = 0, j = n - 1, p = 0;
  for (long long int i = 0; i < j;) {
    if (s[i] == '(' && s[j] == ')') {
      p++;
      v1.push_back(i + 1);
      v2.push_back(j + 1);
      i++;
      j--;
    } else if (s[i] == '(' && s[j] != ')')
      j--;
    else if (s[i] != '(' && s[j] == ')')
      i++;
    else {
      i++;
      j--;
    }
  }
  if (v1.size() == 0 && v2.size() == 0) {
    cout << 0 << endl;
    return;
  }
  cout << 1 << endl << v1.size() + v2.size() << endl;
  reverse(v2.begin(), v2.end());
  for (auto x : v1) cout << x << " ";
  for (auto x : v2) cout << x << " ";
}
int main() {
  c_p_c();
  solve();
  return 0;
}
