nus-yam/ex-repair huggingface dataset:
Program: 71305
Project: 71305
Buggy source:
/** 
 * Returns a   {@code Constructor} object that reflects the specifiedpublic constructor of the class represented by this  {@code Class}object. The   {@code parameterTypes} parameter is an array of{@code Class} objects that identify the constructor's formalparameter types, in declared order. If this  {@code Class} object represents an inner classdeclared in a non-static context, the formal parameter types include the explicit enclosing instance as the first parameter. <p> The constructor to reflect is the public constructor of the class represented by this  {@code Class} object whose formal parametertypes match those specified by  {@code parameterTypes}.
 * @param parameterTypes the parameter array
 * @return the {@code Constructor} object of the public constructor thatmatches the specified  {@code parameterTypes}
 * @throws NoSuchMethodException if a matching method is not found.
 * @throws SecurityException If a security manager, <i>s</i>, is present and the caller's class loader is not the same as or an ancestor of the class loader for the current class and invocation of  {@link SecurityManager#checkPackageAccess s.checkPackageAccess()} denies access to the packageof this class.
 * @since 1.1
 */
@CallerSensitive public Constructor<T> getConstructor(Class<?>... parameterTypes) throws NoSuchMethodException, SecurityException {
  checkMemberAccess(Member.PUBLIC,Reflection.getCallerClass(),true);
  return getConstructor0(parameterTypes,Member.PUBLIC);
}

Fixed version (ground truth):
/** 
 * Returns a   {@code Constructor} object that reflects the specifiedpublic constructor of the class represented by this  {@code Class}object. The   {@code parameterTypes} parameter is an array of{@code Class} objects that identify the constructor's formalparameter types, in declared order. If this  {@code Class} object represents an inner classdeclared in a non-static context, the formal parameter types include the explicit enclosing instance as the first parameter. <p> The constructor to reflect is the public constructor of the class represented by this  {@code Class} object whose formal parametertypes match those specified by  {@code parameterTypes}.
 * @param parameterTypes the parameter array
 * @return the {@code Constructor} object of the public constructor thatmatches the specified  {@code parameterTypes}
 * @throws NoSuchMethodException if a matching method is not found.
 * @throws SecurityException If a security manager, <i>s</i>, is present and the caller's class loader is not the same as or an ancestor of the class loader for the current class and invocation of  {@link SecurityManager#checkPackageAccess s.checkPackageAccess()} denies access to the packageof this class.
 * @since 1.1
 */
@CallerSensitive public Constructor<T> getConstructor(Class<?>... parameterTypes) throws NoSuchMethodException, SecurityException {
  checkMemberAccess(Member.PUBLIC,Reflection.getCallerClass(),true);
  return getReflectionFactory().copyConstructor(getConstructor0(parameterTypes,Member.PUBLIC));
}
Program: 71306
Project: 71306
Buggy source:
private Method getMethod0(String name,Class<?>[] parameterTypes,boolean includeStaticMethods){
  MethodArray interfaceCandidates=new MethodArray(2);
  Method res=privateGetMethodRecursive(name,parameterTypes,includeStaticMethods,interfaceCandidates);
  if (res != null)   return res;
  interfaceCandidates.removeLessSpecifics();
  return interfaceCandidates.getFirst();
}

Fixed version (ground truth):
private Method getMethod0(String name,Class<?>[] parameterTypes){
  PublicMethods.MethodList res=getMethodsRecursive(name,parameterTypes == null ? EMPTY_CLASS_ARRAY : parameterTypes,true);
  return res == null ? null : res.getMostSpecific();
}
Program: 71307
Project: 71307
Buggy source:
public static void main(String[] args){
  Class[] l1={D1.class};
  test(A1.class.getMethods(),new ArrayList(Arrays.asList(l1)));
  Class[] l2={A2.class};
  test(A2.class.getMethods(),new ArrayList(Arrays.asList(l2)));
  Class[] l3={B3.class,C3.class};
  test(A3.class.getMethods(),new ArrayList(Arrays.asList(l3)));
  Class[] l4={B4.class,D4.class};
  test(A4.class.getMethods(),new ArrayList(Arrays.asList(l4)));
}

Fixed version (ground truth):
public static void main(String[] args){
  Class[] l1={D1.class};
  test(A1.class.getMethods(),new ArrayList(Arrays.asList(l1)));
  Class[] l2={A2.class};
  test(A2.class.getMethods(),new ArrayList(Arrays.asList(l2)));
  Class[] l3={B3.class,C3.class};
  test(A3.class.getMethods(),new ArrayList(Arrays.asList(l3)));
  Class[] l4={B4.class};
  test(A4.class.getMethods(),new ArrayList(Arrays.asList(l4)));
}
Program: 71308
Project: 71308
Buggy source:
void setContentBounds(WindowDimensions dims){
  XToolkit.awtLock();
  try {
    Rectangle newBounds=dims.getBounds();
    Insets in=dims.getInsets();
    if (in != null) {
      newBounds.setLocation(-in.left,-in.top);
    }
    if (insLog.isLoggable(PlatformLogger.Level.FINE)) {
      insLog.fine("String_Node_Str",newBounds,getBounds());
    }
    boolean needHandleResize=!(newBounds.equals(getBounds()));
    reshape(newBounds);
    if (needHandleResize) {
      insLog.fine("String_Node_Str");
      handleResize(newBounds);
    }
  }
  finally {
    XToolkit.awtUnlock();
  }
  validateSurface();
}

Fixed version (ground truth):
void setContentBounds(WindowDimensions dims){
  XToolkit.awtLock();
  try {
    Rectangle newBounds=dims.getBounds();
    Insets in=dims.getInsets();
    if (in != null) {
      newBounds.setLocation(-in.left,-in.top);
    }
    if (insLog.isLoggable(PlatformLogger.Level.FINE)) {
      insLog.fine("String_Node_Str",newBounds,getBounds());
    }
    boolean needHandleResize=!(newBounds.equals(getBounds()));
    boolean needPaint=width <= 0 || height <= 0;
    reshape(newBounds);
    if (needHandleResize) {
      insLog.fine("String_Node_Str");
      handleResize(newBounds);
    }
    if (needPaint) {
      postPaintEvent(target,0,0,newBounds.width,newBounds.height);
    }
  }
  finally {
    XToolkit.awtUnlock();
  }
}
Program: 71309
Project: 71309
Buggy source:
CaInfo scan(String s){
  try {
    Scanner scanner=scannerFactory.newScanner(s,false);
    Matched in=new Matched(scanner);
    Parser parser=new Parser(in,proc,s);
    Completeness stat=parser.parseUnit();
    int endPos=stat == Completeness.UNKNOWN ? s.length() : in.prevCT.endPos;
    return new CaInfo(stat,endPos);
  }
 catch (  SyntaxException ex) {
    return new CaInfo(error(),s.length());
  }
}

