Program: 63738
Project: 63738
Buggy source:
private void drawAnalyticsPage2(IBee bee,EnumBeeType type){
  startPage(COLUMN_0,COLUMN_1,COLUMN_2);
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_1);
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_2);
  newLine();
  newLine();
  drawRow(StringUtil.localize("String_Node_Str"),AlleleManager.climateHelper.toDisplay(bee.getGenome().getPrimary().getTemperature()),AlleleManager.climateHelper.toDisplay(bee.getGenome().getSecondary().getTemperature()),bee,EnumBeeChromosome.SPECIES);
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_0);
  drawToleranceInfo(bee.getGenome().getToleranceTemp(),COLUMN_1,getColorCoding(bee.getGenome().getActiveAllele(EnumBeeChromosome.TEMPERATURE_TOLERANCE.ordinal()).isDominant()));
  drawToleranceInfo(((AlleleTolerance)bee.getGenome().getInactiveAllele(EnumBeeChromosome.TEMPERATURE_TOLERANCE.ordinal())).getValue(),COLUMN_2,getColorCoding(bee.getGenome().getInactiveAllele(EnumBeeChromosome.TEMPERATURE_TOLERANCE.ordinal()).isDominant()));
  newLine();
  drawRow(StringUtil.localize("String_Node_Str"),AlleleManager.climateHelper.toDisplay(bee.getGenome().getPrimary().getHumidity()),AlleleManager.climateHelper.toDisplay(bee.getGenome().getSecondary().getHumidity()),bee,EnumBeeChromosome.SPECIES);
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_0);
  drawToleranceInfo(bee.getGenome().getToleranceHumid(),COLUMN_1,getColorCoding(bee.getGenome().getActiveAllele(EnumBeeChromosome.HUMIDITY_TOLERANCE.ordinal()).isDominant()));
  drawToleranceInfo(((AlleleTolerance)bee.getGenome().getInactiveAllele(EnumBeeChromosome.HUMIDITY_TOLERANCE.ordinal())).getValue(),COLUMN_2,getColorCoding(bee.getGenome().getInactiveAllele(EnumBeeChromosome.HUMIDITY_TOLERANCE.ordinal()).isDominant()));
  newLine();
  newLine();
  String yes=StringUtil.localize("String_Node_Str");
  String no=StringUtil.localize("String_Node_Str");
  String diurnal0, diurnal1, nocturnal0, nocturnal1;
  if (bee.getGenome().getNocturnal()) {
    nocturnal0=diurnal0=yes;
  }
 else {
    nocturnal0=bee.getGenome().getPrimary().isNocturnal() ? yes : no;
    diurnal0=!bee.getGenome().getPrimary().isNocturnal() ? yes : no;
  }
  if (((AlleleBoolean)bee.getGenome().getInactiveAllele(EnumBeeChromosome.NOCTURNAL.ordinal())).getValue()) {
    nocturnal1=diurnal1=yes;
  }
 else {
    nocturnal1=bee.getGenome().getSecondary().isNocturnal() ? yes : no;
    diurnal1=!bee.getGenome().getSecondary().isNocturnal() ? yes : no;
  }
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_0);
  drawLine(diurnal0,COLUMN_1,getColorCoding(false));
  drawLine(diurnal1,COLUMN_2,getColorCoding(false));
  newLine();
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_0);
  drawLine(nocturnal0,COLUMN_1,getColorCoding(false));
  drawLine(nocturnal1,COLUMN_2,getColorCoding(false));
  newLine();
  String primary=StringUtil.readableBoolean(bee.getGenome().getTolerantFlyer(),yes,no);
  String secondary=StringUtil.readableBoolean(((AlleleBoolean)bee.getGenome().getInactiveAllele(EnumBeeChromosome.TOLERANT_FLYER.ordinal())).getValue(),yes,no);
  drawRow(StringUtil.localize("String_Node_Str"),primary,secondary,bee,EnumBeeChromosome.TOLERANT_FLYER);
  primary=StringUtil.readableBoolean(bee.getGenome().getCaveDwelling(),yes,no);
  secondary=StringUtil.readableBoolean(((AlleleBoolean)bee.getGenome().getInactiveAllele(EnumBeeChromosome.CAVE_DWELLING.ordinal())).getValue(),yes,no);
  drawRow(StringUtil.localize("String_Node_Str"),primary,secondary,bee,EnumBeeChromosome.CAVE_DWELLING);
  newLine();
  String displayText;
  if (type == EnumBeeType.PRINCESS || type == EnumBeeType.QUEEN) {
    displayText="String_Node_Str";
    if (!bee.isNatural())     displayText="String_Node_Str";
    displayText=StringUtil.localize(displayText);
    drawCenteredLine(displayText,8,158,fontColor.get("String_Node_Str"));
    ;
  }
  if (bee.getGeneration() >= 0) {
    newLine();
    displayText=StringUtil.localize("String_Node_Str",bee.getGeneration());
    drawCenteredLine(displayText,8,158,fontColor.get("String_Node_Str"));
  }
  endPage();
}

