public class ErasureBugV2 {

        public static void main(String[] args) {
                Table table = new Table();
                List list = new List();
                list.add("a");
                list.add("b");
                list.add("c");
                table.add(list);
                list = new List();
                list.add("d");
                list.add("e");
                list.add("f");
                table.add(list);
                System.err.println(toString(table));
        }

        public static String toString(Table table) {
                StringBuilder sb = new StringBuilder();
                List l;
                int i = 0;
                if (i < table.size()) {
                        sb.append(toString(table.get(i)));
                        for (++i; i < table.size(); ++i) {
                                sb.append("\n");
                                sb.append(toString(table.get(i)));
                        }
                }
                return sb.toString();
        }

        public static String toString(List list) {
                StringBuilder sb = new StringBuilder();
                int i = 0;
                if (i < list.size()) {
                        sb.append(list.get(i));
                        for (++i; i < list.size(); ++i) {
                                sb.append(",");
                                sb.append(list.get(i));
                        }
                }
                return sb.toString();
        }

}

class List extends java.util.ArrayList<String> {
}

class Table extends java.util.ArrayList<List> {
} 