@Override public V first() { return get(0); }
@Override public V first() { return get(0); }
@Override public V first() { return get(0); }
@Override public V first() { return get(0); }
@Override public V last() { return get(size() - 1); }
@Override public V last() { return get(size() - 1); }
private V maybe(int i) { if (outOfBounds(i)) return null; return super.get(i); }
public V get(int index) { index += lowerBound; if (outOfBounds(index)) throw new NoSuchElementException(); return super.get(index); }
private V maybe(int i) { if (outOfBounds(i)) return null; return super.get(i); }
@Override public V last() { return get(size() - 1); }
private V maybe(int i) { if (outOfBounds(i)) return null; return super.get(i); }
public V get(int index) { index += lowerBound; if (outOfBounds(index)) throw new NoSuchElementException(); return super.get(index); }
@Override public V last() { return get(size() - 1); }
private V maybe(int i) { if (outOfBounds(i)) return null; return super.get(i); }
public V get(int index) { index += lowerBound; if (outOfBounds(index)) throw new NoSuchElementException(); return super.get(index); }
public V get(int index) { index += lowerBound; if (outOfBounds(index)) throw new NoSuchElementException(); return super.get(index); }