content: /*
   * Decompiled with CFR 0.153-SNAPSHOT (d6f6758-dirty).
   */
  package kotlin.collections;
  
  import java.util.Collection;
  import java.util.Iterator;
  import kotlin.Metadata;
  import kotlin.SinceKotlin;
  import kotlin.collections.CollectionsKt;
  import kotlin.jvm.functions.Function1;
  import kotlin.jvm.internal.CollectionToArray;
  import kotlin.jvm.internal.Intrinsics;
  import kotlin.jvm.internal.markers.KMappedMarker;
  import org.jetbrains.annotations.NotNull;
  
  @Metadata(mv={1, 4, 0}, bv={1, 0, 3}, k=1, d1={"\u00006\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u001e\n\u0002\b\u0002\n\u0002\u0010\b\n\u0002\b\u0003\n\u0002\u0010\u000b\n\u0002\b\u0006\n\u0002\u0010(\n\u0000\n\u0002\u0010\u0011\n\u0002\u0010\u0000\n\u0002\b\u0005\n\u0002\u0010\u000e\n\u0000\b'\u0018\u0000*\u0006\b\u0000\u0010\u0001 \u00012\b\u0012\u0004\u0012\u0002H\u00010\u0002B\u0007\b\u0004\u00a2\u0006\u0002\u0010\u0003J\u0016\u0010\b\u001a\u00020\t2\u0006\u0010\n\u001a\u00028\u0000H\u0096\u0002\u00a2\u0006\u0002\u0010\u000bJ\u0016\u0010\f\u001a\u00020\t2\f\u0010\r\u001a\b\u0012\u0004\u0012\u00028\u00000\u0002H\u0016J\b\u0010\u000e\u001a\u00020\tH\u0016J\u000f\u0010\u000f\u001a\b\u0012\u0004\u0012\u00028\u00000\u0010H\u00a6\u0002J\u0015\u0010\u0011\u001a\n\u0012\u0006\u0012\u0004\u0018\u00010\u00130\u0012H\u0015\u00a2\u0006\u0002\u0010\u0014J'\u0010\u0011\u001a\b\u0012\u0004\u0012\u0002H\u00150\u0012\"\u0004\b\u0001\u0010\u00152\f\u0010\u0016\u001a\b\u0012\u0004\u0012\u0002H\u00150\u0012H\u0014\u00a2\u0006\u0002\u0010\u0017J\b\u0010\u0018\u001a\u00020\u0019H\u0016R\u0012\u0010\u0004\u001a\u00020\u0005X\u00a6\u0004\u00a2\u0006\u0006\u001a\u0004\b\u0006\u0010\u0007\u00a8\u0006\u001a"}, d2={"Lkotlin/collections/AbstractCollection;", "E", "", "()V", "size", "", "getSize", "()I", "contains", "", "element", "(Ljava/lang/Object;)Z", "containsAll", "elements", "isEmpty", "iterator", "", "toArray", "", "", "()[Ljava/lang/Object;", "T", "array", "([Ljava/lang/Object;)[Ljava/lang/Object;", "toString", "", "kotlin-stdlib"})
  @SinceKotlin(version="1.1")
  public abstract class AbstractCollection<E>
  implements Collection<E>,
  KMappedMarker {
      public abstract int getSize();
  
      @Override
      @NotNull
      public abstract Iterator<E> iterator();
  
      @Override
      public boolean contains(Object element) {
          boolean bl;
          block3: {
              AbstractCollection $this$any$iv = this;
              boolean $i$f$any = false;
              if ($this$any$iv instanceof Collection && ((Collection)$this$any$iv).isEmpty()) {
                  bl = false;
              } else {
                  Iterator iterator2 = $this$any$iv.iterator();
                  while (iterator2.hasNext()) {
                      Object element$iv;
                      Object it = element$iv = iterator2.next();
                      boolean bl2 = false;
                      if (!Intrinsics.areEqual(it, element)) continue;
                      bl = true;
                      break block3;
                  }
                  bl = false;
              }
          }
          return bl;
      }
  
      @Override
      public boolean containsAll(@NotNull Collection<? extends Object> elements) {
          boolean bl;
          block3: {
              Intrinsics.checkNotNullParameter(elements, "elements");
              Iterable $this$all$iv = elements;
              boolean $i$f$all = false;
              if (((Collection)$this$all$iv).isEmpty()) {
                  bl = true;
              } else {
                  Iterator iterator2 = $this$all$iv.iterator();
                  while (iterator2.hasNext()) {
                      Object element$iv;
                      Object it = element$iv = iterator2.next();
                      boolean bl2 = false;
                      if (this.contains(it)) continue;
                      bl = false;
                      break block3;
                  }
                  bl = true;
              }
          }
          return bl;
      }
  
      @Override
      public boolean isEmpty() {
          return this.size() == 0;
      }
  
      @NotNull
      public String toString() {
          return CollectionsKt.joinToString$default(this, ", ", "[", "]", 0, null, new Function1<E, CharSequence>(this){
              final /* synthetic */ AbstractCollection this$0;
  
              @NotNull
              public final CharSequence invoke(E it) {
                  return it == this.this$0 ? "(this Collection)" : String.valueOf(it);
              }
              {
                  this.this$0 = abstractCollection;
                  super(1);
              }
          }, 24, null);
      }
  
      @Override
      @NotNull
      public Object[] toArray() {
          Collection collection = this;
          boolean bl = false;
          return CollectionToArray.toArray(collection);
      }
  
      @Override
      @NotNull
      public <T> T[] toArray(@NotNull T[] array) {
          Intrinsics.checkNotNullParameter(array, "array");
          Collection collection = this;
          boolean bl = false;
          Object[] objectArray = CollectionToArray.toArray(collection, array);
          if (objectArray == null) {
              throw new NullPointerException("null cannot be cast to non-null type kotlin.Array<T>");
          }
          return objectArray;
      }
  
      protected AbstractCollection() {
      }
  
      @Override
      public boolean add(E e) {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  
      @Override
      public boolean addAll(Collection<? extends E> collection) {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  
      @Override
      public void clear() {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  
      @Override
      public boolean remove(Object object) {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  
      @Override
      public boolean removeAll(Collection<? extends Object> collection) {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  
      @Override
      public boolean retainAll(Collection<? extends Object> collection) {
          throw new UnsupportedOperationException("Operation is not supported for read-only collection");
      }
  }
  
  