this(new InetConnection(server), mode, dm, title, pm, player, new ModelRoot());
super(player); setMoveChainFork(new MoveChainFork()); modelRoot = mr; this.title = title; SynchronizedEventQueue.use();  modelRoot.setMoveFork(getMoveChainFork());   GUIRoot guiRoot = new GUIRoot(modelRoot);  setReceiver(new ConnectionAdapter(mr, guiRoot, player, pm, this)); modelRoot.setMoveReceiver(getReceiver()); getReceiver().setMoveReceiver(getMoveChainFork());      guiRoot.setScreenHandler(new ScreenHandler(guiRoot.getClientJFrame(), (UpdatedComponent) guiRoot.getClientJFrame(), mode, dm));  try {  getReceiver().setConnection(server); } catch (GeneralSecurityException e) { server.close(); throw e; }
    public GUIClient(InetAddress server, int mode, DisplayMode dm,        String title, FreerailsProgressMonitor pm, Player player)        throws IOException, GeneralSecurityException {        this(new InetConnection(server), mode, dm, title, pm, player,            new ModelRoot());    }