package com.google.common.primitives; import com.google.common.base.Preconditions; import java.io.Serializable; import java.util.AbstractList; import java.util.Arrays; import java.util.Collection; import java.util.Iterator; import java.util.List; import java.util.RandomAccess; /* loaded from: classes.dex */ public final class ImmutableLongArray implements Serializable { private static final ImmutableLongArray EMPTY = new ImmutableLongArray(new long[0]); private final long[] array; private final int end; private final transient int start; static class AsList extends AbstractList implements RandomAccess { private final ImmutableLongArray a; @Override // java.util.AbstractCollection, java.util.Collection, java.util.List public boolean contains(Object obj) { return indexOf(obj) >= 0; } @Override // java.util.AbstractList, java.util.Collection, java.util.List public boolean equals(Object obj) { if (obj instanceof AsList) { return this.a.equals(((AsList) obj).a); } if (!(obj instanceof List)) { return false; } List list = (List) obj; if (size() != list.size()) { return false; } int i = this.a.start; for (Object obj2 : list) { if (obj2 instanceof Long) { int i2 = i + 1; if (this.a.array[i] == ((Long) obj2).longValue()) { i = i2; } } return false; } return true; } @Override // java.util.AbstractList, java.util.Collection, java.util.List public int hashCode() { return this.a.hashCode(); } @Override // java.util.AbstractList, java.util.List public int indexOf(Object obj) { if (obj instanceof Long) { return this.a.indexOf(((Long) obj).longValue()); } return -1; } @Override // java.util.AbstractList, java.util.List public int lastIndexOf(Object obj) { if (obj instanceof Long) { return this.a.lastIndexOf(((Long) obj).longValue()); } return -1; } @Override // java.util.AbstractCollection, java.util.Collection, java.util.List public int size() { return this.a.length(); } @Override // java.util.AbstractList, java.util.List public List subList(int i, int i2) { return this.a.subArray(i, i2).asList(); } @Override // java.util.AbstractCollection public String toString() { return this.a.toString(); } private AsList(ImmutableLongArray immutableLongArray) { this.a = immutableLongArray; } @Override // java.util.AbstractList, java.util.List public Long get(int i) { return Long.valueOf(this.a.get(i)); } } public static Builder builder(int i) { Preconditions.a(i >= 0, "Invalid initialCapacity: %s", i); return new Builder(i); } public static ImmutableLongArray copyOf(long[] jArr) { return jArr.length == 0 ? EMPTY : new ImmutableLongArray(Arrays.copyOf(jArr, jArr.length)); } private boolean isPartialView() { return this.start > 0 || this.end < this.array.length; } public static ImmutableLongArray of() { return EMPTY; } public List asList() { return new AsList(); } public boolean contains(long j) { return indexOf(j) >= 0; } public boolean equals(Object obj) { if (obj == this) { return true; } if (!(obj instanceof ImmutableLongArray)) { return false; } ImmutableLongArray immutableLongArray = (ImmutableLongArray) obj; if (length() != immutableLongArray.length()) { return false; } for (int i = 0; i < length(); i++) { if (get(i) != immutableLongArray.get(i)) { return false; } } return true; } public long get(int i) { Preconditions.a(i, length()); return this.array[this.start + i]; } public int hashCode() { int i = 1; for (int i2 = this.start; i2 < this.end; i2++) { i = (i * 31) + Longs.a(this.array[i2]); } return i; } public int indexOf(long j) { for (int i = this.start; i < this.end; i++) { if (this.array[i] == j) { return i - this.start; } } return -1; } public boolean isEmpty() { return this.end == this.start; } public int lastIndexOf(long j) { int i; int i2 = this.end; do { i2--; i = this.start; if (i2 < i) { return -1; } } while (this.array[i2] != j); return i2 - i; } public int length() { return this.end - this.start; } Object readResolve() { return isEmpty() ? EMPTY : this; } public ImmutableLongArray subArray(int i, int i2) { Preconditions.b(i, i2, length()); if (i == i2) { return EMPTY; } long[] jArr = this.array; int i3 = this.start; return new ImmutableLongArray(jArr, i + i3, i3 + i2); } public long[] toArray() { return Arrays.copyOfRange(this.array, this.start, this.end); } public String toString() { if (isEmpty()) { return "[]"; } StringBuilder sb = new StringBuilder(length() * 5); sb.append('['); sb.append(this.array[this.start]); int i = this.start; while (true) { i++; if (i >= this.end) { sb.append(']'); return sb.toString(); } sb.append(", "); sb.append(this.array[i]); } } public ImmutableLongArray trimmed() { return isPartialView() ? new ImmutableLongArray(toArray()) : this; } Object writeReplace() { return trimmed(); } private ImmutableLongArray(long[] jArr) { this(jArr, 0, jArr.length); } public static ImmutableLongArray of(long j) { return new ImmutableLongArray(new long[]{j}); } public static final class Builder { private long[] a; private int b = 0; Builder(int i) { this.a = new long[i]; } public Builder a(long j) { a(1); long[] jArr = this.a; int i = this.b; jArr[i] = j; this.b = i + 1; return this; } public Builder a(Iterable iterable) { if (iterable instanceof Collection) { a((Collection) iterable); return this; } Iterator it = iterable.iterator(); while (it.hasNext()) { a(it.next().longValue()); } return this; } public Builder a(Collection collection) { a(collection.size()); for (Long l : collection) { long[] jArr = this.a; int i = this.b; this.b = i + 1; jArr[i] = l.longValue(); } return this; } private void a(int i) { int i2 = this.b + i; long[] jArr = this.a; if (i2 > jArr.length) { long[] jArr2 = new long[a(jArr.length, i2)]; System.arraycopy(this.a, 0, jArr2, 0, this.b); this.a = jArr2; } } private static int a(int i, int i2) { if (i2 < 0) { throw new AssertionError("cannot store more than MAX_VALUE elements"); } int i3 = i + (i >> 1) + 1; if (i3 < i2) { i3 = Integer.highestOneBit(i2 - 1) << 1; } if (i3 < 0) { return Integer.MAX_VALUE; } return i3; } public ImmutableLongArray a() { int i = this.b; return i == 0 ? ImmutableLongArray.EMPTY : new ImmutableLongArray(this.a, 0, i); } } private ImmutableLongArray(long[] jArr, int i, int i2) { this.array = jArr; this.start = i; this.end = i2; } public static Builder builder() { return new Builder(10); } public static ImmutableLongArray copyOf(Collection collection) { return collection.isEmpty() ? EMPTY : new ImmutableLongArray(Longs.a(collection)); } public static ImmutableLongArray of(long j, long j2) { return new ImmutableLongArray(new long[]{j, j2}); } public static ImmutableLongArray copyOf(Iterable iterable) { if (iterable instanceof Collection) { return copyOf((Collection) iterable); } Builder builder = builder(); builder.a(iterable); return builder.a(); } public static ImmutableLongArray of(long j, long j2, long j3) { return new ImmutableLongArray(new long[]{j, j2, j3}); } public static ImmutableLongArray of(long j, long j2, long j3, long j4) { return new ImmutableLongArray(new long[]{j, j2, j3, j4}); } public static ImmutableLongArray of(long j, long j2, long j3, long j4, long j5) { return new ImmutableLongArray(new long[]{j, j2, j3, j4, j5}); } public static ImmutableLongArray of(long j, long j2, long j3, long j4, long j5, long j6) { return new ImmutableLongArray(new long[]{j, j2, j3, j4, j5, j6}); } public static ImmutableLongArray of(long j, long... jArr) { long[] jArr2 = new long[jArr.length + 1]; jArr2[0] = j; System.arraycopy(jArr, 0, jArr2, 1, jArr.length); return new ImmutableLongArray(jArr2); } }