@Override
  public int lastIndexOf(Object o) {
    ListIterator<E> it = listIterator(size());
    if (o == null) {
      while (it.hasPrevious()) {
        if (it.previous() == null) {
          return it.nextIndex();
        }
      }
    }
    else {
      while (it.hasPrevious()) {
        if (o.equals(it.previous())) {
          return it.nextIndex();
        }
      }
    }
    return -1;
  }
@Override
  public int lastIndexOf(Object o)