nus-yam/ex-repair huggingface dataset:
Program: 82819
Project: 82819
Buggy source:
/** 
 * Gets a JParameter iterator for a constructor method over its synthetic parameters.
 */
private static Iterator<JParameter> getSyntheticsIterator(JMethod method){
  Iterator<JParameter> it=method.params.iterator();
  for (int i=0, c=method.getOriginalParamTypes().size(); i < c; ++i) {
    it.next();
  }
  return it;
}

Fixed version (ground truth):
/** 
 * Gets a JParameter iterator for a constructor method over its synthetic parameters.
 */
private Iterator<JParameter> getSyntheticsIterator(){
  Iterator<JParameter> it=currentMethod.params.iterator();
  for (int i=0, c=currentMethod.getOriginalParamTypes().size(); i < c; ++i) {
    it.next();
  }
  return it;
}
Program: 82820
Project: 82820
Buggy source:
JMethodCall processThisConstructorCall(ExplicitConstructorCall x){
  SourceInfo info=makeSourceInfo(x);
  JMethod ctor=(JMethod)typeMap.get(x.binding);
  JExpression trueQualifier=createThisRef(info,currentClass);
  JMethodCall call=new JMethodCall(program,info,trueQualifier,ctor);
  assert(x.qualification == null);
  addCallArgs(x.arguments,call,x.binding);
  ReferenceBinding declaringClass=x.binding.declaringClass;
  if (declaringClass instanceof NestedTypeBinding) {
    Iterator<JParameter> paramIt=getSyntheticsIterator(currentMethod);
    NestedTypeBinding nestedBinding=(NestedTypeBinding)declaringClass;
    if (nestedBinding.enclosingInstances != null) {
      for (int i=0; i < nestedBinding.enclosingInstances.length; ++i) {
        call.getArgs().add(createVariableRef(info,paramIt.next()));
      }
    }
    if (nestedBinding.outerLocalVariables != null) {
      for (int i=0; i < nestedBinding.outerLocalVariables.length; ++i) {
        call.getArgs().add(createVariableRef(info,paramIt.next()));
      }
    }
  }
  return call;
}

Fixed version (ground truth):
JMethodCall processThisConstructorCall(ExplicitConstructorCall x){
  SourceInfo info=makeSourceInfo(x);
  JMethod ctor=(JMethod)typeMap.get(x.binding);
  JExpression trueQualifier=createThisRef(info,currentClass);
  JMethodCall call=new JMethodCall(program,info,trueQualifier,ctor);
  assert(x.qualification == null);
  addCallArgs(x.arguments,call,x.binding);
  ReferenceBinding declaringClass=x.binding.declaringClass;
  if (declaringClass.isNestedType() && !declaringClass.isStatic()) {
    Iterator<JParameter> paramIt=getSyntheticsIterator();
    NestedTypeBinding nestedBinding=(NestedTypeBinding)erasure(declaringClass);
    if (nestedBinding.enclosingInstances != null) {
      for (int i=0; i < nestedBinding.enclosingInstances.length; ++i) {
        call.getArgs().add(createVariableRef(info,paramIt.next()));
      }
    }
    if (nestedBinding.outerLocalVariables != null) {
      for (int i=0; i < nestedBinding.outerLocalVariables.length; ++i) {
        call.getArgs().add(createVariableRef(info,paramIt.next()));
      }
    }
  }
  return call;
}
Program: 82823
Project: 82823
Buggy source:
public void testInnerClassLoop(){
  final StringBuffer b=new StringBuffer();
  List results=new ArrayList();
abstract class AppendToStringBuffer {
    public AppendToStringBuffer(    int i){
      this.num=i;
    }
    public abstract void act();
    int num;
  }
  for (int i=0; i < 10; i++) {
    AppendToStringBuffer ap=new AppendToStringBuffer(i){
      public void act(){
        b.append(num);
      }
    }
;
    results.add(ap);
  }
  for (Iterator it=results.iterator(); it.hasNext(); ) {
    AppendToStringBuffer theAp=(AppendToStringBuffer)it.next();
    theAp.act();
  }
  assertEquals("String_Node_Str",b.toString());
}

Fixed version (ground truth):
public void testInnerClassLoop(){
  final StringBuffer b=new StringBuffer();
abstract class AppendToStringBuffer {
    int num;
    public AppendToStringBuffer(    int i){
      this.num=i;
    }
    public abstract void act();
  }
  List<AppendToStringBuffer> results=new ArrayList<AppendToStringBuffer>();
  for (int i=0; i < 10; i++) {
    AppendToStringBuffer ap=new AppendToStringBuffer(i){
      public void act(){
        b.append(num);
      }
    }
;
    results.add(ap);
  }
  for (  AppendToStringBuffer theAp : results) {
    theAp.act();
  }
  assertEquals("String_Node_Str",b.toString());
}
Program: 82824
Project: 82824
Buggy source:
public void testInnerClassInitialization(){
  assertEquals("String_Node_Str",testAppend.toString());
}

Fixed version (ground truth):
public void testInnerClassInitialization(){
  testAppend=new StringBuffer();
  new InnerClass();
  assertEquals("String_Node_Str",testAppend.toString());
}
Program: 82825
Project: 82825
Buggy source:
void callInner(){
  testAppend.append("String_Node_Str");
class ReallyInnerClass {
    void callReallyInner(){
      testAppend.append("String_Node_Str");
    }
{
      callReallyInner();
    }
  }
  new ReallyInnerClass();
}

Fixed version (ground truth):
void callInner(){
  testAppend.append("String_Node_Str");
class ReallyInnerClass {
{
      callReallyInner();
    }
    void callReallyInner(){
      testAppend.append("String_Node_Str");
    }
  }
  new ReallyInnerClass();
}
Program: 82827
Project: 82827
Buggy source:
private void processDim(JNewArray x,Context ctx,JArrayType arrayType){
  JMethodCall call=new JMethodCall(program,x.getSourceInfo(),null,initDim,arrayType);
  JLiteral classLit=program.getLiteralClass(arrayType);
  JLiteral typeIdLit=program.getLiteralInt(program.getTypeId(arrayType));
  JLiteral queryIdLit=program.getLiteralInt(tryGetQueryId(arrayType));
  JType leafType=arrayType.getLeafType();
  JExpression dim=x.dims.get(0);
  call.getArgs().add(classLit);
  call.getArgs().add(typeIdLit);
  call.getArgs().add(queryIdLit);
  call.getArgs().add(dim);
  call.getArgs().add(getSeedTypeLiteralFor(leafType));
  ctx.replaceMe(call);
}

