Add decompiled APK source code (JADX)

- 28,932 files
- Full Java source code
- Smali files
- Resources

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
2026-02-18 14:52:23 -08:00
parent cc210a65ea
commit f9d20bb3fc
26991 changed files with 2541449 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
package com.google.zxing.oned;
/* loaded from: classes3.dex */
public abstract class CodaBarReader extends OneDReader {
public static final char[] ALPHABET = "0123456789-$:/.+ABCD".toCharArray();
public static final int[] CHARACTER_ENCODINGS = {3, 6, 9, 96, 18, 66, 33, 36, 48, 72, 12, 24, 69, 81, 84, 21, 26, 41, 11, 14};
public static final char[] STARTEND_ENCODING = {'A', 'B', 'C', 'D'};
public static boolean arrayContains(char[] cArr, char c) {
if (cArr != null) {
for (char c2 : cArr) {
if (c2 == c) {
return true;
}
}
}
return false;
}
}

View File

@@ -0,0 +1,113 @@
package com.google.zxing.oned;
/* loaded from: classes3.dex */
public final class CodaBarWriter extends OneDimensionalCodeWriter {
public static final char[] ALT_START_END_CHARS = {'T', 'N', '*', 'E'};
public static final char[] CHARS_WHICH_ARE_TEN_LENGTH_EACH_AFTER_DECODED = {'/', ':', '+', '.'};
public static final char DEFAULT_GUARD;
public static final char[] START_END_CHARS;
static {
char[] cArr = {'A', 'B', 'C', 'D'};
START_END_CHARS = cArr;
DEFAULT_GUARD = cArr[0];
}
@Override // com.google.zxing.oned.OneDimensionalCodeWriter
public boolean[] encode(String str) {
int i;
if (str.length() < 2) {
StringBuilder sb = new StringBuilder();
char c = DEFAULT_GUARD;
sb.append(c);
sb.append(str);
sb.append(c);
str = sb.toString();
} else {
char upperCase = Character.toUpperCase(str.charAt(0));
char upperCase2 = Character.toUpperCase(str.charAt(str.length() - 1));
char[] cArr = START_END_CHARS;
boolean arrayContains = CodaBarReader.arrayContains(cArr, upperCase);
boolean arrayContains2 = CodaBarReader.arrayContains(cArr, upperCase2);
char[] cArr2 = ALT_START_END_CHARS;
boolean arrayContains3 = CodaBarReader.arrayContains(cArr2, upperCase);
boolean arrayContains4 = CodaBarReader.arrayContains(cArr2, upperCase2);
if (arrayContains) {
if (!arrayContains2) {
throw new IllegalArgumentException("Invalid start/end guards: ".concat(str));
}
} else if (!arrayContains3) {
if (arrayContains2 || arrayContains4) {
throw new IllegalArgumentException("Invalid start/end guards: ".concat(str));
}
StringBuilder sb2 = new StringBuilder();
char c2 = DEFAULT_GUARD;
sb2.append(c2);
sb2.append(str);
sb2.append(c2);
str = sb2.toString();
} else if (!arrayContains4) {
throw new IllegalArgumentException("Invalid start/end guards: ".concat(str));
}
}
int i2 = 20;
for (int i3 = 1; i3 < str.length() - 1; i3++) {
if (Character.isDigit(str.charAt(i3)) || str.charAt(i3) == '-' || str.charAt(i3) == '$') {
i2 += 9;
} else {
if (!CodaBarReader.arrayContains(CHARS_WHICH_ARE_TEN_LENGTH_EACH_AFTER_DECODED, str.charAt(i3))) {
throw new IllegalArgumentException("Cannot encode : '" + str.charAt(i3) + '\'');
}
i2 += 10;
}
}
boolean[] zArr = new boolean[i2 + (str.length() - 1)];
int i4 = 0;
for (int i5 = 0; i5 < str.length(); i5++) {
char upperCase3 = Character.toUpperCase(str.charAt(i5));
if (i5 == 0 || i5 == str.length() - 1) {
if (upperCase3 == '*') {
upperCase3 = 'C';
} else if (upperCase3 == 'E') {
upperCase3 = 'D';
} else if (upperCase3 == 'N') {
upperCase3 = 'B';
} else if (upperCase3 == 'T') {
upperCase3 = 'A';
}
}
int i6 = 0;
while (true) {
char[] cArr3 = CodaBarReader.ALPHABET;
if (i6 >= cArr3.length) {
i = 0;
break;
}
if (upperCase3 == cArr3[i6]) {
i = CodaBarReader.CHARACTER_ENCODINGS[i6];
break;
}
i6++;
}
int i7 = 0;
int i8 = 0;
boolean z = true;
while (i7 < 7) {
zArr[i4] = z;
i4++;
if (((i >> (6 - i7)) & 1) == 0 || i8 == 1) {
z = !z;
i7++;
i8 = 0;
} else {
i8++;
}
}
if (i5 < str.length() - 1) {
zArr[i4] = false;
i4++;
}
}
return zArr;
}
}

View File

