#include <bits/stdc++.h>
using namespace std;
int size;
char s[200005];
int ones;
vector<vector<int> > ans;
int main() {
  scanf("%s", s);
  size = strlen(s);
  for (int i = 0; i < size; i++) {
    if (s[i] == '0') {
      if (ones > 0) {
        ans[ones - 1].push_back(i);
        ones--;
      } else {
        ans.push_back(vector<int>());
        ans.back().push_back(i);
      }
    } else {
      if (ones == ans.size()) {
        printf("-1\n");
        return 0;
      }
      ans[ones].push_back(i);
      ones++;
    }
  }
  if (s[ans[0].back()] == '1') {
    printf("-1\n");
  } else {
    printf("%d\n", ans.size());
    for (int i = 0; i < ans.size(); i++) {
      printf("%d ", ans[i].size());
      for (int j = 0; j < ans[i].size(); j++) {
        printf("%d ", ans[i][j] + 1);
      }
      printf("\n");
    }
  }
}