Fixed version (ground truth):
CaInfo scan(String s){
  try {
    Parser parser=new Parser(() -> new Matched(scannerFactory.newScanner(s,false)),() -> proc.taskFactory.new ParseTask(s));
    Completeness stat=parser.parseUnit();
    int endPos=stat == Completeness.UNKNOWN ? s.length() : parser.endPos();
    return new CaInfo(stat,endPos);
  }
 catch (  SyntaxException ex) {
    return new CaInfo(error(),s.length());
  }
}
Program: 71310
Project: 71310
Buggy source:
/** 
 * @return the next scanner token
 */
private CT nextCT(){
  TK prevTK=currentCT.kind;
  while (true) {
    db("String_Node_Str");
    CT ct;
switch (current.kind) {
case EOF:
      db("String_Node_Str");
    if (stack.isEmpty()) {
      ct=new CT(EOF,current);
    }
 else {
      TokenKind unmatched=stack.pop().kind;
      stack.clear();
      ct=new CT(UNMATCHED,current,"String_Node_Str" + unmatched);
    }
  break;
case LPAREN:
case LBRACE:
case LBRACKET:
stack.push(advance());
prevTK=SEMI;
continue;
case RPAREN:
ct=match(PARENS,TokenKind.LPAREN);
break;
case RBRACE:
ct=match(BRACES,TokenKind.LBRACE);
break;
case RBRACKET:
ct=match(BRACKETS,TokenKind.LBRACKET);
break;
default :
ct=new CT(TK.tokenKindToTK(current.kind),advance());
break;
}
if (ct.kind.isStart() && !prevTK.isOkToTerminate()) {
return new CT(ERROR,current,"String_Node_Str" + prevTK + "String_Node_Str"+ ct.kind+ "String_Node_Str");
}
if (stack.isEmpty() || ct.kind.isError()) {
return ct;
}
prevTK=ct.kind;
}
}

Fixed version (ground truth):
/** 
 * @return the next scanner token
 */
private CT nextCT(){
  TK prevTK=currentCT.kind;
  while (true) {
    db("String_Node_Str");
    CT ct;
switch (current.kind) {
case EOF:
      db("String_Node_Str");
    if (stack.isEmpty()) {
      ct=new CT(EOF,current);
    }
 else {
      TokenKind unmatched=stack.pop().kind;
      stack.clear();
      ct=new CT(UNMATCHED,current,"String_Node_Str" + unmatched);
    }
  break;
case LPAREN:
case LBRACE:
case LBRACKET:
stack.push(advance());
prevTK=SEMI;
continue;
case RPAREN:
ct=match(PARENS,TokenKind.LPAREN);
break;
case RBRACE:
ct=match(BRACES,TokenKind.LBRACE);
break;
case RBRACKET:
ct=match(BRACKETS,TokenKind.LBRACKET);
break;
default :
ct=new CT(TK.tokenKindToTK(prevTK,current.kind),advance());
break;
}
if (ct.kind.isStart() && !prevTK.isOkToTerminate()) {
return new CT(ERROR,current,"String_Node_Str" + prevTK + "String_Node_Str"+ ct.kind+ "String_Node_Str");
}
if (stack.isEmpty() || ct.kind.isError()) {
return ct;
}
prevTK=ct.kind;
}
}
Program: 71311
Project: 71311
Buggy source:
private static TK tokenKindToTK(TokenKind kind){
  TK tk=tokenKindToTKMap.get(kind);
  if (tk == null) {
    System.err.printf("String_Node_Str",TK.class.getCanonicalName(),TokenKind.class.getCanonicalName(),kind);
    throw new InternalError("String_Node_Str" + kind);
  }
  return tk;
}

Fixed version (ground truth):
private static TK tokenKindToTK(TK prev,TokenKind kind){
  TK tk=tokenKindToTKMap.get(kind);
  if (tk == null) {
    System.err.printf("String_Node_Str",TK.class.getCanonicalName(),TokenKind.class.getCanonicalName(),kind);
    throw new InternalError("String_Node_Str" + kind);
  }
  return tk.mapping != null ? tk.mapping.apply(prev) : tk;
}
Program: 71312
Project: 71312
Buggy source:
public Completeness disambiguateDeclarationVsExpression(){
  ParseTask pt=proc.taskFactory.new ParseTask(scannedInput);
  List<? extends Tree> units=pt.units();
  if (units.isEmpty()) {
    return error();
  }
  Tree unitTree=units.get(0);
switch (unitTree.getKind()) {
case EXPRESSION_STATEMENT:
    return parseExpressionOptionalSemi();
case LABELED_STATEMENT:
  if (shouldAbort(IDENTIFIER))   return checkResult;
if (shouldAbort(COLON)) return checkResult;
return parseStatement();
case VARIABLE:
case IMPORT:
case CLASS:
case ENUM:
case ANNOTATION_TYPE:
case INTERFACE:
case METHOD:
return parseDeclaration();
default :
return error();
}
}