Fixed version (ground truth):
private void processDim(JNewArray x,Context ctx,JArrayType arrayType){
  JMethodCall call=new JMethodCall(program,x.getSourceInfo(),null,initDim,arrayType);
  JLiteral classLit=program.getLiteralClass(arrayType);
  JLiteral typeIdLit=program.getLiteralInt(program.getTypeId(arrayType));
  JLiteral queryIdLit=program.getLiteralInt(tryGetQueryId(arrayType));
  JExpression dim=x.dims.get(0);
  JType elementType=arrayType.getElementType();
  call.getArgs().add(classLit);
  call.getArgs().add(typeIdLit);
  call.getArgs().add(queryIdLit);
  call.getArgs().add(dim);
  call.getArgs().add(getSeedTypeLiteralFor(elementType));
  ctx.replaceMe(call);
}
Program: 82828
Project: 82828
Buggy source:
private void processDims(JNewArray x,Context ctx,JArrayType arrayType){
  JMethodCall call=new JMethodCall(program,x.getSourceInfo(),null,initDims,arrayType);
  JsonArray classLitList=new JsonArray(program);
  JsonArray typeIdList=new JsonArray(program);
  JsonArray queryIdList=new JsonArray(program);
  JsonArray dimList=new JsonArray(program);
  JType leafType=arrayType.getLeafType();
  int outstandingDims=arrayType.getDims();
  for (int i=0; i < x.dims.size(); ++i) {
    JExpression dim=x.dims.get(i);
    if (dim instanceof JAbsentArrayDimension) {
      break;
    }
    JArrayType cur=program.getTypeArray(leafType,outstandingDims--);
    JLiteral classLit=program.getLiteralClass(cur);
    classLitList.exprs.add(classLit);
    JLiteral typeIdLit=program.getLiteralInt(program.getTypeId(cur));
    typeIdList.exprs.add(typeIdLit);
    JLiteral queryIdLit=program.getLiteralInt(tryGetQueryId(cur));
    queryIdList.exprs.add(queryIdLit);
    dimList.exprs.add(dim);
  }
  JType targetType=leafType;
  if (outstandingDims > 0) {
    targetType=program.getTypeArray(targetType,outstandingDims);
  }
  call.getArgs().add(classLitList);
  call.getArgs().add(typeIdList);
  call.getArgs().add(queryIdList);
  call.getArgs().add(dimList);
  call.getArgs().add(getSeedTypeLiteralFor(targetType));
  ctx.replaceMe(call);
}

Fixed version (ground truth):
private void processDims(JNewArray x,Context ctx,JArrayType arrayType,int dims){
  JMethodCall call=new JMethodCall(program,x.getSourceInfo(),null,initDims,arrayType);
  JsonArray classLitList=new JsonArray(program);
  JsonArray typeIdList=new JsonArray(program);
  JsonArray queryIdList=new JsonArray(program);
  JsonArray dimList=new JsonArray(program);
  JType cur=arrayType;
  for (int i=0; i < dims; ++i) {
    JArrayType curArrayType=(JArrayType)cur;
    JLiteral classLit=program.getLiteralClass(cur);
    classLitList.exprs.add(classLit);
    JLiteral typeIdLit=program.getLiteralInt(program.getTypeId(curArrayType));
    typeIdList.exprs.add(typeIdLit);
    JLiteral queryIdLit=program.getLiteralInt(tryGetQueryId(curArrayType));
    queryIdList.exprs.add(queryIdLit);
    dimList.exprs.add(x.dims.get(i));
    cur=curArrayType.getElementType();
  }
  call.getArgs().add(classLitList);
  call.getArgs().add(typeIdList);
  call.getArgs().add(queryIdList);
  call.getArgs().add(dimList);
  call.getArgs().add(program.getLiteralInt(dims));
  call.getArgs().add(getSeedTypeLiteralFor(cur));
  ctx.replaceMe(call);
}
Program: 82829
Project: 82829
Buggy source:
@Override public void endVisit(JNewArray x,Context ctx){
  JArrayType type=x.getArrayType();
  if (x.initializers != null) {
    processInitializers(x,ctx,type);
  }
 else   if (type.getDims() == 1) {
    processDim(x,ctx,type);
  }
 else {
    processDims(x,ctx,type);
  }
}

Fixed version (ground truth):
@Override public void endVisit(JNewArray x,Context ctx){
  JArrayType type=x.getArrayType();
  if (x.initializers != null) {
    processInitializers(x,ctx,type);
  }
 else {
    int realDims=0;
    for (    JExpression dim : x.dims) {
      if (dim instanceof JAbsentArrayDimension) {
        break;
      }
      ++realDims;
    }
    assert(realDims >= 1);
    if (realDims == 1) {
      processDim(x,ctx,type);
    }
 else {
      processDims(x,ctx,type,realDims);
    }
  }
}
Program: 82830
Project: 82830
Buggy source:
/** 
 * @see com.google.gwt.lang.Array regarding seed types
 */
private JIntLiteral getSeedTypeLiteralFor(JType type){
  if (type instanceof JPrimitiveType) {
    if (type == program.getTypePrimitiveBoolean()) {
      return program.getLiteralInt(2);
    }
 else {
      return program.getLiteralInt(1);
    }
  }
  return program.getLiteralInt(0);
}

Fixed version (ground truth):
/** 
 * @see com.google.gwt.lang.Array regarding seed types
 */
private JIntLiteral getSeedTypeLiteralFor(JType type){
  if (type instanceof JPrimitiveType) {
    if (type == program.getTypePrimitiveLong()) {
      return program.getLiteralInt(3);
    }
 else     if (type == program.getTypePrimitiveBoolean()) {
      return program.getLiteralInt(2);
    }
 else {
      return program.getLiteralInt(1);
    }
  }
  return program.getLiteralInt(0);
}
Program: 82831
Project: 82831
Buggy source:
private static Array initDims(Class arrayClasses[],int[] typeIdExprs,int[] queryIdExprs,int[] dimExprs,int index,int count,int seedType){
  int length=dimExprs[index];
  if (length < 0) {
    throw new NegativeArraySizeException();
  }
  boolean isLastDim=(index == (count - 1));
  Array result=createFromSeed(isLastDim ? seedType : NULL_SEED_TYPE,length);
  initValues(arrayClasses[index],typeIdExprs[index],queryIdExprs[index],result);
  if (!isLastDim) {
    ++index;
    for (int i=0; i < length; ++i) {
      set(result,i,initDims(arrayClasses,typeIdExprs,queryIdExprs,dimExprs,index,count,seedType));
    }
  }
  return result;
}