@@ -0,0 +1,6 @@
package com.google.zxing.oned;
/* loaded from: classes3.dex */
public abstract class Code128Reader extends OneDReader {
public static final int[][] CODE_PATTERNS = {new int[]{2, 1, 2, 2, 2, 2}, new int[]{2, 2, 2, 1, 2, 2}, new int[]{2, 2, 2, 2, 2, 1}, new int[]{1, 2, 1, 2, 2, 3}, new int[]{1, 2, 1, 3, 2, 2}, new int[]{1, 3, 1, 2, 2, 2}, new int[]{1, 2, 2, 2, 1, 3}, new int[]{1, 2, 2, 3, 1, 2}, new int[]{1, 3, 2, 2, 1, 2}, new int[]{2, 2, 1, 2, 1, 3}, new int[]{2, 2, 1, 3, 1, 2}, new int[]{2, 3, 1, 2, 1, 2}, new int[]{1, 1, 2, 2, 3, 2}, new int[]{1, 2, 2, 1, 3, 2}, new int[]{1, 2, 2, 2, 3, 1}, new int[]{1, 1, 3, 2, 2, 2}, new int[]{1, 2, 3, 1, 2, 2}, new int[]{1, 2, 3, 2, 2, 1}, new int[]{2, 2, 3, 2, 1, 1}, new int[]{2, 2, 1, 1, 3, 2}, new int[]{2, 2, 1, 2, 3, 1}, new int[]{2, 1, 3, 2, 1, 2}, new int[]{2, 2, 3, 1, 1, 2}, new int[]{3, 1, 2, 1, 3, 1}, new int[]{3, 1, 1, 2, 2, 2}, new int[]{3, 2, 1, 1, 2, 2}, new int[]{3, 2, 1, 2, 2, 1}, new int[]{3, 1, 2, 2, 1, 2}, new int[]{3, 2, 2, 1, 1, 2}, new int[]{3, 2, 2, 2, 1, 1}, new int[]{2, 1, 2, 1, 2, 3}, new int[]{2, 1, 2, 3, 2, 1}, new int[]{2, 3, 2, 1, 2, 1}, new int[]{1, 1, 1, 3, 2, 3}, new int[]{1, 3, 1, 1, 2, 3}, new int[]{1, 3, 1, 3, 2, 1}, new int[]{1, 1, 2, 3, 1, 3}, new int[]{1, 3, 2, 1, 1, 3}, new int[]{1, 3, 2, 3, 1, 1}, new int[]{2, 1, 1, 3, 1, 3}, new int[]{2, 3, 1, 1, 1, 3}, new int[]{2, 3, 1, 3, 1, 1}, new int[]{1, 1, 2, 1, 3, 3}, new int[]{1, 1, 2, 3, 3, 1}, new int[]{1, 3, 2, 1, 3, 1}, new int[]{1, 1, 3, 1, 2, 3}, new int[]{1, 1, 3, 3, 2, 1}, new int[]{1, 3, 3, 1, 2, 1}, new int[]{3, 1, 3, 1, 2, 1}, new int[]{2, 1, 1, 3, 3, 1}, new int[]{2, 3, 1, 1, 3, 1}, new int[]{2, 1, 3, 1, 1, 3}, new int[]{2, 1, 3, 3, 1, 1}, new int[]{2, 1, 3, 1, 3, 1}, new int[]{3, 1, 1, 1, 2, 3}, new int[]{3, 1, 1, 3, 2, 1}, new int[]{3, 3, 1, 1, 2, 1}, new int[]{3, 1, 2, 1, 1, 3}, new int[]{3, 1, 2, 3, 1, 1}, new int[]{3, 3, 2, 1, 1, 1}, new int[]{3, 1, 4, 1, 1, 1}, new int[]{2, 2, 1, 4, 1, 1}, new int[]{4, 3, 1, 1, 1, 1}, new int[]{1, 1, 1, 2, 2, 4}, new int[]{1, 1, 1, 4, 2, 2}, new int[]{1, 2, 1, 1, 2, 4}, new int[]{1, 2, 1, 4, 2, 1}, new int[]{1, 4, 1, 1, 2, 2}, new int[]{1, 4, 1, 2, 2, 1}, new int[]{1, 1, 2, 2, 1, 4}, new int[]{1, 1, 2, 4, 1, 2}, new int[]{1, 2, 2, 1, 1, 4}, new int[]{1, 2, 2, 4, 1, 1}, new int[]{1, 4, 2, 1, 1, 2}, new int[]{1, 4, 2, 2, 1, 1}, new int[]{2, 4, 1, 2, 1, 1}, new int[]{2, 2, 1, 1, 1, 4}, new int[]{4, 1, 3, 1, 1, 1}, new int[]{2, 4, 1, 1, 1, 2}, new int[]{1, 3, 4, 1, 1, 1}, new int[]{1, 1, 1, 2, 4, 2}, new int[]{1, 2, 1, 1, 4, 2}, new int[]{1, 2, 1, 2, 4, 1}, new int[]{1, 1, 4, 2, 1, 2}, new int[]{1, 2, 4, 1, 1, 2}, new int[]{1, 2, 4, 2, 1, 1}, new int[]{4, 1, 1, 2, 1, 2}, new int[]{4, 2, 1, 1, 1, 2}, new int[]{4, 2, 1, 2, 1, 1}, new int[]{2, 1, 2, 1, 4, 1}, new int[]{2, 1, 4, 1, 2, 1}, new int[]{4, 1, 2, 1, 2, 1}, new int[]{1, 1, 1, 1, 4, 3}, new int[]{1, 1, 1, 3, 4, 1}, new int[]{1, 3, 1, 1, 4, 1}, new int[]{1, 1, 4, 1, 1, 3}, new int[]{1, 1, 4, 3, 1, 1}, new int[]{4, 1, 1, 1, 1, 3}, new int[]{4, 1, 1, 3, 1, 1}, new int[]{1, 1, 3, 1, 4, 1}, new int[]{1, 1, 4, 1, 3, 1}, new int[]{3, 1, 1, 1, 4, 1}, new int[]{4, 1, 1, 1, 3, 1}, new int[]{2, 1, 1, 4, 1, 2}, new int[]{2, 1, 1, 2, 1, 4}, new int[]{2, 1, 1, 2, 3, 2}, new int[]{2, 3, 3, 1, 1, 1, 2}};
}

