content: package kotlin.collections;
  
  import java.util.Collection;
  import java.util.Iterator;
  import java.util.List;
  import java.util.ListIterator;
  import java.util.NoSuchElementException;
  import java.util.RandomAccess;
  import kotlin.Metadata;
  import kotlin.jvm.internal.DefaultConstructorMarker;
  import kotlin.jvm.internal.Intrinsics;
  import kotlin.jvm.internal.markers.KMappedMarker;
  
  @Metadata(d1 = {"\u00008\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010 \n\u0002\b\u0002\n\u0002\u0010\b\n\u0002\b\u0003\n\u0002\u0010\u000b\n\u0000\n\u0002\u0010\u0000\n\u0002\b\b\n\u0002\u0010(\n\u0002\b\u0002\n\u0002\u0010*\n\u0002\b\b\b'\u0018\u0000 \u001c*\u0006\b\u0000\u0010\u0001 \u00012\b\u0012\u0004\u0012\u0002H\u00010\u00022\b\u0012\u0004\u0012\u0002H\u00010\u0003:\u0004\u001c\u001d\u001e\u001fB\u0007\b\u0004¢\u0006\u0002\u0010\u0004J\u0013\u0010\t\u001a\u00020\n2\b\u0010\u000b\u001a\u0004\u0018\u00010\fH\u0002J\u0016\u0010\r\u001a\u00028\u00002\u0006\u0010\u000e\u001a\u00020\u0006H¦\u0002¢\u0006\u0002\u0010\u000fJ\b\u0010\u0010\u001a\u00020\u0006H\u0016J\u0015\u0010\u0011\u001a\u00020\u00062\u0006\u0010\u0012\u001a\u00028\u0000H\u0016¢\u0006\u0002\u0010\u0013J\u000f\u0010\u0014\u001a\b\u0012\u0004\u0012\u00028\u00000\u0015H\u0002J\u0015\u0010\u0016\u001a\u00020\u00062\u0006\u0010\u0012\u001a\u00028\u0000H\u0016¢\u0006\u0002\u0010\u0013J\u000e\u0010\u0017\u001a\b\u0012\u0004\u0012\u00028\u00000\u0018H\u0016J\u0016\u0010\u0017\u001a\b\u0012\u0004\u0012\u00028\u00000\u00182\u0006\u0010\u000e\u001a\u00020\u0006H\u0016J\u001e\u0010\u0019\u001a\b\u0012\u0004\u0012\u00028\u00000\u00032\u0006\u0010\u001a\u001a\u00020\u00062\u0006\u0010\u001b\u001a\u00020\u0006H\u0016R\u0012\u0010\u0005\u001a\u00020\u0006X¦\u0004¢\u0006\u0006\u001a\u0004\b\u0007\u0010\b¨\u0006 "}, d2 = {"Lkotlin/collections/AbstractList;", "E", "Lkotlin/collections/AbstractCollection;", "", "()V", "size", "", "getSize", "()I", "equals", "", "other", "", "get", "index", "(I)Ljava/lang/Object;", "hashCode", "indexOf", "element", "(Ljava/lang/Object;)I", "iterator", "", "lastIndexOf", "listIterator", "", "subList", "fromIndex", "toIndex", "Companion", "IteratorImpl", "ListIteratorImpl", "SubList", "kotlin-stdlib"}, k = 1, mv = {1, 7, 1}, xi = 48)
  /* compiled from: AbstractList.kt */
  public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E>, KMappedMarker {
      public static final Companion Companion = new Companion((DefaultConstructorMarker) null);
  
      @Metadata(d1 = {"\u0000(\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0000\n\u0002\u0010\b\n\u0002\b\r\n\u0002\u0010\u000b\n\u0000\n\u0002\u0010\u001e\n\u0002\b\u0005\b\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002J%\u0010\u0003\u001a\u00020\u00042\u0006\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0007\u001a\u00020\u00062\u0006\u0010\b\u001a\u00020\u0006H\u0000¢\u0006\u0002\b\tJ\u001d\u0010\n\u001a\u00020\u00042\u0006\u0010\u000b\u001a\u00020\u00062\u0006\u0010\b\u001a\u00020\u0006H\u0000¢\u0006\u0002\b\fJ\u001d\u0010\r\u001a\u00020\u00042\u0006\u0010\u000b\u001a\u00020\u00062\u0006\u0010\b\u001a\u00020\u0006H\u0000¢\u0006\u0002\b\u000eJ%\u0010\u000f\u001a\u00020\u00042\u0006\u0010\u0010\u001a\u00020\u00062\u0006\u0010\u0011\u001a\u00020\u00062\u0006\u0010\b\u001a\u00020\u0006H\u0000¢\u0006\u0002\b\u0012J%\u0010\u0013\u001a\u00020\u00142\n\u0010\u0015\u001a\u0006\u0012\u0002\b\u00030\u00162\n\u0010\u0017\u001a\u0006\u0012\u0002\b\u00030\u0016H\u0000¢\u0006\u0002\b\u0018J\u0019\u0010\u0019\u001a\u00020\u00062\n\u0010\u0015\u001a\u0006\u0012\u0002\b\u00030\u0016H\u0000¢\u0006\u0002\b\u001a¨\u0006\u001b"}, d2 = {"Lkotlin/collections/AbstractList$Companion;", "", "()V", "checkBoundsIndexes", "", "startIndex", "", "endIndex", "size", "checkBoundsIndexes$kotlin_stdlib", "checkElementIndex", "index", "checkElementIndex$kotlin_stdlib", "checkPositionIndex", "checkPositionIndex$kotlin_stdlib", "checkRangeIndexes", "fromIndex", "toIndex", "checkRangeIndexes$kotlin_stdlib", "orderedEquals", "", "c", "", "other", "orderedEquals$kotlin_stdlib", "orderedHashCode", "orderedHashCode$kotlin_stdlib", "kotlin-stdlib"}, k = 1, mv = {1, 7, 1}, xi = 48)
      /* compiled from: AbstractList.kt */
      public static final class Companion {
          private Companion() {
          }
  
          public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
              this();
          }
  
          public final void checkBoundsIndexes$kotlin_stdlib(int startIndex, int endIndex, int size) {
              if (startIndex < 0 || endIndex > size) {
                  throw new IndexOutOfBoundsException("startIndex: " + startIndex + ", endIndex: " + endIndex + ", size: " + size);
              } else if (startIndex > endIndex) {
                  throw new IllegalArgumentException("startIndex: " + startIndex + " > endIndex: " + endIndex);
              }
          }
  
          public final void checkElementIndex$kotlin_stdlib(int index, int size) {
              if (index < 0 || index >= size) {
                  throw new IndexOutOfBoundsException("index: " + index + ", size: " + size);
              }
          }
  
          public final void checkPositionIndex$kotlin_stdlib(int index, int size) {
              if (index < 0 || index > size) {
                  throw new IndexOutOfBoundsException("index: " + index + ", size: " + size);
              }
          }
  
          public final void checkRangeIndexes$kotlin_stdlib(int fromIndex, int toIndex, int size) {
              if (fromIndex < 0 || toIndex > size) {
                  throw new IndexOutOfBoundsException("fromIndex: " + fromIndex + ", toIndex: " + toIndex + ", size: " + size);
              } else if (fromIndex > toIndex) {
                  throw new IllegalArgumentException("fromIndex: " + fromIndex + " > toIndex: " + toIndex);
              }
          }
  
          public final boolean orderedEquals$kotlin_stdlib(Collection<?> c, Collection<?> other) {
              Intrinsics.checkNotNullParameter(c, "c");
              Intrinsics.checkNotNullParameter(other, "other");
              if (c.size() != other.size()) {
                  return false;
              }
              Iterator<?> it = other.iterator();
              for (Object areEqual : c) {
                  if (!Intrinsics.areEqual((Object) areEqual, (Object) it.next())) {
                      return false;
                  }
              }
              return true;
          }
  
          public final int orderedHashCode$kotlin_stdlib(Collection<?> c) {
              Intrinsics.checkNotNullParameter(c, "c");
              int i = 1;
              Iterator<?> it = c.iterator();
              while (it.hasNext()) {
                  Object next = it.next();
                  i = (i * 31) + (next != null ? next.hashCode() : 0);
              }
              return i;
          }
      }
  
      @Metadata(d1 = {"\u0000\u001c\n\u0002\u0018\u0002\n\u0002\u0010(\n\u0002\b\u0002\n\u0002\u0010\b\n\u0002\b\u0005\n\u0002\u0010\u000b\n\u0002\b\u0003\b\u0004\u0018\u00002\b\u0012\u0004\u0012\u00028\u00000\u0001B\u0005¢\u0006\u0002\u0010\u0002J\t\u0010\t\u001a\u00020\nH\u0002J\u000e\u0010\u000b\u001a\u00028\u0000H\u0002¢\u0006\u0002\u0010\fR\u001a\u0010\u0003\u001a\u00020\u0004X\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b\u0005\u0010\u0006\"\u0004\b\u0007\u0010\b¨\u0006\r"}, d2 = {"Lkotlin/collections/AbstractList$IteratorImpl;", "", "(Lkotlin/collections/AbstractList;)V", "index", "", "getIndex", "()I", "setIndex", "(I)V", "hasNext", "", "next", "()Ljava/lang/Object;", "kotlin-stdlib"}, k = 1, mv = {1, 7, 1}, xi = 48)
      /* compiled from: AbstractList.kt */
      private class IteratorImpl implements Iterator<E>, KMappedMarker {
          private int index;
  
          public IteratorImpl() {
          }
  
          /* access modifiers changed from: protected */
          public final int getIndex() {
              return this.index;
          }
  
          public boolean hasNext() {
              return this.index < AbstractList.this.size();
          }
  
          public E next() {
              if (hasNext()) {
                  AbstractList<E> abstractList = AbstractList.this;
                  int i = this.index;
                  this.index = i + 1;
                  return abstractList.get(i);
              }
              throw new NoSuchElementException();
          }
  
          public void remove() {
              throw new UnsupportedOperationException("Operation is not supported for read-only collection");
          }
  
          /* access modifiers changed from: protected */
          public final void setIndex(int i) {
              this.index = i;
          }
      }
  
      @Metadata(d1 = {"\u0000\"\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0010*\n\u0000\n\u0002\u0010\b\n\u0002\b\u0002\n\u0002\u0010\u000b\n\u0002\b\u0005\b\u0004\u0018\u00002\f0\u0001R\b\u0012\u0004\u0012\u00028\u00000\u00022\b\u0012\u0004\u0012\u00028\u00000\u0003B\r\u0012\u0006\u0010\u0004\u001a\u00020\u0005¢\u0006\u0002\u0010\u0006J\b\u0010\u0007\u001a\u00020\bH\u0016J\b\u0010\t\u001a\u00020\u0005H\u0016J\r\u0010\n\u001a\u00028\u0000H\u0016¢\u0006\u0002\u0010\u000bJ\b\u0010\f\u001a\u00020\u0005H\u0016¨\u0006\r"}, d2 = {"Lkotlin/collections/AbstractList$ListIteratorImpl;", "Lkotlin/collections/AbstractList$IteratorImpl;", "Lkotlin/collections/AbstractList;", "", "index", "", "(Lkotlin/collections/AbstractList;I)V", "hasPrevious", "", "nextIndex", "previous", "()Ljava/lang/Object;", "previousIndex", "kotlin-stdlib"}, k = 1, mv = {1, 7, 1}, xi = 48)
      /* compiled from: AbstractList.kt */
      private class ListIteratorImpl extends AbstractList<E>.IteratorImpl implements ListIterator<E>, KMappedMarker {
          public ListIteratorImpl(int index) {
              super();
              AbstractList.Companion.checkPositionIndex$kotlin_stdlib(index, AbstractList.this.size());
              setIndex(index);
          }
  
          public void add(E e) {
              throw new UnsupportedOperationException("Operation is not supported for read-only collection");
          }
  
          public boolean hasPrevious() {
              return getIndex() > 0;
          }
  
          public int nextIndex() {
              return getIndex();
          }
  
          public E previous() {
              if (hasPrevious()) {
                  AbstractList<E> abstractList = AbstractList.this;
                  setIndex(getIndex() - 1);
                  return abstractList.get(getIndex());
              }
              throw new NoSuchElementException();
          }
  
          public int previousIndex() {
              return getIndex() - 1;
          }
  
          public void set(E e) {
              throw new UnsupportedOperationException("Operation is not supported for read-only collection");
          }
      }
  
      @Metadata(d1 = {"\u0000\u001e\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\b\n\u0002\b\n\b\u0002\u0018\u0000*\u0006\b\u0001\u0010\u0001 \u00012\b\u0012\u0004\u0012\u0002H\u00010\u00022\u00060\u0003j\u0002`\u0004B#\u0012\f\u0010\u0005\u001a\b\u0012\u0004\u0012\u00028\u00010\u0002\u0012\u0006\u0010\u0006\u001a\u00020\u0007\u0012\u0006\u0010\b\u001a\u00020\u0007¢\u0006\u0002\u0010\tJ\u0016\u0010\u000e\u001a\u00028\u00012\u0006\u0010\u000f\u001a\u00020\u0007H\u0002¢\u0006\u0002\u0010\u0010R\u000e\u0010\n\u001a\u00020\u0007X\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\u0006\u001a\u00020\u0007X\u0004¢\u0006\u0002\n\u0000R\u0014\u0010\u0005\u001a\b\u0012\u0004\u0012\u00028\u00010\u0002X\u0004¢\u0006\u0002\n\u0000R\u0014\u0010\u000b\u001a\u00020\u00078VX\u0004¢\u0006\u0006\u001a\u0004\b\f\u0010\r¨\u0006\u0011"}, d2 = {"Lkotlin/collections/AbstractList$SubList;", "E", "Lkotlin/collections/AbstractList;", "Ljava/util/RandomAccess;", "Lkotlin/collections/RandomAccess;", "list", "fromIndex", "", "toIndex", "(Lkotlin/collections/AbstractList;II)V", "_size", "size", "getSize", "()I", "get", "index", "(I)Ljava/lang/Object;", "kotlin-stdlib"}, k = 1, mv = {1, 7, 1}, xi = 48)
      /* compiled from: AbstractList.kt */
      private static final class SubList<E> extends AbstractList<E> implements RandomAccess {
          private int _size;
          private final int fromIndex;
          private final AbstractList<E> list;
  
          public SubList(AbstractList<? extends E> list2, int fromIndex2, int toIndex) {
              Intrinsics.checkNotNullParameter(list2, "list");
              this.list = list2;
              this.fromIndex = fromIndex2;
              AbstractList.Companion.checkRangeIndexes$kotlin_stdlib(fromIndex2, toIndex, list2.size());
              this._size = toIndex - fromIndex2;
          }
  
          public E get(int index) {
              AbstractList.Companion.checkElementIndex$kotlin_stdlib(index, this._size);
              return this.list.get(this.fromIndex + index);
          }
  
          public int getSize() {
              return this._size;
          }
      }
  
      protected AbstractList() {
      }
  
      public void add(int i, E e) {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  
      public boolean addAll(int i, Collection<? extends E> collection) {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  
      public boolean equals(Object other) {
          if (other == this) {
              return true;
          }
          if (!(other instanceof List)) {
              return false;
          }
          return Companion.orderedEquals$kotlin_stdlib(this, (Collection) other);
      }
  
      public abstract E get(int i);
  
      public abstract int getSize();
  
      public int hashCode() {
          return Companion.orderedHashCode$kotlin_stdlib(this);
      }
  
      public int indexOf(E element) {
          int i = 0;
          for (Object areEqual : this) {
              if (Intrinsics.areEqual(areEqual, (Object) element)) {
                  return i;
              }
              i++;
          }
          return -1;
      }
  
      public Iterator<E> iterator() {
          return new IteratorImpl();
      }
  
      public int lastIndexOf(E element) {
          List list = this;
          ListIterator listIterator = list.listIterator(list.size());
          while (listIterator.hasPrevious()) {
              if (Intrinsics.areEqual(listIterator.previous(), (Object) element)) {
                  return listIterator.nextIndex();
              }
          }
          return -1;
      }
  
      public ListIterator<E> listIterator() {
          return new ListIteratorImpl(0);
      }
  
      public ListIterator<E> listIterator(int index) {
          return new ListIteratorImpl(index);
      }
  
      public E remove(int i) {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  
      public E set(int i, E e) {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  
      public List<E> subList(int fromIndex, int toIndex) {
          return new SubList<>(this, fromIndex, toIndex);
      }
  }
  