Fixed version (ground truth):
private static Array initDims(Class arrayClasses[],int[] typeIdExprs,int[] queryIdExprs,int[] dimExprs,int index,int count,int seedType){
  int length=dimExprs[index];
  boolean isLastDim=(index == (count - 1));
  Array result=createFromSeed(isLastDim ? seedType : NULL_SEED_TYPE,length);
  initValues(arrayClasses[index],typeIdExprs[index],queryIdExprs[index],result);
  if (!isLastDim) {
    ++index;
    for (int i=0; i < length; ++i) {
      set(result,i,initDims(arrayClasses,typeIdExprs,queryIdExprs,dimExprs,index,count,seedType));
    }
  }
  return result;
}
Program: 82832
Project: 82832
Buggy source:
private void maybeDispatch(Scope referencedFrom,Expression expression,TypeBinding binding){
  if (binding instanceof SourceTypeBinding) {
    SourceTypeBinding type=(SourceTypeBinding)binding;
    CompilationUnitScope from=findUnitScope(referencedFrom);
    onTypeRef(type,from.referenceContext);
  }
 else   if (binding instanceof ArrayBinding) {
    maybeDispatch(referencedFrom,expression,((ArrayBinding)binding).leafComponentType);
  }
 else   if (binding instanceof BinaryTypeBinding) {
    CompilationUnitScope from=findUnitScope(referencedFrom);
    onBinaryTypeRef((BinaryTypeBinding)binding,from.referenceContext,expression);
  }
 else {
  }
}

Fixed version (ground truth):
private void maybeDispatch(Scope referencedFrom,Expression expression,TypeBinding binding){
  assert(referencedFrom != null);
  assert(binding != null);
  if (binding instanceof SourceTypeBinding) {
    SourceTypeBinding type=(SourceTypeBinding)binding;
    CompilationUnitScope from=findUnitScope(referencedFrom);
    onTypeRef(type,from.referenceContext);
  }
 else   if (binding instanceof ArrayBinding) {
    maybeDispatch(referencedFrom,expression,((ArrayBinding)binding).leafComponentType);
  }
 else   if (binding instanceof BinaryTypeBinding) {
    CompilationUnitScope from=findUnitScope(referencedFrom);
    onBinaryTypeRef((BinaryTypeBinding)binding,from.referenceContext,expression);
  }
 else   if (binding instanceof ParameterizedTypeBinding) {
    ParameterizedTypeBinding ptBinding=(ParameterizedTypeBinding)binding;
    maybeDispatch(referencedFrom,expression,ptBinding.genericType());
  }
 else   if (binding instanceof RawTypeBinding) {
    RawTypeBinding rawTypeBinding=(RawTypeBinding)binding;
    maybeDispatch(referencedFrom,expression,rawTypeBinding.genericType());
  }
 else {
  }
}
Program: 82834
Project: 82834
Buggy source:
public void testServiceInterfaceLocation(){
  RemoteServiceServletTestServiceAsync service=getAsyncService();
  delayTestFinish(TEST_DELAY);
  service.test(new AsyncCallback(){
    public void onFailure(    Throwable caught){
      TestSetValidator.rethrowException(caught);
    }
    public void onSuccess(    Object result){
      finishTest();
    }
  }
);
}

Fixed version (ground truth):
public void testServiceInterfaceLocation(){
  RemoteServiceServletTestServiceAsync service=getAsyncService();
  delayTestFinish(TEST_DELAY);
  req=service.test(new AsyncCallback<Object>(){
    public void onFailure(    Throwable caught){
      TestSetValidator.rethrowException(caught);
    }
    public void onSuccess(    Object result){
      assertTrue(!req.isPending());
      finishTest();
    }
  }
);
  assertTrue(req.isPending());
}
Program: 82835
Project: 82835
Buggy source:
public void onSuccess(Object result){
  finishTest();
}

Fixed version (ground truth):
public void onSuccess(Object result){
  assertTrue(!req.isPending());
  finishTest();
}
Program: 82836
Project: 82836
Buggy source:
void test(AsyncCallback callback);

Fixed version (ground truth):
Request test(AsyncCallback callback);
Program: 82839
Project: 82839
Buggy source:
public void testBasicParse(){
  Number value;
  value=numberParse("String_Node_Str","String_Node_Str");
  assertTrue(value.doubleValue() == 123.4579);
  value=numberParse("String_Node_Str","String_Node_Str");
  assertTrue(value.doubleValue() == 123.4579);
  value=numberParse("String_Node_Str","String_Node_Str");
  assertTrue(value.doubleValue() == -123.4579);
}

Fixed version (ground truth):
public void testBasicParse(){
  Number value;
  value=numberParse("String_Node_Str","String_Node_Str");
  assertTrue(value.doubleValue() == 123.4579);
  value=numberParse("String_Node_Str","String_Node_Str");
  assertTrue(value.doubleValue() == 123.4579);
  value=numberParse("String_Node_Str","String_Node_Str");
  assertTrue(value.doubleValue() == -123.4579);
  try {
    NumberFormat.getDecimalFormat().parse("String_Node_Str");
    fail("String_Node_Str");
  }
 catch (  NumberFormatException e) {
  }
}
Program: 82840
Project: 82840
Buggy source:
private JExpression unbox(JExpression toUnbox,JPrimitiveType primitiveType){
  String wrapperTypeName=primitiveType.getWrapperTypeName();
  JClassType wrapperType=(JClassType)program.getFromTypeMap(wrapperTypeName);
  if (wrapperType == null) {
    throw new InternalCompilerException(toUnbox,"String_Node_Str" + wrapperTypeName + "String_Node_Str"+ primitiveType.getName()+ "String_Node_Str",null);
  }
  return unbox(toUnbox,wrapperType);
}

