nus-yam/ex-repair huggingface dataset:
Program: 10509
Project: 10509
Buggy source:
@Override public void onEnable(){
  if (!setupEconomy() || !setupPermissions())   getLogger().log(Level.SEVERE,"String_Node_Str");
  if (getServer().getPluginManager().getPlugin("String_Node_Str") != null) {
    getLogger().log(Level.INFO,"String_Node_Str");
    this.heroes=(Heroes)getServer().getPluginManager().getPlugin("String_Node_Str");
  }
  reloadConfig();
  reloadScripts();
  reloadSaves();
  reloadAssignments();
  CitizensAPI.getTraitFactory().registerTrait(TraitInfo.create(DenizenTrait.class).withName("String_Node_Str"));
  commandRegistry.registerCoreCommands();
  triggerRegistry.registerCoreTriggers();
  activityRegistry.registerCoreActivities();
  requirementRegistry.registerCoreRequirements();
  getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable(){
    @Override public void run(){
      scriptEngine.runQueues();
    }
  }
,settings.InteractDelayInTicks(),settings.InteractDelayInTicks());
  getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable(){
    @Override public void run(){
      activityEngine.scheduleScripts(false);
    }
  }
,1,600);
  getServer().getScheduler().scheduleSyncDelayedTask(this,new Runnable(){
    @Override public void run(){
      bookmarks.buildLocationTriggerList();
    }
  }
,50);
}

Fixed version (ground truth):
@Override public void onEnable(){
  if (!setupEconomy() || !setupPermissions())   getLogger().log(Level.SEVERE,"String_Node_Str");
  if (getServer().getPluginManager().getPlugin("String_Node_Str") != null) {
    getLogger().log(Level.INFO,"String_Node_Str");
    this.heroes=(Heroes)getServer().getPluginManager().getPlugin("String_Node_Str");
  }
  reloadConfig();
  reloadScripts();
  reloadSaves();
  reloadAssignments();
  CitizensAPI.getTraitFactory().registerTrait(TraitInfo.create(DenizenTrait.class).withName("String_Node_Str"));
  commandRegistry.registerCoreCommands();
  triggerRegistry.registerCoreTriggers();
  activityRegistry.registerCoreActivities();
  requirementRegistry.registerCoreRequirements();
  getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable(){
    @Override public void run(){
      scriptEngine.runQueues();
    }
  }
,settings.InteractDelayInTicks(),settings.InteractDelayInTicks());
  getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable(){
    @Override public void run(){
      activityEngine.scheduleScripts(false);
    }
  }
,1,600);
  getServer().getScheduler().scheduleSyncDelayedTask(this,new Runnable(){
    @Override public void run(){
      bookmarks.buildLocationTriggerList();
    }
  }
,50);
  getServer().getPluginManager().registerEvents(activityEngine,this);
}
Program: 10510
Project: 10510
Buggy source:
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  boolean shortFormat=false;
  if (theEntry.arguments() != null) {
    for (    String thisArgument : theEntry.arguments()) {
      if (thisArgument.toUpperCase().contains("String_Node_Str"))       shortFormat=true;
    }
  }
  String theScript=theEntry.getScript();
  Integer theStep=theEntry.getStep();
  List<String> chatTriggers=new ArrayList<String>();
  String scriptPath=theScript + "String_Node_Str" + theStep+ "String_Node_Str";
  boolean thisTriggerExists=true;
  int x=1;
  do {
    if (plugin.getScripts().contains(scriptPath + x + "String_Node_Str")) {
      String ct=plugin.getScripts().getString(scriptPath + x + "String_Node_Str");
      if (!ct.contains("String_Node_Str"))       chatTriggers.add(ct);
      aH.echoDebug("String_Node_Str" + chatTriggers.get(x - 1) + "String_Node_Str");
    }
 else     thisTriggerExists=false;
    x++;
  }
 while (thisTriggerExists);
  if (chatTriggers.isEmpty())   return false;
  StringBuilder sb=new StringBuilder();
  sb.append(plugin.settings.NpcHintPrefix());
  for (int i=0; i < chatTriggers.size(); i++) {
    String item=chatTriggers.get(i);
    String fitem=getFormattedTrigger(item,shortFormat);
    aH.echoDebug("String_Node_Str" + fitem);
    sb.append(fitem);
    if (i != chatTriggers.size() - 1)     sb.append("String_Node_Str");
  }
  theEntry.getPlayer().sendMessage(sb.toString());
  return true;
}

Fixed version (ground truth):
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  boolean shortFormat=false;
  if (theEntry.arguments() != null) {
    for (    String thisArgument : theEntry.arguments()) {
      if (thisArgument.toUpperCase().contains("String_Node_Str"))       shortFormat=true;
    }
  }
  String theScript=theEntry.getScript();
  Integer theStep=theEntry.getStep();
  List<String> chatTriggers=new ArrayList<String>();
  String scriptPath=theScript + "String_Node_Str" + theStep+ "String_Node_Str";
  boolean thisTriggerExists=true;
  int x=1;
  do {
    if (plugin.getScripts().contains(scriptPath + x + "String_Node_Str")) {
      String ct=plugin.getScripts().getString(scriptPath + x + "String_Node_Str");
      if (!ct.contains("String_Node_Str"))       chatTriggers.add(ct);
      aH.echoDebug("String_Node_Str" + ct + "String_Node_Str");
    }
 else     thisTriggerExists=false;
    x++;
  }
 while (thisTriggerExists);
  if (chatTriggers.isEmpty())   return false;
  StringBuilder sb=new StringBuilder();
  sb.append(plugin.settings.NpcHintPrefix());
  for (int i=0; i < chatTriggers.size(); i++) {
    String item=chatTriggers.get(i);
    String fitem=getFormattedTrigger(item,shortFormat);
    aH.echoDebug("String_Node_Str" + fitem);
    sb.append(fitem);
    if (i != chatTriggers.size() - 1)     sb.append("String_Node_Str");
  }
  theEntry.getPlayer().sendMessage(sb.toString());
  return true;
}
Program: 10511
Project: 10511
Buggy source:
public ActivityEngine(Denizen denizen){
  this.plugin=denizen;
  plugin.getServer().getPluginManager().registerEvents(this,plugin);
}

