public static void main(String[] args) {
   ProfileChangeRequest pcr = new Parser().parse(new File(args[0]));
   List state = pcr.getInitialState().getList();
   Collections.sort(state);
   Log.println(("Solution contains:" + state.size()));
   for (Iterator iterator = state.iterator(); iterator.hasNext(); ) {
     InstallableUnit iu = (InstallableUnit) iterator.next();
     System.out.println("package: " + iu.getId());
     System.out.println("version: " + iu.getVersion().getMajor());
     System.out.println("installed: true");
     System.out.println();
   }
 }
 protected String getUserReadableName(InstallableUnit iu) {
   if (iu == null) return ""; // $NON-NLS-1$
   String result = getLocalized(iu);
   if (result == null) return iu.toString();
   return result + ' ' + iu.getVersion() + " (" + iu.toString() + ')'; // $NON-NLS-1$
 }