import java.io.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class read1 {
public static void main(String[] args) throws IOException{
String file = "/home/ja/CADATA/mushroom_fp_threshold50.1";
FileReader fr = new FileReader(new File(file));
BufferedReader bf = new BufferedReader(fr);
List<Map<List<String>,Integer>> list = new ArrayList<Map<List<String>,Integer>>();
String line = null;
while((line = bf.readLine()) != null){
Map<List<String>,Integer> map = new HashMap<List<String>,Integer>();
if(line.trim() != ""){
List<String> l = new ArrayList<String>();
String[] str = line.split(":",2);
String[] tmpstr = str[0].trim().split(" ");
for (String string : tmpstr) {
l.add(string.trim());
}
int tmp = Integer.parseInt(str[1].trim());
map.put(l,tmp);
}
list.add(map);
}
for(int i=0;i<list.size();i++){
//System.out.println(list.get(i));
}
int sizes = list.get(list.size()-1).entrySet().iterator().next().getKey().size();
List<List<Map<List<String>,Integer>>> result = new ArrayList<List<Map<List<String>,Integer>>>();
int k = 1;
while(k <= sizes){
List<Map<List<String>,Integer>> tmp = new ArrayList<Map<List<String>,Integer>>();
for(int j=0;j<list.size();j++){
if(list.get(j).entrySet().iterator().next().getKey().size() == k){
tmp.add(list.get(j));
}
}
k++;
result.add(tmp);
}
for(int t=0;t<result.size()-1;t++){
for(int j=0;j<result.get(t+1).size();j++){
for(int i=0;i<result.get(t).size();i++){
if(result.get(t+1).get(j).entrySet().iterator().next().getKey().containsAll(result.get(t).get(i).entrySet().iterator().next().getKey())
&& result.get(t+1).get(j).entrySet().iterator().next().getValue() == result.get(t).get(i).entrySet().iterator().next().getValue()){
result.get(t).remove(i);
i--;
}
//System.out.println(result.get(0).get(i).entrySet().iterator().next().getKey() + ":" + result.get(0).get(i).entrySet().iterator().next().getValue());
//System.out.println(result.get(1).get(j).entrySet().iterator().next().getKey() + "\\" + result.get(1).get(j).entrySet().iterator().next().getValue());
}
}
}
for(int i=0;i<result.size();i++){
System.out.println(result.get(i).size() + "---" + result.get(i));
}
System.out.println();
}
}