Fixed version (ground truth):
public ActivityEngine(Denizen denizen){
  this.plugin=denizen;
}
Program: 10513
Project: 10513
Buggy source:
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  boolean shortFormat=false;
  if (theEntry.arguments() != null) {
    for (    String thisArgument : theEntry.arguments()) {
      if (thisArgument.toUpperCase().contains("String_Node_Str"))       shortFormat=true;
    }
  }
  String theScript=theEntry.getScript();
  Integer theStep=theEntry.getStep();
  List<String> chatTriggers=new ArrayList<String>();
  String scriptPath=theScript + "String_Node_Str" + theStep+ "String_Node_Str";
  boolean thisTriggerExists=true;
  int x=1;
  do {
    if (plugin.getScripts().contains(scriptPath + x + "String_Node_Str")) {
      chatTriggers.add(plugin.getScripts().getString(scriptPath + x + "String_Node_Str"));
      if (plugin.debugMode)       plugin.getLogger().info("String_Node_Str" + chatTriggers.get(x));
    }
 else     thisTriggerExists=false;
    x++;
  }
 while (thisTriggerExists);
  if (chatTriggers.isEmpty())   return false;
  StringBuilder sb=new StringBuilder();
  sb.append(plugin.settings.NpcHintPrefix());
  for (int i=0; i < chatTriggers.size(); i++) {
    String item=chatTriggers.get(i);
    if (item.contains("String_Node_Str"))     continue;
    String fitem=getFormattedTrigger(item,shortFormat);
    aH.echoDebug("String_Node_Str" + fitem);
    sb.append(fitem);
    if (i != chatTriggers.size() - 1)     sb.append("String_Node_Str");
  }
  theEntry.getPlayer().sendMessage(sb.toString());
  return true;
}

Fixed version (ground truth):
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  boolean shortFormat=false;
  if (theEntry.arguments() != null) {
    for (    String thisArgument : theEntry.arguments()) {
      if (thisArgument.toUpperCase().contains("String_Node_Str"))       shortFormat=true;
    }
  }
  String theScript=theEntry.getScript();
  Integer theStep=theEntry.getStep();
  List<String> chatTriggers=new ArrayList<String>();
  String scriptPath=theScript + "String_Node_Str" + theStep+ "String_Node_Str";
  boolean thisTriggerExists=true;
  int x=1;
  do {
    if (plugin.getScripts().contains(scriptPath + x + "String_Node_Str")) {
      chatTriggers.add(plugin.getScripts().getString(scriptPath + x + "String_Node_Str"));
      if (plugin.debugMode)       plugin.getLogger().info("String_Node_Str" + chatTriggers.get(x - 1));
    }
 else     thisTriggerExists=false;
    x++;
  }
 while (thisTriggerExists);
  if (chatTriggers.isEmpty())   return false;
  StringBuilder sb=new StringBuilder();
  sb.append(plugin.settings.NpcHintPrefix());
  for (int i=0; i < chatTriggers.size(); i++) {
    String item=chatTriggers.get(i);
    if (item.contains("String_Node_Str"))     continue;
    String fitem=getFormattedTrigger(item,shortFormat);
    aH.echoDebug("String_Node_Str" + fitem);
    sb.append(fitem);
    if (i != chatTriggers.size() - 1)     sb.append("String_Node_Str");
  }
  theEntry.getPlayer().sendMessage(sb.toString());
  return true;
}
Program: 10514
Project: 10514
Buggy source:
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  boolean hurt=false;
  LivingEntity target=null;
  if (theEntry.getPlayer() == null) {
    target=theEntry.getPlayer();
  }
  Integer amount=null;
  hurt=theEntry.getCommand().equalsIgnoreCase("String_Node_Str");
  for (  String thisArg : theEntry.arguments()) {
    if (thisArg.toUpperCase().contains("String_Node_Str")) {
      target=theEntry.getDenizen().getEntity();
      aH.echoDebug("String_Node_Str");
    }
    if (thisArg.toUpperCase().contains("String_Node_Str")) {
      amount=aH.getIntegerModifier(thisArg);
      aH.echoDebug("String_Node_Str" + amount);
    }
  }
  if (target != null) {
    if (hurt) {
      if (amount == null)       amount=1;
      target.setHealth(target.getHealth() - amount);
      net.citizensnpcs.util.Util.sendPacketNearby(target.getLocation(),new Packet18ArmAnimation(((CraftEntity)target).getHandle(),2),64);
      return true;
    }
 else {
      if (amount == null)       amount=target.getMaxHealth() - target.getHealth();
      target.setHealth(target.getHealth() + amount);
      net.citizensnpcs.util.Util.sendPacketNearby(target.getLocation(),new Packet18ArmAnimation(((CraftEntity)target).getHandle(),6),64);
      return true;
    }
  }
  return false;
}

