what-the-bank/sources/org/jmrtd/lds/icao/MRZInfo.java

1759 lines
57 KiB
Java
Raw Normal View History

2024-07-27 18:17:47 +07:00
package org.jmrtd.lds.icao;
import com.airbnb.deeplinkdispatch.UrlTreeKt;
import com.google.common.base.Ascii;
import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.util.logging.Logger;
import net.sf.scuba.data.Gender;
import org.jmrtd.lds.AbstractLDSInfo;
/* loaded from: classes6.dex */
public class MRZInfo extends AbstractLDSInfo {
public static final int DOC_TYPE_ID1 = 1;
public static final int DOC_TYPE_ID2 = 2;
public static final int DOC_TYPE_ID3 = 3;
public static final int DOC_TYPE_UNSPECIFIED = 0;
private static final Logger LOGGER;
private static final String MRZ_CHARS = "<0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
private static int a = 0;
private static short[] b = null;
private static byte[] c = null;
private static int d = 0;
private static int e = 0;
private static int j = 0;
private static final long serialVersionUID = 7054965914471297804L;
private char compositeCheckDigit;
private String dateOfBirth;
private char dateOfBirthCheckDigit;
private String dateOfExpiry;
private char dateOfExpiryCheckDigit;
private String documentCode;
private String documentNumber;
private char documentNumberCheckDigit;
private int documentType;
private Gender gender;
private String issuingState;
private String nationality;
private String optionalData1;
private String optionalData2;
private String primaryIdentifier;
private String secondaryIdentifier;
private static final byte[] $$a = {76, 73, -112, -126};
private static final int $$b = 57;
private static int $10 = 0;
private static int $11 = 1;
private static int i = 1;
/* JADX WARN: Removed duplicated region for block: B:10:0x002a */
/* JADX WARN: Removed duplicated region for block: B:7:0x0022 */
/* JADX WARN: Unsupported multi-entry loop pattern (BACK_EDGE: B:10:0x002a -> B:4:0x002e). Please report as a decompilation issue!!! */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
private static void g(int r6, byte r7, short r8, java.lang.Object[] r9) {
/*
int r6 = r6 * 4
int r6 = 4 - r6
int r8 = r8 * 4
int r0 = 1 - r8
int r7 = r7 * 2
int r7 = r7 + 108
byte[] r1 = org.jmrtd.lds.icao.MRZInfo.$$a
byte[] r0 = new byte[r0]
r2 = 0
int r8 = 0 - r8
if (r1 != 0) goto L19
r4 = r7
r3 = r2
r7 = r6
goto L2e
L19:
r3 = r2
r5 = r7
r7 = r6
r6 = r5
L1d:
byte r4 = (byte) r6
r0[r3] = r4
if (r3 != r8) goto L2a
java.lang.String r6 = new java.lang.String
r6.<init>(r0, r2)
r9[r2] = r6
return
L2a:
int r3 = r3 + 1
r4 = r1[r7]
L2e:
int r6 = r6 + r4
int r7 = r7 + 1
goto L1d
*/
throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.g(int, byte, short, java.lang.Object[]):void");
}
static {
j = 0;
a();
LOGGER = Logger.getLogger("org.jmrtd");
int i2 = i + 9;
j = i2 % 128;
int i3 = i2 % 2;
}
/* JADX WARN: Code restructure failed: missing block: B:12:0x0031, code lost:
if ((!r5.startsWith("V")) == false) goto L17;
*/
/* JADX WARN: Code restructure failed: missing block: B:14:0x0039, code lost:
if ((!r5.startsWith("V")) == false) goto L17;
*/
/* JADX WARN: Code restructure failed: missing block: B:22:0x0078, code lost:
if ((r5 % 2) == 0) goto L33;
*/
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public MRZInfo(java.lang.String r5, java.lang.String r6, java.lang.String r7, java.lang.String r8, java.lang.String r9, java.lang.String r10, java.lang.String r11, net.sf.scuba.data.Gender r12, java.lang.String r13, java.lang.String r14) {
/*
r4 = this;
r4.<init>()
if (r5 == 0) goto Lb4
int r0 = r5.length()
if (r0 <= 0) goto Lb4
int r0 = r5.length()
r1 = 2
if (r0 > r1) goto Lb4
java.lang.String r0 = "P"
boolean r0 = r5.startsWith(r0)
r2 = 1
if (r0 != 0) goto L3b
int r0 = org.jmrtd.lds.icao.MRZInfo.i
int r0 = r0 + 33
int r3 = r0 % 128
org.jmrtd.lds.icao.MRZInfo.j = r3
int r0 = r0 % r1
java.lang.String r3 = "V"
if (r0 == 0) goto L34
boolean r0 = r5.startsWith(r3)
r3 = 13
int r3 = r3 / 0
r0 = r0 ^ r2
if (r0 != 0) goto Lb4
goto L3b
L34:
boolean r0 = r5.startsWith(r3)
r0 = r0 ^ r2
if (r0 != 0) goto Lb4
L3b:
int r0 = getDocumentTypeFromDocumentCode(r5)
r4.documentType = r0
java.lang.String r5 = trimFillerChars(r5)
r4.documentCode = r5
r4.issuingState = r6
r4.primaryIdentifier = r7
r4.secondaryIdentifier = r8
java.lang.String r5 = trimFillerChars(r9)
r4.documentNumber = r5
r4.nationality = r10
r4.dateOfBirth = r11
r4.gender = r12
r4.dateOfExpiry = r13
java.lang.String r5 = ""
if (r14 == 0) goto Lae
boolean r6 = equalsModuloFillerChars(r14, r5)
if (r6 != 0) goto Lae
int r5 = r14.length()
r6 = 15
if (r5 != r6) goto L7b
r4.optionalData1 = r14
int r5 = org.jmrtd.lds.icao.MRZInfo.j
int r5 = r5 + 85
int r6 = r5 % 128
org.jmrtd.lds.icao.MRZInfo.i = r6
int r5 = r5 % r1
if (r5 != 0) goto L9c
goto Lb0
L7b:
int r5 = r14.length()
r6 = 14
if (r5 > r6) goto L9e
java.lang.StringBuilder r5 = new java.lang.StringBuilder
r5.<init>()
java.lang.String r6 = mrzFormat(r14, r6)
r5.append(r6)
char r6 = checkDigit(r14, r2)
r5.append(r6)
java.lang.String r5 = r5.toString()
r4.optionalData1 = r5
L9c:
int r1 = r1 % r1
goto Lb0
L9e:
java.lang.IllegalArgumentException r5 = new java.lang.IllegalArgumentException
java.lang.String r6 = "Wrong personal number: "
java.lang.String r7 = java.lang.String.valueOf(r14)
java.lang.String r6 = r6.concat(r7)
r5.<init>(r6)
throw r5
Lae:
r4.optionalData1 = r5
Lb0:
r4.checkDigit()
return
Lb4:
java.lang.IllegalArgumentException r6 = new java.lang.IllegalArgumentException
java.lang.String r7 = "Wrong document code: "
java.lang.String r5 = java.lang.String.valueOf(r5)
java.lang.String r5 = r7.concat(r5)
r6.<init>(r5)
throw r6
*/
throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.<init>(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, net.sf.scuba.data.Gender, java.lang.String, java.lang.String):void");
}
/* JADX WARN: Code restructure failed: missing block: B:14:0x003c, code lost:
if (r14.startsWith("A") != false) goto L19;
*/
/* JADX WARN: Code restructure failed: missing block: B:16:0x0043, code lost:
if (r14.startsWith("A") != false) goto L19;
*/
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public MRZInfo(java.lang.String r14, java.lang.String r15, java.lang.String r16, java.lang.String r17, java.lang.String r18, net.sf.scuba.data.Gender r19, java.lang.String r20, java.lang.String r21, java.lang.String r22, java.lang.String r23, java.lang.String r24) {
/*
Method dump skipped, instructions count: 280
To view this dump add '--comments-level debug' option
*/
throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.<init>(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, net.sf.scuba.data.Gender, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String):void");
}
public MRZInfo(InputStream inputStream, int i2) {
try {
readObject(inputStream, i2);
} catch (IOException e2) {
Logger logger = LOGGER;
StringBuilder sb = new StringBuilder("Exception: ");
sb.append(e2.getMessage());
logger.severe(sb.toString());
throw new IllegalArgumentException(e2.getMessage());
}
}
public MRZInfo(String str) {
if (str == null) {
throw new IllegalArgumentException("Null string");
}
String replace = str.trim().replace("\n", "");
try {
readObject(new ByteArrayInputStream(replace.getBytes("UTF-8")), replace.length());
int i2 = j + 9;
i = i2 % 128;
if (i2 % 2 == 0) {
throw null;
}
} catch (UnsupportedEncodingException e2) {
Logger logger = LOGGER;
StringBuilder sb = new StringBuilder("Exception: ");
sb.append(e2.getMessage());
logger.severe(sb.toString());
throw new IllegalStateException(e2.getMessage());
} catch (IOException e3) {
Logger logger2 = LOGGER;
StringBuilder sb2 = new StringBuilder("Exception: ");
sb2.append(e3.getMessage());
logger2.severe(sb2.toString());
throw new IllegalArgumentException(e3.getMessage());
} catch (Exception e4) {
throw e4;
}
}
/* JADX WARN: Code restructure failed: missing block: B:45:0x01d2, code lost:
if ((!r4) != false) goto L45;
*/
/* JADX WARN: Code restructure failed: missing block: B:46:0x01e6, code lost:
r4 = 1;
*/
/* JADX WARN: Code restructure failed: missing block: B:84:0x01e8, code lost:
r4 = 0;
*/
/* JADX WARN: Code restructure failed: missing block: B:86:0x01e4, code lost:
if (r4 != false) goto L44;
*/
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
private static void f(short r19, byte r20, int r21, int r22, int r23, java.lang.Object[] r24) {
/*
Method dump skipped, instructions count: 809
To view this dump add '--comments-level debug' option
*/
throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.f(short, byte, int, int, int, java.lang.Object[]):void");
}
/* JADX WARN: Removed duplicated region for block: B:10:0x0054 */
/* JADX WARN: Removed duplicated region for block: B:16:0x00f4 */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
private void readObject(java.io.InputStream r5, int r6) throws java.io.IOException {
/*
Method dump skipped, instructions count: 354
To view this dump add '--comments-level debug' option
*/
throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.readObject(java.io.InputStream, int):void");
}
@Override // org.jmrtd.lds.AbstractLDSInfo
public void writeObject(OutputStream outputStream) throws IOException {
int i2 = 2 % 2;
DataOutputStream dataOutputStream = new DataOutputStream(outputStream);
writeDocumentType(dataOutputStream);
if (this.documentType != 1) {
writeIssuingState(dataOutputStream);
writeName(dataOutputStream, 39);
writeString(this.documentNumber, dataOutputStream, 9);
dataOutputStream.write(this.documentNumberCheckDigit);
writeNationality(dataOutputStream);
writeDateOfBirth(dataOutputStream);
dataOutputStream.write(this.dateOfBirthCheckDigit);
writeGender(dataOutputStream);
writeDateOfExpiry(dataOutputStream);
dataOutputStream.write(this.dateOfExpiryCheckDigit);
writeString(this.optionalData1, dataOutputStream, 15);
dataOutputStream.write(this.compositeCheckDigit);
return;
}
int i3 = i + 31;
j = i3 % 128;
int i4 = i3 % 2;
writeIssuingState(dataOutputStream);
if (this.documentNumber.length() > 9) {
int i5 = i + 43;
j = i5 % 128;
if (i5 % 2 != 0) {
equalsModuloFillerChars(this.optionalData1, "");
Object obj = null;
obj.hashCode();
throw null;
}
if (equalsModuloFillerChars(this.optionalData1, "")) {
writeString(this.documentNumber.substring(0, 9), dataOutputStream, 9);
dataOutputStream.write(60);
StringBuilder sb = new StringBuilder();
String str = this.documentNumber;
sb.append(str.substring(9, str.length()));
sb.append(this.documentNumberCheckDigit);
sb.append(UrlTreeKt.configurablePathSegmentPrefix);
writeString(sb.toString(), dataOutputStream, 15);
writeDateOfBirth(dataOutputStream);
dataOutputStream.write(this.dateOfBirthCheckDigit);
writeGender(dataOutputStream);
writeDateOfExpiry(dataOutputStream);
dataOutputStream.write(this.dateOfExpiryCheckDigit);
writeNationality(dataOutputStream);
writeString(this.optionalData2, dataOutputStream, 11);
dataOutputStream.write(this.compositeCheckDigit);
writeName(dataOutputStream, 30);
}
}
writeString(this.documentNumber, dataOutputStream, 9);
dataOutputStream.write(this.documentNumberCheckDigit);
writeString(this.optionalData1, dataOutputStream, 15);
writeDateOfBirth(dataOutputStream);
dataOutputStream.write(this.dateOfBirthCheckDigit);
writeGender(dataOutputStream);
writeDateOfExpiry(dataOutputStream);
dataOutputStream.write(this.dateOfExpiryCheckDigit);
writeNationality(dataOutputStream);
writeString(this.optionalData2, dataOutputStream, 11);
dataOutputStream.write(this.compositeCheckDigit);
writeName(dataOutputStream, 30);
}
public void setDateOfBirth(String str) {
int i2 = 2 % 2;
int i3 = j + 11;
i = i3 % 128;
if (i3 % 2 != 0) {
this.dateOfBirth = str;
checkDigit();
} else {
this.dateOfBirth = str;
checkDigit();
throw null;
}
}
public void setDateOfExpiry(String str) {
int i2 = 2 % 2;
int i3 = i + 29;
j = i3 % 128;
if (i3 % 2 == 0) {
this.dateOfExpiry = str;
checkDigit();
} else {
this.dateOfExpiry = str;
checkDigit();
int i4 = 55 / 0;
}
}
public void setDocumentNumber(String str) {
int i2 = 2 % 2;
int i3 = j + 113;
i = i3 % 128;
int i4 = i3 % 2;
this.documentNumber = str.trim();
checkDigit();
int i5 = i + 37;
j = i5 % 128;
int i6 = i5 % 2;
}
/* JADX WARN: Code restructure failed: missing block: B:10:0x0028, code lost:
r3.optionalData2 = "";
*/
/* JADX WARN: Code restructure failed: missing block: B:12:0x0022, code lost:
if (r4 == 1) goto L9;
*/
/* JADX WARN: Code restructure failed: missing block: B:4:0x0016, code lost:
if (r4 == 0) goto L9;
*/
/* JADX WARN: Code restructure failed: missing block: B:9:0x0026, code lost:
if (r3.optionalData2 != null) goto L12;
*/
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public void setDocumentCode(java.lang.String r4) {
/*
r3 = this;
r0 = 2
int r1 = r0 % r0
int r1 = org.jmrtd.lds.icao.MRZInfo.i
int r1 = r1 + 3
int r2 = r1 % 128
org.jmrtd.lds.icao.MRZInfo.j = r2
int r1 = r1 % r0
if (r1 == 0) goto L19
r3.documentCode = r4
int r4 = getDocumentTypeFromDocumentCode(r4)
r3.documentType = r4
if (r4 != 0) goto L2c
goto L24
L19:
r3.documentCode = r4
int r4 = getDocumentTypeFromDocumentCode(r4)
r3.documentType = r4
r1 = 1
if (r4 != r1) goto L2c
L24:
java.lang.String r4 = r3.optionalData2
if (r4 != 0) goto L2c
java.lang.String r4 = ""
r3.optionalData2 = r4
L2c:
int r4 = org.jmrtd.lds.icao.MRZInfo.j
int r4 = r4 + 95
int r1 = r4 % 128
org.jmrtd.lds.icao.MRZInfo.i = r1
int r4 = r4 % r0
return
*/
throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.setDocumentCode(java.lang.String):void");
}
public void setIssuingState(String str) {
int i2 = 2 % 2;
int i3 = i + 23;
j = i3 % 128;
int i4 = i3 % 2;
this.issuingState = str;
checkDigit();
int i5 = i + 107;
j = i5 % 128;
int i6 = i5 % 2;
}
public void setPrimaryIdentifier(String str) {
int i2 = 2 % 2;
int i3 = i + 115;
j = i3 % 128;
int i4 = i3 % 2;
this.primaryIdentifier = str.trim();
checkDigit();
int i5 = j + 45;
i = i5 % 128;
if (i5 % 2 == 0) {
throw null;
}
}
public String[] getSecondaryIdentifierComponents() {
int i2 = 2 % 2;
int i3 = j + 71;
i = i3 % 128;
int i4 = i3 % 2;
String[] split = this.secondaryIdentifier.split(" |<");
int i5 = j + 71;
i = i5 % 128;
if (i5 % 2 != 0) {
return split;
}
throw null;
}
public void setSecondaryIdentifierComponents(String[] strArr) {
int i2 = 2 % 2;
if (strArr == null) {
int i3 = j + 51;
i = i3 % 128;
int i4 = i3 % 2;
this.secondaryIdentifier = null;
} else {
int i5 = i + 13;
j = i5 % 128;
int i6 = i5 % 2;
int i7 = 0;
while (i7 < strArr.length) {
String str = strArr[i7];
int length = strArr.length;
i7++;
int i8 = j + 77;
i = i8 % 128;
if (i8 % 2 == 0) {
int i9 = 3 % 4;
}
}
}
checkDigit();
}
public void setSecondaryIdentifiers(String str) {
int i2 = 2 % 2;
int i3 = j + 5;
i = i3 % 128;
int i4 = i3 % 2;
readSecondaryIdentifiers(str.trim());
checkDigit();
int i5 = i + 7;
j = i5 % 128;
int i6 = i5 % 2;
}
public void setNationality(String str) {
int i2 = 2 % 2;
int i3 = i + 53;
j = i3 % 128;
int i4 = i3 % 2;
this.nationality = str;
checkDigit();
int i5 = i + 33;
j = i5 % 128;
if (i5 % 2 == 0) {
return;
}
Object obj = null;
obj.hashCode();
throw null;
}
public String getPersonalNumber() {
int i2 = 2 % 2;
int i3 = j + 121;
i = i3 % 128;
if (i3 % 2 != 0 ? this.optionalData1.length() > 14 : this.optionalData1.length() > 16) {
String trimFillerChars = trimFillerChars(this.optionalData1.substring(0, 14));
int i4 = j + 101;
i = i4 % 128;
int i5 = i4 % 2;
return trimFillerChars;
}
return trimFillerChars(this.optionalData1);
}
public void setPersonalNumber(String str) {
int i2 = 2 % 2;
if (str != null) {
int i3 = i + 45;
j = i3 % 128;
int i4 = i3 % 2;
if (str.length() <= 14) {
StringBuilder sb = new StringBuilder();
sb.append(mrzFormat(str, 14));
sb.append(checkDigit(str, true));
this.optionalData1 = sb.toString();
int i5 = j + 11;
i = i5 % 128;
int i6 = i5 % 2;
return;
}
}
throw new IllegalArgumentException("Wrong personal number");
}
public void setOptionalData2(String str) {
int i2 = 2 % 2;
int i3 = i + 73;
j = i3 % 128;
int i4 = i3 % 2;
this.optionalData2 = trimFillerChars(str);
checkDigit();
int i5 = i + 29;
j = i5 % 128;
if (i5 % 2 == 0) {
return;
}
Object obj = null;
obj.hashCode();
throw null;
}
public void setGender(Gender gender) {
int i2 = 2 % 2;
int i3 = i + 29;
j = i3 % 128;
int i4 = i3 % 2;
this.gender = gender;
checkDigit();
int i5 = j + 31;
i = i5 % 128;
if (i5 % 2 != 0) {
return;
}
Object obj = null;
obj.hashCode();
throw null;
}
public String toString() {
int i2 = 2 % 2;
try {
String str = new String(getEncoded(), "UTF-8");
int length = str.length();
if (length == 88) {
StringBuilder sb = new StringBuilder();
sb.append(str.substring(0, 44));
sb.append("\n");
sb.append(str.substring(44, 88));
sb.append("\n");
String obj = sb.toString();
int i3 = i + 111;
j = i3 % 128;
int i4 = i3 % 2;
return obj;
}
if (length != 90) {
int i5 = i + 109;
j = i5 % 128;
int i6 = i5 % 2;
return str;
}
StringBuilder sb2 = new StringBuilder();
sb2.append(str.substring(0, 30));
sb2.append("\n");
sb2.append(str.substring(30, 60));
sb2.append("\n");
sb2.append(str.substring(60, 90));
sb2.append("\n");
return sb2.toString();
} catch (UnsupportedEncodingException e2) {
Logger logger = LOGGER;
StringBuilder sb3 = new StringBuilder("Exception: ");
sb3.append(e2.getMessage());
logger.severe(sb3.toString());
throw new IllegalStateException(e2.getMessage());
}
}
public int hashCode() {
int i2 = 2 % 2;
int i3 = j + 57;
i = i3 % 128;
int i4 = i3 % 2;
int hashCode = (toString().hashCode() << 1) + 53;
int i5 = j + 19;
i = i5 % 128;
if (i5 % 2 != 0) {
return hashCode;
}
Object obj = null;
obj.hashCode();
throw null;
}
/* JADX WARN: Code restructure failed: missing block: B:28:0x0076, code lost:
if (r7.nationality != null) goto L40;
*/
/* JADX WARN: Code restructure failed: missing block: B:44:0x00f5, code lost:
if (r7.gender != null) goto L76;
*/
/* JADX WARN: Code restructure failed: missing block: B:74:0x00d9, code lost:
if (r2.equals(r7.dateOfBirth) != false) goto L72;
*/
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public boolean equals(java.lang.Object r7) {
/*
Method dump skipped, instructions count: 296
To view this dump add '--comments-level debug' option
*/
throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.equals(java.lang.Object):boolean");
}
public static char checkDigit(String str) {
int i2 = 2 % 2;
int i3 = i + 29;
j = i3 % 128;
int i4 = i3 % 2;
char checkDigit = checkDigit(str, false);
int i5 = j + 123;
i = i5 % 128;
if (i5 % 2 != 0) {
return checkDigit;
}
throw null;
}
private void readNameIdentifiers(String str) {
int i2 = 2 % 2;
int indexOf = str.indexOf("<<");
if (indexOf < 0) {
throw new IllegalArgumentException("Input does not contain primary identifier!");
}
int i3 = j + 77;
i = i3 % 128;
int i4 = i3 % 2;
this.primaryIdentifier = trimFillerChars(str.substring(0, indexOf));
readSecondaryIdentifiers(str.substring(str.indexOf("<<") + 2));
int i5 = i + 109;
j = i5 % 128;
if (i5 % 2 == 0) {
return;
}
Object obj = null;
obj.hashCode();
throw null;
}
private void writeString(String str, DataOutputStream dataOutputStream, int i2) throws IOException {
int i3 = 2 % 2;
int i4 = j + 63;
i = i4 % 128;
int i5 = i4 % 2;
dataOutputStream.write(mrzFormat(str, i2).getBytes("UTF-8"));
int i6 = i + 9;
j = i6 % 128;
int i7 = i6 % 2;
}
private void writeIssuingState(DataOutputStream dataOutputStream) throws IOException {
int i2 = 2 % 2;
int i3 = i + 77;
j = i3 % 128;
if (i3 % 2 != 0) {
dataOutputStream.write(this.issuingState.getBytes("UTF-8"));
int i4 = 41 / 0;
} else {
dataOutputStream.write(this.issuingState.getBytes("UTF-8"));
}
int i5 = i + 55;
j = i5 % 128;
int i6 = i5 % 2;
}
private void writeDateOfExpiry(DataOutputStream dataOutputStream) throws IOException {
int i2 = 2 % 2;
int i3 = j + 13;
i = i3 % 128;
if (i3 % 2 == 0) {
dataOutputStream.write(this.dateOfExpiry.getBytes("UTF-8"));
throw null;
}
dataOutputStream.write(this.dateOfExpiry.getBytes("UTF-8"));
int i4 = j + 119;
i = i4 % 128;
int i5 = i4 % 2;
}
private void writeGender(DataOutputStream dataOutputStream) throws IOException {
int i2 = 2 % 2;
int i3 = j + 93;
i = i3 % 128;
int i4 = i3 % 2;
dataOutputStream.write(genderToString().getBytes("UTF-8"));
int i5 = i + 101;
j = i5 % 128;
int i6 = i5 % 2;
}
private void writeDateOfBirth(DataOutputStream dataOutputStream) throws IOException {
int i2 = 2 % 2;
int i3 = i + 11;
j = i3 % 128;
int i4 = i3 % 2;
dataOutputStream.write(this.dateOfBirth.getBytes("UTF-8"));
int i5 = j + 117;
i = i5 % 128;
int i6 = i5 % 2;
}
private void writeNationality(DataOutputStream dataOutputStream) throws IOException {
int i2 = 2 % 2;
int i3 = j + 41;
i = i3 % 128;
if (i3 % 2 != 0) {
dataOutputStream.write(this.nationality.getBytes("UTF-8"));
} else {
dataOutputStream.write(this.nationality.getBytes("UTF-8"));
int i4 = 10 / 0;
}
}
private void writeName(DataOutputStream dataOutputStream, int i2) throws IOException {
int i3 = 2 % 2;
int i4 = j + 123;
i = i4 % 128;
int i5 = i4 % 2;
dataOutputStream.write(nameToString(i2).getBytes("UTF-8"));
int i6 = j + 97;
i = i6 % 128;
if (i6 % 2 == 0) {
int i7 = 97 / 0;
}
}
private void writeDocumentType(DataOutputStream dataOutputStream) throws IOException {
int i2 = 2 % 2;
int i3 = i + 99;
j = i3 % 128;
int i4 = i3 % 2;
writeString(this.documentCode, dataOutputStream, 2);
int i5 = i + 17;
j = i5 % 128;
int i6 = i5 % 2;
}
/* JADX INFO: Access modifiers changed from: package-private */
/* renamed from: org.jmrtd.lds.icao.MRZInfo$1, reason: invalid class name */
/* loaded from: classes6.dex */
public static /* synthetic */ class AnonymousClass1 {
static final int[] $SwitchMap$net$sf$scuba$data$Gender;
static {
int[] iArr = new int[Gender.values().length];
$SwitchMap$net$sf$scuba$data$Gender = iArr;
try {
iArr[Gender.MALE.ordinal()] = 1;
} catch (NoSuchFieldError unused) {
}
try {
$SwitchMap$net$sf$scuba$data$Gender[Gender.FEMALE.ordinal()] = 2;
} catch (NoSuchFieldError unused2) {
}
}
}
private String genderToString() {
int i2 = 2 % 2;
int i3 = AnonymousClass1.$SwitchMap$net$sf$scuba$data$Gender[this.gender.ordinal()];
if (i3 == 1) {
return "M";
}
int i4 = j + 77;
int i5 = i4 % 128;
i = i5;
if (i4 % 2 == 0) {
if (i3 != 3) {
return UrlTreeKt.configurablePathSegmentPrefix;
}
} else if (i3 != 2) {
return UrlTreeKt.configurablePathSegmentPrefix;
}
int i6 = i5 + 49;
j = i6 % 128;
int i7 = i6 % 2;
return "F";
}
private String nameToString(int i2) {
int i3 = 2 % 2;
String[] split = this.primaryIdentifier.split(" |<");
String[] split2 = this.secondaryIdentifier.split(" |<");
StringBuffer stringBuffer = new StringBuffer();
int i4 = 0;
while (i4 < split.length) {
int i5 = i + 103;
j = i5 % 128;
int i6 = i5 % 2;
stringBuffer.append(split[i4]);
stringBuffer.append(UrlTreeKt.configurablePathSegmentPrefixChar);
i4++;
int i7 = i + 63;
j = i7 % 128;
if (i7 % 2 != 0) {
int i8 = 4 % 4;
}
}
for (String str : split2) {
int i9 = j + 125;
i = i9 % 128;
int i10 = i9 % 2;
stringBuffer.append(UrlTreeKt.configurablePathSegmentPrefixChar);
stringBuffer.append(str);
}
return mrzFormat(stringBuffer.toString(), i2);
}
private String readString(DataInputStream dataInputStream, int i2) throws IOException {
int i3 = 2 % 2;
byte[] bArr = new byte[i2];
dataInputStream.readFully(bArr);
String trim = new String(bArr).trim();
int i4 = j + 73;
i = i4 % 128;
int i5 = i4 % 2;
return trim;
}
private String readStringWithFillers(DataInputStream dataInputStream, int i2) throws IOException {
int i3 = 2 % 2;
int i4 = i + 17;
j = i4 % 128;
int i5 = i4 % 2;
String trimFillerChars = trimFillerChars(readString(dataInputStream, i2));
int i6 = i + 43;
j = i6 % 128;
int i7 = i6 % 2;
return trimFillerChars;
}
private String readCountry(DataInputStream dataInputStream) throws IOException {
int i2 = 2 % 2;
int i3 = i + 3;
j = i3 % 128;
return i3 % 2 != 0 ? readString(dataInputStream, 2) : readString(dataInputStream, 3);
}
/* JADX ERROR: JadxRuntimeException in pass: IfRegionVisitor
jadx.core.utils.exceptions.JadxRuntimeException: Can't remove SSA var: r5v15 java.lang.String, still in use, count: 2, list:
(r5v15 java.lang.String) from 0x0015: INVOKE (r5v15 java.lang.String), ("M") VIRTUAL call: java.lang.String.equalsIgnoreCase(java.lang.String):boolean A[MD:(java.lang.String):boolean (c), WRAPPED] (LINE:815)
(r5v15 java.lang.String) from 0x003a: PHI (r5v7 java.lang.String) = (r5v1 java.lang.String), (r5v15 java.lang.String) binds: [B:25:0x0025, B:4:0x0019] A[DONT_GENERATE, DONT_INLINE]
at jadx.core.utils.InsnRemover.removeSsaVar(InsnRemover.java:151)
at jadx.core.utils.InsnRemover.unbindResult(InsnRemover.java:116)
at jadx.core.dex.visitors.regions.TernaryMod.makeTernaryInsn(TernaryMod.java:114)
at jadx.core.dex.visitors.regions.TernaryMod.processRegion(TernaryMod.java:62)
at jadx.core.dex.visitors.regions.TernaryMod.enterRegion(TernaryMod.java:45)
at jadx.core.dex.visitors.regions.DepthRegionTraversal.traverseInternal(DepthRegionTraversal.java:67)
at jadx.core.dex.visitors.regions.DepthRegionTraversal.lambda$traverseInternal$0(DepthRegionTraversal.java:68)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1597)
at jadx.core.dex.visitors.regions.DepthRegionTraversal.traverseInternal(DepthRegionTraversal.java:68)
at jadx.core.dex.visitors.regions.DepthRegionTraversal.traverse(DepthRegionTraversal.java:19)
at jadx.core.dex.visitors.regions.TernaryMod.process(TernaryMod.java:35)
at jadx.core.dex.visitors.regions.IfRegionVisitor.process(IfRegionVisitor.java:34)
at jadx.core.dex.visitors.regions.IfRegionVisitor.visit(IfRegionVisitor.java:30)
*/
private net.sf.scuba.data.Gender readGender(java.io.DataInputStream r5) throws java.io.IOException {
/*
r4 = this;
r0 = 2
int r1 = r0 % r0
int r1 = org.jmrtd.lds.icao.MRZInfo.j
int r1 = r1 + 95
int r2 = r1 % 128
org.jmrtd.lds.icao.MRZInfo.i = r2
int r1 = r1 % r0
java.lang.String r2 = "M"
r3 = 0
if (r1 != 0) goto L1c
java.lang.String r5 = r4.readString(r5, r3)
boolean r1 = r5.equalsIgnoreCase(r2)
if (r1 == 0) goto L3a
goto L27
L1c:
r1 = 1
java.lang.String r5 = r4.readString(r5, r1)
boolean r1 = r5.equalsIgnoreCase(r2)
if (r1 == 0) goto L3a
L27:
int r5 = org.jmrtd.lds.icao.MRZInfo.i
int r5 = r5 + 21
int r1 = r5 % 128
org.jmrtd.lds.icao.MRZInfo.j = r1
int r5 = r5 % r0
if (r5 == 0) goto L37
net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.MALE
r0 = 6
int r0 = r0 / r3
return r5
L37:
net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.MALE
return r5
L3a:
java.lang.String r1 = "F"
boolean r5 = r5.equalsIgnoreCase(r1)
r1 = 0
if (r5 == 0) goto L57
int r5 = org.jmrtd.lds.icao.MRZInfo.i
int r5 = r5 + 53
int r2 = r5 % 128
org.jmrtd.lds.icao.MRZInfo.j = r2
int r5 = r5 % r0
if (r5 != 0) goto L51
net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.FEMALE
return r5
L51:
net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.FEMALE
r1.hashCode()
throw r1
L57:
net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.UNKNOWN
int r2 = org.jmrtd.lds.icao.MRZInfo.i
int r2 = r2 + 83
int r3 = r2 % 128
org.jmrtd.lds.icao.MRZInfo.j = r3
int r2 = r2 % r0
if (r2 != 0) goto L65
return r5
L65:
throw r1
*/
throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.readGender(java.io.DataInputStream):net.sf.scuba.data.Gender");
}
private String readDateOfBirth(DataInputStream dataInputStream) throws IOException, NumberFormatException {
int i2 = 2 % 2;
int i3 = i + 91;
j = i3 % 128;
int i4 = i3 % 2;
String readString = readString(dataInputStream, 6);
int i5 = j + 119;
i = i5 % 128;
if (i5 % 2 != 0) {
return readString;
}
throw null;
}
private String readDateOfExpiry(DataInputStream dataInputStream) throws IOException, NumberFormatException {
int i2 = 2 % 2;
int i3 = j + 5;
i = i3 % 128;
String readString = readString(dataInputStream, i3 % 2 == 0 ? 112 : 6);
int i4 = j + 95;
i = i4 % 128;
if (i4 % 2 != 0) {
return readString;
}
throw null;
}
private static String mrzFormat(String str, int i2) {
int i3 = 2 % 2;
if (str == null) {
throw new IllegalArgumentException("Attempting to MRZ format null");
}
if (str.length() > i2) {
StringBuilder sb = new StringBuilder("Argument too wide (");
sb.append(str.length());
sb.append(" > ");
sb.append(i2);
sb.append(")");
throw new IllegalArgumentException(sb.toString());
}
String trim = str.toUpperCase().trim();
StringBuffer stringBuffer = new StringBuffer();
for (int i4 = 0; i4 < trim.length(); i4++) {
int i5 = i + 5;
j = i5 % 128;
int i6 = i5 % 2;
char charAt = trim.charAt(i4);
if (MRZ_CHARS.indexOf(charAt) == -1) {
stringBuffer.append(UrlTreeKt.configurablePathSegmentPrefixChar);
} else {
stringBuffer.append(charAt);
}
}
while (stringBuffer.length() < i2) {
int i7 = j + 73;
i = i7 % 128;
int i8 = i7 % 2;
stringBuffer.append(UrlTreeKt.configurablePathSegmentPrefix);
}
return stringBuffer.toString();
}
public static boolean equalsModuloFillerChars(String str, String str2) {
int i2 = 2 % 2;
int i3 = i;
int i4 = i3 + 21;
int i5 = i4 % 128;
j = i5;
int i6 = i4 % 2;
if (str == str2) {
int i7 = i5 + 55;
i = i7 % 128;
return i7 % 2 != 0;
}
if (str == null) {
int i8 = i3 + 51;
j = i8 % 128;
if (i8 % 2 != 0) {
int i9 = 4 % 2;
}
str = "";
}
if (str2 == null) {
str2 = "";
}
int max = Math.max(str.length(), str2.length());
return mrzFormat(str, max).equals(mrzFormat(str2, max));
}
/* JADX WARN: Code restructure failed: missing block: B:16:0x004b, code lost:
if (r5.startsWith("I") == false) goto L21;
*/
/* JADX WARN: Code restructure failed: missing block: B:18:0x005a, code lost:
if (r5.startsWith("V") == false) goto L25;
*/
/* JADX WARN: Code restructure failed: missing block: B:19:0x005c, code lost:
r5 = org.jmrtd.lds.icao.MRZInfo.i + 19;
org.jmrtd.lds.icao.MRZInfo.j = r5 % 128;
r5 = r5 % 2;
*/
/* JADX WARN: Code restructure failed: missing block: B:20:0x0065, code lost:
return 1;
*/
/* JADX WARN: Code restructure failed: missing block: B:23:0x006d, code lost:
if ((!r5.startsWith("P")) == false) goto L28;
*/
/* JADX WARN: Code restructure failed: missing block: B:24:0x006f, code lost:
return 0;
*/
/* JADX WARN: Code restructure failed: missing block: B:25:0x0070, code lost:
return 3;
*/
/* JADX WARN: Code restructure failed: missing block: B:27:0x0052, code lost:
if (r5.startsWith("I") != true) goto L21;
*/
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
private static int getDocumentTypeFromDocumentCode(java.lang.String r5) {
/*
r0 = 2
int r1 = r0 % r0
if (r5 == 0) goto L7b
int r1 = r5.length()
if (r1 <= 0) goto L7b
int r1 = org.jmrtd.lds.icao.MRZInfo.j
int r1 = r1 + 23
int r2 = r1 % 128
org.jmrtd.lds.icao.MRZInfo.i = r2
int r1 = r1 % r0
int r1 = r5.length()
if (r1 > r0) goto L7b
int r1 = org.jmrtd.lds.icao.MRZInfo.i
int r1 = r1 + 113
int r2 = r1 % 128
org.jmrtd.lds.icao.MRZInfo.j = r2
int r1 = r1 % r0
java.lang.String r2 = "A"
if (r1 != 0) goto L73
boolean r1 = r5.startsWith(r2)
r2 = 1
if (r1 != 0) goto L72
java.lang.String r1 = "C"
boolean r1 = r5.startsWith(r1)
if (r1 != 0) goto L72
int r1 = org.jmrtd.lds.icao.MRZInfo.j
int r1 = r1 + 119
int r3 = r1 % 128
org.jmrtd.lds.icao.MRZInfo.i = r3
int r1 = r1 % r0
r3 = 0
java.lang.String r4 = "I"
if (r1 != 0) goto L4e
boolean r1 = r5.startsWith(r4)
r4 = 19
int r4 = r4 / r3
if (r1 != 0) goto L72
goto L54
L4e:
boolean r1 = r5.startsWith(r4)
if (r1 == r2) goto L72
L54:
java.lang.String r1 = "V"
boolean r1 = r5.startsWith(r1)
if (r1 == 0) goto L66
int r5 = org.jmrtd.lds.icao.MRZInfo.i
int r5 = r5 + 19
int r1 = r5 % 128
org.jmrtd.lds.icao.MRZInfo.j = r1
int r5 = r5 % r0
return r2
L66:
java.lang.String r0 = "P"
boolean r5 = r5.startsWith(r0)
r5 = r5 ^ r2
if (r5 == 0) goto L70
return r3
L70:
r5 = 3
return r5
L72:
return r2
L73:
r5.startsWith(r2)
r5 = 0
r5.hashCode()
throw r5
L7b:
java.lang.IllegalArgumentException r0 = new java.lang.IllegalArgumentException
java.lang.String r1 = "Was expecting 1 or 2 digit document code, got "
java.lang.String r5 = java.lang.String.valueOf(r5)
java.lang.String r5 = r1.concat(r5)
r0.<init>(r5)
throw r0
*/
throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.getDocumentTypeFromDocumentCode(java.lang.String):int");
}
private static String trimFillerChars(String str) {
byte[] bytes;
int i2;
int i3 = 2 % 2;
int i4 = j + 119;
i = i4 % 128;
if (i4 % 2 == 0) {
bytes = str.trim().getBytes();
i2 = 1;
} else {
bytes = str.trim().getBytes();
i2 = 0;
}
int i5 = i + 7;
j = i5 % 128;
int i6 = i5 % 2;
while (i2 < bytes.length) {
if (bytes[i2] == 60) {
int i7 = i + 125;
j = i7 % 128;
int i8 = i7 % 2;
bytes[i2] = 32;
}
i2++;
}
return new String(bytes).trim();
}
private void checkDigit() {
int i2 = 2 % 2;
int i3 = j + 71;
i = i3 % 128;
int i4 = i3 % 2;
this.documentNumberCheckDigit = checkDigit(this.documentNumber);
this.dateOfBirthCheckDigit = checkDigit(this.dateOfBirth);
this.dateOfExpiryCheckDigit = checkDigit(this.dateOfExpiry);
if (this.optionalData1.length() < 15) {
String mrzFormat = mrzFormat(this.optionalData1, 14);
char checkDigit = checkDigit(mrzFormat(this.optionalData1, 14), true);
StringBuilder sb = new StringBuilder();
sb.append(mrzFormat);
sb.append(checkDigit);
this.optionalData1 = sb.toString();
}
StringBuffer stringBuffer = new StringBuffer();
if (this.documentType == 1) {
stringBuffer.append(this.documentNumber);
stringBuffer.append(this.documentNumberCheckDigit);
stringBuffer.append(mrzFormat(this.optionalData1, 15));
stringBuffer.append(this.dateOfBirth);
stringBuffer.append(this.dateOfBirthCheckDigit);
stringBuffer.append(this.dateOfExpiry);
stringBuffer.append(this.dateOfExpiryCheckDigit);
stringBuffer.append(mrzFormat(this.optionalData2, 11));
int i5 = j + 23;
i = i5 % 128;
if (i5 % 2 == 0) {
int i6 = 5 / 3;
}
} else {
stringBuffer.append(this.documentNumber);
stringBuffer.append(this.documentNumberCheckDigit);
stringBuffer.append(this.dateOfBirth);
stringBuffer.append(this.dateOfBirthCheckDigit);
stringBuffer.append(this.dateOfExpiry);
stringBuffer.append(this.dateOfExpiryCheckDigit);
stringBuffer.append(mrzFormat(this.optionalData1, 15));
}
this.compositeCheckDigit = checkDigit(stringBuffer.toString());
}
private static char checkDigit(String str, boolean z) {
byte[] bytes;
int i2 = 2 % 2;
try {
if (str == null) {
bytes = new byte[0];
int i3 = i + 23;
j = i3 % 128;
int i4 = i3 % 2;
} else {
bytes = str.getBytes("UTF-8");
}
int[] iArr = {7, 3, 1};
int i5 = 0;
int i6 = 0;
while (i5 < bytes.length) {
int i7 = i + 121;
j = i7 % 128;
if (i7 % 2 != 0) {
i6 = (i6 >> (iArr[i5 * 4] * decodeMRZDigit(bytes[i5]))) >>> 71;
i5 += 29;
} else {
i6 = (i6 + (iArr[i5 % 3] * decodeMRZDigit(bytes[i5]))) % 10;
i5++;
}
}
String num = Integer.toString(i6);
if (num.length() != 1) {
throw new IllegalStateException("Error in computing check digit.");
}
char c2 = (char) num.getBytes("UTF-8")[0];
return (z && c2 == '0') ? UrlTreeKt.configurablePathSegmentPrefixChar : c2;
} catch (UnsupportedEncodingException e2) {
Logger logger = LOGGER;
StringBuilder sb = new StringBuilder("Exception: ");
sb.append(e2.getMessage());
logger.severe(sb.toString());
throw new IllegalStateException("Error in computing check digit.");
} catch (NumberFormatException e3) {
Logger logger2 = LOGGER;
StringBuilder sb2 = new StringBuilder("Exception: ");
sb2.append(e3.getMessage());
logger2.severe(sb2.toString());
throw new IllegalStateException("Error in computing check digit.");
} catch (Exception e4) {
Logger logger3 = LOGGER;
StringBuilder sb3 = new StringBuilder("Exception: ");
sb3.append(e4.getMessage());
logger3.severe(sb3.toString());
throw new IllegalArgumentException(e4.toString());
}
}
private static int decodeMRZDigit(byte b2) throws NumberFormatException {
int i2 = 2 % 2;
int i3 = i + 59;
int i4 = i3 % 128;
j = i4;
if (i3 % 2 != 0) {
if (b2 == 68) {
return 0;
}
} else if (b2 == 60) {
return 0;
}
int i5 = i4 + 37;
int i6 = i5 % 128;
i = i6;
int i7 = i5 % 2;
switch (b2) {
case 48:
return 0;
case 49:
return 1;
case 50:
return 2;
case 51:
return 3;
case 52:
return 4;
case 53:
return 5;
case 54:
return 6;
case 55:
return 7;
case 56:
return 8;
case 57:
return 9;
default:
switch (b2) {
case 65:
return 10;
case 66:
return 11;
case 67:
return 12;
case 68:
return 13;
case 69:
return 14;
case 70:
break;
case 71:
return 16;
case 72:
return 17;
case 73:
return 18;
case 74:
return 19;
case 75:
return 20;
case 76:
return 21;
case 77:
return 22;
case 78:
return 23;
case 79:
return 24;
case 80:
return 25;
case 81:
return 26;
case 82:
return 27;
case 83:
return 28;
case 84:
return 29;
case 85:
return 30;
case 86:
return 31;
case 87:
return 32;
case 88:
return 33;
case 89:
return 34;
case 90:
return 35;
default:
switch (b2) {
case 97:
return 10;
case 98:
return 11;
case 99:
return 12;
case 100:
return 13;
case 101:
return 14;
case 102:
break;
case 103:
return 16;
case 104:
return 17;
case 105:
return 18;
case 106:
return 19;
case 107:
return 20;
case 108:
return 21;
case 109:
return 22;
case 110:
return 23;
case 111:
return 24;
case 112:
return 25;
case 113:
return 26;
case 114:
return 27;
case 115:
return 28;
case 116:
return 29;
case 117:
return 30;
case 118:
return 31;
case 119:
return 32;
case 120:
return 33;
case 121:
return 34;
case 122:
return 35;
default:
StringBuilder sb = new StringBuilder("Could not decode MRZ character ");
sb.append((int) b2);
sb.append(" ('");
sb.append(Character.toString((char) b2));
sb.append("')");
throw new NumberFormatException(sb.toString());
}
}
int i8 = i6 + 47;
j = i8 % 128;
if (i8 % 2 == 0) {
return 15;
}
Object obj = null;
obj.hashCode();
throw null;
}
}
static void a() {
a = 1632603122;
d = 1406017149;
e = 384434584;
c = new byte[]{-119, Ascii.SUB, -19, 29};
}
public String getSecondaryIdentifier() {
int i2 = 2 % 2;
int i3 = i;
int i4 = i3 + 25;
j = i4 % 128;
if (i4 % 2 != 0) {
throw null;
}
String str = this.secondaryIdentifier;
int i5 = i3 + 3;
j = i5 % 128;
int i6 = i5 % 2;
return str;
}
public String getPrimaryIdentifier() {
int i2 = 2 % 2;
int i3 = i + 113;
j = i3 % 128;
if (i3 % 2 == 0) {
return this.primaryIdentifier;
}
Object obj = null;
obj.hashCode();
throw null;
}
public String getOptionalData2() {
int i2 = 2 % 2;
int i3 = i + 69;
int i4 = i3 % 128;
j = i4;
int i5 = i3 % 2;
String str = this.optionalData2;
int i6 = i4 + 65;
i = i6 % 128;
if (i6 % 2 == 0) {
int i7 = 44 / 0;
}
return str;
}
public String getOptionalData1() {
int i2 = 2 % 2;
int i3 = i + 91;
int i4 = i3 % 128;
j = i4;
Object obj = null;
if (i3 % 2 != 0) {
obj.hashCode();
throw null;
}
String str = this.optionalData1;
int i5 = i4 + 103;
i = i5 % 128;
if (i5 % 2 != 0) {
return str;
}
obj.hashCode();
throw null;
}
public String getNationality() {
int i2 = 2 % 2;
int i3 = i;
int i4 = i3 + 39;
j = i4 % 128;
int i5 = i4 % 2;
String str = this.nationality;
int i6 = i3 + 75;
j = i6 % 128;
if (i6 % 2 == 0) {
return str;
}
throw null;
}
public String getIssuingState() {
int i2 = 2 % 2;
int i3 = j + 83;
int i4 = i3 % 128;
i = i4;
int i5 = i3 % 2;
String str = this.issuingState;
int i6 = i4 + 55;
j = i6 % 128;
int i7 = i6 % 2;
return str;
}
public Gender getGender() {
int i2 = 2 % 2;
int i3 = j + 61;
int i4 = i3 % 128;
i = i4;
if (i3 % 2 == 0) {
throw null;
}
Gender gender = this.gender;
int i5 = i4 + 89;
j = i5 % 128;
if (i5 % 2 != 0) {
int i6 = 27 / 0;
}
return gender;
}
public int getDocumentType() {
int i2 = 2 % 2;
int i3 = i + 53;
int i4 = i3 % 128;
j = i4;
Object obj = null;
if (i3 % 2 != 0) {
throw null;
}
int i5 = this.documentType;
int i6 = i4 + 95;
i = i6 % 128;
if (i6 % 2 != 0) {
return i5;
}
obj.hashCode();
throw null;
}
public String getDocumentNumber() {
int i2 = 2 % 2;
int i3 = i + 107;
int i4 = i3 % 128;
j = i4;
if (i3 % 2 != 0) {
throw null;
}
String str = this.documentNumber;
int i5 = i4 + 105;
i = i5 % 128;
if (i5 % 2 == 0) {
int i6 = 40 / 0;
}
return str;
}
public String getDocumentCode() {
int i2 = 2 % 2;
int i3 = j + 93;
int i4 = i3 % 128;
i = i4;
if (i3 % 2 == 0) {
throw null;
}
String str = this.documentCode;
int i5 = i4 + 105;
j = i5 % 128;
int i6 = i5 % 2;
return str;
}
public String getDateOfExpiry() {
int i2 = 2 % 2;
int i3 = j;
int i4 = i3 + 1;
i = i4 % 128;
int i5 = i4 % 2;
String str = this.dateOfExpiry;
int i6 = i3 + 115;
i = i6 % 128;
int i7 = i6 % 2;
return str;
}
public String getDateOfBirth() {
int i2 = 2 % 2;
int i3 = i;
int i4 = i3 + 27;
j = i4 % 128;
int i5 = i4 % 2;
String str = this.dateOfBirth;
int i6 = i3 + 101;
j = i6 % 128;
int i7 = i6 % 2;
return str;
}
private void readSecondaryIdentifiers(String str) {
int i2 = 2 % 2;
int i3 = i;
int i4 = i3 + 85;
j = i4 % 128;
int i5 = i4 % 2;
this.secondaryIdentifier = str;
if (i5 != 0) {
Object obj = null;
obj.hashCode();
throw null;
}
int i6 = i3 + 17;
j = i6 % 128;
int i7 = i6 % 2;
}
}