Program: 108516
Project: 108516
Buggy source:
/** 
 * Performs some sanity checks.
 * @param manager the manager
 */
private void checkAfterEncoding(final ARXConfiguration config,final DataManager manager){
  if (config.containsCriterion(KAnonymity.class)) {
    KAnonymity c=config.getCriterion(KAnonymity.class);
    if ((c.getK() > manager.getDataQI().getDataLength()) || (c.getK() < 1)) {
      throw new IllegalArgumentException("String_Node_Str" + c.getK() + "String_Node_Str"+ manager.getDataQI().getDataLength()+ "String_Node_Str");
    }
  }
  if (config.containsCriterion(LDiversity.class)) {
    for (    LDiversity c : config.getCriteria(LDiversity.class)) {
      if ((c.getL() > manager.getDataQI().getDataLength()) || (c.getL() < 1)) {
        throw new IllegalArgumentException("String_Node_Str" + c.getL() + "String_Node_Str"+ manager.getDataQI().getDataLength()+ "String_Node_Str");
      }
    }
  }
  for (  final GeneralizationHierarchy hierarchy : manager.getHierarchies()) {
    if (!hierarchy.isMonotonic()) {
      throw new IllegalArgumentException("String_Node_Str" + hierarchy.getName() + "String_Node_Str");
    }
  }
  final int[] hierarchyHeights=manager.getHierachyHeights();
  final int[] minLevels=manager.getMinLevels();
  final int[] maxLevels=manager.getMaxLevels();
  for (int i=0; i < hierarchyHeights.length; i++) {
    if (minLevels[i] > (hierarchyHeights[i] - 1)) {
      throw new IllegalArgumentException("String_Node_Str" + manager.getHierarchies()[i].getName() + "String_Node_Str"+ minLevels[i]+ "String_Node_Str"+ (hierarchyHeights[i] - 1));
    }
    if (minLevels[i] < 0) {
      throw new IllegalArgumentException("String_Node_Str" + manager.getHierarchies()[i].getName() + "String_Node_Str");
    }
    if (maxLevels[i] > (hierarchyHeights[i] - 1)) {
      throw new IllegalArgumentException("String_Node_Str" + manager.getHierarchies()[i].getName() + "String_Node_Str"+ maxLevels[i]+ "String_Node_Str"+ (hierarchyHeights[i] - 1));
    }
    if (maxLevels[i] < minLevels[i]) {
      throw new IllegalArgumentException("String_Node_Str" + manager.getHierarchies()[i].getName() + "String_Node_Str");
    }
  }
}

Fixed version (ground truth):
/** 
 * Performs some sanity checks.
 * @param manager the manager
 */
private void checkAfterEncoding(final ARXConfiguration config,final DataManager manager){
  if (config.containsCriterion(KAnonymity.class)) {
    KAnonymity c=config.getCriterion(KAnonymity.class);
    if ((c.getK() > manager.getDataQI().getDataLength()) || (c.getK() < 1)) {
      throw new IllegalArgumentException("String_Node_Str" + c.getK() + "String_Node_Str"+ manager.getDataQI().getDataLength()+ "String_Node_Str");
    }
  }
  if (config.containsCriterion(LDiversity.class)) {
    for (    LDiversity c : config.getCriteria(LDiversity.class)) {
      if ((c.getL() > manager.getDataQI().getDataLength()) || (c.getL() < 1)) {
        throw new IllegalArgumentException("String_Node_Str" + c.getL() + "String_Node_Str"+ manager.getDataQI().getDataLength()+ "String_Node_Str");
      }
    }
  }
  for (  final GeneralizationHierarchy hierarchy : manager.getHierarchies()) {
    hierarchy.checkMonotonicity(manager);
  }
  final int[] hierarchyHeights=manager.getHierachyHeights();
  final int[] minLevels=manager.getMinLevels();
  final int[] maxLevels=manager.getMaxLevels();
  for (int i=0; i < hierarchyHeights.length; i++) {
    if (minLevels[i] > (hierarchyHeights[i] - 1)) {
      throw new IllegalArgumentException("String_Node_Str" + manager.getHierarchies()[i].getName() + "String_Node_Str"+ minLevels[i]+ "String_Node_Str"+ (hierarchyHeights[i] - 1));
    }
    if (minLevels[i] < 0) {
      throw new IllegalArgumentException("String_Node_Str" + manager.getHierarchies()[i].getName() + "String_Node_Str");
    }
    if (maxLevels[i] > (hierarchyHeights[i] - 1)) {
      throw new IllegalArgumentException("String_Node_Str" + manager.getHierarchies()[i].getName() + "String_Node_Str"+ maxLevels[i]+ "String_Node_Str"+ (hierarchyHeights[i] - 1));
    }
    if (maxLevels[i] < minLevels[i]) {
      throw new IllegalArgumentException("String_Node_Str" + manager.getHierarchies()[i].getName() + "String_Node_Str");
    }
  }
}