Program: 159475
Project: 159475
Buggy source:
@SuppressWarnings("String_Node_Str") private void initComponents(){
  abilityPicker=new mage.client.components.ability.AbilityPicker();
  jSplitPane1=new javax.swing.JSplitPane();
  jSplitPane0=new javax.swing.JSplitPane();
  jPanel2=new javax.swing.JPanel();
  jPanel3=new javax.swing.JPanel();
  pnlGameInfo=new javax.swing.JPanel();
  lblPhase=new javax.swing.JLabel();
  txtPhase=new javax.swing.JLabel();
  lblStep=new javax.swing.JLabel();
  txtStep=new javax.swing.JLabel();
  lblTurn=new javax.swing.JLabel();
  txtTurn=new javax.swing.JLabel();
  txtActivePlayer=new javax.swing.JLabel();
  lblActivePlayer=new javax.swing.JLabel();
  txtPriority=new javax.swing.JLabel();
  lblPriority=new javax.swing.JLabel();
  feedbackPanel=new mage.client.game.FeedbackPanel();
  btnConcede=new javax.swing.JButton();
  btnEndTurn=new javax.swing.JButton();
  btnSwitchHands=new javax.swing.JButton();
  btnStopWatching=new javax.swing.JButton();
  bigCard=new mage.client.cards.BigCard();
  stack=new mage.client.cards.Cards();
  pnlReplay=new javax.swing.JPanel();
  btnStopReplay=new javax.swing.JButton();
  btnNextPlay=new javax.swing.JButton();
  btnPlay=new javax.swing.JButton();
  btnSkipForward=new javax.swing.JButton();
  btnPreviousPlay=new javax.swing.JButton();
  pnlBattlefield=new javax.swing.JPanel();
  gameChatPanel=new mage.client.chat.ChatPanel();
  gameChatPanel.useExtendedView(ChatPanel.VIEW_MODE.GAME);
  userChatPanel=new mage.client.chat.ChatPanel();
  userChatPanel.setParentChat(gameChatPanel);
  userChatPanel.useExtendedView(ChatPanel.VIEW_MODE.CHAT);
  userChatPanel.setChatType(ChatPanel.ChatType.GAME);
  gameChatPanel.setConnectedChat(userChatPanel);
  gameChatPanel.disableInput();
  gameChatPanel.setMinimumSize(new java.awt.Dimension(100,48));
  jSplitPane2=new javax.swing.JSplitPane();
  handContainer=new HandPanel();
  handCards=new HashMap<String,CardsView>();
  jSplitPane1.setBorder(null);
  jSplitPane1.setDividerSize(7);
  jSplitPane1.setResizeWeight(1.0);
  jSplitPane1.setOneTouchExpandable(true);
  jSplitPane1.setMinimumSize(new java.awt.Dimension(26,48));
  jSplitPane0.setBorder(null);
  jSplitPane0.setDividerSize(7);
  jSplitPane0.setResizeWeight(1.0);
  jSplitPane0.setOneTouchExpandable(true);
  restoreDividerLocations();
  pnlGameInfo.setOpaque(false);
  lblPhase.setLabelFor(txtPhase);
  lblPhase.setText("String_Node_Str");
  txtPhase.setText("String_Node_Str");
  txtPhase.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtPhase.setMinimumSize(new java.awt.Dimension(0,16));
  lblStep.setLabelFor(txtStep);
  lblStep.setText("String_Node_Str");
  txtStep.setText("String_Node_Str");
  txtStep.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtStep.setMinimumSize(new java.awt.Dimension(0,16));
  lblTurn.setLabelFor(txtTurn);
  lblTurn.setText("String_Node_Str");
  txtTurn.setText("String_Node_Str");
  txtTurn.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtTurn.setMinimumSize(new java.awt.Dimension(0,16));
  txtActivePlayer.setText("String_Node_Str");
  txtActivePlayer.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtActivePlayer.setMinimumSize(new java.awt.Dimension(0,16));
  lblActivePlayer.setLabelFor(txtActivePlayer);
  lblActivePlayer.setText("String_Node_Str");
  txtPriority.setText("String_Node_Str");
  txtPriority.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtPriority.setMinimumSize(new java.awt.Dimension(0,16));
  lblPriority.setLabelFor(txtPriority);
  lblPriority.setText("String_Node_Str");
  feedbackPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0,0,0)));
  feedbackPanel.setMaximumSize(new java.awt.Dimension(208,121));
  feedbackPanel.setMinimumSize(new java.awt.Dimension(208,121));
  bigCard.setBorder(new LineBorder(Color.black,1,true));
  btnConcede.setText("String_Node_Str");
  btnConcede.setToolTipText("String_Node_Str");
  btnConcede.setFocusable(false);
  btnConcede.addMouseListener(new MouseAdapter(){
    @Override public void mouseClicked(    MouseEvent evt){
      btnConcedeActionPerformed(null);
    }
  }
);
  btnEndTurn.setText("String_Node_Str");
  btnEndTurn.setToolTipText("String_Node_Str");
  btnEndTurn.setFocusable(false);
  btnEndTurn.addMouseListener(new MouseAdapter(){
    @Override public void mouseClicked(    MouseEvent evt){
      btnEndTurnActionPerformed(null);
    }
  }
);
  int c=JComponent.WHEN_IN_FOCUSED_WINDOW;
  KeyStroke ks=KeyStroke.getKeyStroke(KeyEvent.VK_F4,0);
  this.getInputMap(c).put(ks,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      btnEndTurnActionPerformed(null);
    }
  }
);
  KeyStroke ks9=KeyStroke.getKeyStroke(KeyEvent.VK_F9,0);
  this.getInputMap(c).put(ks9,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      btnPassPriorityUntilNextYourTurnActionPerformed(actionEvent);
    }
  }
);
  KeyStroke ks2=KeyStroke.getKeyStroke(KeyEvent.VK_F2,0);
  this.getInputMap(c).put(ks2,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      if (feedbackPanel != null) {
        feedbackPanel.pressOKYesOrDone();
      }
    }
  }
);
  KeyStroke ks3=KeyStroke.getKeyStroke(KeyEvent.VK_F3,0);
  this.getInputMap(c).put(ks3,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      restorePriorityActionPerformed(actionEvent);
    }
  }
);
  KeyStroke ksAltE=KeyStroke.getKeyStroke(KeyEvent.VK_E,InputEvent.ALT_MASK);
  this.getInputMap(c).put(ksAltE,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      ActionCallback callback=Plugins.getInstance().getActionCallback();
      ((MageActionCallback)callback).enlargeCard();
    }
  }
);
  KeyStroke ksAltD=KeyStroke.getKeyStroke(KeyEvent.VK_D,InputEvent.ALT_MASK);
  this.getInputMap(c).put(ksAltD,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      imagePanelState=!imagePanelState;
      if (!imagePanelState) {
        jSplitPane0.resetToPreferredSizes();
        jSplitPane0.setDividerLocation(jSplitPane0.getSize().width - jSplitPane0.getInsets().right - jSplitPane0.getDividerSize()- 260);
      }
 else {
        jSplitPane0.setDividerLocation(1.0);
      }
    }
  }
);
  final BasicSplitPaneUI myUi=(BasicSplitPaneUI)jSplitPane0.getUI();
  final BasicSplitPaneDivider divider=myUi.getDivider();
  final JButton upArrowButton=(JButton)divider.getComponent(0);
  upArrowButton.addActionListener(new ActionListener(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      PreferencesDialog.saveValue(PreferencesDialog.KEY_BIG_CARD_TOGGLED,"String_Node_Str");
    }
  }
);
  final JButton downArrowButton=(JButton)divider.getComponent(1);
  downArrowButton.addActionListener(new ActionListener(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      PreferencesDialog.saveValue(PreferencesDialog.KEY_BIG_CARD_TOGGLED,"String_Node_Str");
    }
  }
);
  KeyStroke ksAltShiftReleased=KeyStroke.getKeyStroke(KeyEvent.VK_E,InputEvent.ALT_MASK,true);
  this.getInputMap(c).put(ksAltShiftReleased,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      ActionCallback callback=Plugins.getInstance().getActionCallback();
      ((MageActionCallback)callback).hideCard();
    }
  }
);
  btnSwitchHands.setText("String_Node_Str");
  btnSwitchHands.addMouseListener(new MouseAdapter(){
    @Override public void mouseClicked(    MouseEvent evt){
      btnSwitchHandActionPerformed(null);
    }
  }
);
  btnStopWatching.setText("String_Node_Str");
  btnStopWatching.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnStopWatchingActionPerformed(evt);
    }
  }
);
  stack.setPreferredSize(new java.awt.Dimension(Config.dimensions.frameWidth,Config.dimensions.frameHeight + 25));
  stack.setBackgroundColor(new Color(0,0,0,0));
  btnStopReplay.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnStopReplay.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnStopReplayActionPerformed(evt);
    }
  }
);
  btnNextPlay.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnNextPlay.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnNextPlayActionPerformed(evt);
    }
  }
);
  btnPlay.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnPlay.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnPlayActionPerformed(evt);
    }
  }
);
  btnSkipForward.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnSkipForward.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnSkipForwardActionPerformed(evt);
    }
  }
);
  btnPreviousPlay.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnPreviousPlay.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnPreviousPlayActionPerformed(evt);
    }
  }
);
  javax.swing.GroupLayout gl_pnlReplay=new javax.swing.GroupLayout(pnlReplay);
  pnlReplay.setLayout(gl_pnlReplay);
  gl_pnlReplay.setHorizontalGroup(gl_pnlReplay.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(gl_pnlReplay.createSequentialGroup().addComponent(btnPreviousPlay,javax.swing.GroupLayout.PREFERRED_SIZE,41,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnPlay,javax.swing.GroupLayout.PREFERRED_SIZE,35,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,javax.swing.GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE).addComponent(btnStopReplay,javax.swing.GroupLayout.PREFERRED_SIZE,38,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnNextPlay,javax.swing.GroupLayout.PREFERRED_SIZE,36,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnSkipForward,javax.swing.GroupLayout.PREFERRED_SIZE,39,javax.swing.GroupLayout.PREFERRED_SIZE)));
  gl_pnlReplay.setVerticalGroup(gl_pnlReplay.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(btnSkipForward,0,0,Short.MAX_VALUE).addComponent(btnNextPlay,0,0,Short.MAX_VALUE).addComponent(btnStopReplay,0,0,Short.MAX_VALUE).addComponent(btnPlay,0,0,Short.MAX_VALUE).addComponent(btnPreviousPlay,javax.swing.GroupLayout.PREFERRED_SIZE,31,Short.MAX_VALUE));
  javax.swing.GroupLayout gl_pnlGameInfo=new javax.swing.GroupLayout(pnlGameInfo);
  pnlGameInfo.setLayout(gl_pnlGameInfo);
  gl_pnlGameInfo.setHorizontalGroup(gl_pnlGameInfo.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(gl_pnlGameInfo.createSequentialGroup().addGap(10,10,10).addComponent(btnConcede).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnEndTurn).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnSwitchHands).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnStopWatching).addContainerGap(62,Short.MAX_VALUE)).addGroup(gl_pnlGameInfo.createSequentialGroup().addContainerGap().addComponent(pnlReplay,javax.swing.GroupLayout.PREFERRED_SIZE,javax.swing.GroupLayout.DEFAULT_SIZE,javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(51,Short.MAX_VALUE)));
  gl_pnlGameInfo.setVerticalGroup(gl_pnlGameInfo.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(gl_pnlGameInfo.createSequentialGroup().addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,164,Short.MAX_VALUE).addComponent(pnlReplay,javax.swing.GroupLayout.PREFERRED_SIZE,javax.swing.GroupLayout.DEFAULT_SIZE,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(gl_pnlGameInfo.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(btnConcede).addComponent(btnEndTurn).addComponent(btnSwitchHands).addComponent(btnStopWatching))));
  pnlBattlefield.setLayout(new java.awt.GridBagLayout());
  jPhases=new JPanel();
  jPhases.setBackground(new Color(0,0,0,0));
  jPhases.setLayout(null);
  jPhases.setPreferredSize(new Dimension(X_PHASE_WIDTH,450));
  String[] phases={"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str"};
  for (  String name : phases) {
    createPhaseButton(name);
  }
  int i=0;
  for (  String name : hoverButtons.keySet()) {
    HoverButton hoverButton=hoverButtons.get(name);
    hoverButton.setAlignmentX(LEFT_ALIGNMENT);
    hoverButton.setBounds(X_PHASE_WIDTH - 36,i * 36,36,36);
    jPhases.add(hoverButton);
    i++;
  }
  pnlReplay.setOpaque(false);
  HelperPanel helper=new HelperPanel();
  helper.setPreferredSize(new Dimension(100,90));
  feedbackPanel.setHelperPanel(helper);
  jSplitPane2.setOrientation(javax.swing.JSplitPane.VERTICAL_SPLIT);
  jSplitPane2.setResizeWeight(0.5);
  jSplitPane2.setLeftComponent(userChatPanel);
  jSplitPane2.setBottomComponent(gameChatPanel);
  phasesContainer=new JPanel();
  phasesContainer.setLayout(new RelativeLayout(RelativeLayout.Y_AXIS));
  phasesContainer.setBackground(new Color(0,0,0,0));
  Float ratio=new Float(1);
  JPanel empty1=new JPanel();
  empty1.setBackground(new Color(0,0,0,0));
  phasesContainer.add(empty1,ratio);
  phasesContainer.add(jPhases);
  JPanel empty2=new JPanel();
  empty2.setBackground(new Color(0,0,0,0));
  phasesContainer.add(empty2,ratio);
  javax.swing.GroupLayout gl_jPanel3=new javax.swing.GroupLayout(jPanel3);
  gl_jPanel3.setHorizontalGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addGroup(gl_jPanel3.createSequentialGroup().addGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addGroup(gl_jPanel3.createSequentialGroup().addGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addComponent(helper,GroupLayout.DEFAULT_SIZE,GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE).addComponent(handContainer,GroupLayout.DEFAULT_SIZE,GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE)).addComponent(stack,400,400,400)).addGap(0).addGroup(gl_jPanel3.createSequentialGroup().addComponent(pnlBattlefield,GroupLayout.DEFAULT_SIZE,200,Short.MAX_VALUE).addComponent(phasesContainer,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE)))));
  gl_jPanel3.setVerticalGroup(gl_jPanel3.createParallelGroup(Alignment.TRAILING).addGroup(gl_jPanel3.createSequentialGroup().addGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addComponent(pnlBattlefield,GroupLayout.DEFAULT_SIZE,200,Short.MAX_VALUE).addComponent(phasesContainer,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE)).addGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addGroup(gl_jPanel3.createSequentialGroup().addGap(85).addComponent(stack,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE)).addGroup(gl_jPanel3.createSequentialGroup().addComponent(helper,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE).addComponent(handContainer,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE)))));
  jPanel3.setLayout(gl_jPanel3);
  jSplitPane1.setLeftComponent(jPanel3);
  jSplitPane1.setRightComponent(jSplitPane2);
  GridBagLayout gbl=new GridBagLayout();
  jPanel2.setLayout(gbl);
  GridBagConstraints gbc=new GridBagConstraints();
  gbc.fill=GridBagConstraints.BOTH;
  gbc.gridx=0;
  gbc.gridy=0;
  gbc.gridwidth=1;
  gbc.gridheight=4;
  gbc.weightx=1.0;
  gbc.weighty=1.0;
  gbl.setConstraints(bigCard,gbc);
  jPanel2.add(bigCard);
  GridBagConstraints gbc2=new GridBagConstraints();
  gbc2.fill=GridBagConstraints.NONE;
  gbc2.gridx=0;
  gbc2.gridy=GridBagConstraints.RELATIVE;
  gbc2.gridwidth=1;
  gbc2.gridheight=1;
  gbc2.weightx=0.0;
  gbc2.weighty=0.0;
  gbl.setConstraints(pnlGameInfo,gbc2);
  jPanel2.add(pnlGameInfo);
  jPanel2.setOpaque(false);
  jSplitPane0.setLeftComponent(jSplitPane1);
  jSplitPane0.setRightComponent(jPanel2);
  javax.swing.GroupLayout layout=new javax.swing.GroupLayout(this);
  this.setLayout(layout);
  layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jSplitPane0,javax.swing.GroupLayout.DEFAULT_SIZE,1078,Short.MAX_VALUE));
  layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jSplitPane0,javax.swing.GroupLayout.DEFAULT_SIZE,798,Short.MAX_VALUE));
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") private void initComponents(){
  abilityPicker=new mage.client.components.ability.AbilityPicker();
  jSplitPane1=new javax.swing.JSplitPane();
  jSplitPane0=new javax.swing.JSplitPane();
  jPanel2=new javax.swing.JPanel();
  jPanel3=new javax.swing.JPanel();
  pnlGameInfo=new javax.swing.JPanel();
  lblPhase=new javax.swing.JLabel();
  txtPhase=new javax.swing.JLabel();
  lblStep=new javax.swing.JLabel();
  txtStep=new javax.swing.JLabel();
  lblTurn=new javax.swing.JLabel();
  txtTurn=new javax.swing.JLabel();
  txtActivePlayer=new javax.swing.JLabel();
  lblActivePlayer=new javax.swing.JLabel();
  txtPriority=new javax.swing.JLabel();
  lblPriority=new javax.swing.JLabel();
  feedbackPanel=new mage.client.game.FeedbackPanel();
  btnConcede=new javax.swing.JButton();
  btnEndTurn=new javax.swing.JButton();
  btnSwitchHands=new javax.swing.JButton();
  btnStopWatching=new javax.swing.JButton();
  bigCard=new mage.client.cards.BigCard();
  stack=new mage.client.cards.Cards();
  pnlReplay=new javax.swing.JPanel();
  btnStopReplay=new javax.swing.JButton();
  btnNextPlay=new javax.swing.JButton();
  btnPlay=new javax.swing.JButton();
  btnSkipForward=new javax.swing.JButton();
  btnPreviousPlay=new javax.swing.JButton();
  pnlBattlefield=new javax.swing.JPanel();
  gameChatPanel=new mage.client.chat.ChatPanel();
  gameChatPanel.useExtendedView(ChatPanel.VIEW_MODE.GAME);
  userChatPanel=new mage.client.chat.ChatPanel();
  userChatPanel.setParentChat(gameChatPanel);
  userChatPanel.useExtendedView(ChatPanel.VIEW_MODE.CHAT);
  userChatPanel.setChatType(ChatPanel.ChatType.GAME);
  gameChatPanel.setConnectedChat(userChatPanel);
  gameChatPanel.disableInput();
  gameChatPanel.setMinimumSize(new java.awt.Dimension(100,48));
  jSplitPane2=new javax.swing.JSplitPane();
  handContainer=new HandPanel();
  handCards=new HashMap<>();
  jSplitPane1.setBorder(null);
  jSplitPane1.setDividerSize(7);
  jSplitPane1.setResizeWeight(1.0);
  jSplitPane1.setOneTouchExpandable(true);
  jSplitPane1.setMinimumSize(new java.awt.Dimension(26,48));
  jSplitPane0.setBorder(null);
  jSplitPane0.setDividerSize(7);
  jSplitPane0.setResizeWeight(1.0);
  jSplitPane0.setOneTouchExpandable(true);
  restoreDividerLocations();
  pnlGameInfo.setOpaque(false);
  lblPhase.setLabelFor(txtPhase);
  lblPhase.setText("String_Node_Str");
  txtPhase.setText("String_Node_Str");
  txtPhase.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtPhase.setMinimumSize(new java.awt.Dimension(0,16));
  lblStep.setLabelFor(txtStep);
  lblStep.setText("String_Node_Str");
  txtStep.setText("String_Node_Str");
  txtStep.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtStep.setMinimumSize(new java.awt.Dimension(0,16));
  lblTurn.setLabelFor(txtTurn);
  lblTurn.setText("String_Node_Str");
  txtTurn.setText("String_Node_Str");
  txtTurn.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtTurn.setMinimumSize(new java.awt.Dimension(0,16));
  txtActivePlayer.setText("String_Node_Str");
  txtActivePlayer.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtActivePlayer.setMinimumSize(new java.awt.Dimension(0,16));
  lblActivePlayer.setLabelFor(txtActivePlayer);
  lblActivePlayer.setText("String_Node_Str");
  txtPriority.setText("String_Node_Str");
  txtPriority.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(153,153,153),1,true));
  txtPriority.setMinimumSize(new java.awt.Dimension(0,16));
  lblPriority.setLabelFor(txtPriority);
  lblPriority.setText("String_Node_Str");
  feedbackPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0,0,0)));
  feedbackPanel.setMaximumSize(new java.awt.Dimension(208,121));
  feedbackPanel.setMinimumSize(new java.awt.Dimension(208,121));
  bigCard.setBorder(new LineBorder(Color.black,1,true));
  btnConcede.setText("String_Node_Str");
  btnConcede.setToolTipText("String_Node_Str");
  btnConcede.setFocusable(false);
  btnConcede.addMouseListener(new MouseAdapter(){
    @Override public void mouseClicked(    MouseEvent evt){
      btnConcedeActionPerformed(null);
    }
  }
);
  btnEndTurn.setText("String_Node_Str");
  btnEndTurn.setToolTipText("String_Node_Str");
  btnEndTurn.setFocusable(false);
  btnEndTurn.addMouseListener(new MouseAdapter(){
    @Override public void mouseClicked(    MouseEvent evt){
      btnEndTurnActionPerformed(null);
    }
  }
);
  int c=JComponent.WHEN_IN_FOCUSED_WINDOW;
  KeyStroke ks=KeyStroke.getKeyStroke(KeyEvent.VK_F4,0);
  this.getInputMap(c).put(ks,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      btnEndTurnActionPerformed(null);
    }
  }
);
  KeyStroke ks9=KeyStroke.getKeyStroke(KeyEvent.VK_F9,0);
  this.getInputMap(c).put(ks9,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      btnPassPriorityUntilNextYourTurnActionPerformed(actionEvent);
    }
  }
);
  KeyStroke ks2=KeyStroke.getKeyStroke(KeyEvent.VK_F2,0);
  this.getInputMap(c).put(ks2,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      if (feedbackPanel != null) {
        feedbackPanel.pressOKYesOrDone();
      }
    }
  }
);
  KeyStroke ks3=KeyStroke.getKeyStroke(KeyEvent.VK_F3,0);
  this.getInputMap(c).put(ks3,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      restorePriorityActionPerformed(actionEvent);
    }
  }
);
  KeyStroke ksAltE=KeyStroke.getKeyStroke(KeyEvent.VK_E,InputEvent.ALT_MASK);
  this.getInputMap(c).put(ksAltE,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      ActionCallback callback=Plugins.getInstance().getActionCallback();
      ((MageActionCallback)callback).enlargeCard();
    }
  }
);
  KeyStroke ksAltD=KeyStroke.getKeyStroke(KeyEvent.VK_D,InputEvent.ALT_MASK);
  this.getInputMap(c).put(ksAltD,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      imagePanelState=!imagePanelState;
      if (!imagePanelState) {
        jSplitPane0.resetToPreferredSizes();
        jSplitPane0.setDividerLocation(jSplitPane0.getSize().width - jSplitPane0.getInsets().right - jSplitPane0.getDividerSize()- 260);
      }
 else {
        jSplitPane0.setDividerLocation(1.0);
      }
    }
  }
);
  final BasicSplitPaneUI myUi=(BasicSplitPaneUI)jSplitPane0.getUI();
  final BasicSplitPaneDivider divider=myUi.getDivider();
  final JButton upArrowButton=(JButton)divider.getComponent(0);
  upArrowButton.addActionListener(new ActionListener(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      PreferencesDialog.saveValue(PreferencesDialog.KEY_BIG_CARD_TOGGLED,"String_Node_Str");
    }
  }
);
  final JButton downArrowButton=(JButton)divider.getComponent(1);
  downArrowButton.addActionListener(new ActionListener(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      PreferencesDialog.saveValue(PreferencesDialog.KEY_BIG_CARD_TOGGLED,"String_Node_Str");
    }
  }
);
  KeyStroke ksAltShiftReleased=KeyStroke.getKeyStroke(KeyEvent.VK_E,InputEvent.ALT_MASK,true);
  this.getInputMap(c).put(ksAltShiftReleased,"String_Node_Str");
  this.getActionMap().put("String_Node_Str",new AbstractAction(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      ActionCallback callback=Plugins.getInstance().getActionCallback();
      ((MageActionCallback)callback).hideCard();
    }
  }
);
  btnSwitchHands.setText("String_Node_Str");
  btnSwitchHands.addMouseListener(new MouseAdapter(){
    @Override public void mouseClicked(    MouseEvent evt){
      btnSwitchHandActionPerformed(null);
    }
  }
);
  btnStopWatching.setText("String_Node_Str");
  btnStopWatching.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnStopWatchingActionPerformed(evt);
    }
  }
);
  stack.setPreferredSize(new java.awt.Dimension(Config.dimensions.frameWidth,Config.dimensions.frameHeight + 25));
  stack.setBackgroundColor(new Color(0,0,0,0));
  btnStopReplay.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnStopReplay.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnStopReplayActionPerformed(evt);
    }
  }
);
  btnNextPlay.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnNextPlay.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnNextPlayActionPerformed(evt);
    }
  }
);
  btnPlay.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnPlay.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnPlayActionPerformed(evt);
    }
  }
);
  btnSkipForward.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnSkipForward.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnSkipForwardActionPerformed(evt);
    }
  }
);
  btnPreviousPlay.setIcon(new javax.swing.ImageIcon(getClass().getResource("String_Node_Str")));
  btnPreviousPlay.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    java.awt.event.ActionEvent evt){
      btnPreviousPlayActionPerformed(evt);
    }
  }
);
  javax.swing.GroupLayout gl_pnlReplay=new javax.swing.GroupLayout(pnlReplay);
  pnlReplay.setLayout(gl_pnlReplay);
  gl_pnlReplay.setHorizontalGroup(gl_pnlReplay.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(gl_pnlReplay.createSequentialGroup().addComponent(btnPreviousPlay,javax.swing.GroupLayout.PREFERRED_SIZE,41,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnPlay,javax.swing.GroupLayout.PREFERRED_SIZE,35,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,javax.swing.GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE).addComponent(btnStopReplay,javax.swing.GroupLayout.PREFERRED_SIZE,38,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnNextPlay,javax.swing.GroupLayout.PREFERRED_SIZE,36,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnSkipForward,javax.swing.GroupLayout.PREFERRED_SIZE,39,javax.swing.GroupLayout.PREFERRED_SIZE)));
  gl_pnlReplay.setVerticalGroup(gl_pnlReplay.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(btnSkipForward,0,0,Short.MAX_VALUE).addComponent(btnNextPlay,0,0,Short.MAX_VALUE).addComponent(btnStopReplay,0,0,Short.MAX_VALUE).addComponent(btnPlay,0,0,Short.MAX_VALUE).addComponent(btnPreviousPlay,javax.swing.GroupLayout.PREFERRED_SIZE,31,Short.MAX_VALUE));
  javax.swing.GroupLayout gl_pnlGameInfo=new javax.swing.GroupLayout(pnlGameInfo);
  pnlGameInfo.setLayout(gl_pnlGameInfo);
  gl_pnlGameInfo.setHorizontalGroup(gl_pnlGameInfo.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(gl_pnlGameInfo.createSequentialGroup().addGap(10,10,10).addComponent(btnConcede).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnEndTurn).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnSwitchHands).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnStopWatching).addContainerGap(62,Short.MAX_VALUE)).addGroup(gl_pnlGameInfo.createSequentialGroup().addContainerGap().addComponent(pnlReplay,javax.swing.GroupLayout.PREFERRED_SIZE,javax.swing.GroupLayout.DEFAULT_SIZE,javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(51,Short.MAX_VALUE)));
  gl_pnlGameInfo.setVerticalGroup(gl_pnlGameInfo.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(gl_pnlGameInfo.createSequentialGroup().addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,164,Short.MAX_VALUE).addComponent(pnlReplay,javax.swing.GroupLayout.PREFERRED_SIZE,javax.swing.GroupLayout.DEFAULT_SIZE,javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(gl_pnlGameInfo.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(btnConcede).addComponent(btnEndTurn).addComponent(btnSwitchHands).addComponent(btnStopWatching))));
  pnlBattlefield.setLayout(new java.awt.GridBagLayout());
  jPhases=new JPanel();
  jPhases.setBackground(new Color(0,0,0,0));
  jPhases.setLayout(null);
  jPhases.setPreferredSize(new Dimension(X_PHASE_WIDTH,450));
  String[] phases={"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str"};
  for (  String name : phases) {
    createPhaseButton(name);
  }
  int i=0;
  for (  String name : hoverButtons.keySet()) {
    HoverButton hoverButton=hoverButtons.get(name);
    hoverButton.setAlignmentX(LEFT_ALIGNMENT);
    hoverButton.setBounds(X_PHASE_WIDTH - 36,i * 36,36,36);
    jPhases.add(hoverButton);
    i++;
  }
  pnlReplay.setOpaque(false);
  HelperPanel helper=new HelperPanel();
  helper.setPreferredSize(new Dimension(100,90));
  feedbackPanel.setHelperPanel(helper);
  jSplitPane2.setOrientation(javax.swing.JSplitPane.VERTICAL_SPLIT);
  jSplitPane2.setResizeWeight(0.5);
  jSplitPane2.setLeftComponent(userChatPanel);
  jSplitPane2.setBottomComponent(gameChatPanel);
  phasesContainer=new JPanel();
  phasesContainer.setLayout(new RelativeLayout(RelativeLayout.Y_AXIS));
  phasesContainer.setBackground(new Color(0,0,0,0));
  Float ratio=new Float(1);
  JPanel empty1=new JPanel();
  empty1.setBackground(new Color(0,0,0,0));
  phasesContainer.add(empty1,ratio);
  phasesContainer.add(jPhases);
  JPanel empty2=new JPanel();
  empty2.setBackground(new Color(0,0,0,0));
  phasesContainer.add(empty2,ratio);
  javax.swing.GroupLayout gl_jPanel3=new javax.swing.GroupLayout(jPanel3);
  gl_jPanel3.setHorizontalGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addGroup(gl_jPanel3.createSequentialGroup().addGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addGroup(gl_jPanel3.createSequentialGroup().addGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addComponent(helper,GroupLayout.DEFAULT_SIZE,GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE).addComponent(handContainer,GroupLayout.DEFAULT_SIZE,GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE)).addComponent(stack,400,400,400)).addGap(0).addGroup(gl_jPanel3.createSequentialGroup().addComponent(pnlBattlefield,GroupLayout.DEFAULT_SIZE,200,Short.MAX_VALUE).addComponent(phasesContainer,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE)))));
  gl_jPanel3.setVerticalGroup(gl_jPanel3.createParallelGroup(Alignment.TRAILING).addGroup(gl_jPanel3.createSequentialGroup().addGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addComponent(pnlBattlefield,GroupLayout.DEFAULT_SIZE,200,Short.MAX_VALUE).addComponent(phasesContainer,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE)).addGroup(gl_jPanel3.createParallelGroup(Alignment.LEADING).addGroup(gl_jPanel3.createSequentialGroup().addGap(85).addComponent(stack,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE)).addGroup(gl_jPanel3.createSequentialGroup().addComponent(helper,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE).addComponent(handContainer,GroupLayout.PREFERRED_SIZE,GroupLayout.DEFAULT_SIZE,GroupLayout.PREFERRED_SIZE)))));
  jPanel3.setLayout(gl_jPanel3);
  jSplitPane1.setLeftComponent(jPanel3);
  jSplitPane1.setRightComponent(jSplitPane2);
  GridBagLayout gbl=new GridBagLayout();
  jPanel2.setLayout(gbl);
  GridBagConstraints gbc=new GridBagConstraints();
  gbc.fill=GridBagConstraints.BOTH;
  gbc.gridx=0;
  gbc.gridy=0;
  gbc.gridwidth=1;
  gbc.gridheight=4;
  gbc.weightx=1.0;
  gbc.weighty=1.0;
  gbl.setConstraints(bigCard,gbc);
  jPanel2.add(bigCard);
  GridBagConstraints gbc2=new GridBagConstraints();
  gbc2.fill=GridBagConstraints.NONE;
  gbc2.gridx=0;
  gbc2.gridy=GridBagConstraints.RELATIVE;
  gbc2.gridwidth=1;
  gbc2.gridheight=1;
  gbc2.weightx=0.0;
  gbc2.weighty=0.0;
  gbl.setConstraints(pnlGameInfo,gbc2);
  jPanel2.add(pnlGameInfo);
  jPanel2.setOpaque(false);
  jSplitPane0.setLeftComponent(jSplitPane1);
  jSplitPane0.setRightComponent(jPanel2);
  javax.swing.GroupLayout layout=new javax.swing.GroupLayout(this);
  this.setLayout(layout);
  layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jSplitPane0,javax.swing.GroupLayout.DEFAULT_SIZE,1078,Short.MAX_VALUE));
  layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jSplitPane0,javax.swing.GroupLayout.DEFAULT_SIZE,798,Short.MAX_VALUE));
}