Fixed version (ground truth):
public Completeness disambiguateDeclarationVsExpression(){
  ParseTask pt=parseFactory.get();
  List<? extends Tree> units=pt.units();
  if (units.isEmpty()) {
    return error();
  }
  Tree unitTree=units.get(0);
switch (unitTree.getKind()) {
case EXPRESSION_STATEMENT:
    return parseExpressionOptionalSemi();
case LABELED_STATEMENT:
  if (shouldAbort(IDENTIFIER))   return checkResult;
if (shouldAbort(COLON)) return checkResult;
return parseStatement();
case VARIABLE:
case IMPORT:
case CLASS:
case ENUM:
case ANNOTATION_TYPE:
case INTERFACE:
case METHOD:
return parseDeclaration();
default :
return error();
}
}
Program: 71313
Project: 71313
Buggy source:
public Completeness parseDeclaration(){
  boolean isImport=token.kind == IMPORT;
  while (token.kind.isDeclaration()) {
    nextToken();
  }
switch (token.kind) {
case EQ:
    nextToken();
  if (token.kind == BRACES) {
    nextToken();
    return lastly(SEMI);
  }
return parseExpressionStatement();
case BRACES:
case SEMI:
nextToken();
return Completeness.COMPLETE;
case UNMATCHED:
nextToken();
return Completeness.DEFINITELY_INCOMPLETE;
case EOF:
switch (in.prevCT.kind) {
case BRACES:
case SEMI:
return Completeness.COMPLETE;
case IDENTIFIER:
case BRACKETS:
return Completeness.COMPLETE_WITH_SEMI;
case STAR:
if (isImport) {
return Completeness.COMPLETE_WITH_SEMI;
}
 else {
return Completeness.DEFINITELY_INCOMPLETE;
}
default :
return Completeness.DEFINITELY_INCOMPLETE;
}
default :
return error();
}
}

Fixed version (ground truth):
public Completeness parseDeclaration(){
  boolean isImport=token.kind == IMPORT;
  while (token.kind.isDeclaration()) {
    nextToken();
  }
switch (token.kind) {
case EQ:
    nextToken();
  if (token.kind == BRACES) {
    nextToken();
    return lastly(SEMI);
  }
return parseExpressionStatement();
case BRACES:
case SEMI:
nextToken();
return Completeness.COMPLETE;
case UNMATCHED:
nextToken();
return Completeness.DEFINITELY_INCOMPLETE;
case EOF:
switch (in.prevCT.kind) {
case BRACES:
case SEMI:
return Completeness.COMPLETE;
case IDENTIFIER:
case BRACKETS:
return Completeness.COMPLETE_WITH_SEMI;
case DOTSTAR:
if (isImport) {
return Completeness.COMPLETE_WITH_SEMI;
}
 else {
return Completeness.UNKNOWN;
}
default :
return Completeness.DEFINITELY_INCOMPLETE;
}
default :
return error();
}
}
Program: 71314
Project: 71314
Buggy source:
Parser(Matched in,JShell proc,String scannedInput){
  this.in=in;
  nextToken();
  this.proc=proc;
  this.scannedInput=scannedInput;
}

Fixed version (ground truth):
Parser(Supplier<Matched> matchedFactory,Supplier<ParseTask> parseFactory){
  this.matchedFactory=matchedFactory;
  this.parseFactory=parseFactory;
  resetInput();
}
Program: 71315
Project: 71315
Buggy source:
void TK(TokenKind tokenKind,int b){
  this.tokenKind=tokenKind;
  this.belongs=b;
}

Fixed version (ground truth):
void TK(TokenKind tokenKind,int b){
  this.tokenKind=tokenKind;
  this.belongs=b;
  this.mapping=null;
}
Program: 71316
Project: 71316
Buggy source:
/** 
 * Utility routine to check if the InetAddress in a wildcard address.
 * @return a {@code boolean} indicating if the Inetaddress isa wildcard address.
 * @since 1.4
 */
public boolean isAnyLocalAddress(){
  return holder().getAddress() == 0;
}

Fixed version (ground truth):
/** 
 * Utility routine to check if the InetAddress is a wildcard address.
 * @return a {@code boolean} indicating if the Inetaddress isa wildcard address.
 * @since 1.4
 */
public boolean isAnyLocalAddress(){
  return holder().getAddress() == 0;
}
Program: 71317
Project: 71317
Buggy source:
/** 
 * Utility routine to check if the InetAddress in a wildcard address.
 * @return a {@code boolean} indicating if the Inetaddress isa wildcard address.
 * @since 1.4
 */
@Override public boolean isAnyLocalAddress(){
  return holder6.isAnyLocalAddress();
}

Fixed version (ground truth):
/** 
 * Utility routine to check if the InetAddress is a wildcard address.
 * @return a {@code boolean} indicating if the Inetaddress isa wildcard address.
 * @since 1.4
 */
@Override public boolean isAnyLocalAddress(){
  return holder6.isAnyLocalAddress();
}
Program: 71318
Project: 71318
Buggy source:
/** 
 * Utility routine to check if the InetAddress in a wildcard address.
 * @return a {@code boolean} indicating if the Inetaddress isa wildcard address.
 * @since 1.4
 */
public boolean isAnyLocalAddress(){
  return false;
}

Fixed version (ground truth):
/** 
 * Utility routine to check if the InetAddress is a wildcard address.
 * @return a {@code boolean} indicating if the Inetaddress isa wildcard address.
 * @since 1.4
 */
public boolean isAnyLocalAddress(){
  return false;
}
Program: 71320
Project: 71320
Buggy source:
/** 
 * Returns an output stream for this socket. <p> If this socket has an associated channel then the resulting output stream delegates all of its operations to the channel.  If the channel is in non-blocking mode then the output stream's   {@code write}operations will throw an   {@link java.nio.channels.IllegalBlockingModeException}. <p> Closing the returned   {@link java.io.OutputStream OutputStream}will close the associated socket.
 * @return     an output stream for writing bytes to this socket.
 * @exception IOException  if an I/O error occurs when creating theoutput stream or if the socket is not connected.
 * @revised 1.4
 * @spec JSR-51
 */
public OutputStream getOutputStream() throws IOException {
  if (isClosed())   throw new SocketException("String_Node_Str");
  if (!isConnected())   throw new SocketException("String_Node_Str");
  if (isOutputShutdown())   throw new SocketException("String_Node_Str");
  final Socket s=this;
  OutputStream os=null;
  try {
    os=AccessController.doPrivileged(new PrivilegedExceptionAction<>(){
      public OutputStream run() throws IOException {
        return impl.getOutputStream();
      }
    }
);
  }
 catch (  java.security.PrivilegedActionException e) {
    throw (IOException)e.getException();
  }
  return os;
}

