CrackMe.apk
Download file
package com.facebook.common.internal;
import java.util.Objects;
import javax.annotation.Nullable;
public final class Preconditions {
private Preconditions() {
}
public static void checkArgument(@Nullable Boolean bool) {
if (bool != null && !bool.booleanValue()) {
throw new IllegalArgumentException();
}
}
public static void checkArgument(boolean z, @Nullable Object obj) {
if (!z) {
throw new IllegalArgumentException(String.valueOf(obj));
}
}
public static void checkArgument(boolean z, @Nullable String str, Object... objArr) {
if (!z) {
throw new IllegalArgumentException(format(str, objArr));
}
}
public static void checkState(boolean z) {
if (!z) {
throw new IllegalStateException();
}
}
public static void checkState(boolean z, @Nullable Object obj) {
if (!z) {
throw new IllegalStateException(String.valueOf(obj));
}
}
public static void checkState(boolean z, @Nullable String str, Object... objArr) {
if (!z) {
throw new IllegalStateException(format(str, objArr));
}
}
public static <T> T checkNotNull(@Nullable T t) {
Objects.requireNonNull(t);
return t;
}
public static <T> T checkNotNull(@Nullable T t, @Nullable Object obj) {
if (t != null) {
return t;
}
throw new NullPointerException(String.valueOf(obj));
}
public static <T> T checkNotNull(@Nullable T t, @Nullable String str, Object... objArr) {
if (t != null) {
return t;
}
throw new NullPointerException(format(str, objArr));
}
public static int checkElementIndex(int i, int i2) {
return checkElementIndex(i, i2, "index");
}
public static int checkElementIndex(int i, int i2, @Nullable String str) {
if (i >= 0 && i < i2) {
return i;
}
throw new IndexOutOfBoundsException(badElementIndex(i, i2, str));
}
private static String badElementIndex(int i, int i2, @Nullable String str) {
if (i < 0) {
return format("%s (%s) must not be negative", str, Integer.valueOf(i));
} else if (i2 >= 0) {
return format("%s (%s) must be less than size (%s)", str, Integer.valueOf(i), Integer.valueOf(i2));
} else {
throw new IllegalArgumentException("negative size: " + i2);
}
}
public static int checkPositionIndex(int i, int i2) {
return checkPositionIndex(i, i2, "index");
}
public static int checkPositionIndex(int i, int i2, @Nullable String str) {
if (i >= 0 && i <= i2) {
return i;
}
throw new IndexOutOfBoundsException(badPositionIndex(i, i2, str));
}
private static String badPositionIndex(int i, int i2, @Nullable String str) {
if (i < 0) {
return format("%s (%s) must not be negative", str, Integer.valueOf(i));
} else if (i2 >= 0) {
return format("%s (%s) must not be greater than size (%s)", str, Integer.valueOf(i), Integer.valueOf(i2));
} else {
throw new IllegalArgumentException("negative size: " + i2);
}
}
public static void checkPositionIndexes(int i, int i2, int i3) {
if (i < 0 || i2 < i || i2 > i3) {
throw new IndexOutOfBoundsException(badPositionIndexes(i, i2, i3));
}
}
private static String badPositionIndexes(int i, int i2, int i3) {
if (i < 0 || i > i3) {
return badPositionIndex(i, i3, "start index");
}
if (i2 < 0 || i2 > i3) {
return badPositionIndex(i2, i3, "end index");
}
return format("end index (%s) must not be less than start index (%s)", Integer.valueOf(i2), Integer.valueOf(i));
}
static String format(@Nullable String str, Object... objArr) {
int indexOf;
String valueOf = String.valueOf(str);
StringBuilder sb = new StringBuilder(valueOf.length() + (objArr.length * 16));
int i = 0;
int i2 = 0;
while (i < objArr.length && (indexOf = valueOf.indexOf("%s", i2)) != -1) {
sb.append(valueOf.substring(i2, indexOf));
sb.append(objArr[i]);
int i3 = i + 1;
i2 = indexOf + 2;
i = i3;
}
sb.append(valueOf.substring(i2));
if (i < objArr.length) {
sb.append(" [");
sb.append(objArr[i]);
for (int i4 = i + 1; i4 < objArr.length; i4++) {
sb.append(", ");
sb.append(objArr[i4]);
}
sb.append(']');
}
return sb.toString();
}
}
Download file