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; import okhttp3.HttpUrl; /* loaded from: classes2.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; public static ImmutableLongArray of(long j) { return new ImmutableLongArray(new long[]{j}); } public static ImmutableLongArray of(long j, long j2) { return new ImmutableLongArray(new long[]{j, j2}); } 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) { Preconditions.checkArgument(jArr.length <= 2147483646, "the total number of elements must fit in an int"); long[] jArr2 = new long[jArr.length + 1]; jArr2[0] = j; System.arraycopy(jArr, 0, jArr2, 1, jArr.length); return new ImmutableLongArray(jArr2); } public static ImmutableLongArray copyOf(long[] jArr) { return jArr.length == 0 ? EMPTY : new ImmutableLongArray(Arrays.copyOf(jArr, jArr.length)); } public static ImmutableLongArray copyOf(Collection collection) { return collection.isEmpty() ? EMPTY : new ImmutableLongArray(Longs.toArray(collection)); } public static ImmutableLongArray copyOf(Iterable iterable) { if (iterable instanceof Collection) { return copyOf((Collection) iterable); } return builder().addAll(iterable).build(); } public static Builder builder(int i) { Preconditions.checkArgument(i >= 0, "Invalid initialCapacity: %s", i); return new Builder(i); } public static Builder builder() { return new Builder(10); } /* loaded from: classes2.dex */ public static final class Builder { private long[] array; private int count = 0; Builder(int i) { this.array = new long[i]; } public final Builder add(long j) { ensureRoomFor(1); long[] jArr = this.array; int i = this.count; jArr[i] = j; this.count = i + 1; return this; } public final Builder addAll(long[] jArr) { ensureRoomFor(jArr.length); System.arraycopy(jArr, 0, this.array, this.count, jArr.length); this.count += jArr.length; return this; } public final Builder addAll(Iterable iterable) { if (iterable instanceof Collection) { return addAll((Collection) iterable); } Iterator it = iterable.iterator(); while (it.hasNext()) { add(it.next().longValue()); } return this; } public final Builder addAll(Collection collection) { ensureRoomFor(collection.size()); for (Long l : collection) { long[] jArr = this.array; int i = this.count; this.count = i + 1; jArr[i] = l.longValue(); } return this; } public final Builder addAll(ImmutableLongArray immutableLongArray) { ensureRoomFor(immutableLongArray.length()); System.arraycopy(immutableLongArray.array, immutableLongArray.start, this.array, this.count, immutableLongArray.length()); this.count += immutableLongArray.length(); return this; } private void ensureRoomFor(int i) { int i2 = this.count + i; long[] jArr = this.array; if (i2 > jArr.length) { this.array = Arrays.copyOf(jArr, expandedCapacity(jArr.length, i2)); } } private static int expandedCapacity(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 final ImmutableLongArray build() { if (this.count == 0) { return ImmutableLongArray.EMPTY; } return new ImmutableLongArray(this.array, 0, this.count); } } private ImmutableLongArray(long[] jArr) { this(jArr, 0, jArr.length); } private ImmutableLongArray(long[] jArr, int i, int i2) { this.array = jArr; this.start = i; this.end = i2; } public final long get(int i) { Preconditions.checkElementIndex(i, length()); return this.array[this.start + i]; } public final 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 final 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 final boolean contains(long j) { return indexOf(j) >= 0; } public final long[] toArray() { return Arrays.copyOfRange(this.array, this.start, this.end); } public final ImmutableLongArray subArray(int i, int i2) { Preconditions.checkPositionIndexes(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 final List asList() { return new AsList(); } /* JADX INFO: Access modifiers changed from: package-private */ /* loaded from: classes2.dex */ public static class AsList extends AbstractList implements RandomAccess, Serializable { private final ImmutableLongArray parent; private AsList(ImmutableLongArray immutableLongArray) { this.parent = immutableLongArray; } @Override // java.util.AbstractCollection, java.util.Collection, java.util.List public int size() { return this.parent.length(); } @Override // java.util.AbstractList, java.util.List public Long get(int i) { return Long.valueOf(this.parent.get(i)); } @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.List public int indexOf(Object obj) { if (obj instanceof Long) { return this.parent.indexOf(((Long) obj).longValue()); } return -1; } @Override // java.util.AbstractList, java.util.List public int lastIndexOf(Object obj) { if (obj instanceof Long) { return this.parent.lastIndexOf(((Long) obj).longValue()); } return -1; } @Override // java.util.AbstractList, java.util.List public List subList(int i, int i2) { return this.parent.subArray(i, i2).asList(); } @Override // java.util.AbstractList, java.util.Collection, java.util.List public boolean equals(Object obj) { if (obj instanceof AsList) { return this.parent.equals(((AsList) obj).parent); } if (!(obj instanceof List)) { return false; } List list = (List) obj; if (size() != list.size()) { return false; } int i = this.parent.start; for (Object obj2 : list) { if (!(obj2 instanceof Long) || this.parent.array[i] != ((Long) obj2).longValue()) { return false; } i++; } return true; } @Override // java.util.AbstractList, java.util.Collection, java.util.List public int hashCode() { return this.parent.hashCode(); } @Override // java.util.AbstractCollection public String toString() { return this.parent.toString(); } } public final 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 final int hashCode() { int i = 1; for (int i2 = this.start; i2 < this.end; i2++) { i = (i * 31) + Longs.hashCode(this.array[i2]); } return i; } public final String toString() { if (isEmpty()) { return HttpUrl.PATH_SEGMENT_ENCODE_SET_URI; } 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(", "); sb.append(this.array[i]); } else { sb.append(']'); return sb.toString(); } } } public final ImmutableLongArray trimmed() { return isPartialView() ? new ImmutableLongArray(toArray()) : this; } private boolean isPartialView() { return this.start > 0 || this.end < this.array.length; } final Object writeReplace() { return trimmed(); } final Object readResolve() { return isEmpty() ? EMPTY : this; } public final int length() { return this.end - this.start; } public final boolean isEmpty() { return this.end == this.start; } public static ImmutableLongArray of() { return EMPTY; } }