View File

@@ -0,0 +1,195 @@
package com.google.zxing.oned;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.common.BitMatrix;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Map;
/* loaded from: classes3.dex */
public final class Code128Writer extends OneDimensionalCodeWriter {
public enum CType {
UNCODABLE,
ONE_DIGIT,
TWO_DIGITS,
FNC_1
}
@Override // com.google.zxing.oned.OneDimensionalCodeWriter, com.google.zxing.Writer
public BitMatrix encode(String str, BarcodeFormat barcodeFormat, int i, int i2, Map map) {
if (barcodeFormat != BarcodeFormat.CODE_128) {
throw new IllegalArgumentException("Can only encode CODE_128, but got ".concat(String.valueOf(barcodeFormat)));
}
return super.encode(str, barcodeFormat, i, i2, map);
}
@Override // com.google.zxing.oned.OneDimensionalCodeWriter
public boolean[] encode(String str) {
int length = str.length();
if (length <= 0 || length > 80) {
throw new IllegalArgumentException("Contents length should be between 1 and 80 characters, but got ".concat(String.valueOf(length)));
}
int i = 0;
for (int i2 = 0; i2 < length; i2++) {
char charAt = str.charAt(i2);
switch (charAt) {
case 241:
case 242:
case 243:
case 244:
break;
default:
if (charAt > 127) {
throw new IllegalArgumentException("Bad character in input: ".concat(String.valueOf(charAt)));
}
break;
}
}
ArrayList<int[]> arrayList = new ArrayList();
int i3 = 0;
int i4 = 0;
int i5 = 0;
int i6 = 1;
while (true) {
int i7 = 103;
if (i3 < length) {
int chooseCode = chooseCode(str, i3, i5);
int i8 = 100;
if (chooseCode == i5) {
switch (str.charAt(i3)) {
case 241:
i8 = 102;
break;
case 242:
i8 = 97;
break;
case 243:
i8 = 96;
break;
case 244:
if (i5 == 101) {
i8 = 101;
break;
}
break;
default:
if (i5 != 100) {
if (i5 == 101) {
char charAt2 = str.charAt(i3);
i8 = charAt2 - ' ';
if (i8 < 0) {
i8 = charAt2 + '@';
break;
}
} else {
i8 = Integer.parseInt(str.substring(i3, i3 + 2));
i3++;
break;
}
} else {
i8 = str.charAt(i3) - ' ';
break;
}
break;
}
i3++;
} else {
if (i5 != 0) {
i7 = chooseCode;
} else if (chooseCode == 100) {
i7 = 104;
} else if (chooseCode != 101) {
i7 = 105;
}
i8 = i7;
i5 = chooseCode;
}
arrayList.add(Code128Reader.CODE_PATTERNS[i8]);
i4 += i8 * i6;
if (i3 != 0) {
i6++;
}
} else {
int[][] iArr = Code128Reader.CODE_PATTERNS;
arrayList.add(iArr[i4 % 103]);
arrayList.add(iArr[106]);
int i9 = 0;
for (int[] iArr2 : arrayList) {
for (int i10 : iArr2) {
i9 += i10;
}
}
boolean[] zArr = new boolean[i9];
Iterator it = arrayList.iterator();
while (it.hasNext()) {
i += OneDimensionalCodeWriter.appendPattern(zArr, i, (int[]) it.next(), true);
}
return zArr;
}
}
}
public static CType findCType(CharSequence charSequence, int i) {
int length = charSequence.length();
if (i >= length) {
return CType.UNCODABLE;
}
char charAt = charSequence.charAt(i);
if (charAt == 241) {
return CType.FNC_1;
}
if (charAt < '0' || charAt > '9') {
return CType.UNCODABLE;
}
int i2 = i + 1;
if (i2 >= length) {
return CType.ONE_DIGIT;
}
char charAt2 = charSequence.charAt(i2);
if (charAt2 < '0' || charAt2 > '9') {
return CType.ONE_DIGIT;
}
return CType.TWO_DIGITS;
}
public static int chooseCode(CharSequence charSequence, int i, int i2) {
CType findCType;
CType findCType2;
char charAt;
CType findCType3 = findCType(charSequence, i);
CType cType = CType.ONE_DIGIT;
if (findCType3 == cType) {
return 100;
}
CType cType2 = CType.UNCODABLE;
if (findCType3 == cType2) {
return (i >= charSequence.length() || ((charAt = charSequence.charAt(i)) >= ' ' && (i2 != 101 || charAt >= '`'))) ? 100 : 101;
}
if (i2 == 99) {
return 99;
}
if (i2 == 100) {
CType cType3 = CType.FNC_1;
if (findCType3 == cType3 || (findCType = findCType(charSequence, i + 2)) == cType2 || findCType == cType) {
return 100;
}
if (findCType == cType3) {
return findCType(charSequence, i + 3) == CType.TWO_DIGITS ? 99 : 100;
}
int i3 = i + 4;
while (true) {
findCType2 = findCType(charSequence, i3);
if (findCType2 != CType.TWO_DIGITS) {
break;
}
i3 += 2;
}
return findCType2 == CType.ONE_DIGIT ? 100 : 99;
}
if (findCType3 == CType.FNC_1) {
findCType3 = findCType(charSequence, i + 1);
}
return findCType3 == CType.TWO_DIGITS ? 99 : 100;
}
}

