package com.google.zxing.oned; import com.google.zxing.BarcodeFormat; import com.google.zxing.FormatException; import com.google.zxing.NotFoundException; import com.google.zxing.common.BitArray; /* loaded from: classes.dex */ public final class UPCEReader extends UPCEANReader { private static final int[] j = {1, 1, 1, 1, 1, 1}; static final int[][] k = {new int[]{56, 52, 50, 49, 44, 38, 35, 42, 41, 37}, new int[]{7, 11, 13, 14, 19, 25, 28, 21, 22, 26}}; private final int[] i = new int[4]; public static String b(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 '0': case '1': 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(); } @Override // com.google.zxing.oned.UPCEANReader protected int a(BitArray bitArray, int[] iArr, StringBuilder sb) throws NotFoundException { int[] iArr2 = this.i; iArr2[0] = 0; iArr2[1] = 0; iArr2[2] = 0; iArr2[3] = 0; int h = bitArray.h(); int i = iArr[1]; int i2 = 0; int i3 = 0; while (i2 < 6 && i < h) { int a = UPCEANReader.a(bitArray, iArr2, i, UPCEANReader.h); sb.append((char) ((a % 10) + 48)); int i4 = i; for (int i5 : iArr2) { i4 += i5; } if (a >= 10) { i3 = (1 << (5 - i2)) | i3; } i2++; i = i4; } a(sb, i3); return i; } @Override // com.google.zxing.oned.UPCEANReader protected int[] a(BitArray bitArray, int i) throws NotFoundException { return UPCEANReader.a(bitArray, i, true, j); } @Override // com.google.zxing.oned.UPCEANReader protected boolean a(String str) throws FormatException { return super.a(b(str)); } private static void a(StringBuilder sb, int i) throws NotFoundException { for (int i2 = 0; i2 <= 1; i2++) { for (int i3 = 0; i3 < 10; i3++) { if (i == k[i2][i3]) { sb.insert(0, (char) (i2 + 48)); sb.append((char) (i3 + 48)); return; } } } throw NotFoundException.getNotFoundInstance(); } @Override // com.google.zxing.oned.UPCEANReader BarcodeFormat a() { return BarcodeFormat.UPC_E; } }