Program: 9583
Project: 9583
Buggy source:
/** 
 * gets synonyms, attribute etc. from WordNet and construct grammar entries  INPUT:  array of tokens and array of POStags, from which preprocessor constructs a list of pairs (token,pos) OUTPUT: list of (treestring,dude) 
 */
public List<String[]> build(String taggedstring,List<Pair<String,String>> tokenPOSpairs){
  List<String[]> result=new ArrayList<String[]>();
  for (  Pair<String,String> pair : tokenPOSpairs) {
    String token=pair.fst;
    String pos=pair.snd;
    String type="String_Node_Str";
    if (equalsOneOf(pos,noun)) {
      if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        type="String_Node_Str";
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        type="String_Node_Str";
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        type="String_Node_Str";
      }
      List<String> words=new ArrayList<String>();
      words.add(token);
      if (!pos.equals("String_Node_Str") && !pos.equals("String_Node_Str") && !pos.equals("String_Node_Str")) {
      }
      String tokenfluent=token.replaceAll("String_Node_Str","String_Node_Str").replaceAll("String_Node_Str","String_Node_Str");
      String slotX="String_Node_Str" + type + "String_Node_Str";
      String slotP="String_Node_Str" + tokenfluent + "String_Node_Str"+ type+ "String_Node_Str";
      String slotC="String_Node_Str" + tokenfluent + "String_Node_Str";
      for (Iterator<String> i=words.iterator(); i.hasNext(); ) {
        String next=i.next().replaceAll("String_Node_Str","String_Node_Str");
        slotX+=next;
        slotP+=next;
        slotC+=next;
        if (i.hasNext()) {
          slotX+="String_Node_Str";
          slotP+="String_Node_Str";
          slotC+="String_Node_Str";
        }
      }
      String treetoken="String_Node_Str" + token.toLowerCase() + "String_Node_Str";
      if (token.trim().contains("String_Node_Str")) {
        String[] tokenParts=token.split("String_Node_Str");
        treetoken="String_Node_Str";
        for (        String t : tokenParts) {
          treetoken+="String_Node_Str" + t.toLowerCase() + "String_Node_Str";
        }
        treetoken=treetoken.trim();
      }
      if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        String[] dpEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"};
        String[] dpEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"};
        result.add(dpEntry1);
        result.add(dpEntry2);
        String[] npEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"};
        String[] npEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"};
        result.add(npEntry1);
        result.add(npEntry2);
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        String[] dpEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + slotX + "String_Node_Str"};
        String[] dpEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + slotX + "String_Node_Str"};
        result.add(dpEntry1);
        result.add(dpEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] dpEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"+ "String_Node_Str"+ tokenfluent+ "String_Node_Str"+ slotC+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        String[] dpEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"+ "String_Node_Str"+ tokenfluent+ "String_Node_Str"+ slotC+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        String[] npEntry={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"+ "String_Node_Str"+ tokenfluent+ "String_Node_Str"+ slotC+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        result.add(dpEntry1);
        result.add(dpEntry2);
        result.add(npEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String jjtoken=token.substring(0,token.indexOf("String_Node_Str"));
        String nntoken=token.substring(token.indexOf("String_Node_Str") + 1);
        String slotfluent="String_Node_Str" + tokenfluent + "String_Node_Str"+ token;
        String slotnn="String_Node_Str" + nntoken + "String_Node_Str"+ nntoken;
        String slotnnc="String_Node_Str" + nntoken + "String_Node_Str"+ nntoken;
        String slotjj="String_Node_Str" + jjtoken + "String_Node_Str"+ jjtoken;
        String[] dpEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotfluent+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnn+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnnc+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        String[] dpEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotfluent+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnn+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnnc+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        String[] npEntry={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotfluent+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnn+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnnc+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        result.add(dpEntry1);
        result.add(dpEntry2);
        result.add(npEntry);
      }
 else       if (pos.equals("String_Node_Str") && token.contains("String_Node_Str")) {
        String[] tokens=token.split("String_Node_Str");
        String nntoken=tokens[tokens.length - 1];
        String slotfluent="String_Node_Str" + tokenfluent + "String_Node_Str"+ token;
        String slotnn="String_Node_Str" + nntoken + "String_Node_Str"+ nntoken;
        String semantics="String_Node_Str" + tokenfluent + "String_Node_Str"+ slotfluent+ "String_Node_Str"+ "String_Node_Str"+ nntoken+ "String_Node_Str";
        String slots=slotnn;
        for (int i=0; i < (tokens.length - 1); i++) {
          semantics+="String_Node_Str" + tokens[i] + "String_Node_Str";
          slots+="String_Node_Str" + tokens[i] + "String_Node_Str"+ tokens[i];
        }
        semantics+="String_Node_Str" + slots + "String_Node_Str";
        String[] npEntry={token,"String_Node_Str" + treetoken + "String_Node_Str",semantics};
        result.add(npEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String slot="String_Node_Str" + token + "String_Node_Str"+ type+ "String_Node_Str"+ token;
        String[] nnentry={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(nnentry);
      }
    }
 else     if (equalsOneOf(pos,verb)) {
      String slot;
      String symslot;
      slot="String_Node_Str" + token + "String_Node_Str"+ token;
      symslot="String_Node_Str" + token + "String_Node_Str"+ token;
      if (pos.equals("String_Node_Str")) {
        String[] passEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        String[] passEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(passEntry1);
        result.add(passEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] passpartEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(passpartEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] passEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(passEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] passEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"};
        String[] passEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"};
        result.add(passEntry1);
        result.add(passEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] gerundinEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        String[] gerundinEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(gerundinEntry1);
        result.add(gerundinEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] passEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        String[] passEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"};
        String[] whEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(passEntry);
        result.add(passEntry2);
        result.add(whEntry);
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        String[] vEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(vEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] whEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(whEntry);
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        String[] gerEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        String[] wasGerEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"};
        result.add(gerEntry);
        result.add(wasGerEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String dateSlot="String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ token+ "String_Node_Str";
        String tokenSlot="String_Node_Str" + token + "String_Node_Str"+ token;
        String[] whenEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ dateSlot+ "String_Node_Str"};
        String[] whenEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ "String_Node_Str"+ tokenSlot+ "String_Node_Str"};
        result.add(whenEntry1);
        result.add(whenEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String placeSlot="String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ token+ "String_Node_Str";
        String tokenSlot="String_Node_Str" + token + "String_Node_Str"+ token;
        String[] whereEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ placeSlot+ "String_Node_Str"};
        String[] whereEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ "String_Node_Str"+ tokenSlot+ "String_Node_Str"};
        result.add(whereEntry1);
        result.add(whereEntry2);
      }
    }
 else     if (equalsOneOf(pos,adjective)) {
      String slot="String_Node_Str" + token + "String_Node_Str"+ token;
      if (pos.equals("String_Node_Str")) {
        String[] adjEntry={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(adjEntry);
      }
      if (pos.equals("String_Node_Str")) {
        String[] howEntry={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(howEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String pol=polarity(token);
        String comp;
        if (pol.equals("String_Node_Str")) {
          comp="String_Node_Str";
        }
 else {
          comp="String_Node_Str";
        }
        String[] compEntry1={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(compEntry1);
        String[] compEntry2={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(compEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String pol=polarity(token);
        String comp;
        if (pol.equals("String_Node_Str")) {
          comp="String_Node_Str";
        }
 else {
          comp="String_Node_Str";
        }
        String[] superEntry1={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(superEntry1);
        String[] superEntry2={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(superEntry2);
        String[] superEntry3={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(superEntry3);
      }
    }
 else     if (equalsOneOf(pos,preps)) {
      String slot="String_Node_Str" + token + "String_Node_Str"+ token;
      String[] npAdjunct={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ slot+ "String_Node_Str"+ "String_Node_Str"};
      String[] vpAdjunct={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ slot+ "String_Node_Str"+ "String_Node_Str"};
      result.add(npAdjunct);
      result.add(vpAdjunct);
    }
  }
  return result;
}

Fixed version (ground truth):
/** 
 * gets synonyms, attribute etc. from WordNet and construct grammar entries  INPUT:  array of tokens and array of POStags, from which preprocessor constructs a list of pairs (token,pos) OUTPUT: list of (treestring,dude) 
 */
public List<String[]> build(String taggedstring,List<Pair<String,String>> tokenPOSpairs){
  List<String[]> result=new ArrayList<String[]>();
  for (  Pair<String,String> pair : tokenPOSpairs) {
    String token=pair.fst;
    String pos=pair.snd;
    String type="String_Node_Str";
    if (equalsOneOf(pos,noun)) {
      if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        type="String_Node_Str";
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        type="String_Node_Str";
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        type="String_Node_Str";
      }
      List<String> words=new ArrayList<String>();
      words.add(token);
      if (!pos.equals("String_Node_Str") && !pos.equals("String_Node_Str") && !pos.equals("String_Node_Str")) {
      }
      String tokenfluent=token.replaceAll("String_Node_Str","String_Node_Str").replaceAll("String_Node_Str","String_Node_Str");
      String slotX="String_Node_Str" + type + "String_Node_Str";
      String slotP="String_Node_Str" + tokenfluent + "String_Node_Str"+ type+ "String_Node_Str";
      String slotC="String_Node_Str" + tokenfluent + "String_Node_Str";
      for (Iterator<String> i=words.iterator(); i.hasNext(); ) {
        String next=i.next().replaceAll("String_Node_Str","String_Node_Str");
        slotX+=next;
        slotP+=next;
        slotC+=next;
        if (i.hasNext()) {
          slotX+="String_Node_Str";
          slotP+="String_Node_Str";
          slotC+="String_Node_Str";
        }
      }
      String treetoken="String_Node_Str" + token.toLowerCase() + "String_Node_Str";
      if (token.trim().contains("String_Node_Str")) {
        String[] tokenParts=token.split("String_Node_Str");
        treetoken="String_Node_Str";
        for (        String t : tokenParts) {
          treetoken+="String_Node_Str" + t.toLowerCase() + "String_Node_Str";
        }
        treetoken=treetoken.trim();
      }
      if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        String[] dpEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"};
        String[] dpEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"};
        result.add(dpEntry1);
        result.add(dpEntry2);
        String[] npEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"};
        String[] npEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"};
        result.add(npEntry1);
        result.add(npEntry2);
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        String[] dpEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + slotX + "String_Node_Str"};
        String[] dpEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + slotX + "String_Node_Str"};
        result.add(dpEntry1);
        result.add(dpEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] dpEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"+ "String_Node_Str"+ tokenfluent+ "String_Node_Str"+ slotC+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        String[] dpEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"+ "String_Node_Str"+ tokenfluent+ "String_Node_Str"+ slotC+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        String[] npEntry={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotP+ "String_Node_Str"+ "String_Node_Str"+ tokenfluent+ "String_Node_Str"+ slotC+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        result.add(dpEntry1);
        result.add(dpEntry2);
        result.add(npEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String jjtoken=token.substring(0,token.indexOf("String_Node_Str"));
        String nntoken=token.substring(token.indexOf("String_Node_Str") + 1);
        String slotfluent="String_Node_Str" + tokenfluent + "String_Node_Str"+ token;
        String slotnn="String_Node_Str" + nntoken + "String_Node_Str"+ nntoken;
        String slotnnc="String_Node_Str" + nntoken + "String_Node_Str"+ nntoken;
        String slotjj="String_Node_Str" + jjtoken + "String_Node_Str"+ jjtoken;
        String[] dpEntry1={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotfluent+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnn+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnnc+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        String[] dpEntry2={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotfluent+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnn+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnnc+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        String[] npEntry={token,"String_Node_Str" + treetoken + "String_Node_Str","String_Node_Str" + tokenfluent + "String_Node_Str"+ slotfluent+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnn+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ jjtoken+ "String_Node_Str"+ nntoken+ "String_Node_Str"+ slotnnc+ "String_Node_Str"+ slotjj+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        result.add(dpEntry1);
        result.add(dpEntry2);
        result.add(npEntry);
      }
 else       if (pos.equals("String_Node_Str") && token.contains("String_Node_Str")) {
        String[] tokens=token.split("String_Node_Str");
        String nntoken=tokens[tokens.length - 1];
        String slotfluent="String_Node_Str" + tokenfluent + "String_Node_Str"+ token;
        String slotnn="String_Node_Str" + nntoken + "String_Node_Str"+ nntoken;
        String semantics="String_Node_Str" + tokenfluent + "String_Node_Str"+ slotfluent+ "String_Node_Str"+ "String_Node_Str"+ nntoken+ "String_Node_Str";
        String slots=slotnn;
        for (int i=0; i < (tokens.length - 1); i++) {
          semantics+="String_Node_Str" + tokens[i] + "String_Node_Str";
          slots+="String_Node_Str" + tokens[i] + "String_Node_Str"+ tokens[i];
        }
        semantics+="String_Node_Str" + slots + "String_Node_Str";
        String[] npEntry={token,"String_Node_Str" + treetoken + "String_Node_Str",semantics};
        result.add(npEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String slot="String_Node_Str" + token + "String_Node_Str"+ type+ "String_Node_Str"+ token;
        String[] nnentry={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(nnentry);
      }
    }
 else     if (equalsOneOf(pos,verb)) {
      String slot;
      String symslot;
      slot="String_Node_Str" + token + "String_Node_Str"+ token;
      symslot="String_Node_Str" + token + "String_Node_Str"+ token;
      if (pos.equals("String_Node_Str")) {
        String[] passEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        String[] passEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(passEntry1);
        result.add(passEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] passpartEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(passpartEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] passEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(passEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] passEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"};
        String[] passEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"};
        result.add(passEntry1);
        result.add(passEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] gerundinEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        String[] gerundinEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(gerundinEntry1);
        result.add(gerundinEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] passEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        String[] passEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"};
        String[] whEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(passEntry);
        result.add(passEntry2);
        result.add(whEntry);
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        String[] vEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"};
        result.add(vEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String[] whEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        result.add(whEntry);
      }
 else       if (pos.equals("String_Node_Str") || pos.equals("String_Node_Str")) {
        String[] gerEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"+ "String_Node_Str"};
        String[] wasGerEntry={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ symslot+ "String_Node_Str"};
        result.add(gerEntry);
        result.add(wasGerEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String dateSlot="String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ token+ "String_Node_Str";
        String tokenSlot="String_Node_Str" + token + "String_Node_Str"+ token;
        String[] whenEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ dateSlot+ "String_Node_Str"};
        String[] whenEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ "String_Node_Str"+ tokenSlot+ "String_Node_Str"};
        result.add(whenEntry1);
        result.add(whenEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String placeSlot="String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ token+ "String_Node_Str";
        String tokenSlot="String_Node_Str" + token + "String_Node_Str"+ token;
        String[] whereEntry1={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ placeSlot+ "String_Node_Str"};
        String[] whereEntry2={token,"String_Node_Str" + token + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ "String_Node_Str"+ tokenSlot+ "String_Node_Str"};
        result.add(whereEntry1);
        result.add(whereEntry2);
      }
    }
 else     if (equalsOneOf(pos,adjective)) {
      String slot="String_Node_Str" + token + "String_Node_Str"+ token;
      if (pos.equals("String_Node_Str")) {
        String[] adjEntry={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(adjEntry);
      }
      if (pos.equals("String_Node_Str")) {
        String[] howEntry={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(howEntry);
      }
 else       if (pos.equals("String_Node_Str")) {
        String pol=polarity(token);
        String comp;
        if (pol.equals("String_Node_Str")) {
          comp="String_Node_Str";
        }
 else {
          comp="String_Node_Str";
        }
        String[] compEntry1={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(compEntry1);
        String[] compEntry2={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ token+ "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(compEntry2);
      }
 else       if (pos.equals("String_Node_Str")) {
        String pol=polarity(token);
        String comp;
        if (pol.equals("String_Node_Str")) {
          comp="String_Node_Str";
        }
 else {
          comp="String_Node_Str";
        }
        String[] superEntry1={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(superEntry1);
        String[] superEntry2={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(superEntry2);
        String[] superEntry3={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ comp+ "String_Node_Str"+ slot+ "String_Node_Str"};
        result.add(superEntry3);
      }
    }
 else     if (equalsOneOf(pos,preps)) {
      String slot="String_Node_Str" + token + "String_Node_Str"+ token;
      String[] npAdjunct={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ slot+ "String_Node_Str"+ "String_Node_Str"};
      String[] vpAdjunct={token,"String_Node_Str" + token.toLowerCase() + "String_Node_Str","String_Node_Str" + token + "String_Node_Str"+ slot+ "String_Node_Str"+ "String_Node_Str"};
      result.add(npAdjunct);
      result.add(vpAdjunct);
    }
  }
  return result;
}