View File

@@ -0,0 +1,6 @@
package com.google.zxing.oned;
/* loaded from: classes3.dex */
public abstract class Code39Reader extends OneDReader {
public static final int[] CHARACTER_ENCODINGS = {52, 289, 97, 352, 49, 304, 112, 37, 292, 100, 265, 73, 328, 25, 280, 88, 13, 268, 76, 28, 259, 67, 322, 19, 274, 82, 7, 262, 70, 22, 385, 193, 448, 145, 400, 208, 133, 388, 196, 168, 162, 138, 42};
}

View File

@@ -0,0 +1,120 @@
package com.google.zxing.oned;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.common.BitMatrix;
import java.util.Map;
/* loaded from: classes3.dex */
public final class Code39Writer extends OneDimensionalCodeWriter {
@Override // com.google.zxing.oned.OneDimensionalCodeWriter, com.google.zxing.Writer
public BitMatrix encode(String str, BarcodeFormat barcodeFormat, int i, int i2, Map map) {
if (barcodeFormat != BarcodeFormat.CODE_39) {
throw new IllegalArgumentException("Can only encode CODE_39, but got ".concat(String.valueOf(barcodeFormat)));
}
return super.encode(str, barcodeFormat, i, i2, map);
}
@Override // com.google.zxing.oned.OneDimensionalCodeWriter
public boolean[] encode(String str) {
int length = str.length();
if (length > 80) {
throw new IllegalArgumentException("Requested contents should be less than 80 digits long, but got ".concat(String.valueOf(length)));
}
int i = 0;
while (true) {
if (i >= length) {
break;
}
if ("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%".indexOf(str.charAt(i)) < 0) {
str = tryToConvertToExtendedMode(str);
length = str.length();
if (length > 80) {
throw new IllegalArgumentException("Requested contents should be less than 80 digits long, but got " + length + " (extended full ASCII mode)");
}
} else {
i++;
}
}
int[] iArr = new int[9];
int i2 = length + 25;
for (int i3 = 0; i3 < length; i3++) {
toIntArray(Code39Reader.CHARACTER_ENCODINGS["0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%".indexOf(str.charAt(i3))], iArr);
for (int i4 = 0; i4 < 9; i4++) {
i2 += iArr[i4];
}
}
boolean[] zArr = new boolean[i2];
toIntArray(148, iArr);
int appendPattern = OneDimensionalCodeWriter.appendPattern(zArr, 0, iArr, true);
int[] iArr2 = {1};
int appendPattern2 = appendPattern + OneDimensionalCodeWriter.appendPattern(zArr, appendPattern, iArr2, false);
for (int i5 = 0; i5 < length; i5++) {
toIntArray(Code39Reader.CHARACTER_ENCODINGS["0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%".indexOf(str.charAt(i5))], iArr);
int appendPattern3 = appendPattern2 + OneDimensionalCodeWriter.appendPattern(zArr, appendPattern2, iArr, true);
appendPattern2 = appendPattern3 + OneDimensionalCodeWriter.appendPattern(zArr, appendPattern3, iArr2, false);
}
toIntArray(148, iArr);
OneDimensionalCodeWriter.appendPattern(zArr, appendPattern2, iArr, true);
return zArr;
}
public static void toIntArray(int i, int[] iArr) {
for (int i2 = 0; i2 < 9; i2++) {
int i3 = 1;
if (((1 << (8 - i2)) & i) != 0) {
i3 = 2;
}
iArr[i2] = i3;
}
}
public static String tryToConvertToExtendedMode(String str) {
int length = str.length();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < length; i++) {
char charAt = str.charAt(i);
if (charAt == 0) {
sb.append("%U");
} else {
if (charAt != ' ') {
if (charAt == '@') {
sb.append("%V");
} else if (charAt == '`') {
sb.append("%W");
} else if (charAt != '-' && charAt != '.') {
if (charAt <= 26) {
sb.append('$');
sb.append((char) (charAt + '@'));
} else if (charAt < ' ') {
sb.append('%');
sb.append((char) (charAt + '&'));
} else if (charAt <= ',' || charAt == '/' || charAt == ':') {
sb.append('/');
sb.append((char) (charAt + ' '));
} else if (charAt <= '9') {
sb.append(charAt);
} else if (charAt <= '?') {
sb.append('%');
sb.append((char) (charAt + 11));
} else if (charAt <= 'Z') {
sb.append(charAt);
} else if (charAt <= '_') {
sb.append('%');
sb.append((char) (charAt - 16));
} else if (charAt <= 'z') {
sb.append('+');
sb.append((char) (charAt - ' '));
} else if (charAt <= 127) {
sb.append('%');
sb.append((char) (charAt - '+'));
} else {
throw new IllegalArgumentException("Requested content contains a non-encodable character: '" + str.charAt(i) + "'");
}
}
}
sb.append(charAt);
}
}
return sb.toString();
}
}

View File

