Program: 24279
Project: 24279
Buggy source:
public List<String> annotateSentenceWithSupersenses(Tree sentence){
  List<String> result=new ArrayList<String>();
  int numleaves=sentence.getLeaves().size();
  if (numleaves <= 1) {
    return result;
  }
  LabeledSentence labeled=generateSupersenseTaggingInput(sentence);
  int port=new Integer(ARKref.getProperties().getProperty("String_Node_Str","String_Node_Str"));
  String host="String_Node_Str";
  Socket client;
  PrintWriter pw;
  BufferedReader br;
  String line;
  try {
    client=new Socket(host,port);
    pw=new PrintWriter(client.getOutputStream());
    br=new BufferedReader(new InputStreamReader(client.getInputStream()));
    String inputStr="String_Node_Str";
    for (int i=0; i < labeled.length(); i++) {
      String token=labeled.getTokens().get(i);
      String stem=labeled.getStems().get(i);
      String pos=labeled.getPOS().get(i);
      inputStr+=token + "String_Node_Str" + stem+ "String_Node_Str"+ pos+ "String_Node_Str";
    }
    pw.println(inputStr);
    pw.flush();
    while ((line=br.readLine()) != null) {
      String[] parts=line.split("String_Node_Str");
      result.add(parts[2]);
    }
    br.close();
    pw.close();
    client.close();
  }
 catch (  Exception ex) {
    if (ARKref.Opts.debug)     System.err.println("String_Node_Str");
  }
  if (result.size() == 0) {
    try {
      if (sst == null) {
        sst=DiscriminativeTagger.loadModel(ARKref.getProperties().getProperty("String_Node_Str","String_Node_Str"));
      }
      sst.findBestLabelSequenceViterbi(labeled,sst.getWeights());
      for (      String pred : labeled.getPredictions()) {
        result.add(pred);
      }
    }
 catch (    Exception e) {
      e.printStackTrace();
    }
  }
  while (result.size() < numleaves)   result.add("String_Node_Str");
  if (ARKref.Opts.debug)   System.err.println("String_Node_Str" + result);
  return result;
}

Fixed version (ground truth):
public List<String> annotateSentenceWithSupersenses(Tree sentence){
  List<String> result=new ArrayList<String>();
  int numleaves=sentence.getLeaves().size();
  if (numleaves <= 1) {
    return result;
  }
  LabeledSentence labeled=generateSupersenseTaggingInput(sentence);
  int port=new Integer(ARKref.getProperties().getProperty("String_Node_Str","String_Node_Str"));
  String host="String_Node_Str";
  Socket client;
  PrintWriter pw;
  BufferedReader br;
  String line;
  try {
    client=new Socket(host,port);
    pw=new PrintWriter(client.getOutputStream());
    br=new BufferedReader(new InputStreamReader(client.getInputStream()));
    String inputStr="String_Node_Str";
    for (int i=0; i < labeled.length(); i++) {
      String token=labeled.getTokens().get(i);
      String stem=labeled.getStems().get(i);
      String pos=labeled.getPOS().get(i);
      inputStr+=token + "String_Node_Str" + stem+ "String_Node_Str"+ pos+ "String_Node_Str";
    }
    pw.println(inputStr);
    pw.flush();
    while ((line=br.readLine()) != null) {
      String[] parts=line.split("String_Node_Str");
      result.add(parts[2]);
    }
    br.close();
    pw.close();
    client.close();
  }
 catch (  Exception ex) {
    if (ARKref.Opts.debug)     System.err.println("String_Node_Str");
  }
  if (result.size() == 0) {
    try {
      if (sst == null) {
        DiscriminativeTagger.loadProperties(ARKref.getPropertiesPath());
        sst=DiscriminativeTagger.loadModel(ARKref.getProperties().getProperty("String_Node_Str","String_Node_Str"));
      }
      sst.findBestLabelSequenceViterbi(labeled,sst.getWeights());
      for (      String pred : labeled.getPredictions()) {
        result.add(pred);
      }
    }
 catch (    Exception e) {
      e.printStackTrace();
    }
  }
  while (result.size() < numleaves)   result.add("String_Node_Str");
  if (ARKref.Opts.debug)   System.err.println("String_Node_Str" + result);
  return result;
}