HighLevelEncoder.smali
.class public final Lcom/google/zxing/aztec/encoder/HighLevelEncoder;
.super Ljava/lang/Object;
.source "HighLevelEncoder.java"
# static fields
.field private static final CHAR_MAP:[[I
.field static final LATCH_TABLE:[[I
.field static final MODE_DIGIT:I = 0x2
.field static final MODE_LOWER:I = 0x1
.field static final MODE_MIXED:I = 0x3
.field static final MODE_NAMES:[Ljava/lang/String;
.field static final MODE_PUNCT:I = 0x4
.field static final MODE_UPPER:I
.field static final SHIFT_TABLE:[[I
# instance fields
.field private final text:[B
# direct methods
.method static constructor <clinit>()V
.registers 13
.line 43
const-class v0, I
const-string v1, "UPPER"
const-string v2, "LOWER"
const-string v3, "DIGIT"
const-string v4, "MIXED"
const-string v5, "PUNCT"
filled-new-array {v1, v2, v3, v4, v5}, [Ljava/lang/String;
move-result-object v1
sput-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->MODE_NAMES:[Ljava/lang/String;
.line 56
const/4 v1, 0x5
new-array v2, v1, [[I
new-array v3, v1, [I
fill-array-data v3, :array_10c
const/4 v4, 0x0
aput-object v3, v2, v4
new-array v3, v1, [I
fill-array-data v3, :array_11a
const/4 v5, 0x1
aput-object v3, v2, v5
new-array v3, v1, [I
fill-array-data v3, :array_128
const/4 v6, 0x2
aput-object v3, v2, v6
new-array v3, v1, [I
fill-array-data v3, :array_136
const/4 v7, 0x3
aput-object v3, v2, v7
new-array v1, v1, [I
fill-array-data v1, :array_144
const/4 v3, 0x4
aput-object v1, v2, v3
sput-object v2, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->LATCH_TABLE:[[I
.line 97
new-array v1, v6, [I
fill-array-data v1, :array_152
invoke-static {v0, v1}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object;
move-result-object v1
check-cast v1, [[I
.line 99
sput-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v1, v1, v4
const/16 v2, 0x20
aput v5, v1, v2
.line 100
const/16 v1, 0x41
.local v1, "c":I
:goto_54
const/16 v8, 0x5a
if-gt v1, v8, :cond_64
.line 101
sget-object v8, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v8, v8, v4
add-int/lit8 v9, v1, -0x41
add-int/2addr v9, v6
aput v9, v8, v1
.line 100
add-int/lit8 v1, v1, 0x1
goto :goto_54
.line 103
.end local v1 # "c":I
:cond_64
sget-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v1, v1, v5
aput v5, v1, v2
.line 104
const/16 v1, 0x61
.restart local v1 # "c":I
:goto_6c
const/16 v8, 0x7a
if-gt v1, v8, :cond_7c
.line 105
sget-object v8, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v8, v8, v5
add-int/lit8 v9, v1, -0x61
add-int/2addr v9, v6
aput v9, v8, v1
.line 104
add-int/lit8 v1, v1, 0x1
goto :goto_6c
.line 107
.end local v1 # "c":I
:cond_7c
sget-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v1, v1, v6
aput v5, v1, v2
.line 108
const/16 v1, 0x30
.restart local v1 # "c":I
:goto_84
const/16 v2, 0x39
if-gt v1, v2, :cond_94
.line 109
sget-object v2, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v2, v2, v6
add-int/lit8 v8, v1, -0x30
add-int/2addr v8, v6
aput v8, v2, v1
.line 108
add-int/lit8 v1, v1, 0x1
goto :goto_84
.line 111
.end local v1 # "c":I
:cond_94
sget-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v2, v1, v6
const/16 v8, 0x2c
const/16 v9, 0xc
aput v9, v2, v8
.line 112
aget-object v1, v1, v6
const/16 v2, 0x2e
const/16 v8, 0xd
aput v8, v1, v2
.line 113
const/16 v1, 0x1c
new-array v2, v1, [I
fill-array-data v2, :array_15a
.line 118
.local v2, "mixedTable":[I
const/4 v8, 0x0
.local v8, "i":I
:goto_ae
if-ge v8, v1, :cond_bb
.line 119
sget-object v9, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v9, v9, v7
aget v10, v2, v8
aput v8, v9, v10
.line 118
add-int/lit8 v8, v8, 0x1
goto :goto_ae
.line 121
.end local v8 # "i":I
:cond_bb
const/16 v8, 0x1f
new-array v9, v8, [I
fill-array-data v9, :array_196
.line 126
.local v9, "punctTable":[I
const/4 v10, 0x0
.local v10, "i":I
:goto_c3
if-ge v10, v8, :cond_d4
.line 127
aget v11, v9, v10
if-lez v11, :cond_d1
.line 128
sget-object v11, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v11, v11, v3
aget v12, v9, v10
aput v10, v11, v12
.line 126
:cond_d1
add-int/lit8 v10, v10, 0x1
goto :goto_c3
.line 135
.end local v2 # "mixedTable":[I
.end local v9 # "punctTable":[I
.end local v10 # "i":I
:cond_d4
new-array v2, v6, [I
fill-array-data v2, :array_1d8
invoke-static {v0, v2}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object;
move-result-object v0
check-cast v0, [[I
.line 137
sput-object v0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->SHIFT_TABLE:[[I
array-length v2, v0
const/4 v8, 0x0
:goto_e3
if-ge v8, v2, :cond_ee
aget-object v9, v0, v8
.line 138
const/4 v10, -0x1
invoke-static {v9, v10}, Ljava/util/Arrays;->fill([II)V
.line 137
add-int/lit8 v8, v8, 0x1
goto :goto_e3
.line 140
:cond_ee
sget-object v0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->SHIFT_TABLE:[[I
aget-object v2, v0, v4
aput v4, v2, v3
.line 142
aget-object v2, v0, v5
aput v4, v2, v3
.line 143
aget-object v2, v0, v5
aput v1, v2, v4
.line 145
aget-object v1, v0, v7
aput v4, v1, v3
.line 147
aget-object v1, v0, v6
aput v4, v1, v3
.line 148
aget-object v0, v0, v6
const/16 v1, 0xf
aput v1, v0, v4
.line 149
return-void
nop
:array_10c
.array-data 4
0x0
0x5001c
0x5001e
0x5001d
0xa03be
.end array-data
:array_11a
.array-data 4
0x901ee
0x0
0x5001e
0x5001d
0xa03be
.end array-data
:array_128
.array-data 4
0x4000e
0x901dc
0x0
0x901dd
0xe3bbe
.end array-data
:array_136
.array-data 4
0x5001d
0x5001c
0xa03be
0x0
0x5001e
.end array-data
:array_144
.array-data 4
0x5001f
0xa03fc
0xa03fe
0xa03fd
0x0
.end array-data
:array_152
.array-data 4
0x5
0x100
.end array-data
:array_15a
.array-data 4
0x0
0x20
0x1
0x2
0x3
0x4
0x5
0x6
0x7
0x8
0x9
0xa
0xb
0xc
0xd
0x1b
0x1c
0x1d
0x1e
0x1f
0x40
0x5c
0x5e
0x5f
0x60
0x7c
0x7e
0x7f
.end array-data
:array_196
.array-data 4
0x0
0xd
0x0
0x0
0x0
0x0
0x21
0x27
0x23
0x24
0x25
0x26
0x27
0x28
0x29
0x2a
0x2b
0x2c
0x2d
0x2e
0x2f
0x3a
0x3b
0x3c
0x3d
0x3e
0x3f
0x5b
0x5d
0x7b
0x7d
.end array-data
:array_1d8
.array-data 4
0x6
0x6
.end array-data
.end method
.method public constructor <init>([B)V
.registers 2
.param p1, "text" # [B
.line 153
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 154
iput-object p1, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->text:[B
.line 155
return-void
.end method
.method private static simplifyStates(Ljava/lang/Iterable;)Ljava/util/Collection;
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Iterable<",
"Lcom/google/zxing/aztec/encoder/State;",
">;)",
"Ljava/util/Collection<",
"Lcom/google/zxing/aztec/encoder/State;",
">;"
}
.end annotation
.line 287
.local p0, "states":Ljava/lang/Iterable;, "Ljava/lang/Iterable<Lcom/google/zxing/aztec/encoder/State;>;"
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 288
.local v0, "result":Ljava/util/List;, "Ljava/util/List<Lcom/google/zxing/aztec/encoder/State;>;"
invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v1
const/4 v2, 0x0
:goto_a
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_40
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/zxing/aztec/encoder/State;
.line 289
.local v3, "newState":Lcom/google/zxing/aztec/encoder/State;
const/4 v4, 0x1
.line 290
.local v4, "add":Z
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v5
.local v5, "iterator":Ljava/util/Iterator;, "Ljava/util/Iterator<Lcom/google/zxing/aztec/encoder/State;>;"
:goto_1b
invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z
move-result v6
if-eqz v6, :cond_3a
.line 291
invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v6
check-cast v6, Lcom/google/zxing/aztec/encoder/State;
.line 292
.local v2, "oldState":Lcom/google/zxing/aztec/encoder/State;
move-object v2, v6
invoke-virtual {v6, v3}, Lcom/google/zxing/aztec/encoder/State;->isBetterThanOrEqualTo(Lcom/google/zxing/aztec/encoder/State;)Z
move-result v6
if-eqz v6, :cond_30
.line 293
const/4 v4, 0x0
.line 294
goto :goto_3a
.line 296
:cond_30
invoke-virtual {v3, v2}, Lcom/google/zxing/aztec/encoder/State;->isBetterThanOrEqualTo(Lcom/google/zxing/aztec/encoder/State;)Z
move-result v6
if-eqz v6, :cond_39
.line 297
invoke-interface {v5}, Ljava/util/Iterator;->remove()V
.line 299
.end local v2 # "oldState":Lcom/google/zxing/aztec/encoder/State;
:cond_39
goto :goto_1b
.line 300
.end local v5 # "iterator":Ljava/util/Iterator;, "Ljava/util/Iterator<Lcom/google/zxing/aztec/encoder/State;>;"
:cond_3a
:goto_3a
if-eqz v4, :cond_3f
.line 301
invoke-interface {v0, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 303
.end local v3 # "newState":Lcom/google/zxing/aztec/encoder/State;
.end local v4 # "add":Z
:cond_3f
goto :goto_a
.line 304
:cond_40
return-object v0
.end method
.method private updateStateForChar(Lcom/google/zxing/aztec/encoder/State;ILjava/util/Collection;)V
.registers 11
.param p1, "state" # Lcom/google/zxing/aztec/encoder/State;
.param p2, "index" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/zxing/aztec/encoder/State;",
"I",
"Ljava/util/Collection<",
"Lcom/google/zxing/aztec/encoder/State;",
">;)V"
}
.end annotation
.line 217
.local p3, "result":Ljava/util/Collection;, "Ljava/util/Collection<Lcom/google/zxing/aztec/encoder/State;>;"
iget-object v0, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->text:[B
aget-byte v0, v0, p2
and-int/lit16 v0, v0, 0xff
int-to-char v0, v0
.line 218
.local v0, "ch":C
sget-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v2
aget-object v1, v1, v2
aget v1, v1, v0
const/4 v2, 0x0
if-lez v1, :cond_16
const/4 v1, 0x1
goto :goto_17
:cond_16
const/4 v1, 0x0
.line 219
.local v1, "charInCurrentTable":Z
:goto_17
const/4 v3, 0x0
.line 220
.local v3, "stateNoBinary":Lcom/google/zxing/aztec/encoder/State;
const/4 v4, 0x0
.local v4, "mode":I
:goto_19
const/4 v5, 0x4
if-gt v4, v5, :cond_55
.line 221
sget-object v5, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
aget-object v5, v5, v4
aget v5, v5, v0
.line 222
.local v2, "charInMode":I
move v2, v5
if-lez v5, :cond_52
.line 223
if-nez v3, :cond_2b
.line 225
invoke-virtual {p1, p2}, Lcom/google/zxing/aztec/encoder/State;->endBinaryShift(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object v3
.line 228
:cond_2b
if-eqz v1, :cond_36
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v5
if-eq v4, v5, :cond_36
const/4 v5, 0x2
if-ne v4, v5, :cond_3d
.line 233
:cond_36
invoke-virtual {v3, v4, v2}, Lcom/google/zxing/aztec/encoder/State;->latchAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v5
.line 234
.local v5, "latchState":Lcom/google/zxing/aztec/encoder/State;
invoke-interface {p3, v5}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 237
.end local v5 # "latchState":Lcom/google/zxing/aztec/encoder/State;
:cond_3d
if-nez v1, :cond_52
sget-object v5, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->SHIFT_TABLE:[[I
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v6
aget-object v5, v5, v6
aget v5, v5, v4
if-ltz v5, :cond_52
.line 240
invoke-virtual {v3, v4, v2}, Lcom/google/zxing/aztec/encoder/State;->shiftAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v5
.line 241
.local v5, "shiftState":Lcom/google/zxing/aztec/encoder/State;
invoke-interface {p3, v5}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 220
.end local v2 # "charInMode":I
.end local v5 # "shiftState":Lcom/google/zxing/aztec/encoder/State;
:cond_52
add-int/lit8 v4, v4, 0x1
goto :goto_19
.line 245
.end local v4 # "mode":I
:cond_55
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getBinaryShiftByteCount()I
move-result v2
if-gtz v2, :cond_67
sget-object v2, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v4
aget-object v2, v2, v4
aget v2, v2, v0
if-nez v2, :cond_6e
.line 249
:cond_67
invoke-virtual {p1, p2}, Lcom/google/zxing/aztec/encoder/State;->addBinaryShiftChar(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object v2
.line 250
.local v2, "binaryState":Lcom/google/zxing/aztec/encoder/State;
invoke-interface {p3, v2}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 252
.end local v2 # "binaryState":Lcom/google/zxing/aztec/encoder/State;
:cond_6e
return-void
.end method
.method private static updateStateForPair(Lcom/google/zxing/aztec/encoder/State;IILjava/util/Collection;)V
.registers 8
.param p0, "state" # Lcom/google/zxing/aztec/encoder/State;
.param p1, "index" # I
.param p2, "pairCode" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/zxing/aztec/encoder/State;",
"II",
"Ljava/util/Collection<",
"Lcom/google/zxing/aztec/encoder/State;",
">;)V"
}
.end annotation
.line 263
.local p3, "result":Ljava/util/Collection;, "Ljava/util/Collection<Lcom/google/zxing/aztec/encoder/State;>;"
invoke-virtual {p0, p1}, Lcom/google/zxing/aztec/encoder/State;->endBinaryShift(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object v0
.line 265
.local v0, "stateNoBinary":Lcom/google/zxing/aztec/encoder/State;
const/4 v1, 0x4
invoke-virtual {v0, v1, p2}, Lcom/google/zxing/aztec/encoder/State;->latchAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v2
invoke-interface {p3, v2}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 266
invoke-virtual {p0}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v2
if-eq v2, v1, :cond_19
.line 269
invoke-virtual {v0, v1, p2}, Lcom/google/zxing/aztec/encoder/State;->shiftAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v2
invoke-interface {p3, v2}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 271
:cond_19
const/4 v2, 0x3
if-eq p2, v2, :cond_1e
if-ne p2, v1, :cond_2d
.line 273
:cond_1e
rsub-int/lit8 v1, p2, 0x10
.line 274
const/4 v2, 0x2
invoke-virtual {v0, v2, v1}, Lcom/google/zxing/aztec/encoder/State;->latchAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v1
.line 275
const/4 v3, 0x1
invoke-virtual {v1, v2, v3}, Lcom/google/zxing/aztec/encoder/State;->latchAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v1
.line 276
.local v1, "digitState":Lcom/google/zxing/aztec/encoder/State;
invoke-interface {p3, v1}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 278
.end local v1 # "digitState":Lcom/google/zxing/aztec/encoder/State;
:cond_2d
invoke-virtual {p0}, Lcom/google/zxing/aztec/encoder/State;->getBinaryShiftByteCount()I
move-result v1
if-lez v1, :cond_40
.line 281
invoke-virtual {p0, p1}, Lcom/google/zxing/aztec/encoder/State;->addBinaryShiftChar(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object v1
add-int/lit8 v2, p1, 0x1
invoke-virtual {v1, v2}, Lcom/google/zxing/aztec/encoder/State;->addBinaryShiftChar(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object v1
.line 282
.local v1, "binaryState":Lcom/google/zxing/aztec/encoder/State;
invoke-interface {p3, v1}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 284
.end local v1 # "binaryState":Lcom/google/zxing/aztec/encoder/State;
:cond_40
return-void
.end method
.method private updateStateListForChar(Ljava/lang/Iterable;I)Ljava/util/Collection;
.registers 6
.param p2, "index" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Iterable<",
"Lcom/google/zxing/aztec/encoder/State;",
">;I)",
"Ljava/util/Collection<",
"Lcom/google/zxing/aztec/encoder/State;",
">;"
}
.end annotation
.line 206
.local p1, "states":Ljava/lang/Iterable;, "Ljava/lang/Iterable<Lcom/google/zxing/aztec/encoder/State;>;"
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 207
.local v0, "result":Ljava/util/Collection;, "Ljava/util/Collection<Lcom/google/zxing/aztec/encoder/State;>;"
invoke-interface {p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_9
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_19
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/google/zxing/aztec/encoder/State;
.line 208
.local v2, "state":Lcom/google/zxing/aztec/encoder/State;
invoke-direct {p0, v2, p2, v0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->updateStateForChar(Lcom/google/zxing/aztec/encoder/State;ILjava/util/Collection;)V
.line 209
.end local v2 # "state":Lcom/google/zxing/aztec/encoder/State;
goto :goto_9
.line 210
:cond_19
invoke-static {v0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->simplifyStates(Ljava/lang/Iterable;)Ljava/util/Collection;
move-result-object v1
return-object v1
.end method
.method private static updateStateListForPair(Ljava/lang/Iterable;II)Ljava/util/Collection;
.registers 6
.param p1, "index" # I
.param p2, "pairCode" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Iterable<",
"Lcom/google/zxing/aztec/encoder/State;",
">;II)",
"Ljava/util/Collection<",
"Lcom/google/zxing/aztec/encoder/State;",
">;"
}
.end annotation
.line 255
.local p0, "states":Ljava/lang/Iterable;, "Ljava/lang/Iterable<Lcom/google/zxing/aztec/encoder/State;>;"
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 256
.local v0, "result":Ljava/util/Collection;, "Ljava/util/Collection<Lcom/google/zxing/aztec/encoder/State;>;"
invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_9
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_19
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/google/zxing/aztec/encoder/State;
.line 257
invoke-static {v2, p1, p2, v0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->updateStateForPair(Lcom/google/zxing/aztec/encoder/State;IILjava/util/Collection;)V
.line 258
goto :goto_9
.line 259
:cond_19
invoke-static {v0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->simplifyStates(Ljava/lang/Iterable;)Ljava/util/Collection;
move-result-object v1
return-object v1
.end method
# virtual methods
.method public encode()Lcom/google/zxing/common/BitArray;
.registers 9
.line 161
sget-object v0, Lcom/google/zxing/aztec/encoder/State;->INITIAL_STATE:Lcom/google/zxing/aztec/encoder/State;
invoke-static {v0}, Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List;
move-result-object v0
.line 162
const/4 v1, 0x0
const/4 v2, 0x0
:goto_8
iget-object v3, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->text:[B
array-length v4, v3
if-ge v2, v4, :cond_57
.line 164
add-int/lit8 v4, v2, 0x1
array-length v5, v3
if-ge v4, v5, :cond_15
aget-byte v3, v3, v4
goto :goto_16
:cond_15
const/4 v3, 0x0
.line 165
:goto_16
iget-object v5, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->text:[B
aget-byte v5, v5, v2
const/16 v6, 0xd
if-eq v5, v6, :cond_40
const/16 v6, 0x2c
const/16 v7, 0x20
if-eq v5, v6, :cond_3a
const/16 v6, 0x2e
if-eq v5, v6, :cond_34
const/16 v6, 0x3a
if-eq v5, v6, :cond_2e
.line 179
const/4 v3, 0x0
goto :goto_48
.line 176
:cond_2e
if-ne v3, v7, :cond_32
const/4 v3, 0x5
goto :goto_33
:cond_32
const/4 v3, 0x0
.line 177
:goto_33
goto :goto_48
.line 170
:cond_34
if-ne v3, v7, :cond_38
const/4 v3, 0x3
goto :goto_39
:cond_38
const/4 v3, 0x0
.line 171
:goto_39
goto :goto_48
.line 173
:cond_3a
if-ne v3, v7, :cond_3e
const/4 v3, 0x4
goto :goto_3f
:cond_3e
const/4 v3, 0x0
.line 174
:goto_3f
goto :goto_48
.line 167
:cond_40
const/16 v5, 0xa
if-ne v3, v5, :cond_46
const/4 v3, 0x2
goto :goto_47
:cond_46
const/4 v3, 0x0
.line 168
:goto_47
nop
.line 181
:goto_48
if-lez v3, :cond_50
.line 184
invoke-static {v0, v2, v3}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->updateStateListForPair(Ljava/lang/Iterable;II)Ljava/util/Collection;
move-result-object v0
.line 185
move v2, v4
goto :goto_54
.line 188
:cond_50
invoke-direct {p0, v0, v2}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->updateStateListForChar(Ljava/lang/Iterable;I)Ljava/util/Collection;
move-result-object v0
.line 162
:goto_54
add-int/lit8 v2, v2, 0x1
goto :goto_8
.line 192
:cond_57
new-instance v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder$1;
invoke-direct {v1, p0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder$1;-><init>(Lcom/google/zxing/aztec/encoder/HighLevelEncoder;)V
invoke-static {v0, v1}, Ljava/util/Collections;->min(Ljava/util/Collection;Ljava/util/Comparator;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/zxing/aztec/encoder/State;
.line 199
iget-object v1, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->text:[B
invoke-virtual {v0, v1}, Lcom/google/zxing/aztec/encoder/State;->toBitArray([B)Lcom/google/zxing/common/BitArray;
move-result-object v0
return-object v0
.end method