@@ -0,0 +1,17 @@
package com.google.zxing.oned;
import com.facebook.internal.FacebookRequestErrorClassification;
import org.apache.http.HttpStatus;
/* loaded from: classes3.dex */
public abstract class Code93Reader extends OneDReader {
public static final char[] ALPHABET = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%abcd*".toCharArray();
public static final int ASTERISK_ENCODING;
public static final int[] CHARACTER_ENCODINGS;
static {
int[] iArr = {276, 328, 324, 322, 296, 292, 290, 336, 274, 266, HttpStatus.SC_FAILED_DEPENDENCY, HttpStatus.SC_METHOD_FAILURE, 418, 404, 402, 394, 360, 356, 354, 308, 282, 344, 332, 326, 300, 278, 436, 434, 428, HttpStatus.SC_UNPROCESSABLE_ENTITY, 406, 410, 364, 358, 310, 314, 302, 468, 466, FacebookRequestErrorClassification.ESC_APP_NOT_INSTALLED, 366, 374, 430, 294, 474, 470, 306, 350};
CHARACTER_ENCODINGS = iArr;
ASTERISK_ENCODING = iArr[47];
}
}

View File

@@ -0,0 +1,77 @@
package com.google.zxing.oned;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.common.BitMatrix;
import java.util.Map;
/* loaded from: classes3.dex */
public class Code93Writer extends OneDimensionalCodeWriter {
@Override // com.google.zxing.oned.OneDimensionalCodeWriter, com.google.zxing.Writer
public BitMatrix encode(String str, BarcodeFormat barcodeFormat, int i, int i2, Map map) {
if (barcodeFormat != BarcodeFormat.CODE_93) {
throw new IllegalArgumentException("Can only encode CODE_93, but got ".concat(String.valueOf(barcodeFormat)));
}
return super.encode(str, barcodeFormat, i, i2, map);
}
@Override // com.google.zxing.oned.OneDimensionalCodeWriter
public boolean[] encode(String str) {
int length = str.length();
if (length > 80) {
throw new IllegalArgumentException("Requested contents should be less than 80 digits long, but got ".concat(String.valueOf(length)));
}
int[] iArr = new int[9];
int length2 = ((str.length() + 4) * 9) + 1;
toIntArray(Code93Reader.CHARACTER_ENCODINGS[47], iArr);
boolean[] zArr = new boolean[length2];
int appendPattern = appendPattern(zArr, 0, iArr);
for (int i = 0; i < length; i++) {
toIntArray(Code93Reader.CHARACTER_ENCODINGS["0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%abcd*".indexOf(str.charAt(i))], iArr);
appendPattern += appendPattern(zArr, appendPattern, iArr);
}
int computeChecksumIndex = computeChecksumIndex(str, 20);
int[] iArr2 = Code93Reader.CHARACTER_ENCODINGS;
toIntArray(iArr2[computeChecksumIndex], iArr);
int appendPattern2 = appendPattern + appendPattern(zArr, appendPattern, iArr);
toIntArray(iArr2[computeChecksumIndex(str + "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%abcd*".charAt(computeChecksumIndex), 15)], iArr);
int appendPattern3 = appendPattern2 + appendPattern(zArr, appendPattern2, iArr);
toIntArray(iArr2[47], iArr);
zArr[appendPattern3 + appendPattern(zArr, appendPattern3, iArr)] = true;
return zArr;
}
private static void toIntArray(int i, int[] iArr) {
for (int i2 = 0; i2 < 9; i2++) {
int i3 = 1;
if (((1 << (8 - i2)) & i) == 0) {
i3 = 0;
}
iArr[i2] = i3;
}
}
public static int appendPattern(boolean[] zArr, int i, int[] iArr) {
int length = iArr.length;
int i2 = 0;
while (i2 < length) {
int i3 = i + 1;
zArr[i] = iArr[i2] != 0;
i2++;
i = i3;
}
return 9;
}
public static int computeChecksumIndex(String str, int i) {
int i2 = 0;
int i3 = 1;
for (int length = str.length() - 1; length >= 0; length--) {
i2 += "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%abcd*".indexOf(str.charAt(length)) * i3;
i3++;
if (i3 > i) {
i3 = 1;
}
}
return i2 % 47;
}
}

View File

@@ -0,0 +1,6 @@
package com.google.zxing.oned;
/* loaded from: classes3.dex */
public abstract class EAN13Reader extends UPCEANReader {
public static final int[] FIRST_DIGIT_ENCODINGS = {0, 11, 13, 14, 19, 25, 28, 21, 22, 26};
}

View File

