Buggy code:
public class ListUtils { private ListUtils ( ) { } public static < T > List < T > emptyIfNull ( final List < T > list ) { } public static < T > List < T > defaultIfNull ( final List < T > list , final List < T > defaultList ) { } public static < E > List < E > intersection ( final List < ? extends E > list1 , final List < ? extends E > list2 ) { } public static < E > List < E > subtract ( final List < E > list1 , final List < ? extends E > list2 ) { } public static < E > List < E > sum ( final List < ? extends E > list1 , final List < ? extends E > list2 ) { } public static < E > List < E > union ( final List < ? extends E > list1 , final List < ? extends E > list2 ) { } public static < E > List < E > select ( final Collection < ? extends E > inputCollection , final Predicate < ? super E > predicate ) { } public static < E > List < E > selectRejected ( final Collection < ? extends E > inputCollection , final Predicate < ? super E > predicate ) { } public static boolean isEqualList ( final Collection < ? > list1 , final Collection < ? > list2 ) { } public static int hashCodeForList ( final Collection < ? > list ) { } public static < E > List < E > retainAll ( final Collection < E > collection , final Collection < ? > retain ) { } public static < E > List < E > removeAll ( final Collection < E > collection , final Collection < ? > remove ) { } public static < E > List < E > synchronizedList ( final List < E > list ) { } public static < E > List < E > unmodifiableList ( final List < E > list ) { } public static < E > List < E > predicatedList ( final List < E > list , final Predicate < E > predicate ) { } public static < E > List < E > transformedList ( final List < E > list , final Transformer < ? super E , ? extends E > transformer ) { } public static < E > List < E > lazyList ( final List < E > list , final Factory < ? extends E > factory ) { } public static < E > List < E > fixedSizeList ( final List < E > list ) { } public static < E > int indexOf ( final List < E > list , final Predicate < E > predicate ) { } public static < E > List < E > longestCommonSubsequence ( final List < E > a , final List < E > b ) { } public static < E > List < E > longestCommonSubsequence ( final List < E > a , final List < E > b , final Equator < ? super E > equator ) { } public static String longestCommonSubsequence ( final CharSequence a , final CharSequence b ) { } private static final class LcsVisitor < E > implements CommandVisitor < E > { private ArrayList < E > sequence ; public LcsVisitor ( ) { } public void visitInsertCommand ( final E object ) { } public void visitDeleteCommand ( final E object ) { } public void visitKeepCommand ( final E object ) { } public List < E > getSubSequence ( ) { } } private static final class CharSequenceAsList extends AbstractList < Character > { private final CharSequence sequence ; public CharSequenceAsList ( final CharSequence sequence ) { } @ Override public Character get ( int index ) { <START_BUG> return sequence . charAt ( index ) ; <END_BUG> } @ Override public int size ( ) { } } public static < T > List < List < T > > partition ( final List < T > list , final int size ) { } private static class Partition < T > extends AbstractList < List < T > > { private final List < T > list ; private final int size ; private Partition ( final List < T > list , final int size ) { } @ Override public List < T > get ( final int index ) { final int listSize = size ( ) ; if ( listSize < 0 ) { throw new IllegalArgumentException ( ( "negative<seq2seq4repair_space>size:<seq2seq4repair_space>" + listSize ) ) ; } if ( index < 0 ) { throw new IndexOutOfBoundsException ( ( ( "Index<seq2seq4repair_space>" + index ) + "<seq2seq4repair_space>must<seq2seq4repair_space>not<seq2seq4repair_space>be<seq2seq4repair_space>negative" ) ) ; } if ( index >= listSize ) { throw new IndexOutOfBoundsException ( ( ( ( "Index<seq2seq4repair_space>" + index ) + "<seq2seq4repair_space>must<seq2seq4repair_space>be<seq2seq4repair_space>less<seq2seq4repair_space>than<seq2seq4repair_space>size<seq2seq4repair_space>" ) + listSize ) ) ; } final int start = index * ( size ) ; final int end = Math . min ( ( start + ( size ) ) , list . size ( ) ) ; return list . subList ( start , end ) ; } @ Override public int size ( ) { } @ Override public boolean isEmpty ( ) { } } }

Fix:
return Character . valueOf ( sequence . charAt ( index ) ) ;