Program: 175840
Project: 175840
Buggy source:
public JComponent buildUI(){
  JPanel out=new JPanel(new BorderLayout());
  JMenuBar menuBar=new JMenuBar();
  frame.setJMenuBar(menuBar);
  JMenu menu=new JMenu("String_Node_Str");
  menuBar.add(menu);
  JMenuItem save=new JMenuItem("String_Node_Str",KeyEvent.VK_S);
  save.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,ActionEvent.CTRL_MASK));
  menu.add(save);
  save.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      if (TweedSettings.folder == null) {
        new SimpleFileChooser(frame){
          @Override public void heresTheFile(          File f) throws Throwable {
            TweedSettings.folder=f;
            TweedSettings.save(false);
          }
        }
;
      }
 else       TweedSettings.save(false);
    }
  }
);
  JMenuItem load=new JMenuItem("String_Node_Str",KeyEvent.VK_O);
  load.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,ActionEvent.CTRL_MASK));
  menu.add(load);
  load.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      new SimpleFileChooser(frame,false,"String_Node_Str",Tweed.DATA == null ? null : new File(Tweed.DATA),TWEED_XML){
        @Override public void heresTheFile(        File f) throws Throwable {
          TweedSettings.load(f);
        }
      }
;
    }
  }
);
  JMenuItem recent=new JLazyMenu("String_Node_Str"){
    @Override public List<Runnable> getEntries(){
      List<Runnable> out=new ArrayList();
      for (      File r : TweedSettings.recentFiles.f) {
        out.add(new Runnable(){
          @Override public void run(){
            if (!r.exists())             JOptionPane.showMessageDialog(frame,"String_Node_Str" + r.getName() + "String_Node_Str");
 else             TweedSettings.load(r);
          }
          @Override public String toString(){
            return r.getName();
          }
        }
);
      }
      return out;
    }
  }
;
  menu.add(recent);
  JMenuItem neu=new JMenuItem("String_Node_Str",KeyEvent.VK_N);
  neu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,ActionEvent.CTRL_MASK));
  menu.add(neu);
  neu.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      new SimpleFileChooser(frame,false,"String_Node_Str"){
        @Override public void heresTheFile(        File f) throws Throwable {
          TweedSettings.folder=f.getParentFile();
          if (new File(TweedSettings.folder,TWEED_XML).exists()) {
            JOptionPane.showMessageDialog(frame,TWEED_XML + "String_Node_Str");
            return;
          }
          TweedSettings.load(TweedSettings.folder);
        }
      }
;
    }
  }
);
  JMenuItem resetCam=new JMenuItem("String_Node_Str",KeyEvent.VK_R);
  resetCam.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_R,ActionEvent.CTRL_MASK));
  menu.add(resetCam);
  resetCam.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      tweed.resetCamera();
    }
  }
);
  JMenuItem settings=new JMenuItem("String_Node_Str",KeyEvent.VK_R);
  settings.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,ActionEvent.CTRL_MASK));
  menu.add(settings);
  settings.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      new Auto(TweedSettings.settings).frame();
    }
  }
);
  JMenuItem resetBG=new JMenuItem("String_Node_Str",KeyEvent.VK_MINUS);
  resetBG.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_MINUS,ActionEvent.CTRL_MASK));
  menu.add(resetBG);
  resetBG.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      tweed.enqueue(new Runnable(){
        @Override public void run(){
          TweedFrame.this.tweed.clearBackground();
        }
      }
);
    }
  }
);
  JMenuItem obj=new JMenuItem("String_Node_Str",KeyEvent.VK_E);
  obj.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,ActionEvent.CTRL_MASK));
  menu.add(obj);
  obj.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      ObjDump dump=new ObjDump();
      for (      Gen g : genList)       if (g.visible && g instanceof IDumpObjs)       ((IDumpObjs)g).dumpObj(dump);
      new SimpleFileChooser(frame,true,"String_Node_Str",new File(Tweed.SCRATCH,"String_Node_Str"),"String_Node_Str"){
        @Override public void heresTheFile(        File f) throws Throwable {
          dump.dump(f,new File(Tweed.DATA));
        }
      }
