public void loadGame()
  {
    try
    {
     // PrivilegeManager.enablePrivilege("UniversalFileAccess");
     // PrivilegeManager.enablePrivilege("UniversalPropertyRead");
     // PolicyEngine.assertPermission(PermissionID.FILEIO);
    //}
    //catch (ForbiddenTargetException localForbiddenTargetException)
    //{
     // System.err.println("Stormrunner: loadGame(): User clicked Deny.");
     // return;
    }
    catch (Exception localException1)
    {
      localException1.printStackTrace();
      return;
    }

    Frame localFrame = null;
    Object localObject = this;
    while ((localObject != null) && (!(localObject instanceof Frame)))
      localObject = ((Component)localObject).getParent();
    if (localObject == null)
    {
      Debug.println("cant find a frame");
      return;
    }
    localFrame = (Frame)localObject;
    if (this.savegameWindow == null)
      this.savegameWindow = new LoadSaveFrame(localFrame, 0);
    else {
      this.savegameWindow.toFront();
    }
    File localFile = this.savegameWindow.getResponse();
    if (localFile == null)
    {
      Debug.println("Aborting load");
      this.savegameWindow = null;
      return;
    }

    Loader localLoader = null;
    try
    {
      this.optionspanel.setEnabled(false);

      this.progressDialog = new ProgressComponent("Please Wait...", (int)localFile.length() + 8192, this);
      this.progressDialog.setLocation(5, 337);
      this.optionspanel.add(this.progressDialog, 0);
      this.progressDialog.setVisible(true);

      ObjectInputStream localObjectInputStream = new ObjectInputStream(
        new BufferedInputStream(
        new GZIPInputStream(
        new MonitoredInputStream(
        new FileInputStream(localFile), this.progressDialog))));

      localLoader = new Loader(this, localObjectInputStream);
      new UtilityThread(0, localLoader, localLoader.getClass().getMethod("activate", null), false).start();
    }
    catch (Exception localException2)
    {
      if (localLoader != null) {
        localLoader.failout("Error loading game! Contact bugs@legomindstorm.com for assistance.", "Stormrunner: Error loading saved game from file: " + localFile, localException2);

        return;
      }

      System.err.println("Stormrunner: EXCEPTION DURING SAVE ATTEMPT! (" + localFile + ")");
      localException2.printStackTrace();

      new MessageDialog(localFrame, "Error!", "Error loading saved game!", "Abort");

      return;
    }

    try
    {
     // PrivilegeManager.revertPrivilege("UniversalFileAccess");
      //PrivilegeManager.revertPrivilege("UniversalPropertyRead");
     // PolicyEngine.revertPermission(PermissionID.FILEIO);
   }
    catch (Exception localException3)
    {
      System.err.println("Stormrunner: Sanity check: failure during revertPrivilege following load.");
      localException3.printStackTrace();
    }

    this.savegameWindow = null;
  }