Fixed version (ground truth):
private JExpression unbox(JExpression toUnbox,JClassType wrapperType){
  JPrimitiveType primitiveType=getPrimitiveTypeForWrapperType(wrapperType);
  if (primitiveType == null) {
    throw new InternalCompilerException(toUnbox,"String_Node_Str" + wrapperType.getName() + "String_Node_Str",null);
  }
  String valueMethodName=primitiveType.getName() + "String_Node_Str";
  JMethod valueMethod=null;
  for (  Object element : wrapperType.methods) {
    JMethod method=(JMethod)element;
    if (method.getName().equals(valueMethodName)) {
      if (method.params.isEmpty()) {
        valueMethod=method;
        break;
      }
    }
  }
  if (valueMethod == null) {
    throw new InternalCompilerException(toUnbox,"String_Node_Str" + wrapperType.getName() + "String_Node_Str"+ primitiveType.getName()+ "String_Node_Str"+ valueMethodName+ "String_Node_Str",null);
  }
  JMethodCall unboxCall=new JMethodCall(program,toUnbox.getSourceInfo(),toUnbox,valueMethod);
  return unboxCall;
}
Program: 82841
Project: 82841
Buggy source:
private JExpression box(JExpression toBox,JPrimitiveType primitiveType){
  String wrapperTypeName=primitiveType.getWrapperTypeName();
  JClassType wrapperType=(JClassType)program.getFromTypeMap(wrapperTypeName);
  if (wrapperType == null) {
    throw new InternalCompilerException(toBox,"String_Node_Str" + wrapperTypeName + "String_Node_Str"+ primitiveType.getName()+ "String_Node_Str",null);
  }
  return box(toBox,wrapperType);
}

Fixed version (ground truth):
private JExpression box(JExpression toBox,JPrimitiveType primitiveType){
  String wrapperTypeName=primitiveType.getWrapperTypeName();
  JClassType wrapperType=(JClassType)program.getFromTypeMap(wrapperTypeName);
  if (wrapperType == null) {
    throw new InternalCompilerException(toBox,"String_Node_Str" + wrapperTypeName + "String_Node_Str"+ primitiveType.getName()+ "String_Node_Str",null);
  }
  JMethod valueOfMethod=null;
  for (  JMethod method : wrapperType.methods) {
    if ("String_Node_Str".equals(method.getName())) {
      if (method.params.size() == 1) {
        JParameter param=method.params.get(0);
        if (param.getType() == primitiveType) {
          valueOfMethod=method;
          break;
        }
      }
    }
  }
  if (valueOfMethod == null || !valueOfMethod.isStatic() || valueOfMethod.getType() != wrapperType) {
    throw new InternalCompilerException(toBox,"String_Node_Str" + wrapperType.getName() + "String_Node_Str"+ wrapperType.getName()+ "String_Node_Str"+ primitiveType.getName()+ "String_Node_Str",null);
  }
  JMethodCall call=new JMethodCall(program,toBox.getSourceInfo(),null,valueOfMethod);
  call.getArgs().add(toBox);
  return call;
}
Program: 82842
Project: 82842
Buggy source:
public void testBoxing(){
  List<Integer> items=Arrays.asList(1,2,3,4,5);
  List<Integer> out=new ArrayList<Integer>();
  for (  int i : items) {
    out.add(i);
  }
  assertTrue(out.equals(items));
  int[] unboxedItems=new int[]{1,2,3,4,5};
  out.clear();
  for (  Integer i : unboxedItems) {
    out.add(i);
  }
  for (int i=0; i < 5; ++i) {
    assertTrue(out.get(i).intValue() == unboxedItems[i]);
  }
}

Fixed version (ground truth):
public void testBoxing(){
  List<Integer> items=Arrays.asList(1,2,3,4,5);
  List<Integer> out=new ArrayList<Integer>();
  for (  int i : items) {
    out.add(i);
  }
  assertTrue(out.equals(items));
  List<Long> itemsL=Arrays.asList(1L,2L,3L,4L,5L);
  List<Long> outL=new ArrayList<Long>();
  for (  long l : items) {
    outL.add(l);
  }
  assertTrue(outL.equals(itemsL));
  int[] unboxedItems=new int[]{1,2,3,4,5};
  out.clear();
  for (  Integer i : unboxedItems) {
    out.add(i);
  }
  for (int i=0; i < 5; ++i) {
    assertTrue(out.get(i).intValue() == unboxedItems[i]);
  }
}
Program: 82843
Project: 82843
Buggy source:
public void freezeParamTypes(){
  if (originalParamTypes != null) {
    throw new InternalCompilerException("String_Node_Str");
  }
  originalParamTypes=new ArrayList<JType>();
  for (int i=0; i < params.size(); ++i) {
    JParameter param=params.get(i);
    originalParamTypes.add(param.getType());
  }
}

Fixed version (ground truth):
public void freezeParamTypes(){
  if (originalParamTypes != null) {
    throw new InternalCompilerException("String_Node_Str");
  }
  originalParamTypes=new ArrayList<JType>();
  for (int i=0; i < params.size(); ++i) {
    JParameter param=params.get(i);
    originalParamTypes.add(param.getType());
  }
  if (enclosingType != null) {
    String jsniSig=JProgram.getJsniSig(this);
    Set<String> set=JProgram.traceMethods.get(enclosingType.getName());
    if (set != null && (set.contains(name) || set.contains(jsniSig))) {
      trace=true;
    }
    if (!trace && enclosingType != null) {
      set=JProgram.traceMethods.get(enclosingType.getShortName());
      if (set != null && (set.contains(name) || set.contains(jsniSig))) {
        trace=true;
      }
    }
  }
}
Program: 82844
Project: 82844
Buggy source:
public void traverse(JVisitor visitor,Context ctx){
  if (visitor.visit(this,ctx)) {
    visitor.accept(params);
    if (body != null) {
      body=(JAbstractMethodBody)visitor.accept(body);
    }
  }
  visitor.endVisit(this,ctx);
}

Fixed version (ground truth):
public void traverse(JVisitor visitor,Context ctx){
  String before=null;
  if (trace && visitor instanceof JModVisitor) {
    before=this.toSource();
    if (traceFirst) {
      traceFirst=false;
      trace("String_Node_Str",before);
    }
  }
  if (visitor.visit(this,ctx)) {
    visitor.accept(params);
    if (body != null) {
      body=(JAbstractMethodBody)visitor.accept(body);
    }
  }
  visitor.endVisit(this,ctx);
  if (trace && visitor instanceof JModVisitor) {
    String after=this.toSource();
    if (!after.equals(before)) {
      String title=visitor.getClass().getSimpleName();
      trace(title,after);
    }
  }
}
Program: 82845
Project: 82845
Buggy source:
public void putStaticImpl(JMethod method,JMethod staticImpl){
  instanceToStaticMap.put(method,staticImpl);
  staticToInstanceMap.put(staticImpl,method);
}