;
    }
  }
);
  layerList=new JPanel(new ListDownLayout());
  JPanel layers=new JPanel();
  layers.setLayout(new BorderLayout());
  layers.add(new JLabel("String_Node_Str"),BorderLayout.NORTH);
  JScrollPane listScroll=new JScrollPane(layerList);
  listScroll.getVerticalScrollBar().setUnitIncrement(50);
  listScroll.setPreferredSize(new Dimension(200,300));
  layers.add(listScroll,BorderLayout.CENTER);
  JPanel addRemoveLayer=new JPanel();
{
    addRemoveLayer.setLayout(new GridLayout(1,2));
    layers.add(addRemoveLayer,BorderLayout.SOUTH);
    JButton addLayer=new JButton("String_Node_Str");
    addLayer.addMouseListener(new MouseAdapter(){
      @Override public void mousePressed(      MouseEvent e){
        addLayer(e);
      }
    }
);
    JButton removeLayer=new JButton("String_Node_Str");
    removeLayer.addActionListener(e -> removeGen(selectedGen));
    addRemoveLayer.add(addLayer);
    addRemoveLayer.add(removeLayer);
  }
  JPanel options=new JPanel(new BorderLayout());
{
    options.add(new JLabel("String_Node_Str"),BorderLayout.NORTH);
    options.add(genUI,BorderLayout.CENTER);
  }
  JSplitPane pane=new JSplitPane(JSplitPane.VERTICAL_SPLIT,layers,options);
  out.add(pane,BorderLayout.CENTER);
  JPanel toolPanel=new JPanel(new ListRightLayout());
  tweed.addUI(toolPanel);
  coordLabel=new JLabel("String_Node_Str");
  coordLabel.setHorizontalAlignment(SwingConstants.CENTER);
  worldLabel=new JLabel("String_Node_Str");
  worldLabel.setHorizontalAlignment(SwingConstants.CENTER);
  crsLabel=new JLabel("String_Node_Str");
  crsLabel.setHorizontalAlignment(SwingConstants.CENTER);
  out.add(toolPanel,BorderLayout.NORTH);
  JPanel coords=new JPanel(new ListDownLayout());
  coords.add(worldLabel);
  coords.add(coordLabel);
  coords.add(crsLabel);
  out.add(coords,BorderLayout.SOUTH);
  out.setPreferredSize(new Dimension(300,frame.getHeight()));
  return out;
}

Fixed version (ground truth):
public JComponent buildUI(){
  JPanel out=new JPanel(new BorderLayout());
  JMenuBar menuBar=new JMenuBar();
  frame.setJMenuBar(menuBar);
  JMenu menu=new JMenu("String_Node_Str");
  menuBar.add(menu);
  JMenuItem save=new JMenuItem("String_Node_Str",KeyEvent.VK_S);
  save.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,ActionEvent.CTRL_MASK));
  menu.add(save);
  save.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      if (TweedSettings.folder == null) {
        new SimpleFileChooser(frame){
          @Override public void heresTheFile(          File f) throws Throwable {
            TweedSettings.folder=f;
            TweedSettings.save(false);
          }
        }
;
      }
 else       TweedSettings.save(false);
    }
  }
);
  JMenuItem load=new JMenuItem("String_Node_Str",KeyEvent.VK_O);
  load.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,ActionEvent.CTRL_MASK));
  menu.add(load);
  load.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      new SimpleFileChooser(frame,false,"String_Node_Str",Tweed.DATA == null ? null : new File(Tweed.DATA),TWEED_XML){
        @Override public void heresTheFile(        File f) throws Throwable {
          TweedSettings.load(f);
        }
      }
;
    }
  }
);
  JMenuItem recent=new JLazyMenu("String_Node_Str"){
    @Override public List<Runnable> getEntries(){
      List<Runnable> out=new ArrayList();
      for (      File r : TweedSettings.recentFiles.f) {
        out.add(new Runnable(){
          @Override public void run(){
            if (!r.exists())             JOptionPane.showMessageDialog(frame,"String_Node_Str" + r.getName() + "String_Node_Str");
 else             TweedSettings.load(r);
          }
          @Override public String toString(){
            return r.getName();
          }
        }
);
      }
      return out;
    }
  }
;
  menu.add(recent);
  JMenuItem neu=new JMenuItem("String_Node_Str",KeyEvent.VK_N);
  neu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,ActionEvent.CTRL_MASK));
  menu.add(neu);
  neu.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      new SimpleFileChooser(frame,false,"String_Node_Str"){
        @Override public void heresTheFile(        File f) throws Throwable {
          TweedSettings.folder=f.getParentFile();
          if (new File(TweedSettings.folder,TWEED_XML).exists()) {
            JOptionPane.showMessageDialog(frame,TWEED_XML + "String_Node_Str");
            return;
          }
          TweedSettings.load(TweedSettings.folder);
        }
      }