@@ -0,0 +1,55 @@
package com.google.zxing.oned;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.FormatException;
import com.google.zxing.common.BitMatrix;
import java.util.Map;
/* loaded from: classes3.dex */
public final class EAN13Writer extends UPCEANWriter {
@Override // com.google.zxing.oned.OneDimensionalCodeWriter, com.google.zxing.Writer
public BitMatrix encode(String str, BarcodeFormat barcodeFormat, int i, int i2, Map map) {
if (barcodeFormat != BarcodeFormat.EAN_13) {
throw new IllegalArgumentException("Can only encode EAN_13, but got ".concat(String.valueOf(barcodeFormat)));
}
return super.encode(str, barcodeFormat, i, i2, map);
}
@Override // com.google.zxing.oned.OneDimensionalCodeWriter
public boolean[] encode(String str) {
int length = str.length();
if (length == 12) {
try {
str = str + UPCEANReader.getStandardUPCEANChecksum(str);
} catch (FormatException e) {
throw new IllegalArgumentException(e);
}
} else if (length == 13) {
try {
if (!UPCEANReader.checkStandardUPCEANChecksum(str)) {
throw new IllegalArgumentException("Contents do not pass checksum");
}
} catch (FormatException unused) {
throw new IllegalArgumentException("Illegal contents");
}
} else {
throw new IllegalArgumentException("Requested contents should be 12 or 13 digits long, but got ".concat(String.valueOf(length)));
}
int i = EAN13Reader.FIRST_DIGIT_ENCODINGS[Character.digit(str.charAt(0), 10)];
boolean[] zArr = new boolean[95];
int appendPattern = OneDimensionalCodeWriter.appendPattern(zArr, 0, UPCEANReader.START_END_PATTERN, true);
for (int i2 = 1; i2 <= 6; i2++) {
int digit = Character.digit(str.charAt(i2), 10);
if (((i >> (6 - i2)) & 1) == 1) {
digit += 10;
}
appendPattern += OneDimensionalCodeWriter.appendPattern(zArr, appendPattern, UPCEANReader.L_AND_G_PATTERNS[digit], false);
}
int appendPattern2 = appendPattern + OneDimensionalCodeWriter.appendPattern(zArr, appendPattern, UPCEANReader.MIDDLE_PATTERN, false);
for (int i3 = 7; i3 <= 12; i3++) {
appendPattern2 += OneDimensionalCodeWriter.appendPattern(zArr, appendPattern2, UPCEANReader.L_PATTERNS[Character.digit(str.charAt(i3), 10)], true);
}
OneDimensionalCodeWriter.appendPattern(zArr, appendPattern2, UPCEANReader.START_END_PATTERN, true);
return zArr;
}
}

View File

@@ -0,0 +1,50 @@
package com.google.zxing.oned;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.FormatException;
import com.google.zxing.common.BitMatrix;
import java.util.Map;
/* loaded from: classes3.dex */
public final class EAN8Writer extends UPCEANWriter {
@Override // com.google.zxing.oned.OneDimensionalCodeWriter, com.google.zxing.Writer
public BitMatrix encode(String str, BarcodeFormat barcodeFormat, int i, int i2, Map map) {
if (barcodeFormat != BarcodeFormat.EAN_8) {
throw new IllegalArgumentException("Can only encode EAN_8, but got ".concat(String.valueOf(barcodeFormat)));
}
return super.encode(str, barcodeFormat, i, i2, map);
}
@Override // com.google.zxing.oned.OneDimensionalCodeWriter
public boolean[] encode(String str) {
int length = str.length();
if (length == 7) {
try {
str = str + UPCEANReader.getStandardUPCEANChecksum(str);
} catch (FormatException e) {
throw new IllegalArgumentException(e);
}
} else if (length == 8) {
try {
if (!UPCEANReader.checkStandardUPCEANChecksum(str)) {
throw new IllegalArgumentException("Contents do not pass checksum");
}
} catch (FormatException unused) {
throw new IllegalArgumentException("Illegal contents");
}
} else {
throw new IllegalArgumentException("Requested contents should be 8 digits long, but got ".concat(String.valueOf(length)));
}
boolean[] zArr = new boolean[67];
int appendPattern = OneDimensionalCodeWriter.appendPattern(zArr, 0, UPCEANReader.START_END_PATTERN, true);
for (int i = 0; i <= 3; i++) {
appendPattern += OneDimensionalCodeWriter.appendPattern(zArr, appendPattern, UPCEANReader.L_PATTERNS[Character.digit(str.charAt(i), 10)], false);
}
int appendPattern2 = appendPattern + OneDimensionalCodeWriter.appendPattern(zArr, appendPattern, UPCEANReader.MIDDLE_PATTERN, false);
for (int i2 = 4; i2 <= 7; i2++) {
appendPattern2 += OneDimensionalCodeWriter.appendPattern(zArr, appendPattern2, UPCEANReader.L_PATTERNS[Character.digit(str.charAt(i2), 10)], true);
}
OneDimensionalCodeWriter.appendPattern(zArr, appendPattern2, UPCEANReader.START_END_PATTERN, true);
return zArr;
}
}

View File

@@ -0,0 +1,47 @@
package com.google.zxing.oned;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.common.BitMatrix;
import java.util.Map;
/* loaded from: classes3.dex */
public final class ITFWriter extends OneDimensionalCodeWriter {
public static final int[] START_PATTERN = {1, 1, 1, 1};
public static final int[] END_PATTERN = {3, 1, 1};
public static final int[][] PATTERNS = {new int[]{1, 1, 3, 3, 1}, new int[]{3, 1, 1, 1, 3}, new int[]{1, 3, 1, 1, 3}, new int[]{3, 3, 1, 1, 1}, new int[]{1, 1, 3, 1, 3}, new int[]{3, 1, 3, 1, 1}, new int[]{1, 3, 3, 1, 1}, new int[]{1, 1, 1, 3, 3}, new int[]{3, 1, 1, 3, 1}, new int[]{1, 3, 1, 3, 1}};
@Override // com.google.zxing.oned.OneDimensionalCodeWriter, com.google.zxing.Writer
public BitMatrix encode(String str, BarcodeFormat barcodeFormat, int i, int i2, Map map) {
if (barcodeFormat != BarcodeFormat.ITF) {
throw new IllegalArgumentException("Can only encode ITF, but got ".concat(String.valueOf(barcodeFormat)));
}
return super.encode(str, barcodeFormat, i, i2, map);
}
@Override // com.google.zxing.oned.OneDimensionalCodeWriter
public boolean[] encode(String str) {
int length = str.length();
if (length % 2 != 0) {
throw new IllegalArgumentException("The length of the input should be even");
}
if (length > 80) {
throw new IllegalArgumentException("Requested contents should be less than 80 digits long, but got ".concat(String.valueOf(length)));
}
boolean[] zArr = new boolean[(length * 9) + 9];
int appendPattern = OneDimensionalCodeWriter.appendPattern(zArr, 0, START_PATTERN, true);
for (int i = 0; i < length; i += 2) {
int digit = Character.digit(str.charAt(i), 10);
int digit2 = Character.digit(str.charAt(i + 1), 10);
int[] iArr = new int[10];
for (int i2 = 0; i2 < 5; i2++) {
int i3 = i2 * 2;
int[][] iArr2 = PATTERNS;
iArr[i3] = iArr2[digit][i2];
iArr[i3 + 1] = iArr2[digit2][i2];
}
appendPattern += OneDimensionalCodeWriter.appendPattern(zArr, appendPattern, iArr, true);
}
OneDimensionalCodeWriter.appendPattern(zArr, appendPattern, END_PATTERN, true);
return zArr;
}
}