Fixed version (ground truth):
public void putStaticImpl(JMethod method,JMethod staticImpl){
  instanceToStaticMap.put(method,staticImpl);
  staticToInstanceMap.put(staticImpl,method);
  staticImpl.copyTraceStatusFrom(method);
}
Program: 82848
Project: 82848
Buggy source:
private void maybeDispatch(Scope referencedFrom,TypeBinding binding){
  if (binding instanceof SourceTypeBinding) {
    SourceTypeBinding type=(SourceTypeBinding)binding;
    CompilationUnitScope from=findUnitScope(referencedFrom);
    onTypeRef(type,from.referenceContext);
  }
 else   if (binding instanceof ArrayBinding) {
    maybeDispatch(referencedFrom,((ArrayBinding)binding).leafComponentType);
  }
 else {
  }
}

Fixed version (ground truth):
private void maybeDispatch(Scope referencedFrom,Expression expression,TypeBinding binding){
  if (binding instanceof SourceTypeBinding) {
    SourceTypeBinding type=(SourceTypeBinding)binding;
    CompilationUnitScope from=findUnitScope(referencedFrom);
    onTypeRef(type,from.referenceContext);
  }
 else   if (binding instanceof ArrayBinding) {
    maybeDispatch(referencedFrom,expression,((ArrayBinding)binding).leafComponentType);
  }
 else   if (binding instanceof BinaryTypeBinding) {
    CompilationUnitScope from=findUnitScope(referencedFrom);
    onBinaryTypeRef((BinaryTypeBinding)binding,from.referenceContext,expression);
  }
 else {
  }
}
Program: 82849
Project: 82849
Buggy source:
@Override public void endVisit(Wildcard x,ClassScope scope){
  maybeDispatch(scope,x.resolvedType);
}

Fixed version (ground truth):
@Override public void endVisit(Wildcard x,ClassScope scope){
  maybeDispatch(scope,x,x.resolvedType);
}
Program: 82850
Project: 82850
Buggy source:
/** 
 * Add a checkpoint message to the current test. If this test fails, all checkpoint messages will be appended to the getException description. This can be useful in web mode for determining how far test execution progressed before a failure occurs.
 * @param msg the checkpoint message to add
 * @deprecated This method will be removed when web mode supports stacktraces. It can be useful for debugging web mode failures, but production code should not depend on it.
 */
public final void addCheckpoint(String msg){
}

Fixed version (ground truth):
/** 
 * Add a checkpoint message to the current test. If this test fails, all checkpoint messages will be appended to the getException description. This can be useful in web mode for determining how far test execution progressed before a failure occurs.
 * @param msg the checkpoint message to add
 * @deprecated This method will be removed when web mode supports stacktraces. It can be useful for debugging web mode failures, but production code should not depend on it.
 */
@Deprecated public final void addCheckpoint(String msg){
}
Program: 82851
Project: 82851
Buggy source:
/** 
 * Clears the accumulated list of checkpoint messages.
 * @see #addCheckpoint(String)
 * @deprecated This method will be removed when web mode supports stacktraces. It can be useful for debugging web mode failures, but production code should not depend on it.
 */
public final void clearCheckpoints(){
}

Fixed version (ground truth):
/** 
 * Clears the accumulated list of checkpoint messages.
 * @see #addCheckpoint(String)
 * @deprecated This method will be removed when web mode supports stacktraces. It can be useful for debugging web mode failures, but production code should not depend on it.
 */
@Deprecated public final void clearCheckpoints(){
}
Program: 82852
Project: 82852
Buggy source:
/** 
 * Returns the current set of checkpoint messages.
 * @return a non-<code>null</code> array of checkpoint messages
 * @see #addCheckpoint(String)
 * @deprecated This method will be removed when web mode supports stacktraces. It can be useful for debugging web mode failures, but production code should not depend on it.
 */
public final String[] getCheckpoints(){
  return null;
}

Fixed version (ground truth):
/** 
 * Returns the current set of checkpoint messages.
 * @return a non-<code>null</code> array of checkpoint messages
 * @see #addCheckpoint(String)
 * @deprecated This method will be removed when web mode supports stacktraces. It can be useful for debugging web mode failures, but production code should not depend on it.
 */
@Deprecated public final String[] getCheckpoints(){
  return null;
}
Program: 82853
Project: 82853
Buggy source:
/** 
 * Creates an empty absolute panel.
 */
public AbsolutePanel(){
  setElement(DOM.createDiv());
  DOM.setStyleAttribute(getElement(),"String_Node_Str","String_Node_Str");
  DOM.setStyleAttribute(getElement(),"String_Node_Str","String_Node_Str");
}

Fixed version (ground truth):
/** 
 * Creates an AbsolutePanel with the given element. This is package-protected so that it can be used by   {@link RootPanel}.
 * @param elem the element to be used for this panel
 */
AbsolutePanel(Element elem){
  setElement(elem);
  DOM.setStyleAttribute(getElement(),"String_Node_Str","String_Node_Str");
  DOM.setStyleAttribute(getElement(),"String_Node_Str","String_Node_Str");
}
Program: 82854
Project: 82854
Buggy source:
@Override protected void onAttach(){
  widget.onAttach();
  onLoad();
}

Fixed version (ground truth):
@Override protected void onAttach(){
  widget.onAttach();
  DOM.setEventListener(getElement(),this);
  onLoad();
}
Program: 82855
Project: 82855
Buggy source:
ClippedState(Image image,String url,int left,int top,int width,int height){
  this.left=left;
  this.top=top;
  this.width=width;
  this.height=height;
  this.url=url;
  image.setElement(impl.createStructure(url,left,top,width,height));
  image.sinkEvents(Event.ONCLICK | Event.MOUSEEVENTS | Event.ONMOUSEWHEEL);
  fireSyntheticLoadEvent(image);
}