Fixed version (ground truth):
private void drawAnalyticsPage2(IBee bee,EnumBeeType type){
  startPage(COLUMN_0,COLUMN_1,COLUMN_2);
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_1);
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_2);
  newLine();
  newLine();
  drawRow(StringUtil.localize("String_Node_Str"),AlleleManager.climateHelper.toDisplay(bee.getGenome().getPrimary().getTemperature()),AlleleManager.climateHelper.toDisplay(bee.getGenome().getSecondary().getTemperature()),bee,EnumBeeChromosome.SPECIES);
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_0);
  drawToleranceInfo(bee.getGenome().getToleranceTemp(),COLUMN_1,getColorCoding(bee.getGenome().getActiveAllele(EnumBeeChromosome.TEMPERATURE_TOLERANCE.ordinal()).isDominant()));
  drawToleranceInfo(((AlleleTolerance)bee.getGenome().getInactiveAllele(EnumBeeChromosome.TEMPERATURE_TOLERANCE.ordinal())).getValue(),COLUMN_2,getColorCoding(bee.getGenome().getInactiveAllele(EnumBeeChromosome.TEMPERATURE_TOLERANCE.ordinal()).isDominant()));
  newLine();
  drawRow(StringUtil.localize("String_Node_Str"),AlleleManager.climateHelper.toDisplay(bee.getGenome().getPrimary().getHumidity()),AlleleManager.climateHelper.toDisplay(bee.getGenome().getSecondary().getHumidity()),bee,EnumBeeChromosome.SPECIES);
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_0);
  drawToleranceInfo(bee.getGenome().getToleranceHumid(),COLUMN_1,getColorCoding(bee.getGenome().getActiveAllele(EnumBeeChromosome.HUMIDITY_TOLERANCE.ordinal()).isDominant()));
  drawToleranceInfo(((AlleleTolerance)bee.getGenome().getInactiveAllele(EnumBeeChromosome.HUMIDITY_TOLERANCE.ordinal())).getValue(),COLUMN_2,getColorCoding(bee.getGenome().getInactiveAllele(EnumBeeChromosome.HUMIDITY_TOLERANCE.ordinal()).isDominant()));
  newLine();
  newLine();
  String yes=StringUtil.localize("String_Node_Str");
  String no=StringUtil.localize("String_Node_Str");
  String diurnal0, diurnal1, nocturnal0, nocturnal1;
  if (bee.getGenome().getNocturnal()) {
    nocturnal0=diurnal0=yes;
  }
 else {
    nocturnal0=bee.getGenome().getPrimary().isNocturnal() ? yes : no;
    diurnal0=!bee.getGenome().getPrimary().isNocturnal() ? yes : no;
  }
  if (((AlleleBoolean)bee.getGenome().getInactiveAllele(EnumBeeChromosome.NOCTURNAL.ordinal())).getValue()) {
    nocturnal1=diurnal1=yes;
  }
 else {
    nocturnal1=bee.getGenome().getSecondary().isNocturnal() ? yes : no;
    diurnal1=!bee.getGenome().getSecondary().isNocturnal() ? yes : no;
  }
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_0);
  drawLine(diurnal0,COLUMN_1,getColorCoding(false));
  drawLine(diurnal1,COLUMN_2,getColorCoding(false));
  newLine();
  drawLine(StringUtil.localize("String_Node_Str"),COLUMN_0);
  drawLine(nocturnal0,COLUMN_1,getColorCoding(false));
  drawLine(nocturnal1,COLUMN_2,getColorCoding(false));
  newLine();
  String primary=StringUtil.readableBoolean(bee.getGenome().getTolerantFlyer(),yes,no);
  String secondary=StringUtil.readableBoolean(((AlleleBoolean)bee.getGenome().getInactiveAllele(EnumBeeChromosome.TOLERANT_FLYER.ordinal())).getValue(),yes,no);
  drawRow(StringUtil.localize("String_Node_Str"),primary,secondary,bee,EnumBeeChromosome.TOLERANT_FLYER);
  primary=StringUtil.readableBoolean(bee.getGenome().getCaveDwelling(),yes,no);
  secondary=StringUtil.readableBoolean(((AlleleBoolean)bee.getGenome().getInactiveAllele(EnumBeeChromosome.CAVE_DWELLING.ordinal())).getValue(),yes,no);
  drawRow(StringUtil.localize("String_Node_Str"),primary,secondary,bee,EnumBeeChromosome.CAVE_DWELLING);
  newLine();
  String displayText;
  if (type == EnumBeeType.PRINCESS || type == EnumBeeType.QUEEN) {
    displayText="String_Node_Str";
    if (!bee.isNatural())     displayText="String_Node_Str";
    displayText=StringUtil.localize(displayText);
    drawCenteredLine(displayText,8,158,fontColor.get("String_Node_Str"));
    ;
  }
  if (bee.getGeneration() >= 0) {
    newLine();
    displayText=StringUtil.localizeAndFormat("String_Node_Str",bee.getGeneration());
    drawCenteredLine(displayText,8,158,fontColor.get("String_Node_Str"));
  }
  endPage();
}