View File

@@ -0,0 +1,5 @@
package com.google.zxing.oned;
/* loaded from: classes3.dex */
public abstract class OneDReader {
}

View File

@@ -0,0 +1,68 @@
package com.google.zxing.oned;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.Writer;
import com.google.zxing.common.BitMatrix;
import java.util.Map;
/* loaded from: classes3.dex */
public abstract class OneDimensionalCodeWriter implements Writer {
public abstract boolean[] encode(String str);
public int getDefaultMargin() {
return 10;
}
@Override // com.google.zxing.Writer
public BitMatrix encode(String str, BarcodeFormat barcodeFormat, int i, int i2, Map map) {
if (str.isEmpty()) {
throw new IllegalArgumentException("Found empty contents");
}
if (i < 0 || i2 < 0) {
throw new IllegalArgumentException("Negative size is not allowed. Input: " + i + 'x' + i2);
}
int defaultMargin = getDefaultMargin();
if (map != null) {
EncodeHintType encodeHintType = EncodeHintType.MARGIN;
if (map.containsKey(encodeHintType)) {
defaultMargin = Integer.parseInt(map.get(encodeHintType).toString());
}
}
return renderResult(encode(str), i, i2, defaultMargin);
}
public static BitMatrix renderResult(boolean[] zArr, int i, int i2, int i3) {
int length = zArr.length;
int i4 = i3 + length;
int max = Math.max(i, i4);
int max2 = Math.max(1, i2);
int i5 = max / i4;
int i6 = (max - (length * i5)) / 2;
BitMatrix bitMatrix = new BitMatrix(max, max2);
int i7 = 0;
while (i7 < length) {
if (zArr[i7]) {
bitMatrix.setRegion(i6, 0, i5, max2);
}
i7++;
i6 += i5;
}
return bitMatrix;
}
public static int appendPattern(boolean[] zArr, int i, int[] iArr, boolean z) {
int i2 = 0;
for (int i3 : iArr) {
int i4 = 0;
while (i4 < i3) {
zArr[i] = z;
i4++;
i++;
}
i2 += i3;
z = !z;
}
return i2;
}
}

View File

@@ -0,0 +1,19 @@
package com.google.zxing.oned;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.Writer;
import com.google.zxing.common.BitMatrix;
import java.util.Map;
/* loaded from: classes3.dex */
public final class UPCAWriter implements Writer {
public final EAN13Writer subWriter = new EAN13Writer();
@Override // com.google.zxing.Writer
public BitMatrix encode(String str, BarcodeFormat barcodeFormat, int i, int i2, Map map) {
if (barcodeFormat != BarcodeFormat.UPC_A) {
throw new IllegalArgumentException("Can only encode UPC-A, but got ".concat(String.valueOf(barcodeFormat)));
}
return this.subWriter.encode("0".concat(String.valueOf(str)), BarcodeFormat.EAN_13, i, i2, map);
}
}

View File

@@ -0,0 +1,58 @@
package com.google.zxing.oned;
import com.google.zxing.FormatException;
/* loaded from: classes3.dex */
public abstract class UPCEANReader extends OneDReader {
public static final int[][] L_AND_G_PATTERNS;
public static final int[][] L_PATTERNS;
public static final int[] START_END_PATTERN = {1, 1, 1};
public static final int[] MIDDLE_PATTERN = {1, 1, 1, 1, 1};
public static final int[] END_PATTERN = {1, 1, 1, 1, 1, 1};
static {
int[][] iArr = {new int[]{3, 2, 1, 1}, new int[]{2, 2, 2, 1}, new int[]{2, 1, 2, 2}, new int[]{1, 4, 1, 1}, new int[]{1, 1, 3, 2}, new int[]{1, 2, 3, 1}, new int[]{1, 1, 1, 4}, new int[]{1, 3, 1, 2}, new int[]{1, 2, 1, 3}, new int[]{3, 1, 1, 2}};
L_PATTERNS = iArr;
int[][] iArr2 = new int[20][];
L_AND_G_PATTERNS = iArr2;
System.arraycopy(iArr, 0, iArr2, 0, 10);
for (int i = 10; i < 20; i++) {
int[] iArr3 = L_PATTERNS[i - 10];
int[] iArr4 = new int[iArr3.length];
for (int i2 = 0; i2 < iArr3.length; i2++) {
iArr4[i2] = iArr3[(iArr3.length - i2) - 1];
}
L_AND_G_PATTERNS[i] = iArr4;
}
}
public static boolean checkStandardUPCEANChecksum(CharSequence charSequence) {
int length = charSequence.length();
if (length == 0) {
return false;
}
int i = length - 1;
return getStandardUPCEANChecksum(charSequence.subSequence(0, i)) == Character.digit(charSequence.charAt(i), 10);
}
public static int getStandardUPCEANChecksum(CharSequence charSequence) {
int length = charSequence.length();
int i = 0;
for (int i2 = length - 1; i2 >= 0; i2 -= 2) {
int charAt = charSequence.charAt(i2) - '0';
if (charAt < 0 || charAt > 9) {
throw FormatException.getFormatInstance();
}
i += charAt;
}
int i3 = i * 3;
for (int i4 = length - 2; i4 >= 0; i4 -= 2) {
int charAt2 = charSequence.charAt(i4) - '0';
if (charAt2 < 0 || charAt2 > 9) {
throw FormatException.getFormatInstance();
}
i3 += charAt2;
}
return (1000 - i3) % 10;
}
}