Fixed version (ground truth):
ClippedState(Image image,String url,int left,int top,int width,int height){
  this.left=left;
  this.top=top;
  this.width=width;
  this.height=height;
  this.url=url;
  image.replaceElement(impl.createStructure(url,left,top,width,height));
  image.sinkEvents(Event.ONCLICK | Event.MOUSEEVENTS | Event.ONMOUSEWHEEL);
  fireSyntheticLoadEvent(image);
}
Program: 82856
Project: 82856
Buggy source:
/** 
 * Constructs a frame with the given name.
 * @param name the name of the frame, which must contain at least onenon-whitespace character and must not contain reserved HTML markup characters such as '<code>&lt;</code>', '<code>&gt;</code>', or '<code>&amp;</code>'
 * @throws IllegalArgumentException if the supplied name is not allowed 
 */
public NamedFrame(String name){
  if (name == null || !isValidName(name.trim())) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  Element div=DOM.createDiv();
  DOM.setInnerHTML(div,"String_Node_Str" + name + "String_Node_Str");
  Element iframe=DOM.getFirstChild(div);
  setElement(iframe);
}

Fixed version (ground truth):
/** 
 * Constructs a frame with the given name.
 * @param name the name of the frame, which must contain at least onenon-whitespace character and must not contain reserved HTML markup characters such as '<code>&lt;</code>', '<code>&gt;</code>', or '<code>&amp;</code>'
 * @throws IllegalArgumentException if the supplied name is not allowed 
 */
public NamedFrame(String name){
  if (name == null || !isValidName(name.trim())) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  Element div=DOM.createDiv();
  DOM.setInnerHTML(div,"String_Node_Str" + name + "String_Node_Str");
  Element iframe=DOM.getFirstChild(div);
  replaceElement(iframe);
}
Program: 82857
Project: 82857
Buggy source:
/** 
 * Gets the root panel associated with a given browser element. For this to work, the HTML document into which the application is loaded must have specified an element with the given id.
 * @param id the id of the element to be wrapped with a root panel
 * @return the root panel, or <code>null</code> if no such element was found
 */
public static RootPanel get(String id){
  RootPanel gwt=rootPanels.get(id);
  if (gwt != null) {
    return gwt;
  }
  Element elem=null;
  if (id != null) {
    if (null == (elem=DOM.getElementById(id))) {
      return null;
    }
  }
  if (rootPanels.size() == 0) {
    hookWindowClosing();
  }
  rootPanels.put(id,gwt=new RootPanel(elem));
  return gwt;
}

Fixed version (ground truth):
/** 
 * Gets the root panel associated with a given browser element. For this to work, the HTML document into which the application is loaded must have specified an element with the given id.
 * @param id the id of the element to be wrapped with a root panel
 * @return the root panel, or <code>null</code> if no such element was found
 */
public static RootPanel get(String id){
  RootPanel rp=rootPanels.get(id);
  if (rp != null) {
    return rp;
  }
  Element elem=null;
  if (id != null) {
    if (null == (elem=DOM.getElementById(id))) {
      return null;
    }
  }
  if (rootPanels.size() == 0) {
    hookWindowClosing();
  }
  if (elem == null) {
    elem=getBodyElement();
  }
  rootPanels.put(id,rp=new RootPanel(elem));
  return rp;
}
Program: 82858
Project: 82858
Buggy source:
private RootPanel(Element elem){
  if (elem == null) {
    elem=getBodyElement();
  }
  setElement(elem);
  onAttach();
}

Fixed version (ground truth):
private RootPanel(Element elem){
  super(elem);
  onAttach();
}
Program: 82859
Project: 82859
Buggy source:
/** 
 * Gets the object's offset width in pixels. This is the total width of the object, including decorations such as border, margin, and padding.
 * @return the object's offset width
 */
