#include <bits/stdc++.h>
using namespace std;
const int inf = 2e9;
const long long infl = 9e18;
vector<vector<string>> ans;
string s1, s2;
void Func(int level) {
  if (!getline(cin, s1, ',')) return;
  getline(cin, s2, ',');
  if (level >= ans.size()) ans.resize(level + 1);
  ans[level].push_back(s1);
  int k = stoi(s2);
  for (int i = 0; i < k; i++) Func(level + 1);
  if (!level) Func(0);
}
int main() {
  ios_base::sync_with_stdio(0);
  Func(0);
  cout << ans.size() << endl;
  for (int i = 0; i < ans.size(); i++) {
    for (int j = 0; j < ans[i].size(); j++) cout << ans[i][j] << ' ';
    cout << endl;
  }
}
