Program: 10346
Project: 10346
Buggy source:
@Override public String getAttribute(Attribute attribute){
  if (attribute == null)   return null;
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1) && (attribute.startsWith("String_Node_Str",2) || attribute.startsWith("String_Node_Str",2))&& attribute.hasContext(2)) {
    Comparable com=new net.aufdemrand.denizen.scripts.commands.core.Comparable();
    com.setComparable(element);
    com.setComparedto(attribute.getContext(2));
    String operator;
    if (attribute.getContext(1).startsWith("String_Node_Str")) {
      operator=attribute.getContext(1).substring(1);
      com.setNegativeLogic();
    }
 else     operator=attribute.getContext(1);
    com.setOperator(Comparable.Operator.valueOf(operator.replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str")));
    return new Element(com.determineOutcome()).getAttribute(attribute.fulfill(2));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return new Element(Boolean.valueOf(element).toString()).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   try {
    return new Element(Double.valueOf(element)).getAttribute(attribute.fulfill(1));
  }
 catch (  NumberFormatException e) {
    dB.echoError("String_Node_Str" + element + "String_Node_Str");
    return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return Duration.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dEntity.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str"))   try {
    return new Element((int)Math.ceil(Double.valueOf(element))).getAttribute(attribute.fulfill(1));
  }
 catch (  NumberFormatException e) {
    dB.echoError("String_Node_Str" + element + "String_Node_Str");
    return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str"))   try {
    return new Element((int)Math.floor(Double.valueOf(element))).getAttribute(attribute.fulfill(1));
  }
 catch (  NumberFormatException e) {
    dB.echoError("String_Node_Str" + element + "String_Node_Str");
    return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   try {
    return new Element(Math.round(Double.valueOf(element))).getAttribute(attribute.fulfill(1));
  }
 catch (  NumberFormatException e) {
    dB.echoError("String_Node_Str" + element + "String_Node_Str");
    return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dItem.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dList.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dLocation.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str")) {
    try {
      DecimalFormat d=new DecimalFormat("String_Node_Str");
      return new Element(d.format(Double.valueOf(element))).getAttribute(attribute.fulfill(1));
    }
 catch (    NumberFormatException e) {
      dB.echoError("String_Node_Str" + element + "String_Node_Str");
      return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
    }
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dNPC.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dPlayer.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dScript.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str")) {
    dB.log(debug());
    return new Element(Boolean.TRUE).getAttribute(attribute.fulfill(2));
  }
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(ChatColor.stripColor(debug())).getAttribute(attribute.fulfill(2));
  }
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(debug()).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str"))   return new Element(prefix).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str")) {
    String contains=attribute.getContext(1);
    if (contains.toLowerCase().startsWith("String_Node_Str")) {
      if (Pattern.compile(contains.substring(("String_Node_Str").length()),Pattern.CASE_INSENSITIVE).matcher(element).matches())       return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
 else       return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
    }
 else     if (element.toLowerCase().contains(contains.toLowerCase()))     return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
 else     return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return new Element(element.endsWith(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str"))   return new Element(ChatColor.getLastColors(element)).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(element.length()).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return new Element(element.startsWith(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str")) {
    String delimiter=attribute.getContext(1);
    if (element.contains(delimiter))     return new Element(element.substring(element.indexOf(delimiter) + delimiter.length())).getAttribute(attribute.fulfill(1));
 else     return new Element(element).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str")) {
    String delimiter=attribute.getContext(1);
    if (element.contains(delimiter))     return new Element(element.substring(0,element.indexOf(delimiter))).getAttribute(attribute.fulfill(1));
 else     return new Element(element).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    String replace=attribute.getContext(1);
    String replacement="String_Node_Str";
    attribute.fulfill(1);
    if (attribute.startsWith("String_Node_Str")) {
      if (attribute.hasContext(1)) {
        replacement=attribute.getContext(1);
        if (replacement == null)         replacement="String_Node_Str";
        attribute.fulfill(1);
      }
    }
    return new Element(element.replace(replace,replacement)).getAttribute(attribute);
  }
  if (attribute.startsWith("String_Node_Str") && attribute.startsWith("String_Node_Str",2)) {
    String split_string=(attribute.hasContext(1) ? attribute.getContext(1) : "String_Node_Str");
    Integer limit=(attribute.hasContext(2) ? attribute.getIntContext(2) : 1);
    if (split_string.toLowerCase().startsWith("String_Node_Str"))     return new dList(Arrays.asList(element.split(split_string.split("String_Node_Str",2)[1],limit))).getAttribute(attribute.fulfill(1));
 else     return new dList(Arrays.asList(StringUtils.split(element,split_string,limit))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str")) {
    String split_string=(attribute.hasContext(1) ? attribute.getContext(1) : "String_Node_Str");
    if (split_string.toLowerCase().startsWith("String_Node_Str"))     return new dList(Arrays.asList(element.split(split_string.split("String_Node_Str",2)[1]))).getAttribute(attribute.fulfill(1));
 else     return new dList(Arrays.asList(StringUtils.split(element,split_string))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str"))   return new Element(ChatColor.stripColor(element)).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str"))   return new Element(element.trim()).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str")) {
    int beginning_index=Integer.valueOf(attribute.getContext(1).split("String_Node_Str")[0]) - 1;
    int ending_index;
    if (attribute.getContext(1).split("String_Node_Str").length > 1)     ending_index=Integer.valueOf(attribute.getContext(1).split("String_Node_Str")[1]) - 1;
 else     ending_index=element.length();
    if (beginning_index < 0)     beginning_index=0;
    if (ending_index > element.length())     ending_index=element.length();
    return new Element(element.substring(beginning_index,ending_index)).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(Math.abs(asDouble())).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() + aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() / aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() % aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() * aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(Math.sqrt(asDouble())).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() - aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.attributes.size() > 0) {
    dB.echoDebug(attribute.getScriptEntry(),"String_Node_Str" + attribute.attributes.toString() + "String_Node_Str"+ "String_Node_Str"+ attribute.getOrigin()+ "String_Node_Str");
    return "String_Node_Str";
  }
 else {
    dB.echoDebug(attribute.getScriptEntry(),"String_Node_Str" + attribute.getOrigin() + "String_Node_Str"+ element.replace((char)0x01,'<').replace((char)0x02,'>').replace(dList.internal_escape,"String_Node_Str")+ "String_Node_Str");
    return element;
  }
}

Fixed version (ground truth):
@Override public String getAttribute(Attribute attribute){
  if (attribute == null)   return null;
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1) && (attribute.startsWith("String_Node_Str",2) || attribute.startsWith("String_Node_Str",2))&& attribute.hasContext(2)) {
    Comparable com=new net.aufdemrand.denizen.scripts.commands.core.Comparable();
    com.setComparable(element);
    com.setComparedto(attribute.getContext(2));
    String operator;
    if (attribute.getContext(1).startsWith("String_Node_Str")) {
      operator=attribute.getContext(1).substring(1);
      com.setNegativeLogic();
    }
 else     operator=attribute.getContext(1);
    com.setOperator(Comparable.Operator.valueOf(operator.replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str")));
    return new Element(com.determineOutcome()).getAttribute(attribute.fulfill(2));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return new Element(Boolean.valueOf(element).toString()).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   try {
    return new Element(Double.valueOf(element)).getAttribute(attribute.fulfill(1));
  }
 catch (  NumberFormatException e) {
    dB.echoError("String_Node_Str" + element + "String_Node_Str");
    return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return Duration.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dEntity.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str"))   try {
    return new Element((int)Math.ceil(Double.valueOf(element))).getAttribute(attribute.fulfill(1));
  }
 catch (  NumberFormatException e) {
    dB.echoError("String_Node_Str" + element + "String_Node_Str");
    return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str"))   try {
    return new Element((int)Math.floor(Double.valueOf(element))).getAttribute(attribute.fulfill(1));
  }
 catch (  NumberFormatException e) {
    dB.echoError("String_Node_Str" + element + "String_Node_Str");
    return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   try {
    return new Element(Math.round(Double.valueOf(element))).getAttribute(attribute.fulfill(1));
  }
 catch (  NumberFormatException e) {
    dB.echoError("String_Node_Str" + element + "String_Node_Str");
    return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dItem.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dList.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dLocation.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str")) {
    try {
      DecimalFormat d=new DecimalFormat("String_Node_Str");
      return new Element(d.format(Double.valueOf(element))).getAttribute(attribute.fulfill(1));
    }
 catch (    NumberFormatException e) {
      dB.echoError("String_Node_Str" + element + "String_Node_Str");
      return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
    }
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dNPC.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dPlayer.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return dScript.valueOf(element).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str")) {
    dB.log(debug());
    return new Element(Boolean.TRUE).getAttribute(attribute.fulfill(2));
  }
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(ChatColor.stripColor(debug())).getAttribute(attribute.fulfill(2));
  }
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(debug()).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str"))   return new Element(prefix).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str")) {
    String contains=attribute.getContext(1);
    if (contains.toLowerCase().startsWith("String_Node_Str")) {
      if (Pattern.compile(contains.substring(("String_Node_Str").length()),Pattern.CASE_INSENSITIVE).matcher(element).matches())       return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
 else       return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
    }
 else     if (element.toLowerCase().contains(contains.toLowerCase()))     return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
 else     return new Element("String_Node_Str").getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return new Element(element.endsWith(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str"))   return new Element(ChatColor.getLastColors(element)).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(element.length()).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str"))   return new Element(element.startsWith(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str")) {
    String delimiter=attribute.getContext(1);
    if (element.contains(delimiter))     return new Element(element.substring(element.indexOf(delimiter) + delimiter.length())).getAttribute(attribute.fulfill(1));
 else     return new Element(element).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str")) {
    String delimiter=attribute.getContext(1);
    if (element.contains(delimiter))     return new Element(element.substring(0,element.indexOf(delimiter))).getAttribute(attribute.fulfill(1));
 else     return new Element(element).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    String replace=attribute.getContext(1);
    String replacement="String_Node_Str";
    attribute.fulfill(1);
    if (attribute.startsWith("String_Node_Str")) {
      if (attribute.hasContext(1)) {
        replacement=attribute.getContext(1);
        if (replacement == null)         replacement="String_Node_Str";
        attribute.fulfill(1);
      }
    }
    return new Element(element.replace(replace,replacement)).getAttribute(attribute);
  }
  if (attribute.startsWith("String_Node_Str") && attribute.startsWith("String_Node_Str",2)) {
    String split_string=(attribute.hasContext(1) ? attribute.getContext(1) : "String_Node_Str");
    Integer limit=(attribute.hasContext(2) ? attribute.getIntContext(2) : 1);
    if (split_string.toLowerCase().startsWith("String_Node_Str"))     return new dList(Arrays.asList(element.split(split_string.split("String_Node_Str",2)[1],limit))).getAttribute(attribute.fulfill(1));
 else     return new dList(Arrays.asList(StringUtils.split(element,split_string,limit))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str")) {
    String split_string=(attribute.hasContext(1) ? attribute.getContext(1) : "String_Node_Str");
    if (split_string.toLowerCase().startsWith("String_Node_Str"))     return new dList(Arrays.asList(element.split(split_string.split("String_Node_Str",2)[1]))).getAttribute(attribute.fulfill(1));
 else     return new dList(Arrays.asList(StringUtils.split(element,split_string))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str"))   return new Element(ChatColor.stripColor(element)).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str"))   return new Element(element.trim()).getAttribute(attribute.fulfill(1));
  if (attribute.startsWith("String_Node_Str") || attribute.startsWith("String_Node_Str")) {
    int beginning_index=Integer.valueOf(attribute.getContext(1).split("String_Node_Str")[0]) - 1;
    int ending_index;
    if (attribute.getContext(1).split("String_Node_Str").length > 1)     ending_index=Integer.valueOf(attribute.getContext(1).split("String_Node_Str")[1]);
 else     ending_index=element.length();
    if (beginning_index < 0)     beginning_index=0;
    if (beginning_index > element.length())     beginning_index=element.length();
    if (ending_index > element.length())     ending_index=element.length();
    if (ending_index < beginning_index)     ending_index=beginning_index;
    return new Element(element.substring(beginning_index,ending_index)).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(Math.abs(asDouble())).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() + aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() / aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() % aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() * aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str")) {
    return new Element(Math.sqrt(asDouble())).getAttribute(attribute.fulfill(1));
  }
  if (attribute.startsWith("String_Node_Str") && attribute.hasContext(1)) {
    return new Element(asDouble() - aH.getDoubleFrom(attribute.getContext(1))).getAttribute(attribute.fulfill(1));
  }
  if (attribute.attributes.size() > 0) {
    dB.echoDebug(attribute.getScriptEntry(),"String_Node_Str" + attribute.attributes.toString() + "String_Node_Str"+ "String_Node_Str"+ attribute.getOrigin()+ "String_Node_Str");
    return "String_Node_Str";
  }
 else {
    dB.echoDebug(attribute.getScriptEntry(),"String_Node_Str" + attribute.getOrigin() + "String_Node_Str"+ element.replace((char)0x01,'<').replace((char)0x02,'>').replace(dList.internal_escape,"String_Node_Str")+ "String_Node_Str");
    return element;
  }
}