View File

@@ -0,0 +1,9 @@
package com.google.zxing.oned;
/* loaded from: classes3.dex */
public abstract class UPCEANWriter extends OneDimensionalCodeWriter {
@Override // com.google.zxing.oned.OneDimensionalCodeWriter
public int getDefaultMargin() {
return 9;
}
}

View File

@@ -0,0 +1,46 @@
package com.google.zxing.oned;
import com.fyber.inneractive.sdk.bidder.TokenParametersOuterClass$TokenParameters;
/* loaded from: classes3.dex */
public abstract class UPCEReader extends UPCEANReader {
public static final int[] MIDDLE_END_PATTERN = {1, 1, 1, 1, 1, 1};
public static final int[][] NUMSYS_AND_CHECK_DIGIT_PATTERNS = {new int[]{56, 52, 50, 49, 44, 38, 35, 42, 41, 37}, new int[]{7, 11, 13, 14, 19, 25, 28, 21, 22, 26}};
public static String convertUPCEtoUPCA(String str) {
char[] cArr = new char[6];
str.getChars(1, 7, cArr, 0);
StringBuilder sb = new StringBuilder(12);
sb.append(str.charAt(0));
char c = cArr[5];
switch (c) {
case TokenParametersOuterClass$TokenParameters.LOWPOWERMODE_FIELD_NUMBER /* 48 */:
case TokenParametersOuterClass$TokenParameters.DARKMODE_FIELD_NUMBER /* 49 */:
case '2':
sb.append(cArr, 0, 2);
sb.append(c);
sb.append("0000");
sb.append(cArr, 2, 3);
break;
case '3':
sb.append(cArr, 0, 3);
sb.append("00000");
sb.append(cArr, 3, 2);
break;
case '4':
sb.append(cArr, 0, 4);
sb.append("00000");
sb.append(cArr[4]);
break;
default:
sb.append(cArr, 0, 5);
sb.append("0000");
sb.append(c);
break;
}
if (str.length() >= 8) {
sb.append(str.charAt(7));
}
return sb.toString();
}
}

View File

@@ -0,0 +1,55 @@
package com.google.zxing.oned;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.FormatException;
import com.google.zxing.common.BitMatrix;
import java.util.Map;
/* loaded from: classes3.dex */
public final class UPCEWriter extends UPCEANWriter {
@Override // com.google.zxing.oned.OneDimensionalCodeWriter, com.google.zxing.Writer
public BitMatrix encode(String str, BarcodeFormat barcodeFormat, int i, int i2, Map map) {
if (barcodeFormat != BarcodeFormat.UPC_E) {
throw new IllegalArgumentException("Can only encode UPC_E, but got ".concat(String.valueOf(barcodeFormat)));
}
return super.encode(str, barcodeFormat, i, i2, map);
}
@Override // com.google.zxing.oned.OneDimensionalCodeWriter
public boolean[] encode(String str) {
int length = str.length();
if (length == 7) {
try {
str = str + UPCEANReader.getStandardUPCEANChecksum(UPCEReader.convertUPCEtoUPCA(str));
} catch (FormatException e) {
throw new IllegalArgumentException(e);
}
} else if (length == 8) {
try {
if (!UPCEANReader.checkStandardUPCEANChecksum(str)) {
throw new IllegalArgumentException("Contents do not pass checksum");
}
} catch (FormatException unused) {
throw new IllegalArgumentException("Illegal contents");
}
} else {
throw new IllegalArgumentException("Requested contents should be 8 digits long, but got ".concat(String.valueOf(length)));
}
int digit = Character.digit(str.charAt(0), 10);
if (digit != 0 && digit != 1) {
throw new IllegalArgumentException("Number system must be 0 or 1");
}
int i = UPCEReader.NUMSYS_AND_CHECK_DIGIT_PATTERNS[digit][Character.digit(str.charAt(7), 10)];
boolean[] zArr = new boolean[51];
int appendPattern = OneDimensionalCodeWriter.appendPattern(zArr, 0, UPCEANReader.START_END_PATTERN, true);
for (int i2 = 1; i2 <= 6; i2++) {
int digit2 = Character.digit(str.charAt(i2), 10);
if (((i >> (6 - i2)) & 1) == 1) {
digit2 += 10;
}
appendPattern += OneDimensionalCodeWriter.appendPattern(zArr, appendPattern, UPCEANReader.L_AND_G_PATTERNS[digit2], false);
}
OneDimensionalCodeWriter.appendPattern(zArr, appendPattern, UPCEANReader.END_PATTERN, false);
return zArr;
}
}