Fixed version (ground truth):
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  boolean hurts=false;
  LivingEntity target=null;
  if (theEntry.getPlayer() == null) {
    target=theEntry.getDenizen().getEntity();
  }
  Integer amount=null;
  hurts=theEntry.getCommand().equalsIgnoreCase("String_Node_Str");
  if (theEntry.arguments() != null)   for (  String thisArg : theEntry.arguments()) {
    if (thisArg.toUpperCase().contains("String_Node_Str")) {
      target=theEntry.getDenizen().getEntity();
      aH.echoDebug("String_Node_Str" + theEntry.getDenizen().getName() + "String_Node_Str");
    }
    if (thisArg.matches("String_Node_Str")) {
      amount=aH.getIntegerModifier(thisArg);
      aH.echoDebug("String_Node_Str" + amount + "String_Node_Str");
    }
  }
  if (target != null) {
    if (hurts) {
      if (amount == null)       amount=1;
      target.setHealth(target.getHealth() - amount);
      net.citizensnpcs.util.Util.sendPacketNearby(target.getLocation(),new Packet18ArmAnimation(((CraftEntity)target).getHandle(),2),64);
      return true;
    }
 else {
      if (amount == null)       amount=target.getMaxHealth() - target.getHealth();
      target.setHealth(target.getHealth() + amount);
      net.citizensnpcs.util.Util.sendPacketNearby(target.getLocation(),new Packet18ArmAnimation(((CraftEntity)target).getHandle(),6),64);
      return true;
    }
  }
  return false;
}
Program: 10518
Project: 10518
Buggy source:
public void scheduleScripts(){
  if (plugin.getDenizenNPCRegistry().getDenizens().isEmpty())   return;
  for (  DenizenNPC theDenizen : plugin.getDenizenNPCRegistry().getDenizens().values()) {
    if (!theDenizen.isSpawned())     continue;
    int denizenTime=Math.round(theDenizen.getWorld().getTime() / 1000);
    List<String> denizenActivities=plugin.getAssignments().getStringList("String_Node_Str" + theDenizen.getName() + "String_Node_Str");
    plugin.getLogger().info("String_Node_Str" + denizenTime + "String_Node_Str");
    if (denizenActivities.isEmpty())     continue;
    for (    String activity : denizenActivities) {
      if (activity.startsWith(String.valueOf(denizenTime))) {
        String activityScript=activity.split("String_Node_Str",2)[1];
        if (plugin.getSaves().contains("String_Node_Str" + theDenizen.getName() + "String_Node_Str")) {
          if (!plugin.getSaves().getString("String_Node_Str" + theDenizen.getName() + "String_Node_Str").equals(activityScript))           setActivityScript(theDenizen,activityScript);
        }
 else         setActivityScript(theDenizen,activityScript);
      }
    }
  }
}

