Program: 39121
Project: 39121
Buggy source:
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException {
  Parameters.initializeParameterCollections(new String[]{"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str"});
  TWEANNGenotype tg=new TWEANNGenotype(PicbreederTask.CPPN_NUM_INPUTS,PicbreederTask.CPPN_NUM_OUTPUTS,0);
  DocumentBuilderFactory dbFactory=DocumentBuilderFactory.newInstance();
  DocumentBuilder dBuilder=dbFactory.newDocumentBuilder();
  Document doc=dBuilder.parse(inputFile);
  doc.getDocumentElement().normalize();
  int inputs=0;
  NodeList nList=doc.getElementsByTagName("String_Node_Str");
  for (int temp=0; temp < nList.getLength(); temp++) {
    Node nNode=nList.item(temp);
    String type=nNode.getAttributes().getNamedItem("String_Node_Str").getNodeValue();
    NodeList subList=nNode.getChildNodes();
    long innovation=Long.parseLong(subList.item(1).getAttributes().getNamedItem("String_Node_Str").getNodeValue());
    String activation=subList.item(3).getFirstChild().getNodeValue();
    if (type.equals("String_Node_Str")) {
      NodeGene n=tg.nodes.get(inputs++);
      n.innovation=innovation;
      n.ftype=getFType(activation);
    }
 else     if (type.equals("String_Node_Str")) {
      NodeGene newGene=TWEANNGenotype.newNodeGene(getFType(activation),TWEANN.Node.NTYPE_HIDDEN,innovation);
      tg.nodes.add(tg.outputStartIndex(),newGene);
    }
 else     if (type.equals("String_Node_Str")) {
      String label=nNode.getAttributes().getNamedItem("String_Node_Str").getNodeValue();
      NodeGene n;
      if (label.equals("String_Node_Str") || label.equals("String_Node_Str")) {
        n=tg.nodes.get(tg.nodes.size() - 1);
      }
 else       if (label.equals("String_Node_Str")) {
        n=tg.nodes.get(tg.nodes.size() - 2);
      }
 else {
        n=tg.nodes.get(tg.nodes.size() - 3);
      }
      n.innovation=innovation;
      n.ftype=getFType(activation);
    }
  }
  tg.links.clear();
  NodeList linkList=doc.getElementsByTagName("String_Node_Str");
  for (int temp=0; temp < linkList.getLength(); temp++) {
    Node linkNode=linkList.item(temp);
    NodeList subList=linkNode.getChildNodes();
    long innovation=Long.parseLong(subList.item(1).getAttributes().getNamedItem("String_Node_Str").getNodeValue());
    long sourceInnovation=Long.parseLong(subList.item(3).getAttributes().getNamedItem("String_Node_Str").getNodeValue());
    long targetInnovation=Long.parseLong(subList.item(5).getAttributes().getNamedItem("String_Node_Str").getNodeValue());
    double weight=Double.parseDouble(subList.item(7).getFirstChild().getNodeValue());
    LinkGene lg=TWEANNGenotype.newLinkGene(sourceInnovation,targetInnovation,weight,innovation,false);
    tg.links.add(lg);
  }
  System.out.println("String_Node_Str");
  System.out.println(tg.toString());
  TWEANNGenotype.sortNodeGenesByLinkConnectivity(tg);
  System.out.println("String_Node_Str");
  System.out.println(tg.toString());
  DrawingPanel panel=new DrawingPanel(800,800,"String_Node_Str");
  TWEANN network=tg.getPhenotype();
  network.draw(panel,true,false);
  BufferedImage image=GraphicsUtil.imageFromCPPN(network,SIZE,SIZE);
  DrawingPanel picture=GraphicsUtil.drawImage(image,"String_Node_Str",SIZE,SIZE);
  MiscUtil.waitForReadStringAndEnterKeyPress();
  picture.dispose();
}

Fixed version (ground truth):
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException {
  Parameters.initializeParameterCollections(new String[]{"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str"});
  TWEANNGenotype tg=new TWEANNGenotype(PicbreederTask.CPPN_NUM_INPUTS,PicbreederTask.CPPN_NUM_OUTPUTS,0);
  File inputFile=new File("String_Node_Str");
  DocumentBuilderFactory dbFactory=DocumentBuilderFactory.newInstance();
  DocumentBuilder dBuilder=dbFactory.newDocumentBuilder();
  Document doc=dBuilder.parse(inputFile);
  doc.getDocumentElement().normalize();
  int inputs=0;
  NodeList nList=doc.getElementsByTagName("String_Node_Str");
  for (int temp=0; temp < nList.getLength(); temp++) {
    Node nNode=nList.item(temp);
    String type=nNode.getAttributes().getNamedItem("String_Node_Str").getNodeValue();
    NodeList subList=nNode.getChildNodes();
    long innovation=Long.parseLong(subList.item(1).getAttributes().getNamedItem("String_Node_Str").getNodeValue());
    String activation=subList.item(3).getFirstChild().getNodeValue();
    if (type.equals("String_Node_Str")) {
      NodeGene n=tg.nodes.get(inputs++);
      n.innovation=innovation;
      n.ftype=getFType(activation);
    }
 else     if (type.equals("String_Node_Str")) {
      NodeGene newGene=TWEANNGenotype.newNodeGene(getFType(activation),TWEANN.Node.NTYPE_HIDDEN,innovation);
      tg.nodes.add(tg.outputStartIndex(),newGene);
    }
 else     if (type.equals("String_Node_Str")) {
      String label=nNode.getAttributes().getNamedItem("String_Node_Str").getNodeValue();
      NodeGene n;
      if (label.equals("String_Node_Str") || label.equals("String_Node_Str")) {
        n=tg.nodes.get(tg.nodes.size() - 1);
      }
 else       if (label.equals("String_Node_Str")) {
        n=tg.nodes.get(tg.nodes.size() - 2);
      }
 else {
        n=tg.nodes.get(tg.nodes.size() - 3);
      }
      n.innovation=innovation;
      n.ftype=getFType(activation);
    }
  }
  tg.links.clear();
  NodeList linkList=doc.getElementsByTagName("String_Node_Str");
  for (int temp=0; temp < linkList.getLength(); temp++) {
    Node linkNode=linkList.item(temp);
    NodeList subList=linkNode.getChildNodes();
    long innovation=Long.parseLong(subList.item(1).getAttributes().getNamedItem("String_Node_Str").getNodeValue());
    long sourceInnovation=Long.parseLong(subList.item(3).getAttributes().getNamedItem("String_Node_Str").getNodeValue());
    long targetInnovation=Long.parseLong(subList.item(5).getAttributes().getNamedItem("String_Node_Str").getNodeValue());
    double weight=Double.parseDouble(subList.item(7).getFirstChild().getNodeValue());
    LinkGene lg=TWEANNGenotype.newLinkGene(sourceInnovation,targetInnovation,weight,innovation,false);
    tg.links.add(lg);
  }
  System.out.println("String_Node_Str");
  System.out.println(tg.toString());
  TWEANNGenotype.sortNodeGenesByLinkConnectivity(tg);
  System.out.println("String_Node_Str");
  System.out.println(tg.toString());
  DrawingPanel panel=new DrawingPanel(800,800,"String_Node_Str");
  TWEANN network=tg.getPhenotype();
  network.draw(panel,true,false);
  BufferedImage image=GraphicsUtil.imageFromCPPN(network,SIZE,SIZE);
  DrawingPanel picture=GraphicsUtil.drawImage(image,"String_Node_Str",SIZE,SIZE);
  MiscUtil.waitForReadStringAndEnterKeyPress();
  picture.dispose();
}