Fixed version (ground truth):
/** 
 * Returns an output stream for this socket. <p> If this socket has an associated channel then the resulting output stream delegates all of its operations to the channel.  If the channel is in non-blocking mode then the output stream's   {@code write}operations will throw an   {@link java.nio.channels.IllegalBlockingModeException}. <p> Closing the returned   {@link java.io.OutputStream OutputStream}will close the associated socket.
 * @return     an output stream for writing bytes to this socket.
 * @exception IOException  if an I/O error occurs when creating theoutput stream or if the socket is not connected.
 * @revised 1.4
 * @spec JSR-51
 */
public OutputStream getOutputStream() throws IOException {
  if (isClosed())   throw new SocketException("String_Node_Str");
  if (!isConnected())   throw new SocketException("String_Node_Str");
  if (isOutputShutdown())   throw new SocketException("String_Node_Str");
  OutputStream os=null;
  try {
    os=AccessController.doPrivileged(new PrivilegedExceptionAction<>(){
      public OutputStream run() throws IOException {
        return impl.getOutputStream();
      }
    }
);
  }
 catch (  java.security.PrivilegedActionException e) {
    throw (IOException)e.getException();
  }
  return os;
}
Program: 71321
Project: 71321
Buggy source:
/** 
 * extract the root name from a versioned entry name given inode for META-INF/versions/9/foo/bar.class and prefix META-INF/versions/9/ returns foo/bar.class
 */
private byte[] getRootName(IndexNode prefix,IndexNode inode){
  int offset=prefix.name.length;
  byte[] fullName=inode.name;
  return Arrays.copyOfRange(fullName,offset,fullName.length);
}

Fixed version (ground truth):
/** 
 * extract the root name from a versioned entry name given inode for META-INF/versions/9/foo/bar.class and prefix META-INF/versions/9/ returns foo/bar.class
 */
private byte[] getRootName(IndexNode prefix,IndexNode inode){
  int offset=prefix.name.length - 1;
  byte[] fullName=inode.name;
  return Arrays.copyOfRange(fullName,offset,fullName.length);
}
Program: 71322
Project: 71322
Buggy source:
public int method(){
  return e.method;
}

Fixed version (ground truth):
public int method();
Program: 71323
Project: 71323
Buggy source:
public long compressedSize(){
  return e.csize;
}

Fixed version (ground truth):
public long compressedSize();
Program: 71324
Project: 71324
Buggy source:
public long crc(){
  return e.crc;
}

Fixed version (ground truth):
public long crc();
Program: 71325
Project: 71325
Buggy source:
public byte[] extra(){
  if (e.extra != null)   return Arrays.copyOf(e.extra,e.extra.length);
  return null;
}

Fixed version (ground truth):
public byte[] extra();
Program: 71326
Project: 71326
Buggy source:
public byte[] comment(){
  if (e.comment != null)   return Arrays.copyOf(e.comment,e.comment.length);
  return null;
}

Fixed version (ground truth):
public byte[] comment();
Program: 71327
Project: 71327
Buggy source:
public String toString(){
  StringBuilder sb=new StringBuilder(1024);
  Formatter fm=new Formatter(sb);
  if (creationTime() != null)   fm.format("String_Node_Str",creationTime().toMillis());
 else   fm.format("String_Node_Str");
  if (lastAccessTime() != null)   fm.format("String_Node_Str",lastAccessTime().toMillis());
 else   fm.format("String_Node_Str");
  fm.format("String_Node_Str",lastModifiedTime().toMillis());
  fm.format("String_Node_Str",isRegularFile());
  fm.format("String_Node_Str",isDirectory());
  fm.format("String_Node_Str",isSymbolicLink());
  fm.format("String_Node_Str",isOther());
  fm.format("String_Node_Str",fileKey());
  fm.format("String_Node_Str",size());
  fm.format("String_Node_Str",compressedSize());
  fm.format("String_Node_Str",crc());
  fm.format("String_Node_Str",method());
  fm.close();
  return sb.toString();
}

Fixed version (ground truth):
public String toString();
Program: 71328
Project: 71328
Buggy source:
/** 
 * Constructs an instance with the given file descriptor.
 */
PlainSocketImpl(FileDescriptor fd){
  if (useDualStackImpl) {
    impl=new DualStackPlainSocketImpl(fd,exclusiveBind);
  }
 else {
    impl=new TwoStacksPlainSocketImpl(fd,exclusiveBind);
  }
}

Fixed version (ground truth):
/** 
 * Constructs an instance with the given file descriptor.
 */
PlainSocketImpl(FileDescriptor fd){
  if (!preferIPv4Stack) {
    impl=new DualStackPlainSocketImpl(fd,exclusiveBind);
  }
 else {
    impl=new TwoStacksPlainSocketImpl(fd,exclusiveBind);
  }
}
Program: 71329
Project: 71329
Buggy source:
@Override <V extends Number,A>Future<V> implRead(boolean isScatteringRead,ByteBuffer dst,ByteBuffer[] dsts,long timeout,TimeUnit unit,A attachment,CompletionHandler<V,? super A> handler){
  PendingFuture<V,A> result=new PendingFuture<V,A>(this,handler,attachment);
  ByteBuffer[] bufs;
  if (isScatteringRead) {
    bufs=dsts;
  }
 else {
    bufs=new ByteBuffer[1];
    bufs[0]=dst;
  }
  final ReadTask<V,A> readTask=new ReadTask<V,A>(bufs,isScatteringRead,result);
  result.setContext(readTask);
  if (timeout > 0L) {
    Future<?> timeoutTask=iocp.schedule(new Runnable(){
      public void run(){
        readTask.timeout();
      }
    }
,timeout,unit);
    result.setTimeoutTask(timeoutTask);
  }
  if (Iocp.supportsThreadAgnosticIo()) {
    readTask.run();
  }
 else {
    Invoker.invokeOnThreadInThreadPool(this,readTask);
  }
  return result;
}

