771 lines
36 KiB
Java
771 lines
36 KiB
Java
package c.i.e.r.d;
|
|
|
|
import c.i.e.k;
|
|
import c.i.e.n.d;
|
|
import c.i.e.n.e;
|
|
import c.i.e.r.d.k.a;
|
|
import c.i.e.r.d.k.b;
|
|
import c.i.e.r.d.k.c;
|
|
import com.google.zxing.ChecksumException;
|
|
import com.google.zxing.FormatException;
|
|
import com.google.zxing.NotFoundException;
|
|
import java.io.ByteArrayOutputStream;
|
|
import java.nio.charset.Charset;
|
|
import java.nio.charset.StandardCharsets;
|
|
import java.util.Arrays;
|
|
import java.util.Objects;
|
|
/* compiled from: PDF417ScanningDecoder */
|
|
public final class j {
|
|
public static final a a = new a();
|
|
|
|
/* JADX WARNING: Removed duplicated region for block: B:75:0x00f2 */
|
|
public static c a(h hVar) throws NotFoundException {
|
|
int[] iArr;
|
|
k kVar;
|
|
k kVar2;
|
|
k kVar3;
|
|
k kVar4;
|
|
int i;
|
|
if (hVar == null) {
|
|
return null;
|
|
}
|
|
a c2 = hVar.c();
|
|
int i2 = 0;
|
|
if (c2 == null) {
|
|
iArr = null;
|
|
} else {
|
|
c cVar = hVar.a;
|
|
boolean z2 = hVar.f1441c;
|
|
k kVar5 = z2 ? cVar.b : cVar.d;
|
|
k kVar6 = z2 ? cVar.f1437c : cVar.e;
|
|
int b = hVar.b((int) kVar6.b);
|
|
d[] dVarArr = hVar.b;
|
|
int i3 = -1;
|
|
int i4 = 0;
|
|
int i5 = 1;
|
|
for (int b2 = hVar.b((int) kVar5.b); b2 < b; b2++) {
|
|
if (dVarArr[b2] != null) {
|
|
d dVar = dVarArr[b2];
|
|
dVar.b();
|
|
int i6 = dVar.e;
|
|
int i7 = i6 - i3;
|
|
if (i7 == 0) {
|
|
i4++;
|
|
} else {
|
|
if (i7 == 1) {
|
|
i5 = Math.max(i5, i4);
|
|
i3 = dVar.e;
|
|
} else if (i6 >= c2.e) {
|
|
dVarArr[b2] = null;
|
|
} else {
|
|
i3 = i6;
|
|
}
|
|
i4 = 1;
|
|
}
|
|
}
|
|
}
|
|
int i8 = c2.e;
|
|
iArr = new int[i8];
|
|
d[] dVarArr2 = hVar.b;
|
|
for (d dVar2 : dVarArr2) {
|
|
if (dVar2 != null && (i = dVar2.e) < i8) {
|
|
iArr[i] = iArr[i] + 1;
|
|
}
|
|
}
|
|
}
|
|
if (iArr == null) {
|
|
return null;
|
|
}
|
|
int i9 = -1;
|
|
for (int i10 : iArr) {
|
|
i9 = Math.max(i9, i10);
|
|
}
|
|
int i11 = 0;
|
|
for (int i12 : iArr) {
|
|
i11 += i9 - i12;
|
|
if (i12 > 0) {
|
|
break;
|
|
}
|
|
}
|
|
d[] dVarArr3 = hVar.b;
|
|
int i13 = 0;
|
|
while (i11 > 0 && dVarArr3[i13] == null) {
|
|
i11--;
|
|
i13++;
|
|
}
|
|
int i14 = 0;
|
|
for (int length = iArr.length - 1; length >= 0; length--) {
|
|
i14 += i9 - iArr[length];
|
|
if (iArr[length] > 0) {
|
|
break;
|
|
}
|
|
}
|
|
int length2 = dVarArr3.length - 1;
|
|
while (i14 > 0 && dVarArr3[length2] == null) {
|
|
i14--;
|
|
length2--;
|
|
}
|
|
c cVar2 = hVar.a;
|
|
boolean z3 = hVar.f1441c;
|
|
k kVar7 = cVar2.b;
|
|
k kVar8 = cVar2.f1437c;
|
|
k kVar9 = cVar2.d;
|
|
k kVar10 = cVar2.e;
|
|
if (i11 > 0) {
|
|
k kVar11 = z3 ? kVar7 : kVar9;
|
|
int i15 = ((int) kVar11.b) - i11;
|
|
if (i15 >= 0) {
|
|
i2 = i15;
|
|
}
|
|
k kVar12 = new k(kVar11.a, (float) i2);
|
|
if (z3) {
|
|
kVar7 = kVar12;
|
|
} else {
|
|
kVar2 = kVar7;
|
|
kVar = kVar12;
|
|
if (i14 > 0) {
|
|
k kVar13 = z3 ? kVar8 : kVar10;
|
|
int i16 = ((int) kVar13.b) + i14;
|
|
int i17 = cVar2.a.j;
|
|
if (i16 >= i17) {
|
|
i16 = i17 - 1;
|
|
}
|
|
k kVar14 = new k(kVar13.a, (float) i16);
|
|
if (z3) {
|
|
kVar8 = kVar14;
|
|
} else {
|
|
kVar3 = kVar14;
|
|
kVar4 = kVar8;
|
|
return new c(cVar2.a, kVar2, kVar4, kVar, kVar3);
|
|
}
|
|
}
|
|
kVar4 = kVar8;
|
|
kVar3 = kVar10;
|
|
return new c(cVar2.a, kVar2, kVar4, kVar, kVar3);
|
|
}
|
|
}
|
|
kVar2 = kVar7;
|
|
kVar = kVar9;
|
|
if (i14 > 0) {
|
|
}
|
|
kVar4 = kVar8;
|
|
kVar3 = kVar10;
|
|
return new c(cVar2.a, kVar2, kVar4, kVar, kVar3);
|
|
}
|
|
|
|
/* JADX INFO: Can't fix incorrect switch cases order, some code will duplicate */
|
|
/* JADX WARNING: Removed duplicated region for block: B:111:0x0299 */
|
|
/* JADX WARNING: Removed duplicated region for block: B:130:0x0337 */
|
|
/* JADX WARNING: Removed duplicated region for block: B:158:0x03ad A[ADDED_TO_REGION] */
|
|
/* JADX WARNING: Removed duplicated region for block: B:251:0x03c4 A[ADDED_TO_REGION, SYNTHETIC] */
|
|
/* JADX WARNING: Removed duplicated region for block: B:96:0x024e */
|
|
public static e b(int[] iArr, int i, int[] iArr2) throws FormatException, ChecksumException {
|
|
int i2;
|
|
int i3;
|
|
int i4;
|
|
int i5;
|
|
int i6;
|
|
char c2;
|
|
int i7;
|
|
c cVar;
|
|
if (iArr.length != 0) {
|
|
int i8 = 1 << (i + 1);
|
|
if ((iArr2 == null || iArr2.length <= (i8 / 2) + 3) && i8 >= 0 && i8 <= 512) {
|
|
a aVar = a;
|
|
c cVar2 = new c(aVar.a, iArr);
|
|
int[] iArr3 = new int[i8];
|
|
boolean z2 = false;
|
|
for (int i9 = i8; i9 > 0; i9--) {
|
|
int b = cVar2.b(aVar.a.b[i9]);
|
|
iArr3[i8 - i9] = b;
|
|
if (b != 0) {
|
|
z2 = true;
|
|
}
|
|
}
|
|
if (z2) {
|
|
c cVar3 = aVar.a.e;
|
|
if (iArr2 != null) {
|
|
for (int i10 : iArr2) {
|
|
b bVar = aVar.a;
|
|
cVar3 = cVar3.g(new c(bVar, new int[]{bVar.e(0, bVar.b[(iArr.length - 1) - i10]), 1}));
|
|
}
|
|
}
|
|
c cVar4 = new c(aVar.a, iArr3);
|
|
c b2 = aVar.a.b(i8, 1);
|
|
if (b2.d() >= cVar4.d()) {
|
|
cVar4 = b2;
|
|
b2 = cVar4;
|
|
}
|
|
b bVar2 = aVar.a;
|
|
c cVar5 = bVar2.d;
|
|
c cVar6 = bVar2.e;
|
|
while (true) {
|
|
cVar4 = b2;
|
|
b2 = cVar4;
|
|
if (cVar4.d() < i8 / 2) {
|
|
int c3 = cVar6.c(0);
|
|
if (c3 != 0) {
|
|
int c4 = aVar.a.c(c3);
|
|
c[] cVarArr = {cVar6.f(c4), cVar4.f(c4)};
|
|
c cVar7 = cVarArr[0];
|
|
c cVar8 = cVarArr[1];
|
|
int d = cVar7.d();
|
|
int[] iArr4 = new int[d];
|
|
int i11 = 1;
|
|
int i12 = 0;
|
|
while (true) {
|
|
Objects.requireNonNull(aVar.a);
|
|
if (i11 >= 929 || i12 >= d) {
|
|
break;
|
|
}
|
|
if (cVar7.b(i11) == 0) {
|
|
iArr4[i12] = aVar.a.c(i11);
|
|
i12++;
|
|
}
|
|
i11++;
|
|
}
|
|
if (i12 == d) {
|
|
int d2 = cVar7.d();
|
|
int[] iArr5 = new int[d2];
|
|
for (int i13 = 1; i13 <= d2; i13++) {
|
|
iArr5[d2 - i13] = aVar.a.d(i13, cVar7.c(i13));
|
|
}
|
|
c cVar9 = new c(aVar.a, iArr5);
|
|
int[] iArr6 = new int[d];
|
|
for (int i14 = 0; i14 < d; i14++) {
|
|
int c5 = aVar.a.c(iArr4[i14]);
|
|
iArr6[i14] = aVar.a.d(aVar.a.e(0, cVar8.b(c5)), aVar.a.c(cVar9.b(c5)));
|
|
}
|
|
for (int i15 = 0; i15 < d; i15++) {
|
|
int length = iArr.length - 1;
|
|
b bVar3 = aVar.a;
|
|
int i16 = iArr4[i15];
|
|
Objects.requireNonNull(bVar3);
|
|
if (i16 != 0) {
|
|
int i17 = length - bVar3.f1442c[i16];
|
|
if (i17 >= 0) {
|
|
iArr[i17] = aVar.a.e(iArr[i17], iArr6[i15]);
|
|
} else {
|
|
throw ChecksumException.a();
|
|
}
|
|
} else {
|
|
throw new IllegalArgumentException();
|
|
}
|
|
}
|
|
} else {
|
|
throw ChecksumException.a();
|
|
}
|
|
} else {
|
|
throw ChecksumException.a();
|
|
}
|
|
} else if (!cVar4.e()) {
|
|
c cVar10 = aVar.a.d;
|
|
int c6 = aVar.a.c(cVar4.c(cVar4.d()));
|
|
while (b2.d() >= cVar4.d() && !b2.e()) {
|
|
int d3 = b2.d() - cVar4.d();
|
|
int d4 = aVar.a.d(b2.c(b2.d()), c6);
|
|
cVar10 = cVar10.a(aVar.a.b(d3, d4));
|
|
if (d3 >= 0) {
|
|
if (d4 == 0) {
|
|
cVar = cVar4.a.d;
|
|
} else {
|
|
int length2 = cVar4.b.length;
|
|
int[] iArr7 = new int[(d3 + length2)];
|
|
for (int i18 = 0; i18 < length2; i18++) {
|
|
iArr7[i18] = cVar4.a.d(cVar4.b[i18], d4);
|
|
}
|
|
cVar = new c(cVar4.a, iArr7);
|
|
}
|
|
b2 = b2.i(cVar);
|
|
} else {
|
|
throw new IllegalArgumentException();
|
|
}
|
|
}
|
|
cVar5 = cVar6;
|
|
cVar6 = cVar10.g(cVar6).i(cVar5).h();
|
|
} else {
|
|
throw ChecksumException.a();
|
|
}
|
|
}
|
|
}
|
|
if (iArr.length >= 4) {
|
|
int i19 = iArr[0];
|
|
if (i19 <= iArr.length) {
|
|
if (i19 == 0) {
|
|
if (i8 < iArr.length) {
|
|
iArr[0] = iArr.length - i8;
|
|
} else {
|
|
throw FormatException.a();
|
|
}
|
|
}
|
|
String valueOf = String.valueOf(i);
|
|
char[] cArr = e.a;
|
|
StringBuilder sb = new StringBuilder(iArr.length << 1);
|
|
Charset charset = StandardCharsets.ISO_8859_1;
|
|
int i20 = iArr[1];
|
|
c.i.e.r.c cVar11 = new c.i.e.r.c();
|
|
int i21 = 2;
|
|
char c7 = 0;
|
|
while (i21 < iArr[c7]) {
|
|
if (i20 != 913) {
|
|
switch (i20) {
|
|
case 900:
|
|
i2 = e.c(iArr, i21, sb);
|
|
c7 = 0;
|
|
break;
|
|
case 901:
|
|
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
|
|
long j = 900;
|
|
if (i20 != 901) {
|
|
if (i20 == 924) {
|
|
boolean z3 = false;
|
|
while (true) {
|
|
long j2 = 0;
|
|
int i22 = 0;
|
|
while (i21 < iArr[0] && !z3) {
|
|
int i23 = i21 + 1;
|
|
int i24 = iArr[i21];
|
|
if (i24 < 900) {
|
|
i22++;
|
|
j2 = (j2 * j) + ((long) i24);
|
|
} else {
|
|
if (i24 != 928) {
|
|
switch (i24) {
|
|
default:
|
|
switch (i24) {
|
|
}
|
|
case 900:
|
|
case 901:
|
|
case 902:
|
|
i21 = i23 - 1;
|
|
z3 = true;
|
|
break;
|
|
}
|
|
if (i22 % 5 != 0 || i22 <= 0) {
|
|
j = 900;
|
|
} else {
|
|
for (int i25 = 0; i25 < 6; i25++) {
|
|
byteArrayOutputStream.write((byte) ((int) (j2 >> ((5 - i25) * 8))));
|
|
}
|
|
j = 900;
|
|
}
|
|
}
|
|
i21 = i23 - 1;
|
|
z3 = true;
|
|
if (i22 % 5 != 0) {
|
|
}
|
|
j = 900;
|
|
}
|
|
i21 = i23;
|
|
if (i22 % 5 != 0) {
|
|
}
|
|
j = 900;
|
|
}
|
|
}
|
|
}
|
|
i2 = i21;
|
|
c7 = 0;
|
|
} else {
|
|
int[] iArr8 = new int[6];
|
|
int i26 = i21 + 1;
|
|
int i27 = iArr[i21];
|
|
boolean z4 = false;
|
|
while (true) {
|
|
boolean z5 = z4;
|
|
long j3 = 0;
|
|
char c8 = 0;
|
|
i3 = i26;
|
|
i4 = i27;
|
|
i5 = 0;
|
|
while (i3 < iArr[c8] && !z5) {
|
|
int i28 = i5 + 1;
|
|
iArr8[i5] = i4;
|
|
j3 = (j3 * 900) + ((long) i4);
|
|
i26 = i3 + 1;
|
|
i27 = iArr[i3];
|
|
if (i27 != 928) {
|
|
switch (i27) {
|
|
case 900:
|
|
case 901:
|
|
case 902:
|
|
break;
|
|
default:
|
|
switch (i27) {
|
|
case 922:
|
|
case 923:
|
|
case 924:
|
|
break;
|
|
default:
|
|
if (i28 % 5 != 0 || i28 <= 0) {
|
|
i3 = i26;
|
|
z5 = z5;
|
|
c8 = 0;
|
|
i4 = i27;
|
|
i5 = i28;
|
|
} else {
|
|
for (int i29 = 0; i29 < 6; i29++) {
|
|
byteArrayOutputStream.write((byte) ((int) (j3 >> ((5 - i29) * 8))));
|
|
}
|
|
z4 = z5;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
i3 = i26 - 1;
|
|
i4 = i27;
|
|
i5 = i28;
|
|
z5 = true;
|
|
c8 = 0;
|
|
}
|
|
}
|
|
c7 = 0;
|
|
if (i3 != iArr[0] || i4 >= 900) {
|
|
i6 = i5;
|
|
} else {
|
|
i6 = i5 + 1;
|
|
iArr8[i5] = i4;
|
|
}
|
|
for (int i30 = 0; i30 < i6; i30++) {
|
|
byteArrayOutputStream.write((byte) iArr8[i30]);
|
|
}
|
|
i2 = i3;
|
|
}
|
|
sb.append(new String(byteArrayOutputStream.toByteArray(), charset));
|
|
break;
|
|
case 902:
|
|
i2 = e.b(iArr, i21, sb);
|
|
c7 = 0;
|
|
break;
|
|
default:
|
|
switch (i20) {
|
|
case 922:
|
|
case 923:
|
|
throw FormatException.a();
|
|
case 924:
|
|
break;
|
|
case 925:
|
|
i2 = i21 + 1;
|
|
c7 = 0;
|
|
break;
|
|
case 926:
|
|
i2 = i21 + 2;
|
|
c7 = 0;
|
|
break;
|
|
case 927:
|
|
i2 = i21 + 1;
|
|
charset = Charset.forName(d.f(iArr[i21]).name());
|
|
c7 = 0;
|
|
break;
|
|
case 928:
|
|
if (i21 + 2 <= iArr[0]) {
|
|
int[] iArr9 = new int[2];
|
|
int i31 = 0;
|
|
while (i31 < 2) {
|
|
iArr9[i31] = iArr[i21];
|
|
i31++;
|
|
i21++;
|
|
}
|
|
Integer.parseInt(e.a(iArr9, 2));
|
|
StringBuilder sb2 = new StringBuilder();
|
|
int c9 = e.c(iArr, i21, sb2);
|
|
sb2.toString();
|
|
if (iArr[c9] == 923) {
|
|
c2 = 0;
|
|
i7 = c9 + 1;
|
|
i2 = c9;
|
|
if (i2 < iArr[c2]) {
|
|
int i32 = iArr[i2];
|
|
if (i32 == 922) {
|
|
i2++;
|
|
cVar11.a = true;
|
|
} else {
|
|
if (i32 == 923) {
|
|
int i33 = i2 + 1;
|
|
switch (iArr[i33]) {
|
|
case 0:
|
|
StringBuilder sb3 = new StringBuilder();
|
|
i2 = e.c(iArr, i33 + 1, sb3);
|
|
sb3.toString();
|
|
break;
|
|
case 1:
|
|
StringBuilder sb4 = new StringBuilder();
|
|
i2 = e.b(iArr, i33 + 1, sb4);
|
|
Integer.parseInt(sb4.toString());
|
|
break;
|
|
case 2:
|
|
StringBuilder sb5 = new StringBuilder();
|
|
i2 = e.b(iArr, i33 + 1, sb5);
|
|
Long.parseLong(sb5.toString());
|
|
break;
|
|
case 3:
|
|
StringBuilder sb6 = new StringBuilder();
|
|
i2 = e.c(iArr, i33 + 1, sb6);
|
|
sb6.toString();
|
|
break;
|
|
case 4:
|
|
StringBuilder sb7 = new StringBuilder();
|
|
i2 = e.c(iArr, i33 + 1, sb7);
|
|
sb7.toString();
|
|
break;
|
|
case 5:
|
|
StringBuilder sb8 = new StringBuilder();
|
|
i2 = e.b(iArr, i33 + 1, sb8);
|
|
Long.parseLong(sb8.toString());
|
|
break;
|
|
case 6:
|
|
StringBuilder sb9 = new StringBuilder();
|
|
i2 = e.b(iArr, i33 + 1, sb9);
|
|
Integer.parseInt(sb9.toString());
|
|
break;
|
|
default:
|
|
throw FormatException.a();
|
|
}
|
|
}
|
|
throw FormatException.a();
|
|
}
|
|
}
|
|
if (i7 != -1) {
|
|
int i34 = i2 - i7;
|
|
if (cVar11.a) {
|
|
i34--;
|
|
}
|
|
Arrays.copyOfRange(iArr, i7, i34 + i7);
|
|
}
|
|
c7 = 0;
|
|
break;
|
|
} else {
|
|
i2 = c9;
|
|
i7 = -1;
|
|
}
|
|
c2 = 0;
|
|
if (i2 < iArr[c2]) {
|
|
}
|
|
if (i7 != -1) {
|
|
}
|
|
c7 = 0;
|
|
} else {
|
|
throw FormatException.a();
|
|
}
|
|
default:
|
|
c7 = 0;
|
|
i2 = e.c(iArr, i21 - 1, sb);
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
} else {
|
|
c7 = 0;
|
|
i2 = i21 + 1;
|
|
sb.append((char) iArr[i21]);
|
|
}
|
|
if (i2 < iArr.length) {
|
|
i21 = i2 + 1;
|
|
i20 = iArr[i2];
|
|
} else {
|
|
throw FormatException.a();
|
|
}
|
|
}
|
|
if (sb.length() != 0) {
|
|
e eVar = new e(null, sb.toString(), null, valueOf);
|
|
eVar.f = cVar11;
|
|
int length3 = iArr2.length;
|
|
return eVar;
|
|
}
|
|
throw FormatException.a();
|
|
}
|
|
throw FormatException.a();
|
|
}
|
|
throw FormatException.a();
|
|
}
|
|
throw ChecksumException.a();
|
|
}
|
|
throw FormatException.a();
|
|
}
|
|
|
|
public static d c(c.i.e.n.b bVar, int i, int i2, boolean z2, int i3, int i4, int i5, int i6) {
|
|
int i7;
|
|
int i8 = i;
|
|
int i9 = z2 ? -1 : 1;
|
|
boolean z3 = z2;
|
|
int i10 = i3;
|
|
int i11 = 0;
|
|
loop0:
|
|
while (true) {
|
|
if (i11 >= 2) {
|
|
break;
|
|
}
|
|
while (true) {
|
|
if (z3) {
|
|
if (i10 < i8) {
|
|
continue;
|
|
break;
|
|
}
|
|
} else if (i10 >= i2) {
|
|
continue;
|
|
break;
|
|
}
|
|
if (z3 != bVar.f(i10, i4)) {
|
|
continue;
|
|
break;
|
|
} else if (Math.abs(i3 - i10) > 2) {
|
|
i10 = i3;
|
|
break loop0;
|
|
} else {
|
|
i10 += i9;
|
|
}
|
|
}
|
|
i9 = -i9;
|
|
z3 = !z3;
|
|
i11++;
|
|
}
|
|
int[] iArr = new int[8];
|
|
int i12 = z2 ? 1 : -1;
|
|
boolean z4 = z2;
|
|
int i13 = i10;
|
|
int i14 = 0;
|
|
while (true) {
|
|
if (z2) {
|
|
if (i13 >= i2) {
|
|
break;
|
|
}
|
|
} else if (i13 < i8) {
|
|
break;
|
|
}
|
|
if (i14 >= 8) {
|
|
break;
|
|
} else if (bVar.f(i13, i4) == z4) {
|
|
iArr[i14] = iArr[i14] + 1;
|
|
i13 += i12;
|
|
} else {
|
|
i14++;
|
|
z4 = !z4;
|
|
}
|
|
}
|
|
if (i14 != 8) {
|
|
if (z2) {
|
|
i8 = i2;
|
|
}
|
|
if (!(i13 == i8 && i14 == 7)) {
|
|
iArr = null;
|
|
}
|
|
}
|
|
if (iArr == null) {
|
|
return null;
|
|
}
|
|
int j02 = c.i.a.f.e.o.c.j0(iArr);
|
|
if (z2) {
|
|
i7 = i10 + j02;
|
|
} else {
|
|
for (int i15 = 0; i15 < iArr.length / 2; i15++) {
|
|
int i16 = iArr[i15];
|
|
iArr[i15] = iArr[(iArr.length - 1) - i15];
|
|
iArr[(iArr.length - 1) - i15] = i16;
|
|
}
|
|
i10 -= j02;
|
|
i7 = i10;
|
|
}
|
|
if (!(i5 + -2 <= j02 && j02 <= i6 + 2)) {
|
|
return null;
|
|
}
|
|
float[][] fArr = i.a;
|
|
float j03 = (float) c.i.a.f.e.o.c.j0(iArr);
|
|
int[] iArr2 = new int[8];
|
|
int i17 = 0;
|
|
int i18 = 0;
|
|
for (int i19 = 0; i19 < 17; i19++) {
|
|
if (((float) (iArr[i17] + i18)) <= ((((float) i19) * j03) / 17.0f) + (j03 / 34.0f)) {
|
|
i18 += iArr[i17];
|
|
i17++;
|
|
}
|
|
iArr2[i17] = iArr2[i17] + 1;
|
|
}
|
|
long j = 0;
|
|
for (int i20 = 0; i20 < 8; i20++) {
|
|
for (int i21 = 0; i21 < iArr2[i20]; i21++) {
|
|
j = (j << 1) | ((long) (i20 % 2 == 0 ? 1 : 0));
|
|
}
|
|
}
|
|
int i22 = (int) j;
|
|
if (c.i.e.r.a.a(i22) == -1) {
|
|
i22 = -1;
|
|
}
|
|
if (i22 == -1) {
|
|
int j04 = c.i.a.f.e.o.c.j0(iArr);
|
|
float[] fArr2 = new float[8];
|
|
if (j04 > 1) {
|
|
for (int i23 = 0; i23 < 8; i23++) {
|
|
fArr2[i23] = ((float) iArr[i23]) / ((float) j04);
|
|
}
|
|
}
|
|
float f = Float.MAX_VALUE;
|
|
int i24 = -1;
|
|
int i25 = 0;
|
|
while (true) {
|
|
float[][] fArr3 = i.a;
|
|
if (i25 >= fArr3.length) {
|
|
break;
|
|
}
|
|
float f2 = 0.0f;
|
|
float[] fArr4 = fArr3[i25];
|
|
for (int i26 = 0; i26 < 8; i26++) {
|
|
float f3 = fArr4[i26] - fArr2[i26];
|
|
f2 += f3 * f3;
|
|
if (f2 >= f) {
|
|
break;
|
|
}
|
|
}
|
|
if (f2 < f) {
|
|
i24 = c.i.e.r.a.b[i25];
|
|
f = f2;
|
|
}
|
|
i25++;
|
|
}
|
|
i22 = i24;
|
|
}
|
|
int a2 = c.i.e.r.a.a(i22);
|
|
if (a2 == -1) {
|
|
return null;
|
|
}
|
|
int[] iArr3 = new int[8];
|
|
int i27 = i22;
|
|
int i28 = 7;
|
|
int i29 = 0;
|
|
while (true) {
|
|
int i30 = i27 & 1;
|
|
if (i30 != i29) {
|
|
i28--;
|
|
if (i28 < 0) {
|
|
return new d(i10, i7, ((((iArr3[0] - iArr3[2]) + iArr3[4]) - iArr3[6]) + 9) % 9, a2);
|
|
}
|
|
i29 = i30;
|
|
}
|
|
iArr3[i28] = iArr3[i28] + 1;
|
|
i27 >>= 1;
|
|
}
|
|
}
|
|
|
|
public static h d(c.i.e.n.b bVar, c cVar, k kVar, boolean z2, int i, int i2) {
|
|
h hVar = new h(cVar, z2);
|
|
int i3 = 0;
|
|
while (i3 < 2) {
|
|
int i4 = i3 == 0 ? 1 : -1;
|
|
int i5 = (int) kVar.a;
|
|
int i6 = (int) kVar.b;
|
|
while (i6 <= cVar.i && i6 >= cVar.h) {
|
|
d c2 = c(bVar, 0, bVar.i, z2, i5, i6, i, i2);
|
|
if (c2 != null) {
|
|
hVar.b[i6 - hVar.a.h] = c2;
|
|
i5 = z2 ? c2.a : c2.b;
|
|
}
|
|
i6 += i4;
|
|
}
|
|
i3++;
|
|
}
|
|
return hVar;
|
|
}
|
|
|
|
public static boolean e(f fVar, int i) {
|
|
return i >= 0 && i <= fVar.d + 1;
|
|
}
|
|
}
|