;
    }
  }
);
  JMenuItem resetCam=new JMenuItem("String_Node_Str",KeyEvent.VK_R);
  resetCam.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_R,ActionEvent.CTRL_MASK));
  menu.add(resetCam);
  resetCam.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      tweed.resetCamera();
    }
  }
);
  JMenuItem settings=new JMenuItem("String_Node_Str",KeyEvent.VK_R);
  settings.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,ActionEvent.CTRL_MASK));
  menu.add(settings);
  settings.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      new Auto(TweedSettings.settings).frame();
    }
  }
);
  JMenuItem resetBG=new JMenuItem("String_Node_Str",KeyEvent.VK_MINUS);
  resetBG.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_MINUS,ActionEvent.CTRL_MASK));
  menu.add(resetBG);
  resetBG.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      tweed.enqueue(new Runnable(){
        @Override public void run(){
          TweedFrame.this.tweed.clearBackground();
        }
      }
);
    }
  }
);
  JMenuItem obj=new JMenuItem("String_Node_Str",KeyEvent.VK_E);
  obj.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,ActionEvent.CTRL_MASK));
  menu.add(obj);
  obj.addActionListener(new java.awt.event.ActionListener(){
    @Override public void actionPerformed(    ActionEvent e){
      new SimpleFileChooser(frame,true,"String_Node_Str",new File(Tweed.SCRATCH,"String_Node_Str"),"String_Node_Str"){
        @Override public void heresTheFile(        File f) throws Throwable {
          ObjDump dump=new ObjDump();
          for (          Gen g : genList)           if (g.visible && g instanceof IDumpObjs)           ((IDumpObjs)g).dumpObj(dump);
          dump.dump(f,new File(Tweed.DATA));
        }
      }
;
    }
  }
);
  layerList=new JPanel(new ListDownLayout());
  JPanel layers=new JPanel();
  layers.setLayout(new BorderLayout());
  layers.add(new JLabel("String_Node_Str"),BorderLayout.NORTH);
  JScrollPane listScroll=new JScrollPane(layerList);
  listScroll.getVerticalScrollBar().setUnitIncrement(50);
  listScroll.setPreferredSize(new Dimension(200,300));
  layers.add(listScroll,BorderLayout.CENTER);
  JPanel addRemoveLayer=new JPanel();
{
    addRemoveLayer.setLayout(new GridLayout(1,2));
    layers.add(addRemoveLayer,BorderLayout.SOUTH);
    JButton addLayer=new JButton("String_Node_Str");
    addLayer.addMouseListener(new MouseAdapter(){
      @Override public void mousePressed(      MouseEvent e){
        addLayer(e);
      }
    }
);
    JButton removeLayer=new JButton("String_Node_Str");
    removeLayer.addActionListener(e -> removeGen(selectedGen));
    addRemoveLayer.add(addLayer);
    addRemoveLayer.add(removeLayer);
  }
  JPanel options=new JPanel(new BorderLayout());
{
    options.add(new JLabel("String_Node_Str"),BorderLayout.NORTH);
    options.add(genUI,BorderLayout.CENTER);
  }
  JSplitPane pane=new JSplitPane(JSplitPane.VERTICAL_SPLIT,layers,options);
  out.add(pane,BorderLayout.CENTER);
  JPanel toolPanel=new JPanel(new ListRightLayout());
  tweed.addUI(toolPanel);
  coordLabel=new JLabel("String_Node_Str");
  coordLabel.setHorizontalAlignment(SwingConstants.CENTER);
  worldLabel=new JLabel("String_Node_Str");
  worldLabel.setHorizontalAlignment(SwingConstants.CENTER);
  crsLabel=new JLabel("String_Node_Str");
  crsLabel.setHorizontalAlignment(SwingConstants.CENTER);
  out.add(toolPanel,BorderLayout.NORTH);
  JPanel coords=new JPanel(new ListDownLayout());
  coords.add(worldLabel);
  coords.add(coordLabel);
  coords.add(crsLabel);
  out.add(coords,BorderLayout.SOUTH);
  out.setPreferredSize(new Dimension(300,frame.getHeight()));
  return out;
}