Fixed version (ground truth):
@Override <V extends Number,A>Future<V> implRead(boolean isScatteringRead,ByteBuffer dst,ByteBuffer[] dsts,long timeout,TimeUnit unit,A attachment,CompletionHandler<V,? super A> handler){
  PendingFuture<V,A> result=new PendingFuture<V,A>(this,handler,attachment);
  ByteBuffer[] bufs;
  if (isScatteringRead) {
    bufs=dsts;
  }
 else {
    bufs=new ByteBuffer[1];
    bufs[0]=dst;
  }
  final ReadTask<V,A> readTask=new ReadTask<V,A>(bufs,isScatteringRead,result);
  result.setContext(readTask);
  if (timeout > 0L) {
    Future<?> timeoutTask=iocp.schedule(new Runnable(){
      public void run(){
        readTask.timeout();
      }
    }
,timeout,unit);
    result.setTimeoutTask(timeoutTask);
  }
  readTask.run();
  return result;
}
Program: 71330
Project: 71330
Buggy source:
@Override <V extends Number,A>Future<V> implWrite(boolean gatheringWrite,ByteBuffer src,ByteBuffer[] srcs,long timeout,TimeUnit unit,A attachment,CompletionHandler<V,? super A> handler){
  PendingFuture<V,A> result=new PendingFuture<V,A>(this,handler,attachment);
  ByteBuffer[] bufs;
  if (gatheringWrite) {
    bufs=srcs;
  }
 else {
    bufs=new ByteBuffer[1];
    bufs[0]=src;
  }
  final WriteTask<V,A> writeTask=new WriteTask<V,A>(bufs,gatheringWrite,result);
  result.setContext(writeTask);
  if (timeout > 0L) {
    Future<?> timeoutTask=iocp.schedule(new Runnable(){
      public void run(){
        writeTask.timeout();
      }
    }
,timeout,unit);
    result.setTimeoutTask(timeoutTask);
  }
  if (Iocp.supportsThreadAgnosticIo()) {
    writeTask.run();
  }
 else {
    Invoker.invokeOnThreadInThreadPool(this,writeTask);
  }
  return result;
}

Fixed version (ground truth):
@Override <V extends Number,A>Future<V> implWrite(boolean gatheringWrite,ByteBuffer src,ByteBuffer[] srcs,long timeout,TimeUnit unit,A attachment,CompletionHandler<V,? super A> handler){
  PendingFuture<V,A> result=new PendingFuture<V,A>(this,handler,attachment);
  ByteBuffer[] bufs;
  if (gatheringWrite) {
    bufs=srcs;
  }
 else {
    bufs=new ByteBuffer[1];
    bufs[0]=src;
  }
  final WriteTask<V,A> writeTask=new WriteTask<V,A>(bufs,gatheringWrite,result);
  result.setContext(writeTask);
  if (timeout > 0L) {
    Future<?> timeoutTask=iocp.schedule(new Runnable(){
      public void run(){
        writeTask.timeout();
      }
    }
,timeout,unit);
    result.setTimeoutTask(timeoutTask);
  }
  writeTask.run();
  return result;
}
Program: 71331
Project: 71331
Buggy source:
@Override public Type add(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(IADD);
  }
 else {
    method.visitInvokeDynamicInsn("String_Node_Str","String_Node_Str",MATHBOOTSTRAP,programPoint);
  }
  return INT;
}

Fixed version (ground truth):
@Override public Type add(final MethodVisitor method,final int programPoint){
  return Type.INT.add(method,programPoint);
}
Program: 71332
Project: 71332
Buggy source:
@Override public Type add(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(IADD);
  }
 else {
    method.visitInvokeDynamicInsn("String_Node_Str","String_Node_Str",MATHBOOTSTRAP,programPoint);
  }
  return INT;
}

Fixed version (ground truth):
@Override public Type add(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(IADD);
  }
 else {
    ldc(method,programPoint);
    JSType.ADD_EXACT.invoke(method);
  }
  return INT;
}
Program: 71333
Project: 71333
Buggy source:
@Override public Type sub(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(ISUB);
  }
 else {
    method.visitInvokeDynamicInsn("String_Node_Str","String_Node_Str",MATHBOOTSTRAP,programPoint);
  }
  return INT;
}

Fixed version (ground truth):
@Override public Type sub(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(ISUB);
  }
 else {
    ldc(method,programPoint);
    JSType.SUB_EXACT.invoke(method);
  }
  return INT;
}
Program: 71334
Project: 71334
Buggy source:
@Override public Type mul(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(IMUL);
  }
 else {
    method.visitInvokeDynamicInsn("String_Node_Str","String_Node_Str",MATHBOOTSTRAP,programPoint);
  }
  return INT;
}

Fixed version (ground truth):
@Override public Type mul(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(IMUL);
  }
 else {
    ldc(method,programPoint);
    JSType.MUL_EXACT.invoke(method);
  }
  return INT;
}
Program: 71335
Project: 71335
Buggy source:
@Override public Type div(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    JSType.DIV_ZERO.invoke(method);
  }
 else {
    method.visitInvokeDynamicInsn("String_Node_Str","String_Node_Str",MATHBOOTSTRAP,programPoint);
  }
  return INT;
}

Fixed version (ground truth):
@Override public Type div(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    JSType.DIV_ZERO.invoke(method);
  }
 else {
    ldc(method,programPoint);
    JSType.DIV_EXACT.invoke(method);
  }
  return INT;
}
Program: 71336
Project: 71336
Buggy source:
@Override public Type neg(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(INEG);
  }
 else {
    method.visitInvokeDynamicInsn("String_Node_Str","String_Node_Str",MATHBOOTSTRAP,programPoint);
  }
  return INT;
}

Fixed version (ground truth):
@Override public Type neg(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(INEG);
  }
 else {
    ldc(method,programPoint);
    JSType.NEGATE_EXACT.invoke(method);
  }
  return INT;
}
Program: 71337
Project: 71337
Buggy source:
@Override public Type rem(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    JSType.REM_ZERO.invoke(method);
  }
 else {
    method.visitInvokeDynamicInsn("String_Node_Str","String_Node_Str",MATHBOOTSTRAP,programPoint);
  }
  return INT;
}

Fixed version (ground truth):
@Override public Type rem(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    JSType.REM_ZERO.invoke(method);
  }
 else {
    ldc(method,programPoint);
    JSType.REM_EXACT.invoke(method);
  }
  return INT;
}
Program: 71338
Project: 71338
Buggy source:
@Override public Type add(final MethodVisitor method,final int programPoint){
  if (programPoint == INVALID_PROGRAM_POINT) {
    method.visitInsn(LADD);
  }
 else {
    method.visitInvokeDynamicInsn("String_Node_Str","String_Node_Str",MATHBOOTSTRAP,programPoint);
  }
  return LONG;
}

