private boolean loadSessionFile2(File f) {
    try {
      String text = readFile(f.getAbsolutePath());
      int stop = text.indexOf("<list>");
      String settings = text.substring(0,stop);
      String files = text.substring(stop);
      
      //System.out.println(settings);
      //System.out.println(" ");
      //System.out.println(files);
      
      if (!settings.isEmpty()) {
        XStream xstream = new XStream(new DomDriver("UTF-8"));
        xstream.processAnnotations(cuploader.Settings.class);
        xstream.processAnnotations(cuploader.QuickTemplate.class);
        xstream.processAnnotations(cuploader.DescSource.class);
        Data.settings = (Settings) xstream.fromXML(settings);
      }
      
      if (!files.isEmpty()) {
        XStream xstream = new XStream(new DomDriver("UTF-8"));
        xstream.registerConverter(new MapEntryConverter());

        try {
          @SuppressWarnings("unchecked")
          ArrayList<Map<String,String>> elements = (ArrayList<Map<String,String>>) xstream.fromXML(files);
          //System.out.println(elements);
          new FFileLoading(elements, true);
          
          //new FFileLoading(fPath, fEdit, fUpload, fName, fDate, fDesc, fCoor, fCats);
          //lStartInfo.setVisible(false);
          //mEdit.setEnabled(true);
          //mFileUploadSelect.setEnabled(true);
          //mUpload.setEnabled(true);
        } catch (ClassCastException ex) {
          error("Bad session file format", ex);
          return false;
        }
      }
      if (Data.settings.permission == null) {
        Data.settings.permission = "";
      }
      
    } catch (IOException ex) {
      error(null, ex);
      return false;
    }
    return true;
  }