Program: 24142
Project: 24142
Buggy source:
private void processDataType(Profile profile,GroupComponent group,ElementComponent element,String path,TypeRefComponent t,List<QuestionnaireAnswers.GroupComponent> answerGroups) throws Exception {
  if (t.getCode().equals("String_Node_Str"))   addCodeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str") || t.getCode().equals("String_Node_Str") || t.getCode().equals("String_Node_Str"))   addStringQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addUriQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addBooleanQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addDecimalQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str") || t.getCode().equals("String_Node_Str"))   addDateTimeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addInstantQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addTimeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addCodeableConceptQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addPeriodQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addRatioQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addHumanNameQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addAddressQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addContactPointQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addIdentifierQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addIntegerQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addCodingQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addQuantityQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addReferenceQuestions(group,element,path,t.getProfile(),answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addIdRefQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addDurationQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addBinaryQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addAttachmentQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addAgeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addRangeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addTimingQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addSampledDataQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addExtensionQuestions(profile,group,element,path,t.getProfile(),answerGroups);
 else   if (!t.getCode().equals("String_Node_Str"))   throw new Exception("String_Node_Str" + t.getCode() + "String_Node_Str"+ element.getPath());
}

Fixed version (ground truth):
private void processDataType(Profile profile,GroupComponent group,ElementComponent element,String path,TypeRefComponent t,List<QuestionnaireAnswers.GroupComponent> answerGroups) throws Exception {
  if (t.getCode().equals("String_Node_Str"))   addCodeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str") || t.getCode().equals("String_Node_Str") || t.getCode().equals("String_Node_Str"))   addStringQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addUriQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addBooleanQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addDecimalQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str") || t.getCode().equals("String_Node_Str"))   addDateTimeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addInstantQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addTimeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addCodeableConceptQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addPeriodQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addRatioQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addHumanNameQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addAddressQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addContactPointQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addIdentifierQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addIntegerQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addCodingQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addQuantityQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addMoneyQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addReferenceQuestions(group,element,path,t.getProfile(),answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addIdRefQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addDurationQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addBinaryQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addAttachmentQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addAgeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addRangeQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addTimingQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addSampledDataQuestions(group,element,path,answerGroups);
 else   if (t.getCode().equals("String_Node_Str"))   addExtensionQuestions(profile,group,element,path,t.getProfile(),answerGroups);
 else   if (!t.getCode().equals("String_Node_Str"))   throw new Exception("String_Node_Str" + t.getCode() + "String_Node_Str"+ element.getPath());
}