Fixed version (ground truth):
@Override public Type add(final MethodVisitor method,final int programPoint){
  throw new UnsupportedOperationException("String_Node_Str");
}
Program: 71339
Project: 71339
Buggy source:
/** 
 * Get the next XMLEvent
 * @see XMLEvent
 * @throws XMLStreamException if there is an error with the underlying XML.
 * @throws NoSuchElementException iteration has no more elements.
 */
public XMLEvent nextEvent() throws XMLStreamException ;

Fixed version (ground truth):
/** 
 * Get the next XMLEvent
 * @see XMLEvent
 * @throws XMLStreamException if there is an error with the underlying XML.
 * @throws java.util.NoSuchElementException iteration has no more elements.
 */
public XMLEvent nextEvent() throws XMLStreamException ;
Program: 71340
Project: 71340
Buggy source:
/** 
 * This method will write the XMLEvent as per the XML 1.0 specification as Unicode characters. No indentation or whitespace should be outputted. Any user defined event type SHALL have this method called when being written to on an output stream. Built in Event types MUST implement this method, but implementations MAY choose not call these methods for optimizations reasons when writing out built in Events to an output stream. The output generated MUST be equivalent in terms of the infoset expressed.
 * @param writer The writer that will output the data
 * @throws XMLStreamException if there is a fatal error writing the event
 */
public void writeAsEncodedUnicode(Writer writer) throws javax.xml.stream.XMLStreamException ;

Fixed version (ground truth):
/** 
 * This method will write the XMLEvent as per the XML 1.0 specification as Unicode characters. No indentation or whitespace should be outputted. Any user defined event type SHALL have this method called when being written to on an output stream. Built in Event types MUST implement this method, but implementations MAY choose not call these methods for optimizations reasons when writing out built in Events to an output stream. The output generated MUST be equivalent in terms of the infoset expressed.
 * @param writer The writer that will output the data
 * @throws javax.xml.stream.XMLStreamException if there is a fatal error writing the event
 */
public void writeAsEncodedUnicode(Writer writer) throws javax.xml.stream.XMLStreamException ;
Program: 71341
Project: 71341
Buggy source:
/** 
 * Transmits a control command to the terminal device. <p>This can be used to, for example, control terminal functions like a built-in PIN pad or biometrics.
 * @param controlCode the control code of the command
 * @param command the command data
 * @throws SecurityException if a SecurityManager exists and thecaller does not have the required {@linkplain CardPermission permission}
 * @throws NullPointerException if command is null
 * @throws CardException if the card operation failed
 * @throws IllegalStateException if this card object has been disposed ofvia the  {@linkplain #disconnect disconnect()} method
 */
public abstract byte[] transmitControlCommand(int controlCode,byte[] command) throws CardException ;

Fixed version (ground truth):
/** 
 * Transmits a control command to the terminal device. <p>This can be used to, for example, control terminal functions like a built-in PIN pad or biometrics.
 * @param controlCode the control code of the command
 * @param command the command data
 * @return the response from the terminal device
 * @throws SecurityException if a SecurityManager exists and thecaller does not have the required {@linkplain CardPermission permission}
 * @throws NullPointerException if command is null
 * @throws CardException if the card operation failed
 * @throws IllegalStateException if this card object has been disposed ofvia the  {@linkplain #disconnect disconnect()} method
 */
public abstract byte[] transmitControlCommand(int controlCode,byte[] command) throws CardException ;
Program: 71342
Project: 71342
Buggy source:
/** 
 * Returns the CardChannel for the basic logical channel. The basic logical channel has a channel number of 0.
 * @throws SecurityException if a SecurityManager exists and thecaller does not have the required {@linkplain CardPermission permission}
 * @throws IllegalStateException if this card object has been disposed ofvia the  {@linkplain #disconnect disconnect()} method
 */
public abstract CardChannel getBasicChannel();

Fixed version (ground truth):
/** 
 * Returns the CardChannel for the basic logical channel. The basic logical channel has a channel number of 0.
 * @return the CardChannel for the basic logical channel
 * @throws SecurityException if a SecurityManager exists and thecaller does not have the required {@linkplain CardPermission permission}
 * @throws IllegalStateException if this card object has been disposed ofvia the  {@linkplain #disconnect disconnect()} method
 */
public abstract CardChannel getBasicChannel();
Program: 71343
Project: 71343
Buggy source:
/** 
 * Opens a new logical channel to the card and returns it. The channel is opened by issuing a <code>MANAGE CHANNEL</code> command that should use the format <code>[00 70 00 00 01]</code>.
 * @throws SecurityException if a SecurityManager exists and thecaller does not have the required {@linkplain CardPermission permission}
 * @throws CardException is a new logical channel could not be opened
 * @throws IllegalStateException if this card object has been disposed ofvia the  {@linkplain #disconnect disconnect()} method
 */
public abstract CardChannel openLogicalChannel() throws CardException ;

Fixed version (ground truth):
/** 
 * Opens a new logical channel to the card and returns it. The channel is opened by issuing a <code>MANAGE CHANNEL</code> command that should use the format <code>[00 70 00 00 01]</code>.
 * @return the logical channel which has been opened
 * @throws SecurityException if a SecurityManager exists and thecaller does not have the required {@linkplain CardPermission permission}
 * @throws CardException is a new logical channel could not be opened
 * @throws IllegalStateException if this card object has been disposed ofvia the  {@linkplain #disconnect disconnect()} method
 */
public abstract CardChannel openLogicalChannel() throws CardException ;
Program: 71344
Project: 71344
Buggy source:
/** 
 * Establishes a connection to the card. If a connection has previously established using the specified protocol, this method returns the same Card object as the previous call.
 * @param protocol the protocol to use ("T=0", "T=1", or "T=CL"), or "*" toconnect using any available protocol.
 * @throws NullPointerException if protocol is null
 * @throws IllegalArgumentException if protocol is an invalid protocolspecification
 * @throws CardNotPresentException if no card is present in this terminal
 * @throws CardException if a connection could not be establishedusing the specified protocol or if a connection has previously been established using a different protocol
 * @throws SecurityException if a SecurityManager exists and thecaller does not have the required {@linkplain CardPermission permission}
 */
