public void readHistory(DataInput input) {
        try {
            int unused = input.readInt(); //  VERSION == 1
            int chainCount = input.readInt();
            for (int i = 0; i < chainCount; ++i) {
                int filterCount = input.readInt();
                JList filterList = createJList();
                boolean wasNotEmpty = false;
                for (int j = 0 ; j < filterCount; ++j) {
                    String nextFilter = input.readUTF();
                    Object genericModel = filterList.getModel();
                    if (genericModel instanceof DefaultListModel) {
                        DefaultListModel model = 
                            (DefaultListModel) genericModel;
                        model.addElement(nextFilter);
                        wasNotEmpty = false;
                    }
                }
                if (wasNotEmpty) {
                    filterLists.add(filterList);
                }
            }
        } catch (IOException e) {
            // NYI
        }
    }