Fixed version (ground truth):
public void scheduleScripts(){
  if (plugin.getDenizenNPCRegistry().getDenizens().isEmpty())   return;
  for (  DenizenNPC theDenizen : plugin.getDenizenNPCRegistry().getDenizens().values()) {
    if (!theDenizen.isSpawned())     continue;
    int denizenTime=Math.round(theDenizen.getWorld().getTime() / 1000);
    List<String> denizenActivities=plugin.getAssignments().getStringList("String_Node_Str" + theDenizen.getName() + "String_Node_Str");
    if (denizenActivities.isEmpty())     continue;
    for (    String activity : denizenActivities) {
      if (activity.startsWith(String.valueOf(denizenTime))) {
        String activityScript=activity.split("String_Node_Str",2)[1];
        setActivityScript(theDenizen,activityScript);
      }
    }
  }
}
Program: 10520
Project: 10520
Buggy source:
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  Boolean isGlobal=false;
  Integer duration=null;
  String theScript=null;
  if (theEntry.arguments() != null) {
    for (    String thisArg : theEntry.arguments()) {
      if (aRegex.matchesDuration(thisArg)) {
        duration=getIntegerModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (aRegex.matchesInteger(thisArg)) {
        duration=getIntegerModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (thisArg.equalsIgnoreCase("String_Node_Str")) {
        isGlobal=true;
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (aRegex.matchesScript(thisArg)) {
        theScript=getModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else {
        echoDebug("String_Node_Str",thisArg);
      }
    }
  }
  if (duration != null) {
    if (theScript == null)     theScript=theEntry.getScript();
    if (isGlobal)     plugin.getSaves().set("String_Node_Str" + theScript + "String_Node_Str",System.currentTimeMillis() + (duration * 1000));
 else     if (!isGlobal)     plugin.getSaves().set("String_Node_Str" + theEntry.getPlayer() + "String_Node_Str"+ theScript+ "String_Node_Str",System.currentTimeMillis() + (duration * 1000));
    return true;
  }
  echoError("String_Node_Str");
  return false;
}

Fixed version (ground truth):
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  Boolean isGlobal=false;
  Integer duration=null;
  String theScript=null;
  if (theEntry.arguments() != null) {
    for (    String thisArg : theEntry.arguments()) {
      if (aRegex.matchesDuration(thisArg)) {
        duration=getIntegerModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (aRegex.matchesInteger(thisArg)) {
        duration=getIntegerModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (thisArg.equalsIgnoreCase("String_Node_Str")) {
        isGlobal=true;
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (aRegex.matchesScript(thisArg)) {
        theScript=getModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else {
        echoDebug("String_Node_Str",thisArg);
      }
    }
  }
  if (duration != null) {
    if (theScript == null)     theScript=theEntry.getScript();
    if (isGlobal)     plugin.getSaves().set("String_Node_Str" + theScript + "String_Node_Str",System.currentTimeMillis() + (duration * 1000));
 else     if (!isGlobal)     plugin.getSaves().set("String_Node_Str" + theEntry.getPlayer().getName() + "String_Node_Str"+ theScript+ "String_Node_Str",System.currentTimeMillis() + (duration * 1000));
    return true;
  }
  echoError("String_Node_Str");
  return false;
}
Program: 10522
Project: 10522
Buggy source:
abstract public void removeGoal(DenizenNPC npc);

Fixed version (ground truth):
abstract public void removeGoal(DenizenNPC npc,boolean verbose);
Program: 10523
Project: 10523
Buggy source:
public void setActivityScript(DenizenNPC theDenizen,String activityScript){
  plugin.getLogger().info("String_Node_Str" + theDenizen.getName());
  plugin.getSaves().set("String_Node_Str" + theDenizen.getName() + "String_Node_Str",activityScript);
  if (!plugin.getScripts().contains(activityScript + "String_Node_Str")) {
    plugin.getLogger().info("String_Node_Str" + activityScript + "String_Node_Str");
    return;
  }
  Iterator<GoalEntry> activeGoal=theDenizen.getCitizensEntity().getDefaultGoalController().iterator();
  while (activeGoal.hasNext()) {
    theDenizen.getCitizensEntity().getDefaultGoalController().removeGoal(activeGoal.next().getGoal());
  }
  for (  String activity : plugin.getScripts().getStringList(activityScript + "String_Node_Str")) {
    String[] arguments=plugin.getScriptEngine().helper.buildArgs(activity.split("String_Node_Str",3)[2]);
    int priority=Integer.parseInt(activity.split("String_Node_Str",3)[0]);
    activity=activity.split("String_Node_Str",3)[1];
    plugin.getActivityRegistry().addActivity(activity,theDenizen.getCitizensEntity(),arguments,priority);
  }
}

Fixed version (ground truth):
public void setActivityScript(DenizenNPC theDenizen,String activityScript){
  plugin.getLogger().info("String_Node_Str" + theDenizen.getName());
  plugin.getSaves().set("String_Node_Str" + theDenizen.getName() + "String_Node_Str",activityScript);
  if (!plugin.getScripts().contains(activityScript + "String_Node_Str")) {
    plugin.getLogger().info("String_Node_Str" + activityScript + "String_Node_Str");
    return;
  }
  plugin.getActivityRegistry().removeAllActivities(theDenizen.getCitizensEntity());
  for (  String activity : plugin.getScripts().getStringList(activityScript + "String_Node_Str")) {
    String[] arguments=plugin.getScriptEngine().helper.buildArgs(activity.split("String_Node_Str",3)[2]);
    int priority=Integer.parseInt(activity.split("String_Node_Str",3)[0]);
    activity=activity.split("String_Node_Str",3)[1];
    plugin.getActivityRegistry().addActivity(activity,theDenizen.getCitizensEntity(),arguments,priority);
  }
}
Program: 10524
Project: 10524
Buggy source:
public void removeActivity(String activity,NPC theDenizen){
  if (activities.containsKey(activity.toUpperCase()))   activities.get(activity.toUpperCase()).removeGoal(plugin.getDenizenNPCRegistry().getDenizen(theDenizen));
 else   plugin.getLogger().log(Level.SEVERE,"String_Node_Str");
}

Fixed version (ground truth):
public void removeActivity(String activity,NPC theDenizen){
  if (activities.containsKey(activity.toUpperCase()))   activities.get(activity.toUpperCase()).removeGoal(plugin.getDenizenNPCRegistry().getDenizen(theDenizen),true);
 else   plugin.getLogger().log(Level.SEVERE,"String_Node_Str");
}
Program: 10525
Project: 10525
Buggy source:
public void removeGoal(DenizenNPC npc){
  if (wanderMap.containsKey(npc)) {
    npc.getCitizensEntity().getDefaultGoalController().removeGoal(wanderMap.get(npc));
    wanderMap.remove(npc);
    plugin.getLogger().info("String_Node_Str");
  }
 else {
    plugin.getLogger().info("String_Node_Str");
  }
}

Fixed version (ground truth):
public void removeGoal(DenizenNPC npc,boolean verbose){
  if (wanderMap.containsKey(npc)) {
    npc.getCitizensEntity().getDefaultGoalController().removeGoal(wanderMap.get(npc));
    wanderMap.remove(npc);
    if (verbose)     plugin.getLogger().info("String_Node_Str");
  }
 else {
    if (verbose)     plugin.getLogger().info("String_Node_Str");
  }
}
Program: 10526
Project: 10526
Buggy source:
@Override public void run(DenizenNPC denizen,Location location,Boolean lookClose,Float checkYaw){
  if (denizen.getLocation().getYaw() == checkYaw) {
    denizen.getHandle().yaw=location.getYaw();
    denizen.getHandle().pitch=location.getPitch();
    denizen.getHandle().as=denizen.getHandle().yaw;
    denizen.lookClose(lookClose);
  }
}

Fixed version (ground truth):
@Override public void run(DenizenNPC denizen,Location location,Boolean lookClose,Float checkYaw){
  denizen.lookClose(lookClose);
  denizen.getHandle().yaw=location.getYaw();
  denizen.getHandle().pitch=location.getPitch();
  denizen.getHandle().as=denizen.getHandle().yaw;
}
Program: 10530
Project: 10530
Buggy source:
public void showInfo(Player theClicker){
  sE.showInfo(theClicker,this);
}

Fixed version (ground truth):
public void showInfo(Player theClicker){
  plugin.getDenizenNPCRegistry().showInfo(theClicker,this);
}
Program: 10531
Project: 10531
Buggy source:
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  Boolean isGlobal=false;
  Integer duration=null;
  String theScript=null;
  if (theEntry.arguments() != null) {
    for (    String thisArg : theEntry.arguments()) {
      if (aRegex.matchesDuration(thisArg)) {
        duration=getIntegerModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (aRegex.matchesInteger(thisArg)) {
        duration=getIntegerModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (thisArg.equalsIgnoreCase("String_Node_Str")) {
        isGlobal=true;
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (aRegex.matchesScript(thisArg)) {
        theScript=getModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else {
        echoDebug("String_Node_Str",thisArg);
      }
    }
  }
  if (duration != null) {
    if (theScript == null)     theScript=theEntry.getScript();
    if (isGlobal)     plugin.getSaves().set("String_Node_Str" + theScript + "String_Node_Str",System.currentTimeMillis() + (duration * 1000));
 else     if (!isGlobal)     plugin.getSaves().set("String_Node_Str" + theEntry.getPlayer().getName() + "String_Node_Str"+ theScript+ "String_Node_Str",System.currentTimeMillis() + (duration * 1000));
    return true;
  }
  echoError("String_Node_Str");
  return false;
}

Fixed version (ground truth):
@Override public boolean execute(ScriptEntry theEntry) throws CommandException {
  Boolean isGlobal=false;
  Integer duration=null;
  String theScript=null;
  if (theEntry.arguments() != null) {
    for (    String thisArg : theEntry.arguments()) {
      if (aRegex.matchesDuration(thisArg)) {
        duration=getIntegerModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (aRegex.matchesInteger(thisArg)) {
        duration=getIntegerModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (thisArg.equalsIgnoreCase("String_Node_Str")) {
        isGlobal=true;
        echoDebug("String_Node_Str",thisArg);
      }
 else       if (aRegex.matchesScript(thisArg)) {
        theScript=getModifier(thisArg);
        echoDebug("String_Node_Str",thisArg);
      }
 else {
        echoDebug("String_Node_Str",thisArg);
      }
    }
  }
  if (duration != null) {
    if (theScript == null)     theScript=theEntry.getScript();
    if (isGlobal) {
      plugin.getSaves().set("String_Node_Str" + theScript + "String_Node_Str",System.currentTimeMillis() + (duration * 1000));
      plugin.saveSaves();
    }
 else     if (!isGlobal) {
      plugin.getSaves().set("String_Node_Str" + theEntry.getPlayer().getName() + "String_Node_Str"+ theScript+ "String_Node_Str",System.currentTimeMillis() + (duration * 1000));
      plugin.saveSaves();
    }
    return true;
  }
  echoError("String_Node_Str");
  return false;
}
Program: 10532
Project: 10532
Buggy source:
@Override public boolean execute(ScriptEntry theCommand) throws CommandException {
  String theScript=theCommand.getScript();
  if (theCommand.arguments() != null) {
    for (    String thisArgument : theCommand.arguments()) {
      if (plugin.debugMode)       plugin.getLogger().log(Level.INFO,"String_Node_Str" + theCommand.getCommand() + "String_Node_Str"+ thisArgument);
      if (thisArgument.contains("String_Node_Str"))       theScript=thisArgument.split("String_Node_Str",2)[1];
 else {
        if (plugin.debugMode)         plugin.getLogger().log(Level.INFO,"String_Node_Str");
      }
    }
  }
  int finishes=plugin.getAssignments().getInt("String_Node_Str" + theCommand.getPlayer().getName() + "String_Node_Str"+ theScript+ "String_Node_Str"+ "String_Node_Str",0);
  finishes++;
  plugin.getSaves().set("String_Node_Str" + theCommand.getPlayer().getName() + "String_Node_Str"+ theScript+ "String_Node_Str"+ "String_Node_Str",finishes);
  plugin.saveSaves();
  return true;
}

Fixed version (ground truth):
@Override public boolean execute(ScriptEntry theCommand) throws CommandException {
  String theScript=theCommand.getScript();
  if (theCommand.arguments() != null) {
    for (    String thisArgument : theCommand.arguments()) {
      if (plugin.debugMode)       plugin.getLogger().log(Level.INFO,"String_Node_Str" + theCommand.getCommand() + "String_Node_Str"+ thisArgument);
      if (thisArgument.contains("String_Node_Str"))       theScript=thisArgument.split("String_Node_Str",2)[1];
 else {
        if (plugin.debugMode)         plugin.getLogger().log(Level.INFO,"String_Node_Str");
      }
    }
  }
  int finishes=plugin.getSaves().getInt("String_Node_Str" + theCommand.getPlayer().getName() + "String_Node_Str"+ theScript+ "String_Node_Str"+ "String_Node_Str",0);
  finishes++;
  plugin.getSaves().set("String_Node_Str" + theCommand.getPlayer().getName() + "String_Node_Str"+ theScript+ "String_Node_Str"+ "String_Node_Str",finishes);
  plugin.saveSaves();
  return true;
}
Program: 10533
Project: 10533
Buggy source:
public void lookClose(boolean lookclose){
  if (!lookclose) {
    if (!citizensNPC.getTrait(LookClose.class).toggle())     citizensNPC.getTrait(LookClose.class).toggle();
  }
 else   if (lookclose) {
    if (citizensNPC.getTrait(LookClose.class).toggle())     citizensNPC.getTrait(LookClose.class).toggle();
  }
}

Fixed version (ground truth):
public void lookClose(boolean lookclose){
  if (!lookclose) {
    if (citizensNPC.getTrait(LookClose.class).toggle())     citizensNPC.getTrait(LookClose.class).toggle();
  }
 else   if (lookclose) {
    if (!citizensNPC.getTrait(LookClose.class).toggle())     citizensNPC.getTrait(LookClose.class).toggle();
  }
}
Program: 10536
Project: 10536
Buggy source:
public SwitchCommandRunnable(A a,B b){
  this.a=a;
  this.b=b;
}

Fixed version (ground truth):
public SwitchCommandRunnable(A a){
  this.a=a;
}
Program: 10537
Project: 10537
Buggy source:
public abstract void run(A a,B b);

Fixed version (ground truth):
public abstract void run(A a);
Program: 10540
Project: 10540
Buggy source:
public boolean execute(ScriptEntry theCommand){
  if (plugin.getCommandRegistry().getCommand(theCommand.getCommand()) != null) {
    Command command=plugin.getCommandRegistry().getCommand(theCommand.getCommand());
    if (plugin.debugMode)     plugin.getLogger().log(Level.INFO,"String_Node_Str" + theCommand.getCommand());
    try {
      command.execute(theCommand);
      if (plugin.debugMode)       plugin.getLogger().log(Level.INFO,"String_Node_Str");
    }
 catch (    CommandException e) {
      plugin.getLogger().log(Level.SEVERE,e.getMessage());
      e.printStackTrace();
    }
    return true;
  }
 else   plugin.getLogger().log(Level.SEVERE,"String_Node_Str");
  return false;
}

Fixed version (ground truth):
public boolean execute(ScriptEntry theCommand){
  if (plugin.getCommandRegistry().getCommand(theCommand.getCommand()) != null) {
    Command command=plugin.getCommandRegistry().getCommand(theCommand.getCommand());
    if (plugin.debugMode)     plugin.getLogger().log(Level.INFO,"String_Node_Str" + theCommand.getCommand());
    try {
      command.execute(theCommand);
      if (plugin.debugMode)       plugin.getLogger().log(Level.INFO,"String_Node_Str");
    }
 catch (    CommandException e) {
      plugin.getLogger().log(Level.SEVERE,e.getMessage());
      e.printStackTrace();
    }
    return true;
  }
 else {
    if (plugin.debugMode)     plugin.getLogger().log(Level.INFO,"String_Node_Str" + theCommand.getCommand());
    if (plugin.debugMode)     plugin.getLogger().log(Level.INFO,"String_Node_Str");
  }
  return false;
}
Program: 10541
Project: 10541
Buggy source:
public void runQueues(){
  if (!triggerQue.isEmpty()) {
    for (    Entry<Player,List<ScriptEntry>> theEntry : triggerQue.entrySet()) {
      if (!theEntry.getValue().isEmpty()) {
        if (theEntry.getValue().get(0).getDelayedTime() < System.currentTimeMillis()) {
          boolean instantly;
          do {
            instantly=false;
            ScriptEntry theCommand=theEntry.getValue().get(0);
            plugin.executer.execute(theCommand);
            if (theEntry.getValue().size() > 1 && theEntry.getValue().get(0).isInstant())             instantly=true;
            theEntry.getValue().remove(0);
            triggerQue.put(theEntry.getKey(),theEntry.getValue());
          }
 while (instantly);
        }
      }
    }
  }
  if (!taskQue.isEmpty()) {
    for (    Entry<Player,List<ScriptEntry>> theEntry : taskQue.entrySet()) {
      if (!theEntry.getValue().isEmpty()) {
        if (theEntry.getValue().get(0).getDelayedTime() < System.currentTimeMillis()) {
          boolean instantly;
          do {
            instantly=false;
            ScriptEntry theCommand=theEntry.getValue().get(0);
            theCommand.setSendingQueue(QueueType.TASK);
            plugin.executer.execute(theCommand);
            if (theEntry.getValue().size() > 1 && theEntry.getValue().get(0).isInstant())             instantly=true;
            theEntry.getValue().remove(0);
            taskQue.put(theEntry.getKey(),theEntry.getValue());
          }
 while (instantly);
        }
      }
    }
  }
}

Fixed version (ground truth):
public void runQueues(){
  if (!triggerQue.isEmpty()) {
    for (    Entry<Player,List<ScriptEntry>> theEntry : triggerQue.entrySet()) {
      if (!theEntry.getValue().isEmpty()) {
        if (theEntry.getValue().get(0).getDelayedTime() < System.currentTimeMillis()) {
          boolean instantly;
          do {
            instantly=false;
            ScriptEntry theCommand=theEntry.getValue().get(0);
            theCommand.setSendingQueue(QueueType.TRIGGER);
            plugin.executer.execute(theCommand);
            if (theEntry.getValue().size() > 1 && theEntry.getValue().get(0).isInstant())             instantly=true;
            theEntry.getValue().remove(0);
            triggerQue.put(theEntry.getKey(),theEntry.getValue());
          }
 while (instantly);
        }
      }
    }
  }
  if (!taskQue.isEmpty()) {
    for (    Entry<Player,List<ScriptEntry>> theEntry : taskQue.entrySet()) {
      if (!theEntry.getValue().isEmpty()) {
        if (theEntry.getValue().get(0).getDelayedTime() < System.currentTimeMillis()) {
          boolean instantly;
          do {
            instantly=false;
            ScriptEntry theCommand=theEntry.getValue().get(0);
            theCommand.setSendingQueue(QueueType.TASK);
            plugin.executer.execute(theCommand);
            if (theEntry.getValue().size() > 1 && theEntry.getValue().get(0).isInstant())             instantly=true;
            theEntry.getValue().remove(0);
            taskQue.put(theEntry.getKey(),theEntry.getValue());
          }
 while (instantly);
        }
      }
    }
  }
}
Program: 10542
Project: 10542
Buggy source:
public String[] buildArgs(String stringArgs){
  if (stringArgs == null)   return null;
  List<String> matchList=new ArrayList<String>();
  Pattern regex=Pattern.compile("String_Node_Str");
  Matcher regexMatcher=regex.matcher(stringArgs);
  while (regexMatcher.find()) {
    if (regexMatcher.group(1) != null) {
      matchList.add(regexMatcher.group(1));
    }
 else     if (regexMatcher.group(2) != null) {
      matchList.add(regexMatcher.group(2));
    }
 else {
      matchList.add(regexMatcher.group());
    }
  }
  String[] split=new String[matchList.size()];
  matchList.toArray(split);
  if (plugin.debugMode)   plugin.getLogger().log(Level.INFO,"String_Node_Str" + split.toString());
  return split;
}

Fixed version (ground truth):
public String[] buildArgs(String stringArgs){
  if (stringArgs == null)   return null;
  List<String> matchList=new ArrayList<String>();
  Pattern regex=Pattern.compile("String_Node_Str");
  Matcher regexMatcher=regex.matcher(stringArgs);
  while (regexMatcher.find()) {
    if (regexMatcher.group(1) != null) {
      matchList.add(regexMatcher.group(1));
    }
 else     if (regexMatcher.group(2) != null) {
      matchList.add(regexMatcher.group(2));
    }
 else {
      matchList.add(regexMatcher.group());
    }
  }
  String[] split=new String[matchList.size()];
  matchList.toArray(split);
  if (plugin.debugMode)   plugin.getLogger().log(Level.INFO,"String_Node_Str" + Arrays.toString(split));
  return split;
}
Program: 10543
Project: 10543
Buggy source:
@EventHandler public void chatTrigger(PlayerChatEvent event){
  DenizenNPC theDenizen=plugin.getDenizenNPCRegistry().getClosest(event.getPlayer(),plugin.settings.PlayerToNpcChatRangeInBlocks());
  if (theDenizen != null) {
    if (theDenizen.IsInteractable(triggerName,event.getPlayer())) {
      String theScript=theDenizen.getInteractScript(event.getPlayer());
      if (theScript == null && !plugin.settings.ChatGloballyIfNoChatTriggers()) {
        event.setCancelled(true);
        theDenizen.talk(TalkType.Chat,event.getPlayer(),Reason.NoRequirementsMet);
      }
      if (theScript != null) {
        if (parseChatScript(theDenizen,event.getPlayer(),theScript,event.getMessage()))         event.setCancelled(true);
      }
    }
  }
}

Fixed version (ground truth):
@EventHandler public void chatTrigger(PlayerChatEvent event){
  DenizenNPC theDenizen=plugin.getDenizenNPCRegistry().getClosest(event.getPlayer(),plugin.settings.PlayerToNpcChatRangeInBlocks());
  if (plugin.debugMode)   plugin.getLogger().log(Level.INFO,"String_Node_Str");
  if (theDenizen != null) {
    if (theDenizen.IsInteractable(triggerName,event.getPlayer())) {
      String theScript=theDenizen.getInteractScript(event.getPlayer());
      if (theScript == null && !plugin.settings.ChatGloballyIfNoChatTriggers()) {
        event.setCancelled(true);
        theDenizen.talk(TalkType.Chat,event.getPlayer(),Reason.NoRequirementsMet);
      }
      if (theScript != null) {
        if (parseChatScript(theDenizen,event.getPlayer(),theScript,event.getMessage()))         event.setCancelled(true);
 else         if (plugin.debugMode)         plugin.getLogger().log(Level.INFO,"String_Node_Str");
      }
    }
  }
  if (plugin.debugMode)   plugin.getLogger().log(Level.INFO,"String_Node_Str");
}
Program: 10545
Project: 10545
Buggy source:
@Override public void onEnable(){
  if (!setupEconomy()) {
    getLogger().log(Level.SEVERE,String.format("String_Node_Str",getDescription().getName()));
    getServer().getPluginManager().disablePlugin(this);
    return;
  }
  setupPermissions();
  reloadConfig();
  reloadScripts();
  reloadSaves();
  reloadAssignments();
  CitizensAPI.getCharacterManager().registerCharacter(new CharacterFactory(DenizenCharacter.class).withName("String_Node_Str"));
  getServer().getPluginManager().registerEvents(new DenizenCharacter(),this);
  this.getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable(){
    @Override public void run(){
      scriptEngine.commandQue();
    }
  }
,settings.InteractDelayInTicks(),settings.InteractDelayInTicks());
  this.getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable(){
    @Override public void run(){
      scriptEngine.scheduleScripts();
    }
  }
,1,1000);
  this.getServer().getScheduler().scheduleSyncDelayedTask(this,new Runnable(){
    @Override public void run(){
      scriptEngine.buildLocationTriggerList();
    }
  }
,100);
}

Fixed version (ground truth):
@Override public void onEnable(){
  if (!setupEconomy()) {
    getLogger().log(Level.SEVERE,String.format("String_Node_Str",getDescription().getName()));
    getServer().getPluginManager().disablePlugin(this);
    return;
  }
  setupPermissions();
  reloadConfig();
  reloadScripts();
  reloadSaves();
  reloadAssignments();
  CitizensAPI.getCharacterManager().registerCharacter(new CharacterFactory(DenizenCharacter.class).withName("String_Node_Str"));
  getServer().getPluginManager().registerEvents(new DenizenCharacter(),this);
  this.getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable(){
    @Override public void run(){
      scriptEngine.commandQue();
      scriptEngine.enforcePosition();
    }
  }
,settings.InteractDelayInTicks(),settings.InteractDelayInTicks());
  this.getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable(){
    @Override public void run(){
      scriptEngine.scheduleScripts();
    }
  }
,1,1000);
  this.getServer().getScheduler().scheduleSyncDelayedTask(this,new Runnable(){
    @Override public void run(){
      scriptEngine.buildLocationTriggerList();
    }
  }
,100);
}
Program: 10547
Project: 10547
Buggy source:
public boolean checkLocation(Player thePlayer,Location theLocation,int theLeeway){
  if (Math.abs(thePlayer.getLocation().getBlockX() - theLocation.getBlockX()) > theLeeway)   return false;
  if (Math.abs(thePlayer.getLocation().getBlockY() - theLocation.getBlockY()) > theLeeway)   return false;
  if (Math.abs(thePlayer.getLocation().getBlockX() - theLocation.getBlockX()) > theLeeway)   return false;
  return true;
}

Fixed version (ground truth):
public boolean checkLocation(NPC theDenizen,Location theLocation,int theLeeway){
  if (Math.abs(theDenizen.getBukkitEntity().getLocation().getBlockX() - theLocation.getBlockX()) > theLeeway)   return false;
  if (Math.abs(theDenizen.getBukkitEntity().getLocation().getBlockY() - theLocation.getBlockY()) > theLeeway)   return false;
  if (Math.abs(theDenizen.getBukkitEntity().getLocation().getBlockX() - theLocation.getBlockX()) > theLeeway)   return false;
  return true;
}
Program: 10549
Project: 10549
Buggy source:
public List<String> getMultilineText(String theText){
  String[] text=theText.split("String_Node_Str");
  List<String> processedText=new ArrayList<String>();
  if (theText.length() > Denizen.settings.MultiLineTextMaximumLength()) {
    processedText.add(0,"String_Node_Str");
    int word=0;
    int line=0;
    while (word < text.length) {
      if (processedText.get(line).length() + text[word].length() < Denizen.settings.MultiLineTextMaximumLength()) {
        processedText.set(line,processedText.get(line) + "String_Node_Str" + text[word]);
        word++;
      }
 else {
        line++;
        processedText.add("String_Node_Str");
      }
    }
  }
 else   processedText.add(0,theText);
  return processedText;
}

Fixed version (ground truth):
public List<String> getMultilineText(String theText){
  List<String> processedText=new ArrayList<String>();
  if (theText == null)   return processedText;
  String[] text=theText.split("String_Node_Str");
  if (theText.length() > Denizen.settings.MultiLineTextMaximumLength()) {
    processedText.add(0,"String_Node_Str");
    int word=0;
    int line=0;
    while (word < text.length) {
      if (processedText.get(line).length() + text[word].length() < Denizen.settings.MultiLineTextMaximumLength()) {
        processedText.set(line,processedText.get(line) + "String_Node_Str" + text[word]);
        word++;
      }
 else {
        line++;
        processedText.add("String_Node_Str");
      }
    }
  }
 else   processedText.add(0,theText);
  return processedText;
}
Program: 10551
Project: 10551
Buggy source:
public void parseAll(){
  lookForGlobalTestTemplate();
  while (lineIterator != null) {
    parseMoreTokens();
  }
}

Fixed version (ground truth):
public void parseAll(){
  if (lines == null) {
    return;
  }
  lookForGlobalTestTemplate();
  while (lineIterator != null) {
    parseMoreTokens();
  }
}
Program: 10552
Project: 10552
Buggy source:
private boolean prefixesMatch(String userInputString,FileWithType proposalLocation){
  int indexOfDot=userInputString.indexOf('.');
  if (indexOfDot == -1) {
    return false;
  }
  String userInputPrefix=userInputString.substring(0,indexOfDot);
  return proposalLocation.getName().equals(userInputPrefix);
}

Fixed version (ground truth):
private boolean prefixesMatch(String userInputString,FileWithType proposalLocation){
  int indexOfDot=userInputString.indexOf('.');
  if (indexOfDot == -1) {
    return false;
  }
  String userInputPrefix=userInputString.substring(0,indexOfDot);
  return proposalLocation.getName().toLowerCase().equals(userInputPrefix);
}
Program: 10553
Project: 10553
Buggy source:
@Override public void addVariableProposals(IFile file,ParsedString argument,int documentOffset,List<RobotCompletionProposalSet> proposalSets,int maxVariableCharPos,int maxSettingCharPos){
  IRegion replacementRegion=VariableReplacementRegionCalculator.calculate(argument,documentOffset);
  VariableCompletionMatchVisitorProvider visitorProvider=new VariableCompletionMatchVisitorProvider(file,replacementRegion,maxVariableCharPos,maxSettingCharPos);
  RobotCompletionProposalSet variableProposals=computeCompletionProposals(file,documentOffset,argument,visitorProvider);
  if (replacementRegion.getLength() > 0) {
    proposalSets.add(0,variableProposals);
  }
 else {
    proposalSets.add(variableProposals);
  }
}

Fixed version (ground truth):
@Override public void addVariableProposals(IFile file,ParsedString argument,int documentOffset,List<RobotCompletionProposalSet> proposalSets,int maxVariableCharPos,int maxSettingCharPos){
  IRegion replacementRegion=VariableReplacementRegionCalculator.calculate(argument,documentOffset);
  ParsedString subArgument=argument.extractRegion(replacementRegion);
  VariableCompletionMatchVisitorProvider visitorProvider=new VariableCompletionMatchVisitorProvider(file,replacementRegion,maxVariableCharPos,maxSettingCharPos);
  RobotCompletionProposalSet variableProposals=computeCompletionProposals(file,documentOffset,subArgument,visitorProvider);
  if (replacementRegion.getLength() > 0) {
    proposalSets.add(0,variableProposals);
  }
 else {
    proposalSets.add(variableProposals);
  }
}
Program: 10554
Project: 10554
Buggy source:
public static IFile getRelativeFile(IFile originalFile,String pathRelativeToOriginalFile){
  IPath originalFolderPath=originalFile.getParent().getFullPath();
  IPath newPath=originalFolderPath.append(pathRelativeToOriginalFile);
  return originalFile.getWorkspace().getRoot().getFile(newPath);
}

Fixed version (ground truth):
public static IFile getRelativeFile(IFile originalFile,String pathRelativeToOriginalFile){
  IPath originalFolderPath=originalFile.getParent().getLocation();
  IPath newPath=originalFolderPath.append(pathRelativeToOriginalFile);
  return originalFile.getWorkspace().getRoot().getFileForLocation(newPath);
}
Program: 10555
Project: 10555
Buggy source:
private void parseLine(List<ParsedString> arguments,int lineNo,int charPos) throws CoreException {
  System.out.println(arguments);
  State oldState=state;
  state.parse(new ParsedLineInfo(this,arguments,lineNo,charPos));
  if (oldState != state) {
    System.out.println("String_Node_Str" + oldState + "String_Node_Str"+ state);
  }
}

Fixed version (ground truth):
private void parseLine(List<ParsedString> arguments,int lineNo,int charPos) throws CoreException {
  if (arguments.isEmpty()) {
    return;
  }
  System.out.println(arguments);
  State oldState=state;
  state.parse(new ParsedLineInfo(this,arguments,lineNo,charPos));
  if (oldState != state) {
    System.out.println("String_Node_Str" + oldState + "String_Node_Str"+ state);
  }
}
Program: 10556
Project: 10556
Buggy source:
private Type tryParseTableSwitch(RFELine line) throws CoreException {
  ParsedString tableArgument=line.arguments.get(0);
  if (!tableArgument.getValue().startsWith("String_Node_Str")) {
    return null;
  }
  String table=tableArgument.getValue().replace("String_Node_Str","String_Node_Str");
  Type curType=tableNameToType.get(table);
  if (curType == null) {
    return Type.IGNORE_TABLE;
  }
  return curType;
}

Fixed version (ground truth):
private Type tryParseTableSwitch(RFELine line) throws CoreException {
  ParsedString tableArgument=line.arguments.get(0);
  if (!tableArgument.getValue().startsWith("String_Node_Str")) {
    return null;
  }
  String table=ParserUtil.parseTable(tableArgument.getValue());
  Type curType=tableNameToType.get(table);
  if (curType == null) {
    return Type.IGNORE_TABLE;
  }
  return curType;
}
Program: 10557
Project: 10557
Buggy source:
protected boolean tryParseTableSwitch(ParsedLineInfo info) throws CoreException {
  ParsedString tableArgument=info.arguments.get(0);
  if (!tableArgument.getValue().startsWith("String_Node_Str")) {
    return false;
  }
  String table=tableArgument.getValue().replace("String_Node_Str","String_Node_Str");
  State nextState=tableNameToState.get(table);
  if (nextState == null) {
    nextState=Ignore.STATE;
    int firstPos=tableArgument.getValue().indexOf(table.charAt(0));
    int lastPos=tableArgument.getValue().lastIndexOf(table.charAt(table.length() - 1)) + 1;
    addMarker(info,"String_Node_Str" + table + "String_Node_Str",SeverityConfig.UNKNOWN_TABLE,tableArgument.getArgCharPos() + firstPos,tableArgument.getArgCharPos() + lastPos);
    return true;
  }
  info.setState(nextState,null);
  return true;
}

Fixed version (ground truth):
protected boolean tryParseTableSwitch(ParsedLineInfo info) throws CoreException {
  ParsedString tableArgument=info.arguments.get(0);
  if (!tableArgument.getValue().startsWith("String_Node_Str")) {
    return false;
  }
  String table=ParserUtil.parseTable(tableArgument.getValue());
  State nextState=tableNameToState.get(table);
  if (nextState == null) {
    nextState=Ignore.STATE;
    int firstPos=tableArgument.getValue().indexOf(table.charAt(0));
    int lastPos=tableArgument.getValue().lastIndexOf(table.charAt(table.length() - 1)) + 1;
    addMarker(info,"String_Node_Str" + table + "String_Node_Str",SeverityConfig.UNKNOWN_TABLE,tableArgument.getArgCharPos() + firstPos,tableArgument.getArgCharPos() + lastPos);
    return true;
  }
  info.setState(nextState,null);
  return true;
}