public abstract Card connect(String protocol) throws CardException ;

Fixed version (ground truth):
/** 
 * Establishes a connection to the card. If a connection has previously established using the specified protocol, this method returns the same Card object as the previous call.
 * @param protocol the protocol to use ("T=0", "T=1", or "T=CL"), or "*" toconnect using any available protocol.
 * @throws NullPointerException if protocol is null
 * @throws IllegalArgumentException if protocol is an invalid protocolspecification
 * @throws CardNotPresentException if no card is present in this terminal
 * @throws CardException if a connection could not be establishedusing the specified protocol or if a connection has previously been established using a different protocol
 * @throws SecurityException if a SecurityManager exists and thecaller does not have the required {@linkplain CardPermission permission}
 * @return the card the connection has been established with
 */
public abstract Card connect(String protocol) throws CardException ;
Program: 71345
Project: 71345
Buggy source:
/** 
 * Returns the terminal with the specified name or null if no such terminal exists.
 * @return the terminal with the specified name or null if no suchterminal exists.
 * @throws NullPointerException if name is null
 */
public CardTerminal getTerminal(String name){
  if (name == null) {
    throw new NullPointerException();
  }
  try {
    for (    CardTerminal terminal : list()) {
      if (terminal.getName().equals(name)) {
        return terminal;
      }
    }
    return null;
  }
 catch (  CardException e) {
    return null;
  }
}

Fixed version (ground truth):
/** 
 * Returns the terminal with the specified name or null if no such terminal exists.
 * @param name the terminal name
 * @return the terminal with the specified name or null if no suchterminal exists.
 * @throws NullPointerException if name is null
 */
public CardTerminal getTerminal(String name){
  if (name == null) {
    throw new NullPointerException();
  }
  try {
    for (    CardTerminal terminal : list()) {
      if (terminal.getName().equals(name)) {
        return terminal;
      }
    }
    return null;
  }
 catch (  CardException e) {
    return null;
  }
}
Program: 71346
Project: 71346
Buggy source:
/** 
 * displays a dialog box describing an error which occurred.
 */
void displayErrorDialog(Window w,Throwable t){
  if (t instanceof NoDisplayException) {
    return;
  }
  displayErrorDialog(w,t.toString());
}

Fixed version (ground truth):
/** 
 * displays a dialog box describing an error which occurred.
 */
void displayErrorDialog(Window w,Throwable t){
  if (t instanceof NoDisplayException) {
    return;
  }
  if (t.getClass() == Exception.class) {
    displayErrorDialog(w,t.getLocalizedMessage());
  }
 else {
    displayErrorDialog(w,t.toString());
  }
}
Program: 71347
Project: 71347
Buggy source:
/** 
 * Returns an array of all the objects currently registered as <code><em>Foo</em>Listener</code>s upon this model. <code><em>Foo</em>Listener</code>s are registered using the <code>add<em>Foo</em>Listener</code> method. <p> You can specify the <code>listenerType</code> argument with a class literal, such as <code><em>Foo</em>Listener.class</code>. For example, you can query a list model <code>m</code> for its list data listeners with the following code: <pre>ListDataListener[] ldls = (ListDataListener[])(m.getListeners(ListDataListener.class));</pre> If no such listeners exist, this method returns an empty array.
 * @param listenerType  the type of listeners requested;this parameter should specify an interface that descends from <code>java.util.EventListener</code>
 * @return an array of all objects registered as<code><em>Foo</em>Listener</code>s on this model, or an empty array if no such listeners have been added
 * @exception ClassCastException if <code>listenerType</code> doesn'tspecify a class or interface that implements <code>java.util.EventListener</code>
 * @see #getListDataListeners
 * @since 1.3
 */
public <T extends EventListener>T[] getListeners(Class<T> listenerType){
  return listenerList.getListeners(listenerType);
}

Fixed version (ground truth):
/** 
 * Returns an array of all the objects currently registered as <code><em>Foo</em>Listener</code>s upon this model. <code><em>Foo</em>Listener</code>s are registered using the <code>add<em>Foo</em>Listener</code> method. <p> You can specify the <code>listenerType</code> argument with a class literal, such as <code><em>Foo</em>Listener.class</code>. For example, you can query a list model <code>m</code> for its list data listeners with the following code: <pre>ListDataListener[] ldls = (ListDataListener[])(m.getListeners(ListDataListener.class));</pre> If no such listeners exist, this method returns an empty array.
 * @param < T > the type of {@code EventListener} class being requested
 * @param listenerType  the type of listeners requested;this parameter should specify an interface that descends from <code>java.util.EventListener</code>
 * @return an array of all objects registered as<code><em>Foo</em>Listener</code>s on this model, or an empty array if no such listeners have been added
 * @exception ClassCastException if <code>listenerType</code> doesn'tspecify a class or interface that implements <code>java.util.EventListener</code>
 * @see #getListDataListeners
 * @since 1.3
 */
public <T extends EventListener>T[] getListeners(Class<T> listenerType){
  return listenerList.getListeners(listenerType);
}
Program: 71348
Project: 71348
Buggy source:
/** 
 * Returns true to indicate that editing has begun.
 * @param anEvent          the event
 */
public boolean startCellEditing(EventObject anEvent){
  return true;
}

Fixed version (ground truth):
/** 
 * Returns true to indicate that editing has begun.
 * @param anEvent          the event
 * @return true to indicate editing has begun
 */
public boolean startCellEditing(EventObject anEvent){
  return true;
}
Program: 71349
Project: 71349
Buggy source:
/** 
 * Sets that the component has been iconized and the bounds of the <code>desktopIcon</code> are valid.
 */
protected void setWasIcon(JInternalFrame f,Boolean value){
  if (value != null) {
    f.putClientProperty(HAS_BEEN_ICONIFIED_PROPERTY,value);
  }
}

Fixed version (ground truth):
/** 
 * Sets that the component has been iconized and the bounds of the <code>desktopIcon</code> are valid.
 * @param f     the {@code JInternalFrame} of interest
 * @param value a {@code Boolean} signifying if component has been iconized
 */
