@Override
  public void readExternal(Element element) throws InvalidDataException {
    myEntries.clear();
    List<Element> children = element.getChildren();
    for (final Element e : children) {
      @NonNls String name = e.getName();
      if ("package".equals(name)) {
        String packageName = e.getAttributeValue("name");
        boolean isStatic = Boolean.parseBoolean(e.getAttributeValue("static"));
        boolean withSubpackages = Boolean.parseBoolean(e.getAttributeValue("withSubpackages"));
        if (packageName == null) {
          throw new InvalidDataException();
        }
        PackageEntry entry;
        if (packageName.isEmpty()) {
          entry = isStatic ? PackageEntry.ALL_OTHER_STATIC_IMPORTS_ENTRY : PackageEntry.ALL_OTHER_IMPORTS_ENTRY;
        }
        else {
          entry = new PackageEntry(isStatic, packageName, withSubpackages);
        }
        myEntries.add(entry);
      }
      else {
        if ("emptyLine".equals(name)) {
          myEntries.add(PackageEntry.BLANK_LINE_ENTRY);
        }
      }
    }
  }
@Override
  public void readExternal(Element element)