public interface List<E> {
void add(final E element, int index);
void addFirst(final E element);
void addLast(final E element);
void clear();
boolean contains(final E element);
@Override boolean equals(final Object object);
E get(final int index);
E getFirst();
E getLast();
@Override int hashCode();
int indexOf(final E element);
boolean isEmpty();
void remove(final E element);
void remove(final int index);
void removeAll(final E element);
void removeFirst();
void removeLast();
void reverse();
void set(final E element, final int index);
int size();
@Override String toString();
}