protected void setWasIcon(JInternalFrame f,Boolean value){
  if (value != null) {
    f.putClientProperty(HAS_BEEN_ICONIFIED_PROPERTY,value);
  }
}
Program: 71350
Project: 71350
Buggy source:
/** 
 * Convenience method to remove the desktopIcon of <b>f</b> is necessary. 
 */
protected void removeIconFor(JInternalFrame f){
  JInternalFrame.JDesktopIcon di=f.getDesktopIcon();
  Container c=di.getParent();
  if (c != null) {
    c.remove(di);
    c.repaint(di.getX(),di.getY(),di.getWidth(),di.getHeight());
  }
}

Fixed version (ground truth):
/** 
 * Convenience method to remove the desktopIcon of <b>f</b> is necessary.
 * @param f the {@code JInternalFrame} for which to remove the{@code desktopIcon}
 */
protected void removeIconFor(JInternalFrame f){
  JInternalFrame.JDesktopIcon di=f.getDesktopIcon();
  Container c=di.getParent();
  if (c != null) {
    c.remove(di);
    c.repaint(di.getX(),di.getY(),di.getWidth(),di.getHeight());
  }
}
Program: 71352
Project: 71352
Buggy source:
/** 
 * Returns the element at the specified position in this list. <p> Throws an <code>ArrayIndexOutOfBoundsException</code> if the index is out of range (<code>index &lt; 0 || index &gt;= size()</code>).
 * @param index index of element to return
 */
public E get(int index){
  return delegate.elementAt(index);
}

Fixed version (ground truth):
/** 
 * Returns the element at the specified position in this list. <p> Throws an <code>ArrayIndexOutOfBoundsException</code> if the index is out of range (<code>index &lt; 0 || index &gt;= size()</code>).
 * @param index index of element to return
 * @return the element at the specified position in this list
 */
public E get(int index){
  return delegate.elementAt(index);
}
Program: 71353
Project: 71353
Buggy source:
/** 
 * Returns an array of all the objects currently registered as <code><em>Foo</em>Listener</code>s upon this model. <code><em>Foo</em>Listener</code>s are registered using the <code>add<em>Foo</em>Listener</code> method. <p> You can specify the <code>listenerType</code> argument with a class literal, such as <code><em>Foo</em>Listener.class</code>. For example, you can query a <code>DefaultListSelectionModel</code> instance <code>m</code> for its list selection listeners with the following code: <pre>ListSelectionListener[] lsls = (ListSelectionListener[])(m.getListeners(ListSelectionListener.class));</pre> If no such listeners exist, this method returns an empty array.
 * @param listenerType  the type of listeners requested;this parameter should specify an interface that descends from <code>java.util.EventListener</code>
 * @return an array of all objects registered as<code><em>Foo</em>Listener</code>s on this model, or an empty array if no such listeners have been added
 * @exception ClassCastException if <code>listenerType</code> doesn'tspecify a class or interface that implements <code>java.util.EventListener</code>
 * @see #getListSelectionListeners
 * @since 1.3
 */
public <T extends EventListener>T[] getListeners(Class<T> listenerType){
  return listenerList.getListeners(listenerType);
}

Fixed version (ground truth):
/** 
 * Returns an array of all the objects currently registered as <code><em>Foo</em>Listener</code>s upon this model. <code><em>Foo</em>Listener</code>s are registered using the <code>add<em>Foo</em>Listener</code> method. <p> You can specify the <code>listenerType</code> argument with a class literal, such as <code><em>Foo</em>Listener.class</code>. For example, you can query a <code>DefaultListSelectionModel</code> instance <code>m</code> for its list selection listeners with the following code: <pre>ListSelectionListener[] lsls = (ListSelectionListener[])(m.getListeners(ListSelectionListener.class));</pre> If no such listeners exist, this method returns an empty array.
 * @param < T > the type of {@code EventListener} class being requested
 * @param listenerType  the type of listeners requested;this parameter should specify an interface that descends from <code>java.util.EventListener</code>
 * @return an array of all objects registered as<code><em>Foo</em>Listener</code>s on this model, or an empty array if no such listeners have been added
 * @exception ClassCastException if <code>listenerType</code> doesn'tspecify a class or interface that implements <code>java.util.EventListener</code>
 * @see #getListSelectionListeners
 * @since 1.3
 */
public <T extends EventListener>T[] getListeners(Class<T> listenerType){
  return listenerList.getListeners(listenerType);
}
Program: 71354
Project: 71354
Buggy source:
/** 
 * Sets the value of the leadAnchorNotificationEnabled flag.
 * @see #isLeadAnchorNotificationEnabled()
 */
public void setLeadAnchorNotificationEnabled(boolean flag){
  leadAnchorNotificationEnabled=flag;
}

Fixed version (ground truth):
/** 
 * Sets the value of the leadAnchorNotificationEnabled flag.
 * @param flag boolean value for {@code leadAnchorNotificationEnabled}
 * @see #isLeadAnchorNotificationEnabled()
 */
public void setLeadAnchorNotificationEnabled(boolean flag){
  leadAnchorNotificationEnabled=flag;
}
Program: 71355
Project: 71355
Buggy source:
/** 
 * Returns whether or not to convert the value to a string before doing comparisons when sorting.  If true <code>ModelWrapper.getStringValueAt</code> will be used, otherwise <code>ModelWrapper.getValueAt</code> will be used.  It is up to subclasses, such as <code>TableRowSorter</code>, to honor this value in their <code>ModelWrapper</code> implementation.
 * @param column the index of the column to test, in terms of theunderlying model
 * @throws IndexOutOfBoundsException if <code>column</code> is not valid
 */
protected boolean useToString(int column){
  return (getComparator(column) == null);
}

Fixed version (ground truth):
/** 
 * Returns whether or not to convert the value to a string before doing comparisons when sorting.  If true <code>ModelWrapper.getStringValueAt</code> will be used, otherwise <code>ModelWrapper.getValueAt</code> will be used.  It is up to subclasses, such as <code>TableRowSorter</code>, to honor this value in their <code>ModelWrapper</code> implementation.
 * @param column the index of the column to test, in terms of theunderlying model
 * @return true if values are to be converted to strings before doingcomparisons when sorting
 * @throws IndexOutOfBoundsException if <code>column</code> is not valid
 */
protected boolean useToString(int column){
  return (getComparator(column) == null);
}