public int getOffsetWidth(){
  return DOM.getElementPropertyInt(element,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * Gets the object's offset width in pixels. This is the total width of the object, including decorations such as border, margin, and padding.
 * @return the object's offset width
 */
public int getOffsetWidth(){
  return DOM.getElementPropertyInt(getElement(),"String_Node_Str");
}
Program: 82860
Project: 82860
Buggy source:
/** 
 * Gets the title associated with this object. The title is the 'tool-tip' displayed to users when they hover over the object.
 * @return the object's title
 */
public String getTitle(){
  return DOM.getElementProperty(element,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * Gets the title associated with this object. The title is the 'tool-tip' displayed to users when they hover over the object.
 * @return the object's title
 */
public String getTitle(){
  return DOM.getElementProperty(getElement(),"String_Node_Str");
}
Program: 82861
Project: 82861
Buggy source:
/** 
 * Sets this object's browser element. UIObject subclasses must call this method before attempting to call any other methods. If the browser element has already been set, then the current element's position is located in the DOM and removed. The new element is added into the previous element's position.
 * @param elem the object's new element
 */
protected void setElement(Element elem){
  if (this.element != null) {
    replaceNode(this.element,elem);
  }
  this.element=elem;
}

Fixed version (ground truth):
/** 
 * Sets this object's browser element. UIObject subclasses must call this method before attempting to call any other methods, and it may only be called once.
 * @param elem the object's element
 */
protected void setElement(Element elem){
}
Program: 82862
Project: 82862
Buggy source:
/** 
 * Sets whether this object is visible.
 * @param visible <code>true</code> to show the object, <code>false</code>to hide it
 */
public void setVisible(boolean visible){
  setVisible(element,visible);
}

Fixed version (ground truth):
/** 
 * Sets whether this object is visible.
 * @param visible <code>true</code> to show the object, <code>false</code>to hide it
 */
public void setVisible(boolean visible){
  setVisible(getElement(),visible);
}
Program: 82863
Project: 82863
Buggy source:
/** 
 * Sets the title associated with this object. The title is the 'tool-tip' displayed to users when they hover over the object.
 * @param title the object's new title
 */
public void setTitle(String title){
  if (title == null || title.length() == 0) {
    DOM.removeElementAttribute(element,"String_Node_Str");
  }
 else {
    DOM.setElementAttribute(element,"String_Node_Str",title);
  }
}

Fixed version (ground truth):
/** 
 * Sets the title associated with this object. The title is the 'tool-tip' displayed to users when they hover over the object.
 * @param title the object's new title
 */
public void setTitle(String title){
  if (title == null || title.length() == 0) {
    DOM.removeElementAttribute(getElement(),"String_Node_Str");
  }
 else {
    DOM.setElementAttribute(getElement(),"String_Node_Str",title);
  }
}
Program: 82864
Project: 82864
Buggy source:
/** 
 * Template method that returns the element to which style names will be applied. By default it returns the root element, but this method may be overridden to apply styles to a child element.
 * @return the element to which style names will be applied
 */
protected Element getStyleElement(){
  return element;
}

Fixed version (ground truth):
/** 
 * Template method that returns the element to which style names will be applied. By default it returns the root element, but this method may be overridden to apply styles to a child element.
 * @return the element to which style names will be applied
 */
protected Element getStyleElement(){
  return getElement();
}
Program: 82865
Project: 82865
Buggy source:
/** 
 * Determines whether or not this object is visible.
 * @return <code>true</code> if the object is visible
 */
public boolean isVisible(){
  return isVisible(element);
}

Fixed version (ground truth):
/** 
 * Determines whether or not this object is visible.
 * @return <code>true</code> if the object is visible
 */
public boolean isVisible(){
  return isVisible(getElement());
}
Program: 82866
Project: 82866
Buggy source:
/** 
 * Gets the object's offset height in pixels. This is the total height of the object, including decorations such as border, margin, and padding.
 * @return the object's offset height
 */
public int getOffsetHeight(){
  return DOM.getElementPropertyInt(element,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * Gets the object's offset height in pixels. This is the total height of the object, including decorations such as border, margin, and padding.
 * @return the object's offset height
 */
public int getOffsetHeight(){
  return DOM.getElementPropertyInt(getElement(),"String_Node_Str");
}
Program: 82867
Project: 82867
Buggy source:
/** 
 * Gets a handle to the object's underlying DOM element.
 * @return the object's browser element
 */
public Element getElement(){
  return element;
}

Fixed version (ground truth):
/** 
 * Gets a handle to the object's underlying DOM element. This method should not be overridden. It is non-final solely to support legacy code that depends upon overriding it. If it is overridden, the subclass implementation must not return a different element than was previously set using   {@link #setElement(Element)}.
 * @return the object's browser element
 */
public Element getElement(){
}
Program: 82868
Project: 82868
Buggy source:
/** 
 * This method is overridden so that any object can be viewed in the debugger as an HTML snippet.
 * @return a string representation of the object
 */
@Override public String toString(){
  if (element == null) {
    return "String_Node_Str";
  }
  return DOM.toString(element);
}

Fixed version (ground truth):
/** 
 * This method is overridden so that any object can be viewed in the debugger as an HTML snippet.
 * @return a string representation of the object
 */
@Override public String toString(){
  if (getElement() == null) {
    return "String_Node_Str";
  }
  return DOM.toString(getElement());
}
Program: 82870
Project: 82870
Buggy source:
private BufferedImage drawBundledImage(){
  SortedMap<String,ImageRect> sortedImageNameToImageRectMap=new TreeMap<String,ImageRect>();
  sortedImageNameToImageRectMap.putAll(imageNameToImageRectMap);
  Collection<ImageRect> orderedImageRects=sortedImageNameToImageRectMap.values();
  int nextLeft=0;
  int maxHeight=0;
  for (  ImageRect imageRect : orderedImageRects) {
    imageRect.left=nextLeft;
    nextLeft+=imageRect.width;
    if (imageRect.height > maxHeight) {
      maxHeight=imageRect.height;
    }
  }
  BufferedImage bundledImage=new BufferedImage(nextLeft,maxHeight,BufferedImage.TYPE_INT_ARGB_PRE);
  Graphics2D g2d=bundledImage.createGraphics();
  for (  ImageRect imageRect : orderedImageRects) {
    g2d.drawImage(imageRect.image,imageRect.left,0,null);
  }
  g2d.dispose();
  return bundledImage;
}

Fixed version (ground truth):
/** 
 * This method creates the bundled image through the composition of the other images. In this particular implementation, we use NFDHDW (see  {@link #arrangeImages()}) to get an approximate optimal image packing. The most important aspect of drawing the bundled image is that it be drawn in a deterministic way. The drawing of the image should not rely on implementation details of the Generator system which may be subject to change.
 */
private BufferedImage drawBundledImage(){
  Collection<ImageRect> imageRects=imageNameToImageRectMap.values();
  final Size size=arrangeImages(imageRects);
  BufferedImage bundledImage=new BufferedImage(size.width,size.height,BufferedImage.TYPE_INT_ARGB_PRE);
  Graphics2D g2d=bundledImage.createGraphics();
  for (  ImageRect imageRect : imageRects) {
    g2d.drawImage(imageRect.image,imageRect.left,imageRect.top,null);
  }
  g2d.dispose();
  return bundledImage;
}
Program: 82871
Project: 82871
Buggy source:
public ImageRect(BufferedImage image){
  this.image=image;
  this.width=image.getWidth();
  this.height=image.getHeight();
}

Fixed version (ground truth):
public ImageRect(String name,BufferedImage image){
  this.name=name;
  this.image=image;
  this.width=image.getWidth();
  this.height=image.getHeight();
}
Program: 82872
Project: 82872
Buggy source:
private ImageRect addImage(TreeLogger logger,String imageName) throws UnableToCompleteException {
  logger=logger.branch(TreeLogger.TRACE,"String_Node_Str" + imageName + "String_Node_Str",null);
  try {
    URL imageUrl=getClass().getClassLoader().getResource(imageName);
    if (imageUrl == null) {
      logger.log(TreeLogger.ERROR,"String_Node_Str" + "String_Node_Str",null);
      throw new UnableToCompleteException();
    }
    BufferedImage image;
    try {
      image=ImageIO.read(imageUrl);
    }
 catch (    IllegalArgumentException iex) {
      if (imageName.toLowerCase().endsWith("String_Node_Str") && iex.getMessage() != null && iex.getStackTrace()[0].getClassName().equals("String_Node_Str")) {
        logger.log(TreeLogger.ERROR,"String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str",null);
        throw new UnableToCompleteException();
      }
 else {
        throw iex;
      }
    }
    if (image == null) {
      logger.log(TreeLogger.ERROR,"String_Node_Str",null);
      throw new UnableToCompleteException();
    }
    return new ImageRect(image);
  }
 catch (  IOException e) {
    logger.log(TreeLogger.ERROR,"String_Node_Str",null);
    throw new UnableToCompleteException();
  }
}

Fixed version (ground truth):
private ImageRect addImage(TreeLogger logger,String imageName) throws UnableToCompleteException {
  logger=logger.branch(TreeLogger.TRACE,"String_Node_Str" + imageName + "String_Node_Str",null);
  try {
    URL imageUrl=getClass().getClassLoader().getResource(imageName);
    if (imageUrl == null) {
      logger.log(TreeLogger.ERROR,"String_Node_Str" + "String_Node_Str",null);
      throw new UnableToCompleteException();
    }
    BufferedImage image;
    try {
      image=ImageIO.read(imageUrl);
    }
 catch (    IllegalArgumentException iex) {
      if (imageName.toLowerCase().endsWith("String_Node_Str") && iex.getMessage() != null && iex.getStackTrace()[0].getClassName().equals("String_Node_Str")) {
        logger.log(TreeLogger.ERROR,"String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str",null);
        throw new UnableToCompleteException();
      }
 else {
        throw iex;
      }
    }
    if (image == null) {
      logger.log(TreeLogger.ERROR,"String_Node_Str",null);
      throw new UnableToCompleteException();
    }
    return new ImageRect(imageName,image);
  }
 catch (  IOException e) {
    logger.log(TreeLogger.ERROR,"String_Node_Str",null);
    throw new UnableToCompleteException();
  }
}
Program: 82873
Project: 82873
Buggy source:
private void generateImageMethod(TreeLogger logger,ImageBundleBuilder compositeImage,SourceWriter sw,JMethod method,String imgResName) throws UnableToCompleteException {
  String decl=method.getReadableDeclaration(false,true,true,true,true);
{
    sw.indent();
    ImageBundleBuilder.ImageRect imageRect=compositeImage.getMapping(imgResName);
    String singletonName=method.getName() + "String_Node_Str";
    sw.print("String_Node_Str");
    sw.print(singletonName);
    sw.print("String_Node_Str");
    sw.print(Integer.toString(imageRect.left));
    sw.print("String_Node_Str");
    sw.print(Integer.toString(imageRect.width));
    sw.print("String_Node_Str");
    sw.print(Integer.toString(imageRect.height));
    sw.println("String_Node_Str");
    sw.print(decl);
    sw.println("String_Node_Str");
{
      sw.indent();
      sw.print("String_Node_Str");
      sw.print(singletonName);
      sw.println("String_Node_Str");
      sw.outdent();
    }
    sw.println("String_Node_Str");
    sw.outdent();
  }
}

Fixed version (ground truth):
private void generateImageMethod(TreeLogger logger,ImageBundleBuilder compositeImage,SourceWriter sw,JMethod method,String imgResName) throws UnableToCompleteException {
  String decl=method.getReadableDeclaration(false,true,true,true,true);
{
    sw.indent();
    ImageBundleBuilder.ImageRect imageRect=compositeImage.getMapping(imgResName);
    String singletonName=method.getName() + "String_Node_Str";
    sw.print("String_Node_Str");
    sw.print(singletonName);
    sw.print("String_Node_Str");
    sw.print(Integer.toString(imageRect.getLeft()));
    sw.print("String_Node_Str");
    sw.print(Integer.toString(imageRect.getTop()));
    sw.print("String_Node_Str");
    sw.print(Integer.toString(imageRect.getWidth()));
    sw.print("String_Node_Str");
    sw.print(Integer.toString(imageRect.getHeight()));
    sw.println("String_Node_Str");
    sw.print(decl);
    sw.println("String_Node_Str");
{
      sw.indent();
      sw.print("String_Node_Str");
      sw.print(singletonName);
      sw.println("String_Node_Str");
      sw.outdent();
    }
    sw.println("String_Node_Str");
    sw.outdent();
  }
}
Program: 82874
Project: 82874
Buggy source:
/** 
 * Removes the specified menu item from the bar.
 * @param item the item to be removed
 */
public void removeItem(MenuItem item){
  if (removeItemElement(item)) {
    setItemColSpan(item,1);
    items.remove(item);
    item.setParentMenu(null);
  }
}

Fixed version (ground truth):
/** 
 * Removes the specified menu item from the bar.
 * @param item the item to be removed
 */
public void removeItem(MenuItem item){
  if (selectedItem == item) {
    selectItem(null);
  }
  if (removeItemElement(item)) {
    setItemColSpan(item,1);
    items.remove(item);
    item.setParentMenu(null);
  }
}
Program: 82875
Project: 82875
Buggy source:
/** 
 * Removes all menu items from this menu bar.
 */
public void clearItems(){
  Element container=getItemContainerElement();
  while (DOM.getChildCount(container) > 0) {
    DOM.removeChild(container,DOM.getChild(container,0));
  }
  for (  UIObject item : allItems) {
    setItemColSpan(item,1);
    if (item instanceof MenuItemSeparator) {
      ((MenuItemSeparator)item).setParentMenu(null);
    }
 else {
      ((MenuItem)item).setParentMenu(null);
    }
  }
  items.clear();
  allItems.clear();
}

Fixed version (ground truth):
/** 
 * Removes all menu items from this menu bar.
 */
public void clearItems(){
  selectItem(null);
  Element container=getItemContainerElement();
  while (DOM.getChildCount(container) > 0) {
    DOM.removeChild(container,DOM.getChild(container,0));
  }
  for (  UIObject item : allItems) {
    setItemColSpan(item,1);
    if (item instanceof MenuItemSeparator) {
      ((MenuItemSeparator)item).setParentMenu(null);
    }
 else {
      ((MenuItem)item).setParentMenu(null);
    }
  }
  items.clear();
  allItems.clear();
}
Program: 82876
Project: 82876
Buggy source:
public void execute(){
  UIObjectTest.assertDebugIdContents("String_Node_Str","String_Node_Str");
  UIObjectTest.assertDebugIdContents("String_Node_Str","String_Node_Str");
  UIObjectTest.assertDebugIdContents("String_Node_Str","String_Node_Str");
  UIObjectTest.assertDebugIdContents("String_Node_Str","String_Node_Str");
  UIObjectTest.assertDebugIdContents("String_Node_Str","String_Node_Str");
  UIObjectTest.assertDebugIdContents("String_Node_Str","String_Node_Str");
  finishTest();
}

Fixed version (ground truth):
public void execute(){
}