--- /home/fdroid/fdroiddata/tmp/t20kdc.offlinepuzzlesolver_4.apk +++ /home/fdroid/fdroiddata/tmp/sigcp_t20kdc.offlinepuzzlesolver_4.apk ├── /usr/lib/android-sdk/build-tools/debian/apksigner verify --verbose --print-certs {} │┄ error from `/usr/lib/android-sdk/build-tools/debian/apksigner verify --verbose --print-certs {}` (b): │┄ DOES NOT VERIFY │┄ ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. CHUNKED_SHA256 digest mismatch. Expected: <21312bd717fba6929c0b19606e415c28243f404b71490c5e8e9e9cbcbbdc020c>, actual: │┄ ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. VERITY_CHUNKED_SHA256 digest mismatch. Expected: <862452e4c7ffb4bdf6a4307e8e820fe11fefa123015389678c9d521fd0ea1c60cb17010000000000>, actual: <7cc185bf5c8c66319d5b8f26d6a134f5b101d7fcfaf12add8d06327c5c29b1bccb17010000000000> │ @@ -1,16 +0,0 @@ │ -Verifies │ -Verified using v1 scheme (JAR signing): true │ -Verified using v2 scheme (APK Signature Scheme v2): true │ -Verified using v3 scheme (APK Signature Scheme v3): true │ -Verified using v4 scheme (APK Signature Scheme v4): false │ -Verified for SourceStamp: false │ -Number of signers: 1 │ -Signer #1 certificate DN: CN=FDroid, OU=FDroid, O=fdroid.org, L=ORG, ST=ORG, C=UK │ -Signer #1 certificate SHA-256 digest: 1cc0744341964a9556478d700dcf47803d874343b8aa06e12833bd1e0b550a59 │ -Signer #1 certificate SHA-1 digest: df95491a6ed0d19071b49bc650e380d64e9dabd9 │ -Signer #1 certificate MD5 digest: 03dbb3b803862bdd33f13c8cb3c03f7d │ -Signer #1 key algorithm: RSA │ -Signer #1 key size (bits): 2048 │ -Signer #1 public key SHA-256 digest: 047007c615a05e973bfdda5fdb47569d7056c7fbdb8c32cdfeadc860ae1f9857 │ -Signer #1 public key SHA-1 digest: 22d5ba35d24b5867d24f889152f44886c3341931 │ -Signer #1 public key MD5 digest: a13519dba6965e73352af57590c95c70 ├── zipinfo {} │ @@ -16,14 +16,14 @@ │ -rw---- 0.0 fat 2692 b- defN 81-Jan-01 01:01 res/layout-v17/activity_net_guard_challenge.xml │ -rw---- 0.0 fat 559 b- defN 81-Jan-01 01:01 assets/rnq.html │ -rw---- 0.0 fat 1113 b- defN 81-Jan-01 01:01 assets/credits.html │ -rw---- 0.0 fat 3060 b- defN 81-Jan-01 01:01 res/layout-v17/activity_n_cups.xml │ -rw---- 0.0 fat 3012 b- defN 81-Jan-01 01:01 res/layout/activity_n_cups.xml │ -rw---- 0.0 fat 516 b- defN 81-Jan-01 01:01 res/menu/menu_main.xml │ -rw---- 0.0 fat 5912 b- stor 81-Jan-01 01:01 resources.arsc │ --rw---- 0.0 fat 48136 b- defN 81-Jan-01 01:01 classes.dex │ +-rw---- 0.0 fat 48184 b- defN 81-Jan-01 01:01 classes.dex │ -rw---- 0.0 fat 992 b- defN 81-Jan-01 01:01 assets/rnc.html │ -rw---- 0.0 fat 2148 b- defN 81-Jan-01 01:01 res/layout/activity_n_queens.xml │ -rw---- 2.0 fat 2075 b- defN 81-Jan-01 01:01 META-INF/FCB5A7AC.SF │ -rw---- 2.0 fat 1336 b- defN 81-Jan-01 01:01 META-INF/FCB5A7AC.RSA │ -rw---- 2.0 fat 1967 b- defN 81-Jan-01 01:01 META-INF/MANIFEST.MF │ -27 files, 122335 bytes uncompressed, 67521 bytes compressed: 44.8% │ +27 files, 122383 bytes uncompressed, 67545 bytes compressed: 44.8% ├── classes.dex │ ├── dexdump -a -d -f -h {} │ │┄ Ignoring differences in offsets to keep diff size reasonable. │ │ @@ -1,36 +1,36 @@ │ │ DEX version '035' │ │ DEX file header: │ │ magic : 'dex\n035\0' │ │ -checksum : 761cd5c0 │ │ -signature : 57c2...93bb │ │ -file_size : 48136 │ │ +checksum : 3a23e89d │ │ +signature : 9407...7e61 │ │ +file_size : 48184 │ │ header_size : 112 │ │ link_size : 0 │ │ link_off : 0 (0x000000) │ │ -string_ids_size : 739 │ │ +string_ids_size : 741 │ │ string_ids_off : 112 (0x000070) │ │ type_ids_size : 136 │ │ -type_ids_off : 3068 (0x000bfc) │ │ +type_ids_off : 3076 (0x000c04) │ │ proto_ids_size : 142 │ │ -proto_ids_off : 3612 (0x000e1c) │ │ +proto_ids_off : 3620 (0x000e24) │ │ field_ids_size : 159 │ │ -field_ids_off : 5316 (0x0014c4) │ │ +field_ids_off : 5324 (0x0014cc) │ │ method_ids_size : 370 │ │ -method_ids_off : 6588 (0x0019bc) │ │ +method_ids_off : 6596 (0x0019c4) │ │ class_defs_size : 56 │ │ -class_defs_off : 9548 (0x00254c) │ │ -data_size : 36796 │ │ -data_off : 11340 (0x002c4c) │ │ +class_defs_off : 9556 (0x002554) │ │ +data_size : 36836 │ │ +data_off : 11348 (0x002c54) │ │ │ │ Class #0 header: │ │ class_idx : 69 │ │ access_flags : 17 (0x0011) │ │ superclass_idx : 45 │ │ -source_file_idx : 128 │ │ +source_file_idx : 130 │ │ static_fields_size : 0 │ │ instance_fields_size: 4 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #0 annotations: │ │ Annotations on class │ │ @@ -75,21 +75,21 @@ │ │ type : '(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 5 │ │ ins : 5 │ │ outs : 1 │ │ insns size : 12 16-bit code units │ │ -002c4c: |[002c4c] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder$CostFT.:(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V │ │ -002c5c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -002c62: 5b01 0400 |0003: iput-object v1, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.from:Ljava/lang/Object; // field@0004 │ │ -002c66: 5b02 0600 |0005: iput-object v2, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ -002c6a: 5903 0700 |0007: iput v3, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.totalCost:I // field@0007 │ │ -002c6e: 5b04 0500 |0009: iput-object v4, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.link:Ljava/lang/Object; // field@0005 │ │ -002c72: 0e00 |000b: return-void │ │ +002c54: |[002c54] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder$CostFT.:(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V │ │ +002c64: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +002c6a: 5b01 0400 |0003: iput-object v1, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.from:Ljava/lang/Object; // field@0004 │ │ +002c6e: 5b02 0600 |0005: iput-object v2, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ +002c72: 5903 0700 |0007: iput v3, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.totalCost:I // field@0007 │ │ +002c76: 5b04 0500 |0009: iput-object v4, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.link:Ljava/lang/Object; // field@0005 │ │ +002c7a: 0e00 |000b: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=143 │ │ 0x0003 line=144 │ │ 0x0005 line=145 │ │ 0x0007 line=146 │ │ 0x0009 line=147 │ │ @@ -97,21 +97,21 @@ │ │ 0x0000 - 0x000c reg=0 this Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; │ │ 0x0000 - 0x000c reg=1 (null) Ljava/lang/Object; │ │ 0x0000 - 0x000c reg=2 (null) Ljava/lang/Object; │ │ 0x0000 - 0x000c reg=3 (null) I │ │ 0x0000 - 0x000c reg=4 (null) Ljava/lang/Object; │ │ │ │ Virtual methods - │ │ - source_file_idx : 128 (ComplexPathfinder.java) │ │ + source_file_idx : 130 (ComplexPathfinder.java) │ │ │ │ Class #1 header: │ │ class_idx : 70 │ │ access_flags : 1537 (0x0601) │ │ superclass_idx : 45 │ │ -source_file_idx : 128 │ │ +source_file_idx : 130 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 0 │ │ virtual_methods_size: 2 │ │ │ │ Class #1 annotations: │ │ Annotations on class │ │ @@ -138,21 +138,21 @@ │ │ │ │ #1 : (in Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;) │ │ name : 'isEndpoint' │ │ type : '()Z' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ - source_file_idx : 128 (ComplexPathfinder.java) │ │ + source_file_idx : 130 (ComplexPathfinder.java) │ │ │ │ Class #2 header: │ │ class_idx : 71 │ │ access_flags : 17 (0x0011) │ │ superclass_idx : 45 │ │ -source_file_idx : 128 │ │ +source_file_idx : 130 │ │ static_fields_size : 0 │ │ instance_fields_size: 3 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 4 │ │ │ │ Class #2 annotations: │ │ Annotations on class │ │ @@ -198,26 +198,26 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 25 16-bit code units │ │ -002e8c: |[002e8c] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.:()V │ │ -002e9c: 7010 4900 0100 |0000: invoke-direct {v1}, Ljava/lang/Object;.:()V // method@0049 │ │ -002ea2: 2200 3b00 |0003: new-instance v0, Ljava/util/HashMap; // type@003b │ │ -002ea6: 7010 6b00 0000 |0005: invoke-direct {v0}, Ljava/util/HashMap;.:()V // method@006b │ │ -002eac: 5b10 0800 |0008: iput-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ -002eb0: 2200 3c00 |000a: new-instance v0, Ljava/util/HashSet; // type@003c │ │ -002eb4: 7010 6e00 0000 |000c: invoke-direct {v0}, Ljava/util/HashSet;.:()V // method@006e │ │ -002eba: 5b10 0a00 |000f: iput-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ -002ebe: 2200 3c00 |0011: new-instance v0, Ljava/util/HashSet; // type@003c │ │ -002ec2: 7010 6e00 0000 |0013: invoke-direct {v0}, Ljava/util/HashSet;.:()V // method@006e │ │ -002ec8: 5b10 0900 |0016: iput-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.knownEndpoints:Ljava/util/HashSet; // field@0009 │ │ -002ecc: 0e00 |0018: return-void │ │ +002ea0: |[002ea0] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.:()V │ │ +002eb0: 7010 4900 0100 |0000: invoke-direct {v1}, Ljava/lang/Object;.:()V // method@0049 │ │ +002eb6: 2200 3b00 |0003: new-instance v0, Ljava/util/HashMap; // type@003b │ │ +002eba: 7010 6b00 0000 |0005: invoke-direct {v0}, Ljava/util/HashMap;.:()V // method@006b │ │ +002ec0: 5b10 0800 |0008: iput-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ +002ec4: 2200 3c00 |000a: new-instance v0, Ljava/util/HashSet; // type@003c │ │ +002ec8: 7010 6e00 0000 |000c: invoke-direct {v0}, Ljava/util/HashSet;.:()V // method@006e │ │ +002ece: 5b10 0a00 |000f: iput-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ +002ed2: 2200 3c00 |0011: new-instance v0, Ljava/util/HashSet; // type@003c │ │ +002ed6: 7010 6e00 0000 |0013: invoke-direct {v0}, Ljava/util/HashSet;.:()V // method@006e │ │ +002edc: 5b10 0900 |0016: iput-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.knownEndpoints:Ljava/util/HashSet; // field@0009 │ │ +002ee0: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=12 │ │ 0x0003 line=18 │ │ 0x000a line=22 │ │ 0x0011 line=29 │ │ locals : │ │ @@ -227,72 +227,75 @@ │ │ name : 'tryApplyBacklink' │ │ type : '(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;)Z' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ - insns size : 53 16-bit code units │ │ -002c9c: |[002c9c] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.tryApplyBacklink:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;)Z │ │ -002cac: 5420 0800 |0000: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ -002cb0: 5431 0600 |0002: iget-object v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ -002cb4: 6e20 6c00 1000 |0004: invoke-virtual {v0, v1}, Ljava/util/HashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@006c │ │ -002cba: 0c00 |0007: move-result-object v0 │ │ -002cbc: 1f00 4500 |0008: check-cast v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ -002cc0: 3800 0a00 |000a: if-eqz v0, 0014 // +000a │ │ -002cc4: 5200 0700 |000c: iget v0, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.totalCost:I // field@0007 │ │ -002cc8: 5231 0700 |000e: iget v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.totalCost:I // field@0007 │ │ -002ccc: 3610 0400 |0010: if-gt v0, v1, 0014 // +0004 │ │ -002cd0: 1203 |0012: const/4 v3, #int 0 // #0 │ │ -002cd2: 0f03 |0013: return v3 │ │ -002cd4: 5430 0600 |0014: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ -002cd8: 1f00 4600 |0016: check-cast v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ -002cdc: 7210 9000 0000 |0018: invoke-interface {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;.isEndpoint:()Z // method@0090 │ │ -002ce2: 0a00 |001b: move-result v0 │ │ -002ce4: 3800 0900 |001c: if-eqz v0, 0025 // +0009 │ │ -002ce8: 5420 0900 |001e: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.knownEndpoints:Ljava/util/HashSet; // field@0009 │ │ -002cec: 5431 0600 |0020: iget-object v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ -002cf0: 6e20 6f00 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/HashSet;.add:(Ljava/lang/Object;)Z // method@006f │ │ -002cf6: 5420 0800 |0025: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ -002cfa: 5431 0600 |0027: iget-object v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ -002cfe: 6e30 6d00 1003 |0029: invoke-virtual {v0, v1, v3}, Ljava/util/HashMap;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@006d │ │ -002d04: 5420 0a00 |002c: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ -002d08: 5433 0600 |002e: iget-object v3, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ -002d0c: 6e20 6f00 3000 |0030: invoke-virtual {v0, v3}, Ljava/util/HashSet;.add:(Ljava/lang/Object;)Z // method@006f │ │ -002d12: 1213 |0033: const/4 v3, #int 1 // #1 │ │ -002d14: 0f03 |0034: return v3 │ │ + insns size : 59 16-bit code units │ │ +002ca4: |[002ca4] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.tryApplyBacklink:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;)Z │ │ +002cb4: 5420 0800 |0000: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ +002cb8: 5431 0600 |0002: iget-object v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ +002cbc: 6e20 6c00 1000 |0004: invoke-virtual {v0, v1}, Ljava/util/HashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@006c │ │ +002cc2: 0c00 |0007: move-result-object v0 │ │ +002cc4: 1f00 4500 |0008: check-cast v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ +002cc8: 3800 0a00 |000a: if-eqz v0, 0014 // +000a │ │ +002ccc: 5200 0700 |000c: iget v0, v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.totalCost:I // field@0007 │ │ +002cd0: 5231 0700 |000e: iget v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.totalCost:I // field@0007 │ │ +002cd4: 3610 0400 |0010: if-gt v0, v1, 0014 // +0004 │ │ +002cd8: 1203 |0012: const/4 v3, #int 0 // #0 │ │ +002cda: 0f03 |0013: return v3 │ │ +002cdc: 5430 0600 |0014: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ +002ce0: 1f00 4600 |0016: check-cast v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ +002ce4: 7210 9000 0000 |0018: invoke-interface {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;.isEndpoint:()Z // method@0090 │ │ +002cea: 0a00 |001b: move-result v0 │ │ +002cec: 3800 0b00 |001c: if-eqz v0, 0027 // +000b │ │ +002cf0: 5420 0900 |001e: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.knownEndpoints:Ljava/util/HashSet; // field@0009 │ │ +002cf4: 5431 0600 |0020: iget-object v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ +002cf8: 1f01 4600 |0022: check-cast v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ +002cfc: 6e20 6f00 1000 |0024: invoke-virtual {v0, v1}, Ljava/util/HashSet;.add:(Ljava/lang/Object;)Z // method@006f │ │ +002d02: 5420 0800 |0027: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ +002d06: 5431 0600 |0029: iget-object v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ +002d0a: 1f01 4600 |002b: check-cast v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ +002d0e: 6e30 6d00 1003 |002d: invoke-virtual {v0, v1, v3}, Ljava/util/HashMap;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@006d │ │ +002d14: 5420 0a00 |0030: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ +002d18: 5433 0600 |0032: iget-object v3, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ +002d1c: 1f03 4600 |0034: check-cast v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ +002d20: 6e20 6f00 3000 |0036: invoke-virtual {v0, v3}, Ljava/util/HashSet;.add:(Ljava/lang/Object;)Z // method@006f │ │ +002d26: 1213 |0039: const/4 v3, #int 1 // #1 │ │ +002d28: 0f03 |003a: return v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=50 │ │ 0x000c line=52 │ │ 0x0014 line=54 │ │ 0x001e line=55 │ │ - 0x0025 line=56 │ │ - 0x002c line=57 │ │ + 0x0027 line=56 │ │ + 0x0030 line=57 │ │ locals : │ │ - 0x0000 - 0x0035 reg=2 this Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder; │ │ - 0x0000 - 0x0035 reg=3 (null) Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; │ │ + 0x0000 - 0x003b reg=2 this Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder; │ │ + 0x0000 - 0x003b reg=3 (null) Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;) │ │ name : 'addStart' │ │ type : '(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;ILjava/lang/Object;)Z' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 6 │ │ ins : 4 │ │ outs : 5 │ │ insns size : 11 16-bit code units │ │ -002c74: |[002c74] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.addStart:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;ILjava/lang/Object;)Z │ │ -002c84: 2200 4500 |0000: new-instance v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ -002c88: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -002c8a: 7055 8e00 1043 |0003: invoke-direct {v0, v1, v3, v4, v5}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.:(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V // method@008e │ │ -002c90: 7020 9600 0200 |0006: invoke-direct {v2, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.tryApplyBacklink:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;)Z // method@0096 │ │ -002c96: 0a03 |0009: move-result v3 │ │ -002c98: 0f03 |000a: return v3 │ │ +002c7c: |[002c7c] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.addStart:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;ILjava/lang/Object;)Z │ │ +002c8c: 2200 4500 |0000: new-instance v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ +002c90: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +002c92: 7055 8e00 1043 |0003: invoke-direct {v0, v1, v3, v4, v5}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.:(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V // method@008e │ │ +002c98: 7020 9600 0200 |0006: invoke-direct {v2, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.tryApplyBacklink:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;)Z // method@0096 │ │ +002c9e: 0a03 |0009: move-result v3 │ │ +002ca0: 0f03 |000a: return v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=40 │ │ locals : │ │ 0x0000 - 0x000b reg=2 this Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder; │ │ 0x0000 - 0x000b reg=3 (null) Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; │ │ 0x0000 - 0x000b reg=4 (null) I │ │ @@ -303,40 +306,40 @@ │ │ type : '(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 47 16-bit code units │ │ -002dac: |[002dac] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.checkForPath:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; │ │ -002dbc: 5420 0800 |0000: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ -002dc0: 6e20 6c00 3000 |0002: invoke-virtual {v0, v3}, Ljava/util/HashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@006c │ │ -002dc6: 0c03 |0005: move-result-object v3 │ │ -002dc8: 1f03 4500 |0006: check-cast v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ -002dcc: 3903 0400 |0008: if-nez v3, 000c // +0004 │ │ -002dd0: 1203 |000a: const/4 v3, #int 0 // #0 │ │ -002dd2: 1103 |000b: return-object v3 │ │ -002dd4: 2200 3e00 |000c: new-instance v0, Ljava/util/LinkedList; // type@003e │ │ -002dd8: 7010 7500 0000 |000e: invoke-direct {v0}, Ljava/util/LinkedList;.:()V // method@0075 │ │ -002dde: 3803 1500 |0011: if-eqz v3, 0026 // +0015 │ │ -002de2: 6e20 7700 3000 |0013: invoke-virtual {v0, v3}, Ljava/util/LinkedList;.addFirst:(Ljava/lang/Object;)V // method@0077 │ │ -002de8: 5431 0400 |0016: iget-object v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.from:Ljava/lang/Object; // field@0004 │ │ -002dec: 3901 0300 |0018: if-nez v1, 001b // +0003 │ │ -002df0: 280c |001a: goto 0026 // +000c │ │ -002df2: 5421 0800 |001b: iget-object v1, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ -002df6: 5433 0400 |001d: iget-object v3, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.from:Ljava/lang/Object; // field@0004 │ │ -002dfa: 6e20 6c00 3100 |001f: invoke-virtual {v1, v3}, Ljava/util/HashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@006c │ │ -002e00: 0c03 |0022: move-result-object v3 │ │ -002e02: 1f03 4500 |0023: check-cast v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ -002e06: 28ec |0025: goto 0011 // -0014 │ │ -002e08: 1c03 4500 |0026: const-class v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ -002e0c: 7120 9900 3000 |0028: invoke-static {v0, v3}, Lt20kdc/libofflinepuzzlesolver/genlog/GA;.ofLL:(Ljava/util/LinkedList;Ljava/lang/Class;)[Ljava/lang/Object; // method@0099 │ │ -002e12: 0c03 |002b: move-result-object v3 │ │ -002e14: 1f03 8600 |002c: check-cast v3, [Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0086 │ │ -002e18: 1103 |002e: return-object v3 │ │ +002dc0: |[002dc0] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.checkForPath:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; │ │ +002dd0: 5420 0800 |0000: iget-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ +002dd4: 6e20 6c00 3000 |0002: invoke-virtual {v0, v3}, Ljava/util/HashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@006c │ │ +002dda: 0c03 |0005: move-result-object v3 │ │ +002ddc: 1f03 4500 |0006: check-cast v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ +002de0: 3903 0400 |0008: if-nez v3, 000c // +0004 │ │ +002de4: 1203 |000a: const/4 v3, #int 0 // #0 │ │ +002de6: 1103 |000b: return-object v3 │ │ +002de8: 2200 3e00 |000c: new-instance v0, Ljava/util/LinkedList; // type@003e │ │ +002dec: 7010 7500 0000 |000e: invoke-direct {v0}, Ljava/util/LinkedList;.:()V // method@0075 │ │ +002df2: 3803 1500 |0011: if-eqz v3, 0026 // +0015 │ │ +002df6: 6e20 7700 3000 |0013: invoke-virtual {v0, v3}, Ljava/util/LinkedList;.addFirst:(Ljava/lang/Object;)V // method@0077 │ │ +002dfc: 5431 0400 |0016: iget-object v1, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.from:Ljava/lang/Object; // field@0004 │ │ +002e00: 3901 0300 |0018: if-nez v1, 001b // +0003 │ │ +002e04: 280c |001a: goto 0026 // +000c │ │ +002e06: 5421 0800 |001b: iget-object v1, v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ +002e0a: 5433 0400 |001d: iget-object v3, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.from:Ljava/lang/Object; // field@0004 │ │ +002e0e: 6e20 6c00 3100 |001f: invoke-virtual {v1, v3}, Ljava/util/HashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@006c │ │ +002e14: 0c03 |0022: move-result-object v3 │ │ +002e16: 1f03 4500 |0023: check-cast v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ +002e1a: 28ec |0025: goto 0011 // -0014 │ │ +002e1c: 1c03 4500 |0026: const-class v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ +002e20: 7120 9900 3000 |0028: invoke-static {v0, v3}, Lt20kdc/libofflinepuzzlesolver/genlog/GA;.ofLL:(Ljava/util/LinkedList;Ljava/lang/Class;)[Ljava/lang/Object; // method@0099 │ │ +002e26: 0c03 |002b: move-result-object v3 │ │ +002e28: 1f03 8600 |002c: check-cast v3, [Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0086 │ │ +002e2c: 1103 |002e: return-object v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=86 │ │ 0x000c line=89 │ │ 0x0013 line=91 │ │ 0x0016 line=93 │ │ 0x001b line=95 │ │ @@ -350,50 +353,50 @@ │ │ type : '()I' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 8 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 66 16-bit code units │ │ -002d18: |[002d18] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.iterate:()I │ │ -002d28: 2200 3800 |0000: new-instance v0, Ljava/util/ArrayList; // type@0038 │ │ -002d2c: 5471 0a00 |0002: iget-object v1, v7, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ -002d30: 7020 6700 1000 |0004: invoke-direct {v0, v1}, Ljava/util/ArrayList;.:(Ljava/util/Collection;)V // method@0067 │ │ -002d36: 5471 0a00 |0007: iget-object v1, v7, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ -002d3a: 6e10 7000 0100 |0009: invoke-virtual {v1}, Ljava/util/HashSet;.clear:()V // method@0070 │ │ -002d40: 6e10 6800 0000 |000c: invoke-virtual {v0}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@0068 │ │ -002d46: 0c00 |000f: move-result-object v0 │ │ -002d48: 1201 |0010: const/4 v1, #int 0 // #0 │ │ -002d4a: 1202 |0011: const/4 v2, #int 0 // #0 │ │ -002d4c: 7210 7300 0000 |0012: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@0073 │ │ -002d52: 0a03 |0015: move-result v3 │ │ -002d54: 3803 2b00 |0016: if-eqz v3, 0041 // +002b │ │ -002d58: 7210 7400 0000 |0018: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0074 │ │ -002d5e: 0c03 |001b: move-result-object v3 │ │ -002d60: 1f03 4600 |001c: check-cast v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ -002d64: 5474 0800 |001e: iget-object v4, v7, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ -002d68: 6e20 6c00 3400 |0020: invoke-virtual {v4, v3}, Ljava/util/HashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@006c │ │ -002d6e: 0c03 |0023: move-result-object v3 │ │ -002d70: 1f03 4500 |0024: check-cast v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ -002d74: 5434 0600 |0026: iget-object v4, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ -002d78: 1f04 4600 |0028: check-cast v4, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ -002d7c: 5233 0700 |002a: iget v3, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.totalCost:I // field@0007 │ │ -002d80: 7220 8f00 3400 |002c: invoke-interface {v4, v3}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;.costTo:(I)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // method@008f │ │ -002d86: 0c03 |002f: move-result-object v3 │ │ -002d88: 2134 |0030: array-length v4, v3 │ │ -002d8a: 1205 |0031: const/4 v5, #int 0 // #0 │ │ -002d8c: 3545 e0ff |0032: if-ge v5, v4, 0012 // -0020 │ │ -002d90: 4606 0305 |0034: aget-object v6, v3, v5 │ │ -002d94: 7020 9600 6700 |0036: invoke-direct {v7, v6}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.tryApplyBacklink:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;)Z // method@0096 │ │ -002d9a: 0a06 |0039: move-result v6 │ │ -002d9c: 3806 0400 |003a: if-eqz v6, 003e // +0004 │ │ -002da0: d802 0201 |003c: add-int/lit8 v2, v2, #int 1 // #01 │ │ -002da4: d805 0501 |003e: add-int/lit8 v5, v5, #int 1 // #01 │ │ -002da8: 28f2 |0040: goto 0032 // -000e │ │ -002daa: 0f02 |0041: return v2 │ │ +002d2c: |[002d2c] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.iterate:()I │ │ +002d3c: 2200 3800 |0000: new-instance v0, Ljava/util/ArrayList; // type@0038 │ │ +002d40: 5471 0a00 |0002: iget-object v1, v7, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ +002d44: 7020 6700 1000 |0004: invoke-direct {v0, v1}, Ljava/util/ArrayList;.:(Ljava/util/Collection;)V // method@0067 │ │ +002d4a: 5471 0a00 |0007: iget-object v1, v7, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ +002d4e: 6e10 7000 0100 |0009: invoke-virtual {v1}, Ljava/util/HashSet;.clear:()V // method@0070 │ │ +002d54: 6e10 6800 0000 |000c: invoke-virtual {v0}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@0068 │ │ +002d5a: 0c00 |000f: move-result-object v0 │ │ +002d5c: 1201 |0010: const/4 v1, #int 0 // #0 │ │ +002d5e: 1202 |0011: const/4 v2, #int 0 // #0 │ │ +002d60: 7210 7300 0000 |0012: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@0073 │ │ +002d66: 0a03 |0015: move-result v3 │ │ +002d68: 3803 2b00 |0016: if-eqz v3, 0041 // +002b │ │ +002d6c: 7210 7400 0000 |0018: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0074 │ │ +002d72: 0c03 |001b: move-result-object v3 │ │ +002d74: 1f03 4600 |001c: check-cast v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ +002d78: 5474 0800 |001e: iget-object v4, v7, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.backlinks:Ljava/util/HashMap; // field@0008 │ │ +002d7c: 6e20 6c00 3400 |0020: invoke-virtual {v4, v3}, Ljava/util/HashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@006c │ │ +002d82: 0c03 |0023: move-result-object v3 │ │ +002d84: 1f03 4500 |0024: check-cast v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ +002d88: 5434 0600 |0026: iget-object v4, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ +002d8c: 1f04 4600 |0028: check-cast v4, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ +002d90: 5233 0700 |002a: iget v3, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.totalCost:I // field@0007 │ │ +002d94: 7220 8f00 3400 |002c: invoke-interface {v4, v3}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;.costTo:(I)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // method@008f │ │ +002d9a: 0c03 |002f: move-result-object v3 │ │ +002d9c: 2134 |0030: array-length v4, v3 │ │ +002d9e: 1205 |0031: const/4 v5, #int 0 // #0 │ │ +002da0: 3545 e0ff |0032: if-ge v5, v4, 0012 // -0020 │ │ +002da4: 4606 0305 |0034: aget-object v6, v3, v5 │ │ +002da8: 7020 9600 6700 |0036: invoke-direct {v7, v6}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.tryApplyBacklink:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;)Z // method@0096 │ │ +002dae: 0a06 |0039: move-result v6 │ │ +002db0: 3806 0400 |003a: if-eqz v6, 003e // +0004 │ │ +002db4: d802 0201 |003c: add-int/lit8 v2, v2, #int 1 // #01 │ │ +002db8: d805 0501 |003e: add-int/lit8 v5, v5, #int 1 // #01 │ │ +002dbc: 28f2 |0040: goto 0032 // -000e │ │ +002dbe: 0f02 |0041: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=67 │ │ 0x0007 line=68 │ │ 0x000c line=69 │ │ 0x001e line=70 │ │ 0x0026 line=71 │ │ @@ -406,58 +409,58 @@ │ │ type : '()[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 48 16-bit code units │ │ -002e1c: |[002e1c] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.runToCompletion:()[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; │ │ -002e2c: 5430 0900 |0000: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.knownEndpoints:Ljava/util/HashSet; // field@0009 │ │ -002e30: 6e10 7100 0000 |0002: invoke-virtual {v0}, Ljava/util/HashSet;.isEmpty:()Z // method@0071 │ │ -002e36: 0a00 |0005: move-result v0 │ │ -002e38: 1201 |0006: const/4 v1, #int 0 // #0 │ │ -002e3a: 3800 0f00 |0007: if-eqz v0, 0016 // +000f │ │ -002e3e: 5430 0a00 |0009: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ -002e42: 6e10 7100 0000 |000b: invoke-virtual {v0}, Ljava/util/HashSet;.isEmpty:()Z // method@0071 │ │ -002e48: 0a00 |000e: move-result v0 │ │ -002e4a: 3900 0600 |000f: if-nez v0, 0015 // +0006 │ │ -002e4e: 6e10 9400 0300 |0011: invoke-virtual {v3}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.iterate:()I // method@0094 │ │ -002e54: 28ec |0014: goto 0000 // -0014 │ │ -002e56: 1101 |0015: return-object v1 │ │ -002e58: 5430 0900 |0016: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.knownEndpoints:Ljava/util/HashSet; // field@0009 │ │ -002e5c: 6e10 7200 0000 |0018: invoke-virtual {v0}, Ljava/util/HashSet;.iterator:()Ljava/util/Iterator; // method@0072 │ │ -002e62: 0c00 |001b: move-result-object v0 │ │ -002e64: 7210 7300 0000 |001c: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@0073 │ │ -002e6a: 0a02 |001f: move-result v2 │ │ -002e6c: 3802 0f00 |0020: if-eqz v2, 002f // +000f │ │ -002e70: 7210 7400 0000 |0022: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0074 │ │ -002e76: 0c02 |0025: move-result-object v2 │ │ -002e78: 1f02 4600 |0026: check-cast v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ -002e7c: 6e20 9300 2300 |0028: invoke-virtual {v3, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.checkForPath:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // method@0093 │ │ -002e82: 0c02 |002b: move-result-object v2 │ │ -002e84: 3802 f0ff |002c: if-eqz v2, 001c // -0010 │ │ -002e88: 1102 |002e: return-object v2 │ │ -002e8a: 1101 |002f: return-object v1 │ │ +002e30: |[002e30] t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder.runToCompletion:()[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; │ │ +002e40: 5430 0900 |0000: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.knownEndpoints:Ljava/util/HashSet; // field@0009 │ │ +002e44: 6e10 7100 0000 |0002: invoke-virtual {v0}, Ljava/util/HashSet;.isEmpty:()Z // method@0071 │ │ +002e4a: 0a00 |0005: move-result v0 │ │ +002e4c: 1201 |0006: const/4 v1, #int 0 // #0 │ │ +002e4e: 3800 0f00 |0007: if-eqz v0, 0016 // +000f │ │ +002e52: 5430 0a00 |0009: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.needsUpdate:Ljava/util/HashSet; // field@000a │ │ +002e56: 6e10 7100 0000 |000b: invoke-virtual {v0}, Ljava/util/HashSet;.isEmpty:()Z // method@0071 │ │ +002e5c: 0a00 |000e: move-result v0 │ │ +002e5e: 3900 0600 |000f: if-nez v0, 0015 // +0006 │ │ +002e62: 6e10 9400 0300 |0011: invoke-virtual {v3}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.iterate:()I // method@0094 │ │ +002e68: 28ec |0014: goto 0000 // -0014 │ │ +002e6a: 1101 |0015: return-object v1 │ │ +002e6c: 5430 0900 |0016: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.knownEndpoints:Ljava/util/HashSet; // field@0009 │ │ +002e70: 6e10 7200 0000 |0018: invoke-virtual {v0}, Ljava/util/HashSet;.iterator:()Ljava/util/Iterator; // method@0072 │ │ +002e76: 0c00 |001b: move-result-object v0 │ │ +002e78: 7210 7300 0000 |001c: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@0073 │ │ +002e7e: 0a02 |001f: move-result v2 │ │ +002e80: 3802 0f00 |0020: if-eqz v2, 002f // +000f │ │ +002e84: 7210 7400 0000 |0022: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0074 │ │ +002e8a: 0c02 |0025: move-result-object v2 │ │ +002e8c: 1f02 4600 |0026: check-cast v2, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; // type@0046 │ │ +002e90: 6e20 9300 2300 |0028: invoke-virtual {v3, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.checkForPath:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // method@0093 │ │ +002e96: 0c02 |002b: move-result-object v2 │ │ +002e98: 3802 f0ff |002c: if-eqz v2, 001c // -0010 │ │ +002e9c: 1102 |002e: return-object v2 │ │ +002e9e: 1101 |002f: return-object v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=106 │ │ 0x0009 line=107 │ │ 0x0011 line=108 │ │ 0x0016 line=114 │ │ 0x0028 line=115 │ │ locals : │ │ 0x0000 - 0x0030 reg=3 this Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder; │ │ │ │ - source_file_idx : 128 (ComplexPathfinder.java) │ │ + source_file_idx : 130 (ComplexPathfinder.java) │ │ │ │ Class #3 header: │ │ class_idx : 72 │ │ access_flags : 17 (0x0011) │ │ superclass_idx : 45 │ │ -source_file_idx : 136 │ │ +source_file_idx : 138 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 3 │ │ virtual_methods_size: 0 │ │ │ │ Class #3 annotations: │ │ Annotations on class │ │ @@ -480,76 +483,74 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -002f20: |[002f20] t20kdc.libofflinepuzzlesolver.genlog.GA.:()V │ │ -002f30: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -002f36: 0e00 |0003: return-void │ │ +002f2c: |[002f2c] t20kdc.libofflinepuzzlesolver.genlog.GA.:()V │ │ +002f3c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +002f42: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=10 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/libofflinepuzzlesolver/genlog/GA; │ │ │ │ #1 : (in Lt20kdc/libofflinepuzzlesolver/genlog/GA;) │ │ name : 'of' │ │ type : '(Ljava/lang/Object;)[Ljava/lang/Object;' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ - insns size : 5 16-bit code units │ │ -002ed0: |[002ed0] t20kdc.libofflinepuzzlesolver.genlog.GA.of:(Ljava/lang/Object;)[Ljava/lang/Object; │ │ -002ee0: 1f00 8300 |0000: check-cast v0, [Ljava/lang/Object; // type@0083 │ │ -002ee4: 1f00 8300 |0002: check-cast v0, [Ljava/lang/Object; // type@0083 │ │ -002ee8: 1100 |0004: return-object v0 │ │ + insns size : 3 16-bit code units │ │ +002ee4: |[002ee4] t20kdc.libofflinepuzzlesolver.genlog.GA.of:(Ljava/lang/Object;)[Ljava/lang/Object; │ │ +002ef4: 1f00 8300 |0000: check-cast v0, [Ljava/lang/Object; // type@0083 │ │ +002ef8: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=13 │ │ locals : │ │ - 0x0000 - 0x0005 reg=0 (null) Ljava/lang/Object; │ │ + 0x0000 - 0x0003 reg=0 (null) Ljava/lang/Object; │ │ │ │ #2 : (in Lt20kdc/libofflinepuzzlesolver/genlog/GA;) │ │ name : 'ofLL' │ │ type : '(Ljava/util/LinkedList;Ljava/lang/Class;)[Ljava/lang/Object;' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ - insns size : 17 16-bit code units │ │ -002eec: |[002eec] t20kdc.libofflinepuzzlesolver.genlog.GA.ofLL:(Ljava/util/LinkedList;Ljava/lang/Class;)[Ljava/lang/Object; │ │ -002efc: 6e10 7900 0100 |0000: invoke-virtual {v1}, Ljava/util/LinkedList;.size:()I // method@0079 │ │ -002f02: 0a00 |0003: move-result v0 │ │ -002f04: 7120 6300 0200 |0004: invoke-static {v2, v0}, Ljava/lang/reflect/Array;.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object; // method@0063 │ │ -002f0a: 0c02 |0007: move-result-object v2 │ │ -002f0c: 1f02 8300 |0008: check-cast v2, [Ljava/lang/Object; // type@0083 │ │ -002f10: 1f02 8300 |000a: check-cast v2, [Ljava/lang/Object; // type@0083 │ │ -002f14: 6e20 7a00 2100 |000c: invoke-virtual {v1, v2}, Ljava/util/LinkedList;.toArray:([Ljava/lang/Object;)[Ljava/lang/Object; // method@007a │ │ -002f1a: 0c01 |000f: move-result-object v1 │ │ -002f1c: 1101 |0010: return-object v1 │ │ + insns size : 15 16-bit code units │ │ +002efc: |[002efc] t20kdc.libofflinepuzzlesolver.genlog.GA.ofLL:(Ljava/util/LinkedList;Ljava/lang/Class;)[Ljava/lang/Object; │ │ +002f0c: 6e10 7900 0100 |0000: invoke-virtual {v1}, Ljava/util/LinkedList;.size:()I // method@0079 │ │ +002f12: 0a00 |0003: move-result v0 │ │ +002f14: 7120 6300 0200 |0004: invoke-static {v2, v0}, Ljava/lang/reflect/Array;.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object; // method@0063 │ │ +002f1a: 0c02 |0007: move-result-object v2 │ │ +002f1c: 1f02 8300 |0008: check-cast v2, [Ljava/lang/Object; // type@0083 │ │ +002f20: 6e20 7a00 2100 |000a: invoke-virtual {v1, v2}, Ljava/util/LinkedList;.toArray:([Ljava/lang/Object;)[Ljava/lang/Object; // method@007a │ │ +002f26: 0c01 |000d: move-result-object v1 │ │ +002f28: 1101 |000e: return-object v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=16 │ │ locals : │ │ - 0x0000 - 0x0011 reg=1 (null) Ljava/util/LinkedList; │ │ - 0x0000 - 0x0011 reg=2 (null) Ljava/lang/Class; │ │ + 0x0000 - 0x000f reg=1 (null) Ljava/util/LinkedList; │ │ + 0x0000 - 0x000f reg=2 (null) Ljava/lang/Class; │ │ │ │ Virtual methods - │ │ - source_file_idx : 136 (GA.java) │ │ + source_file_idx : 138 (GA.java) │ │ │ │ Class #4 header: │ │ class_idx : 73 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 45 │ │ -source_file_idx : 137 │ │ +source_file_idx : 139 │ │ static_fields_size : 1 │ │ instance_fields_size: 0 │ │ direct_methods_size : 3 │ │ virtual_methods_size: 0 │ │ │ │ Class #4 - │ │ Class descriptor : 'Lt20kdc/libofflinepuzzlesolver/genlog/GML;' │ │ @@ -569,32 +570,32 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 0 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -002f38: |[002f38] t20kdc.libofflinepuzzlesolver.genlog.GML.:()V │ │ -002f48: 0e00 |0000: return-void │ │ +002f44: |[002f44] t20kdc.libofflinepuzzlesolver.genlog.GML.:()V │ │ +002f54: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #1 : (in Lt20kdc/libofflinepuzzlesolver/genlog/GML;) │ │ name : '' │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -002f4c: |[002f4c] t20kdc.libofflinepuzzlesolver.genlog.GML.:()V │ │ -002f5c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -002f62: 0e00 |0003: return-void │ │ +002f58: |[002f58] t20kdc.libofflinepuzzlesolver.genlog.GML.:()V │ │ +002f68: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +002f6e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=6 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/libofflinepuzzlesolver/genlog/GML; │ │ │ │ #2 : (in Lt20kdc/libofflinepuzzlesolver/genlog/GML;) │ │ @@ -602,42 +603,42 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 27 16-bit code units │ │ -002f64: |[002f64] t20kdc.libofflinepuzzlesolver.genlog.GML.log:(Ljava/lang/String;)V │ │ -002f74: 6300 0b00 |0000: sget-boolean v0, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.logEnabled:Z // field@000b │ │ -002f78: 3800 1800 |0002: if-eqz v0, 001a // +0018 │ │ -002f7c: 6200 0100 |0004: sget-object v0, Ljava/lang/System;.err:Ljava/io/PrintStream; // field@0001 │ │ -002f80: 2201 3200 |0006: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -002f84: 7010 5400 0100 |0008: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -002f8a: 1a02 9e00 |000b: const-string v2, "LOPSGL: " // string@009e │ │ -002f8e: 6e20 5700 2100 |000d: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -002f94: 6e20 5700 3100 |0010: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -002f9a: 6e10 5900 0100 |0013: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -002fa0: 0c03 |0016: move-result-object v3 │ │ -002fa2: 6e20 3800 3000 |0017: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ -002fa8: 0e00 |001a: return-void │ │ +002f70: |[002f70] t20kdc.libofflinepuzzlesolver.genlog.GML.log:(Ljava/lang/String;)V │ │ +002f80: 6300 0b00 |0000: sget-boolean v0, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.logEnabled:Z // field@000b │ │ +002f84: 3800 1800 |0002: if-eqz v0, 001a // +0018 │ │ +002f88: 6200 0100 |0004: sget-object v0, Ljava/lang/System;.err:Ljava/io/PrintStream; // field@0001 │ │ +002f8c: 2201 3200 |0006: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +002f90: 7010 5400 0100 |0008: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +002f96: 1a02 a000 |000b: const-string v2, "LOPSGL: " // string@00a0 │ │ +002f9a: 6e20 5700 2100 |000d: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +002fa0: 6e20 5700 3100 |0010: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +002fa6: 6e10 5900 0100 |0013: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +002fac: 0c03 |0016: move-result-object v3 │ │ +002fae: 6e20 3800 3000 |0017: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ +002fb4: 0e00 |001a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=11 │ │ 0x0004 line=12 │ │ locals : │ │ 0x0000 - 0x001b reg=3 (null) Ljava/lang/String; │ │ │ │ Virtual methods - │ │ - source_file_idx : 137 (GML.java) │ │ + source_file_idx : 139 (GML.java) │ │ │ │ Class #5 header: │ │ class_idx : 74 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 354 │ │ +source_file_idx : 356 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #5 annotations: │ │ Annotations on class │ │ @@ -658,33 +659,33 @@ │ │ type : '(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 6 16-bit code units │ │ -002fac: |[002fac] t20kdc.libofflinepuzzlesolver.genlog.TreeWalker$-CC.of:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker; │ │ -002fbc: 2200 4f00 |0000: new-instance v0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; // type@004f │ │ -002fc0: 7030 aa00 1002 |0002: invoke-direct {v0, v1, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V // method@00aa │ │ -002fc6: 1100 |0005: return-object v0 │ │ +002fb8: |[002fb8] t20kdc.libofflinepuzzlesolver.genlog.TreeWalker$-CC.of:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker; │ │ +002fc8: 2200 4f00 |0000: new-instance v0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; // type@004f │ │ +002fcc: 7030 ab00 1002 |0002: invoke-direct {v0, v1, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V // method@00ab │ │ +002fd2: 1100 |0005: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=7 │ │ locals : │ │ 0x0000 - 0x0006 reg=1 (null) Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; │ │ 0x0000 - 0x0006 reg=2 (null) Ljava/util/concurrent/atomic/AtomicBoolean; │ │ │ │ Virtual methods - │ │ - source_file_idx : 354 (TreeWalker.java) │ │ + source_file_idx : 356 (TreeWalker.java) │ │ │ │ Class #6 header: │ │ class_idx : 75 │ │ access_flags : 1537 (0x0601) │ │ superclass_idx : 45 │ │ -source_file_idx : 354 │ │ +source_file_idx : 356 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 0 │ │ virtual_methods_size: 2 │ │ │ │ Class #6 annotations: │ │ Annotations on class │ │ @@ -711,21 +712,21 @@ │ │ │ │ #1 : (in Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;) │ │ name : 'walk' │ │ type : '(Ljava/lang/Object;)Ljava/lang/Object;' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ - source_file_idx : 354 (TreeWalker.java) │ │ + source_file_idx : 356 (TreeWalker.java) │ │ │ │ Class #7 header: │ │ class_idx : 76 │ │ access_flags : 1537 (0x0601) │ │ superclass_idx : 45 │ │ -source_file_idx : 355 │ │ +source_file_idx : 357 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 0 │ │ virtual_methods_size: 4 │ │ │ │ Class #7 annotations: │ │ Annotations on class │ │ @@ -768,21 +769,21 @@ │ │ │ │ #3 : (in Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;) │ │ name : 'visit' │ │ type : '(Ljava/lang/Object;Ljava/util/Collection;)V' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ - source_file_idx : 355 (TreeWalkerRoot.java) │ │ + source_file_idx : 357 (TreeWalkerRoot.java) │ │ │ │ Class #8 header: │ │ class_idx : 78 │ │ access_flags : 0 (0x0000) │ │ superclass_idx : 52 │ │ -source_file_idx : 357 │ │ +source_file_idx : 359 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #8 annotations: │ │ Annotations on class │ │ @@ -806,18 +807,18 @@ │ │ type : '(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;Ljava/lang/String;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -0030d4: |[0030d4] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads$1.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;Ljava/lang/String;)V │ │ -0030e4: 5b01 0f00 |0000: iput-object v1, v0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1;.this$0:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; // field@000f │ │ -0030e8: 7020 5c00 2000 |0002: invoke-direct {v0, v2}, Ljava/lang/Thread;.:(Ljava/lang/String;)V // method@005c │ │ -0030ee: 0e00 |0005: return-void │ │ +0030e0: |[0030e0] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads$1.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;Ljava/lang/String;)V │ │ +0030f0: 5b01 0f00 |0000: iput-object v1, v0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1;.this$0:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; // field@000f │ │ +0030f4: 7020 5c00 2000 |0002: invoke-direct {v0, v2}, Ljava/lang/Thread;.:(Ljava/lang/String;)V // method@005c │ │ +0030fa: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=151 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; │ │ 0x0000 - 0x0006 reg=2 (null) Ljava/lang/String; │ │ @@ -828,31 +829,31 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -0030f0: |[0030f0] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads$1.run:()V │ │ -003100: 5410 0f00 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1;.this$0:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; // field@000f │ │ -003104: 7110 ab00 0000 |0002: invoke-static {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.access$000:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V // method@00ab │ │ -00310a: 0e00 |0005: return-void │ │ +0030fc: |[0030fc] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads$1.run:()V │ │ +00310c: 5410 0f00 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1;.this$0:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; // field@000f │ │ +003110: 7110 aa00 0000 |0002: invoke-static {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.-$$Nest$mthreadContent:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V // method@00aa │ │ +003116: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=154 │ │ locals : │ │ 0x0000 - 0x0006 reg=1 this Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1; │ │ │ │ - source_file_idx : 357 (TreeWalkerThreads.java) │ │ + source_file_idx : 359 (TreeWalkerThreads.java) │ │ │ │ Class #9 header: │ │ class_idx : 80 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 45 │ │ -source_file_idx : 326 │ │ +source_file_idx : 328 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 4 │ │ virtual_methods_size: 0 │ │ │ │ Class #9 - │ │ Class descriptor : 'Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;' │ │ @@ -867,17 +868,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -00370c: |[00370c] t20kdc.libofflinepuzzlesolver.sudoku.STMain.:()V │ │ -00371c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -003722: 0e00 |0003: return-void │ │ +003718: |[003718] t20kdc.libofflinepuzzlesolver.sudoku.STMain.:()V │ │ +003728: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +00372e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=11 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/libofflinepuzzlesolver/sudoku/STMain; │ │ │ │ #1 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;) │ │ @@ -885,118 +886,118 @@ │ │ type : '([Ljava/lang/String;)V' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 14 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 203 16-bit code units │ │ -003724: |[003724] t20kdc.libofflinepuzzlesolver.sudoku.STMain.main:([Ljava/lang/String;)V │ │ -003734: 120d |0000: const/4 v13, #int 0 // #0 │ │ -003736: 6a0d 0b00 |0001: sput-boolean v13, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.logEnabled:Z // field@000b │ │ -00373a: 6a0d 2a00 |0003: sput-boolean v13, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.fudgeEnabledGlobally:Z // field@002a │ │ -00373e: 1300 0900 |0005: const/16 v0, #int 9 // #9 │ │ -003742: 2301 8400 |0007: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ -003746: 1a02 a601 |0009: const-string v2, "___ ___ ___" // string@01a6 │ │ -00374a: 4d02 010d |000b: aput-object v2, v1, v13 │ │ -00374e: 1213 |000d: const/4 v3, #int 1 // #1 │ │ -003750: 4d02 0103 |000e: aput-object v2, v1, v3 │ │ -003754: 1224 |0010: const/4 v4, #int 2 // #2 │ │ -003756: 4d02 0104 |0011: aput-object v2, v1, v4 │ │ -00375a: 1235 |0013: const/4 v5, #int 3 // #3 │ │ -00375c: 4d02 0105 |0014: aput-object v2, v1, v5 │ │ -003760: 1246 |0016: const/4 v6, #int 4 // #4 │ │ -003762: 4d02 0106 |0017: aput-object v2, v1, v6 │ │ -003766: 1257 |0019: const/4 v7, #int 5 // #5 │ │ -003768: 4d02 0107 |001a: aput-object v2, v1, v7 │ │ -00376c: 1268 |001c: const/4 v8, #int 6 // #6 │ │ -00376e: 4d02 0108 |001d: aput-object v2, v1, v8 │ │ -003772: 1279 |001f: const/4 v9, #int 7 // #7 │ │ -003774: 4d02 0109 |0020: aput-object v2, v1, v9 │ │ -003778: 130a 0800 |0022: const/16 v10, #int 8 // #8 │ │ -00377c: 4d02 010a |0024: aput-object v2, v1, v10 │ │ -003780: 1a0b 0702 |0026: const-string v11, "empty" // string@0207 │ │ -003784: 7130 b100 1b03 |0028: invoke-static {v11, v1, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ -00378a: 2301 8400 |002b: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ -00378e: 4d02 010d |002d: aput-object v2, v1, v13 │ │ -003792: 4d02 0103 |002f: aput-object v2, v1, v3 │ │ -003796: 4d02 0104 |0031: aput-object v2, v1, v4 │ │ -00379a: 4d02 0105 |0033: aput-object v2, v1, v5 │ │ -00379e: 4d02 0106 |0035: aput-object v2, v1, v6 │ │ -0037a2: 4d02 0107 |0037: aput-object v2, v1, v7 │ │ -0037a6: 1a0b 9f01 |0039: const-string v11, "___ ___ 1__" // string@019f │ │ -0037aa: 4d0b 0108 |003b: aput-object v11, v1, v8 │ │ -0037ae: 1a0b a501 |003d: const-string v11, "___ ___ _1_" // string@01a5 │ │ -0037b2: 4d0b 0109 |003f: aput-object v11, v1, v9 │ │ -0037b6: 4d02 010a |0041: aput-object v2, v1, v10 │ │ -0037ba: 1a0b ec01 |0043: const-string v11, "contradict33" // string@01ec │ │ -0037be: 7130 b100 1b0d |0045: invoke-static {v11, v1, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ -0037c4: 2301 8400 |0048: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ -0037c8: 4d02 010d |004a: aput-object v2, v1, v13 │ │ -0037cc: 4d02 0103 |004c: aput-object v2, v1, v3 │ │ -0037d0: 4d02 0104 |004e: aput-object v2, v1, v4 │ │ -0037d4: 4d02 0105 |0050: aput-object v2, v1, v5 │ │ -0037d8: 1a0b 9701 |0052: const-string v11, "_1_ ___ _1_" // string@0197 │ │ -0037dc: 4d0b 0106 |0054: aput-object v11, v1, v6 │ │ -0037e0: 4d02 0107 |0056: aput-object v2, v1, v7 │ │ -0037e4: 4d02 0108 |0058: aput-object v2, v1, v8 │ │ -0037e8: 4d02 0109 |005a: aput-object v2, v1, v9 │ │ -0037ec: 4d02 010a |005c: aput-object v2, v1, v10 │ │ -0037f0: 1a0b ee01 |005e: const-string v11, "contradictR" // string@01ee │ │ -0037f4: 7130 b100 1b0d |0060: invoke-static {v11, v1, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ -0037fa: 2301 8400 |0063: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ -0037fe: 4d02 010d |0065: aput-object v2, v1, v13 │ │ -003802: 1a0b 9c01 |0067: const-string v11, "___ _1_ ___" // string@019c │ │ -003806: 4d0b 0103 |0069: aput-object v11, v1, v3 │ │ -00380a: 4d02 0104 |006b: aput-object v2, v1, v4 │ │ -00380e: 4d02 0105 |006d: aput-object v2, v1, v5 │ │ -003812: 4d02 0106 |006f: aput-object v2, v1, v6 │ │ -003816: 4d02 0107 |0071: aput-object v2, v1, v7 │ │ -00381a: 4d02 0108 |0073: aput-object v2, v1, v8 │ │ -00381e: 4d0b 0109 |0075: aput-object v11, v1, v9 │ │ -003822: 4d02 010a |0077: aput-object v2, v1, v10 │ │ -003826: 1a0c ed01 |0079: const-string v12, "contradictC" // string@01ed │ │ -00382a: 7130 b100 1c0d |007b: invoke-static {v12, v1, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ -003830: 2301 8400 |007e: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ -003834: 1a0c a401 |0080: const-string v12, "___ ___ 936" // string@01a4 │ │ -003838: 4d0c 010d |0082: aput-object v12, v1, v13 │ │ -00383c: 1a0c a301 |0084: const-string v12, "___ ___ 825" // string@01a3 │ │ -003840: 4d0c 0103 |0086: aput-object v12, v1, v3 │ │ -003844: 1a0c a201 |0088: const-string v12, "___ ___ 714" // string@01a2 │ │ -003848: 4d0c 0104 |008a: aput-object v12, v1, v4 │ │ -00384c: 1a0c a101 |008c: const-string v12, "___ ___ 369" // string@01a1 │ │ -003850: 4d0c 0105 |008e: aput-object v12, v1, v5 │ │ -003854: 1a0c a001 |0090: const-string v12, "___ ___ 258" // string@01a0 │ │ -003858: 4d0c 0106 |0092: aput-object v12, v1, v6 │ │ -00385c: 1a0c 9e01 |0094: const-string v12, "___ ___ 147" // string@019e │ │ -003860: 4d0c 0107 |0096: aput-object v12, v1, v7 │ │ -003864: 1a0c 2e00 |0098: const-string v12, "752 _8_ ___" // string@002e │ │ -003868: 4d0c 0108 |009a: aput-object v12, v1, v8 │ │ -00386c: 1a0c 9d01 |009c: const-string v12, "___ _41 ___" // string@019d │ │ -003870: 4d0c 0109 |009e: aput-object v12, v1, v9 │ │ -003874: 1a0c 2d00 |00a0: const-string v12, "481 572 ___" // string@002d │ │ -003878: 4d0c 010a |00a2: aput-object v12, v1, v10 │ │ -00387c: 1a0c ef01 |00a4: const-string v12, "cornered" // string@01ef │ │ -003880: 7130 b100 1c0d |00a6: invoke-static {v12, v1, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ -003886: 2300 8400 |00a9: new-array v0, v0, [Ljava/lang/String; // type@0084 │ │ -00388a: 4d02 000d |00ab: aput-object v2, v0, v13 │ │ -00388e: 1a01 9a01 |00ad: const-string v1, "___ 1_2 ___" // string@019a │ │ -003892: 4d01 0003 |00af: aput-object v1, v0, v3 │ │ -003896: 4d02 0004 |00b1: aput-object v2, v0, v4 │ │ -00389a: 1a01 9801 |00b3: const-string v1, "_1_ ___ _2_" // string@0198 │ │ -00389e: 4d01 0005 |00b5: aput-object v1, v0, v5 │ │ -0038a2: 4d0b 0006 |00b7: aput-object v11, v0, v6 │ │ -0038a6: 1a01 9901 |00b9: const-string v1, "_2_ ___ _1_" // string@0199 │ │ -0038aa: 4d01 0007 |00bb: aput-object v1, v0, v7 │ │ -0038ae: 4d02 0008 |00bd: aput-object v2, v0, v8 │ │ -0038b2: 1a01 9b01 |00bf: const-string v1, "___ 2_1 ___" // string@019b │ │ -0038b6: 4d01 0009 |00c1: aput-object v1, v0, v9 │ │ -0038ba: 4d02 000a |00c3: aput-object v2, v0, v10 │ │ -0038be: 1a01 f101 |00c5: const-string v1, "crossroads" // string@01f1 │ │ -0038c2: 7130 b100 010d |00c7: invoke-static {v1, v0, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ -0038c8: 0e00 |00ca: return-void │ │ +003730: |[003730] t20kdc.libofflinepuzzlesolver.sudoku.STMain.main:([Ljava/lang/String;)V │ │ +003740: 120d |0000: const/4 v13, #int 0 // #0 │ │ +003742: 6a0d 0b00 |0001: sput-boolean v13, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.logEnabled:Z // field@000b │ │ +003746: 6a0d 2a00 |0003: sput-boolean v13, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.fudgeEnabledGlobally:Z // field@002a │ │ +00374a: 1300 0900 |0005: const/16 v0, #int 9 // #9 │ │ +00374e: 2301 8400 |0007: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ +003752: 1a02 a801 |0009: const-string v2, "___ ___ ___" // string@01a8 │ │ +003756: 4d02 010d |000b: aput-object v2, v1, v13 │ │ +00375a: 1213 |000d: const/4 v3, #int 1 // #1 │ │ +00375c: 4d02 0103 |000e: aput-object v2, v1, v3 │ │ +003760: 1224 |0010: const/4 v4, #int 2 // #2 │ │ +003762: 4d02 0104 |0011: aput-object v2, v1, v4 │ │ +003766: 1235 |0013: const/4 v5, #int 3 // #3 │ │ +003768: 4d02 0105 |0014: aput-object v2, v1, v5 │ │ +00376c: 1246 |0016: const/4 v6, #int 4 // #4 │ │ +00376e: 4d02 0106 |0017: aput-object v2, v1, v6 │ │ +003772: 1257 |0019: const/4 v7, #int 5 // #5 │ │ +003774: 4d02 0107 |001a: aput-object v2, v1, v7 │ │ +003778: 1268 |001c: const/4 v8, #int 6 // #6 │ │ +00377a: 4d02 0108 |001d: aput-object v2, v1, v8 │ │ +00377e: 1279 |001f: const/4 v9, #int 7 // #7 │ │ +003780: 4d02 0109 |0020: aput-object v2, v1, v9 │ │ +003784: 130a 0800 |0022: const/16 v10, #int 8 // #8 │ │ +003788: 4d02 010a |0024: aput-object v2, v1, v10 │ │ +00378c: 1a0b 0902 |0026: const-string v11, "empty" // string@0209 │ │ +003790: 7130 b100 1b03 |0028: invoke-static {v11, v1, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ +003796: 2301 8400 |002b: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ +00379a: 4d02 010d |002d: aput-object v2, v1, v13 │ │ +00379e: 4d02 0103 |002f: aput-object v2, v1, v3 │ │ +0037a2: 4d02 0104 |0031: aput-object v2, v1, v4 │ │ +0037a6: 4d02 0105 |0033: aput-object v2, v1, v5 │ │ +0037aa: 4d02 0106 |0035: aput-object v2, v1, v6 │ │ +0037ae: 4d02 0107 |0037: aput-object v2, v1, v7 │ │ +0037b2: 1a0b a101 |0039: const-string v11, "___ ___ 1__" // string@01a1 │ │ +0037b6: 4d0b 0108 |003b: aput-object v11, v1, v8 │ │ +0037ba: 1a0b a701 |003d: const-string v11, "___ ___ _1_" // string@01a7 │ │ +0037be: 4d0b 0109 |003f: aput-object v11, v1, v9 │ │ +0037c2: 4d02 010a |0041: aput-object v2, v1, v10 │ │ +0037c6: 1a0b ee01 |0043: const-string v11, "contradict33" // string@01ee │ │ +0037ca: 7130 b100 1b0d |0045: invoke-static {v11, v1, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ +0037d0: 2301 8400 |0048: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ +0037d4: 4d02 010d |004a: aput-object v2, v1, v13 │ │ +0037d8: 4d02 0103 |004c: aput-object v2, v1, v3 │ │ +0037dc: 4d02 0104 |004e: aput-object v2, v1, v4 │ │ +0037e0: 4d02 0105 |0050: aput-object v2, v1, v5 │ │ +0037e4: 1a0b 9901 |0052: const-string v11, "_1_ ___ _1_" // string@0199 │ │ +0037e8: 4d0b 0106 |0054: aput-object v11, v1, v6 │ │ +0037ec: 4d02 0107 |0056: aput-object v2, v1, v7 │ │ +0037f0: 4d02 0108 |0058: aput-object v2, v1, v8 │ │ +0037f4: 4d02 0109 |005a: aput-object v2, v1, v9 │ │ +0037f8: 4d02 010a |005c: aput-object v2, v1, v10 │ │ +0037fc: 1a0b f001 |005e: const-string v11, "contradictR" // string@01f0 │ │ +003800: 7130 b100 1b0d |0060: invoke-static {v11, v1, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ +003806: 2301 8400 |0063: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ +00380a: 4d02 010d |0065: aput-object v2, v1, v13 │ │ +00380e: 1a0b 9e01 |0067: const-string v11, "___ _1_ ___" // string@019e │ │ +003812: 4d0b 0103 |0069: aput-object v11, v1, v3 │ │ +003816: 4d02 0104 |006b: aput-object v2, v1, v4 │ │ +00381a: 4d02 0105 |006d: aput-object v2, v1, v5 │ │ +00381e: 4d02 0106 |006f: aput-object v2, v1, v6 │ │ +003822: 4d02 0107 |0071: aput-object v2, v1, v7 │ │ +003826: 4d02 0108 |0073: aput-object v2, v1, v8 │ │ +00382a: 4d0b 0109 |0075: aput-object v11, v1, v9 │ │ +00382e: 4d02 010a |0077: aput-object v2, v1, v10 │ │ +003832: 1a0c ef01 |0079: const-string v12, "contradictC" // string@01ef │ │ +003836: 7130 b100 1c0d |007b: invoke-static {v12, v1, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ +00383c: 2301 8400 |007e: new-array v1, v0, [Ljava/lang/String; // type@0084 │ │ +003840: 1a0c a601 |0080: const-string v12, "___ ___ 936" // string@01a6 │ │ +003844: 4d0c 010d |0082: aput-object v12, v1, v13 │ │ +003848: 1a0c a501 |0084: const-string v12, "___ ___ 825" // string@01a5 │ │ +00384c: 4d0c 0103 |0086: aput-object v12, v1, v3 │ │ +003850: 1a0c a401 |0088: const-string v12, "___ ___ 714" // string@01a4 │ │ +003854: 4d0c 0104 |008a: aput-object v12, v1, v4 │ │ +003858: 1a0c a301 |008c: const-string v12, "___ ___ 369" // string@01a3 │ │ +00385c: 4d0c 0105 |008e: aput-object v12, v1, v5 │ │ +003860: 1a0c a201 |0090: const-string v12, "___ ___ 258" // string@01a2 │ │ +003864: 4d0c 0106 |0092: aput-object v12, v1, v6 │ │ +003868: 1a0c a001 |0094: const-string v12, "___ ___ 147" // string@01a0 │ │ +00386c: 4d0c 0107 |0096: aput-object v12, v1, v7 │ │ +003870: 1a0c 3000 |0098: const-string v12, "752 _8_ ___" // string@0030 │ │ +003874: 4d0c 0108 |009a: aput-object v12, v1, v8 │ │ +003878: 1a0c 9f01 |009c: const-string v12, "___ _41 ___" // string@019f │ │ +00387c: 4d0c 0109 |009e: aput-object v12, v1, v9 │ │ +003880: 1a0c 2f00 |00a0: const-string v12, "481 572 ___" // string@002f │ │ +003884: 4d0c 010a |00a2: aput-object v12, v1, v10 │ │ +003888: 1a0c f101 |00a4: const-string v12, "cornered" // string@01f1 │ │ +00388c: 7130 b100 1c0d |00a6: invoke-static {v12, v1, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ +003892: 2300 8400 |00a9: new-array v0, v0, [Ljava/lang/String; // type@0084 │ │ +003896: 4d02 000d |00ab: aput-object v2, v0, v13 │ │ +00389a: 1a01 9c01 |00ad: const-string v1, "___ 1_2 ___" // string@019c │ │ +00389e: 4d01 0003 |00af: aput-object v1, v0, v3 │ │ +0038a2: 4d02 0004 |00b1: aput-object v2, v0, v4 │ │ +0038a6: 1a01 9a01 |00b3: const-string v1, "_1_ ___ _2_" // string@019a │ │ +0038aa: 4d01 0005 |00b5: aput-object v1, v0, v5 │ │ +0038ae: 4d0b 0006 |00b7: aput-object v11, v0, v6 │ │ +0038b2: 1a01 9b01 |00b9: const-string v1, "_2_ ___ _1_" // string@019b │ │ +0038b6: 4d01 0007 |00bb: aput-object v1, v0, v7 │ │ +0038ba: 4d02 0008 |00bd: aput-object v2, v0, v8 │ │ +0038be: 1a01 9d01 |00bf: const-string v1, "___ 2_1 ___" // string@019d │ │ +0038c2: 4d01 0009 |00c1: aput-object v1, v0, v9 │ │ +0038c6: 4d02 000a |00c3: aput-object v2, v0, v10 │ │ +0038ca: 1a01 f301 |00c5: const-string v1, "crossroads" // string@01f3 │ │ +0038ce: 7130 b100 010d |00c7: invoke-static {v1, v0, v13}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.test:(Ljava/lang/String;[Ljava/lang/String;Z)V // method@00b1 │ │ +0038d4: 0e00 |00ca: return-void │ │ catches : (none) │ │ positions : │ │ 0x0001 line=13 │ │ 0x0003 line=14 │ │ 0x0028 line=16 │ │ 0x0045 line=30 │ │ 0x0060 line=44 │ │ @@ -1011,41 +1012,41 @@ │ │ type : '(Ljava/lang/String;[Ljava/lang/String;Z)V' │ │ access : 0x000a (PRIVATE STATIC) │ │ code - │ │ registers : 6 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 60 16-bit code units │ │ -0038cc: |[0038cc] t20kdc.libofflinepuzzlesolver.sudoku.STMain.test:(Ljava/lang/String;[Ljava/lang/String;Z)V │ │ -0038dc: 6200 0200 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ -0038e0: 6e10 3700 0000 |0002: invoke-virtual {v0}, Ljava/io/PrintStream;.println:()V // method@0037 │ │ -0038e6: 6200 0200 |0005: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ -0038ea: 2201 3200 |0007: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -0038ee: 7010 5400 0100 |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -0038f4: 1a02 4301 |000c: const-string v2, "Running test " // string@0143 │ │ -0038f8: 6e20 5700 2100 |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0038fe: 6e20 5700 3100 |0011: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -003904: 1a03 0400 |0014: const-string v3, " (sv " // string@0004 │ │ -003908: 6e20 5700 3100 |0016: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00390e: 6e20 5800 5100 |0019: invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;.append:(Z)Ljava/lang/StringBuilder; // method@0058 │ │ -003914: 1a03 2000 |001c: const-string v3, ")" // string@0020 │ │ -003918: 6e20 5700 3100 |001e: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00391e: 6e10 5900 0100 |0021: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -003924: 0c03 |0024: move-result-object v3 │ │ -003926: 6e20 3800 3000 |0025: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ -00392c: 7110 b200 0400 |0028: invoke-static {v4}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.testCore:([Ljava/lang/String;)Z // method@00b2 │ │ -003932: 0a03 |002b: move-result v3 │ │ -003934: 3353 0800 |002c: if-ne v3, v5, 0034 // +0008 │ │ -003938: 6203 0200 |002e: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ -00393c: 6e10 3700 0300 |0030: invoke-virtual {v3}, Ljava/io/PrintStream;.println:()V // method@0037 │ │ -003942: 0e00 |0033: return-void │ │ -003944: 2203 3000 |0034: new-instance v3, Ljava/lang/RuntimeException; // type@0030 │ │ -003948: 1a04 7800 |0036: const-string v4, "Board solvability failure" // string@0078 │ │ -00394c: 7020 4e00 4300 |0038: invoke-direct {v3, v4}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ -003952: 2703 |003b: throw v3 │ │ +0038d8: |[0038d8] t20kdc.libofflinepuzzlesolver.sudoku.STMain.test:(Ljava/lang/String;[Ljava/lang/String;Z)V │ │ +0038e8: 6200 0200 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ +0038ec: 6e10 3700 0000 |0002: invoke-virtual {v0}, Ljava/io/PrintStream;.println:()V // method@0037 │ │ +0038f2: 6200 0200 |0005: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ +0038f6: 2201 3200 |0007: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +0038fa: 7010 5400 0100 |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +003900: 1a02 4501 |000c: const-string v2, "Running test " // string@0145 │ │ +003904: 6e20 5700 2100 |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00390a: 6e20 5700 3100 |0011: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +003910: 1a03 0400 |0014: const-string v3, " (sv " // string@0004 │ │ +003914: 6e20 5700 3100 |0016: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00391a: 6e20 5800 5100 |0019: invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;.append:(Z)Ljava/lang/StringBuilder; // method@0058 │ │ +003920: 1a03 2000 |001c: const-string v3, ")" // string@0020 │ │ +003924: 6e20 5700 3100 |001e: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00392a: 6e10 5900 0100 |0021: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +003930: 0c03 |0024: move-result-object v3 │ │ +003932: 6e20 3800 3000 |0025: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ +003938: 7110 b200 0400 |0028: invoke-static {v4}, Lt20kdc/libofflinepuzzlesolver/sudoku/STMain;.testCore:([Ljava/lang/String;)Z // method@00b2 │ │ +00393e: 0a03 |002b: move-result v3 │ │ +003940: 3353 0800 |002c: if-ne v3, v5, 0034 // +0008 │ │ +003944: 6203 0200 |002e: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ +003948: 6e10 3700 0300 |0030: invoke-virtual {v3}, Ljava/io/PrintStream;.println:()V // method@0037 │ │ +00394e: 0e00 |0033: return-void │ │ +003950: 2203 3000 |0034: new-instance v3, Ljava/lang/RuntimeException; // type@0030 │ │ +003954: 1a04 7a00 |0036: const-string v4, "Board solvability failure" // string@007a │ │ +003958: 7020 4e00 4300 |0038: invoke-direct {v3, v4}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ +00395e: 2703 |003b: throw v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=111 │ │ 0x0005 line=112 │ │ 0x0028 line=113 │ │ 0x002e line=115 │ │ 0x0034 line=114 │ │ @@ -1059,123 +1060,123 @@ │ │ type : '([Ljava/lang/String;)Z' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 10 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 214 16-bit code units │ │ -003550: |[003550] t20kdc.libofflinepuzzlesolver.sudoku.STMain.testCore:([Ljava/lang/String;)Z │ │ -003560: 2200 5200 |0000: new-instance v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -003564: 7010 b500 0000 |0002: invoke-direct {v0}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:()V // method@00b5 │ │ -00356a: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -00356c: 1202 |0006: const/4 v2, #int 0 // #0 │ │ -00356e: 1203 |0007: const/4 v3, #int 0 // #0 │ │ -003570: 1304 5f00 |0008: const/16 v4, #int 95 // #5f │ │ -003574: 1305 0900 |000a: const/16 v5, #int 9 // #9 │ │ -003578: 3552 7400 |000c: if-ge v2, v5, 0080 // +0074 │ │ -00357c: 1206 |000e: const/4 v6, #int 0 // #0 │ │ -00357e: 3556 6e00 |000f: if-ge v6, v5, 007d // +006e │ │ -003582: db07 0603 |0011: div-int/lit8 v7, v6, #int 3 // #03 │ │ -003586: b067 |0013: add-int/2addr v7, v6 │ │ -003588: 4608 0902 |0014: aget-object v8, v9, v2 │ │ -00358c: 6e20 5000 7800 |0016: invoke-virtual {v8, v7}, Ljava/lang/String;.charAt:(I)C // method@0050 │ │ -003592: 0a07 |0019: move-result v7 │ │ -003594: 1308 2000 |001a: const/16 v8, #int 32 // #20 │ │ -003598: 3287 5900 |001c: if-eq v7, v8, 0075 // +0059 │ │ -00359c: 3247 5200 |001e: if-eq v7, v4, 0070 // +0052 │ │ -0035a0: d807 07cf |0020: add-int/lit8 v7, v7, #int -49 // #cf │ │ -0035a4: 6e30 bb00 3007 |0022: invoke-virtual {v0, v3, v7}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ -0035aa: 0a08 |0025: move-result v8 │ │ -0035ac: 3908 4400 |0026: if-nez v8, 006a // +0044 │ │ -0035b0: 6209 0200 |0028: sget-object v9, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ -0035b4: 2204 3200 |002a: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ -0035b8: 7010 5400 0400 |002c: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -0035be: 1a05 4801 |002f: const-string v5, "Solvability failure, " // string@0148 │ │ -0035c2: 6e20 5700 5400 |0031: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0035c8: 6e20 5600 6400 |0034: invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -0035ce: 1a05 0200 |0037: const-string v5, " " // string@0002 │ │ -0035d2: 6e20 5700 5400 |0039: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0035d8: 6e20 5600 2400 |003c: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -0035de: 1a02 2900 |003f: const-string v2, ", early" // string@0029 │ │ -0035e2: 6e20 5700 2400 |0041: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0035e8: 6e10 5900 0400 |0044: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -0035ee: 0c02 |0047: move-result-object v2 │ │ -0035f0: 6e20 3800 2900 |0048: invoke-virtual {v9, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ -0035f6: 6209 0200 |004b: sget-object v9, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ -0035fa: 2202 3200 |004d: new-instance v2, Ljava/lang/StringBuilder; // type@0032 │ │ -0035fe: 7010 5400 0200 |004f: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -003604: 1a04 4001 |0052: const-string v4, "RC " // string@0140 │ │ -003608: 6e20 5700 4200 |0054: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00360e: 6e30 ba00 3007 |0057: invoke-virtual {v0, v3, v7}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.reasonFor:(II)I // method@00ba │ │ -003614: 0a00 |005a: move-result v0 │ │ -003616: 7110 4500 0000 |005b: invoke-static {v0}, Ljava/lang/Integer;.toHexString:(I)Ljava/lang/String; // method@0045 │ │ -00361c: 0c00 |005e: move-result-object v0 │ │ -00361e: 6e20 5700 0200 |005f: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -003624: 6e10 5900 0200 |0062: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -00362a: 0c00 |0065: move-result-object v0 │ │ -00362c: 6e20 3800 0900 |0066: invoke-virtual {v9, v0}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ -003632: 0f01 |0069: return v1 │ │ -003634: 2208 5200 |006a: new-instance v8, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -003638: 7040 b600 0873 |006c: invoke-direct {v8, v0, v3, v7}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@00b6 │ │ -00363e: 0780 |006f: move-object v0, v8 │ │ -003640: d803 0301 |0070: add-int/lit8 v3, v3, #int 1 // #01 │ │ -003644: d806 0601 |0072: add-int/lit8 v6, v6, #int 1 // #01 │ │ -003648: 289b |0074: goto 000f // -0065 │ │ -00364a: 2209 3000 |0075: new-instance v9, Ljava/lang/RuntimeException; // type@0030 │ │ -00364e: 1a00 5a01 |0077: const-string v0, "Test board format issue" // string@015a │ │ -003652: 7020 4e00 0900 |0079: invoke-direct {v9, v0}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ -003658: 2709 |007c: throw v9 │ │ -00365a: d802 0201 |007d: add-int/lit8 v2, v2, #int 1 // #01 │ │ -00365e: 2889 |007f: goto 0008 // -0077 │ │ -003660: 2209 4d00 |0080: new-instance v9, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple; // type@004d │ │ -003664: 2202 5300 |0082: new-instance v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; // type@0053 │ │ -003668: 7010 bd00 0200 |0084: invoke-direct {v2}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.:()V // method@00bd │ │ -00366e: 2203 4200 |0087: new-instance v3, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0042 │ │ -003672: 7010 8200 0300 |0089: invoke-direct {v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:()V // method@0082 │ │ -003678: 7030 a400 2903 |008c: invoke-direct {v9, v2, v3}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V // method@00a4 │ │ -00367e: 6e20 a600 0900 |008f: invoke-virtual {v9, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.walk:(Ljava/lang/Object;)Ljava/lang/Object; // method@00a6 │ │ -003684: 0c00 |0092: move-result-object v0 │ │ -003686: 1f00 5200 |0093: check-cast v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -00368a: 3900 1200 |0095: if-nez v0, 00a7 // +0012 │ │ -00368e: 6200 0200 |0097: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ -003692: 1a02 4901 |0099: const-string v2, "Solvability failure, late" // string@0149 │ │ -003696: 6e20 3800 2000 |009b: invoke-virtual {v0, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ -00369c: 6e10 a500 0900 |009e: invoke-virtual {v9}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.getHighestImportance:()Ljava/lang/Object; // method@00a5 │ │ -0036a2: 0c09 |00a1: move-result-object v9 │ │ -0036a4: 0790 |00a2: move-object v0, v9 │ │ -0036a6: 1f00 5200 |00a3: check-cast v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -0036aa: 1209 |00a5: const/4 v9, #int 0 // #0 │ │ -0036ac: 2802 |00a6: goto 00a8 // +0002 │ │ -0036ae: 1219 |00a7: const/4 v9, #int 1 // #1 │ │ -0036b0: 3800 2d00 |00a8: if-eqz v0, 00d5 // +002d │ │ -0036b4: 1202 |00aa: const/4 v2, #int 0 // #0 │ │ -0036b6: 3552 2a00 |00ab: if-ge v2, v5, 00d5 // +002a │ │ -0036ba: 1203 |00ad: const/4 v3, #int 0 // #0 │ │ -0036bc: 3553 1d00 |00ae: if-ge v3, v5, 00cb // +001d │ │ -0036c0: da06 0209 |00b0: mul-int/lit8 v6, v2, #int 9 // #09 │ │ -0036c4: b036 |00b2: add-int/2addr v6, v3 │ │ -0036c6: 6e20 b800 6000 |00b3: invoke-virtual {v0, v6}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.getChoice:(I)I // method@00b8 │ │ -0036cc: 0a06 |00b6: move-result v6 │ │ -0036ce: 12f7 |00b7: const/4 v7, #int -1 // #ff │ │ -0036d0: 3376 0800 |00b8: if-ne v6, v7, 00c0 // +0008 │ │ -0036d4: 6206 0200 |00ba: sget-object v6, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ -0036d8: 6e20 3600 4600 |00bc: invoke-virtual {v6, v4}, Ljava/io/PrintStream;.print:(C)V // method@0036 │ │ -0036de: 2809 |00bf: goto 00c8 // +0009 │ │ -0036e0: 6207 0200 |00c0: sget-object v7, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ -0036e4: d806 0631 |00c2: add-int/lit8 v6, v6, #int 49 // #31 │ │ -0036e8: 8e66 |00c4: int-to-char v6, v6 │ │ -0036ea: 6e20 3600 6700 |00c5: invoke-virtual {v7, v6}, Ljava/io/PrintStream;.print:(C)V // method@0036 │ │ -0036f0: d803 0301 |00c8: add-int/lit8 v3, v3, #int 1 // #01 │ │ -0036f4: 28e4 |00ca: goto 00ae // -001c │ │ -0036f6: 6203 0200 |00cb: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ -0036fa: 1306 0a00 |00cd: const/16 v6, #int 10 // #a │ │ -0036fe: 6e20 3600 6300 |00cf: invoke-virtual {v3, v6}, Ljava/io/PrintStream;.print:(C)V // method@0036 │ │ -003704: d802 0201 |00d2: add-int/lit8 v2, v2, #int 1 // #01 │ │ -003708: 28d7 |00d4: goto 00ab // -0029 │ │ -00370a: 0f09 |00d5: return v9 │ │ +00355c: |[00355c] t20kdc.libofflinepuzzlesolver.sudoku.STMain.testCore:([Ljava/lang/String;)Z │ │ +00356c: 2200 5200 |0000: new-instance v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +003570: 7010 b500 0000 |0002: invoke-direct {v0}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:()V // method@00b5 │ │ +003576: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +003578: 1202 |0006: const/4 v2, #int 0 // #0 │ │ +00357a: 1203 |0007: const/4 v3, #int 0 // #0 │ │ +00357c: 1304 5f00 |0008: const/16 v4, #int 95 // #5f │ │ +003580: 1305 0900 |000a: const/16 v5, #int 9 // #9 │ │ +003584: 3552 7400 |000c: if-ge v2, v5, 0080 // +0074 │ │ +003588: 1206 |000e: const/4 v6, #int 0 // #0 │ │ +00358a: 3556 6e00 |000f: if-ge v6, v5, 007d // +006e │ │ +00358e: db07 0603 |0011: div-int/lit8 v7, v6, #int 3 // #03 │ │ +003592: b067 |0013: add-int/2addr v7, v6 │ │ +003594: 4608 0902 |0014: aget-object v8, v9, v2 │ │ +003598: 6e20 5000 7800 |0016: invoke-virtual {v8, v7}, Ljava/lang/String;.charAt:(I)C // method@0050 │ │ +00359e: 0a07 |0019: move-result v7 │ │ +0035a0: 1308 2000 |001a: const/16 v8, #int 32 // #20 │ │ +0035a4: 3287 5900 |001c: if-eq v7, v8, 0075 // +0059 │ │ +0035a8: 3247 5200 |001e: if-eq v7, v4, 0070 // +0052 │ │ +0035ac: d807 07cf |0020: add-int/lit8 v7, v7, #int -49 // #cf │ │ +0035b0: 6e30 bb00 3007 |0022: invoke-virtual {v0, v3, v7}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ +0035b6: 0a08 |0025: move-result v8 │ │ +0035b8: 3908 4400 |0026: if-nez v8, 006a // +0044 │ │ +0035bc: 6209 0200 |0028: sget-object v9, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ +0035c0: 2204 3200 |002a: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ +0035c4: 7010 5400 0400 |002c: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +0035ca: 1a05 4a01 |002f: const-string v5, "Solvability failure, " // string@014a │ │ +0035ce: 6e20 5700 5400 |0031: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0035d4: 6e20 5600 6400 |0034: invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +0035da: 1a05 0200 |0037: const-string v5, " " // string@0002 │ │ +0035de: 6e20 5700 5400 |0039: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0035e4: 6e20 5600 2400 |003c: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +0035ea: 1a02 2900 |003f: const-string v2, ", early" // string@0029 │ │ +0035ee: 6e20 5700 2400 |0041: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0035f4: 6e10 5900 0400 |0044: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0035fa: 0c02 |0047: move-result-object v2 │ │ +0035fc: 6e20 3800 2900 |0048: invoke-virtual {v9, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ +003602: 6209 0200 |004b: sget-object v9, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ +003606: 6e30 ba00 3007 |004d: invoke-virtual {v0, v3, v7}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.reasonFor:(II)I // method@00ba │ │ +00360c: 0a00 |0050: move-result v0 │ │ +00360e: 7110 4500 0000 |0051: invoke-static {v0}, Ljava/lang/Integer;.toHexString:(I)Ljava/lang/String; // method@0045 │ │ +003614: 0c00 |0054: move-result-object v0 │ │ +003616: 2202 3200 |0055: new-instance v2, Ljava/lang/StringBuilder; // type@0032 │ │ +00361a: 7010 5400 0200 |0057: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +003620: 1a03 4201 |005a: const-string v3, "RC " // string@0142 │ │ +003624: 6e20 5700 3200 |005c: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00362a: 6e20 5700 0200 |005f: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +003630: 6e10 5900 0200 |0062: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +003636: 0c00 |0065: move-result-object v0 │ │ +003638: 6e20 3800 0900 |0066: invoke-virtual {v9, v0}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ +00363e: 0f01 |0069: return v1 │ │ +003640: 2208 5200 |006a: new-instance v8, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +003644: 7040 b600 0873 |006c: invoke-direct {v8, v0, v3, v7}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@00b6 │ │ +00364a: 0780 |006f: move-object v0, v8 │ │ +00364c: d803 0301 |0070: add-int/lit8 v3, v3, #int 1 // #01 │ │ +003650: d806 0601 |0072: add-int/lit8 v6, v6, #int 1 // #01 │ │ +003654: 289b |0074: goto 000f // -0065 │ │ +003656: 2209 3000 |0075: new-instance v9, Ljava/lang/RuntimeException; // type@0030 │ │ +00365a: 1a00 5c01 |0077: const-string v0, "Test board format issue" // string@015c │ │ +00365e: 7020 4e00 0900 |0079: invoke-direct {v9, v0}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ +003664: 2709 |007c: throw v9 │ │ +003666: d802 0201 |007d: add-int/lit8 v2, v2, #int 1 // #01 │ │ +00366a: 2889 |007f: goto 0008 // -0077 │ │ +00366c: 2209 4d00 |0080: new-instance v9, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple; // type@004d │ │ +003670: 2202 5300 |0082: new-instance v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; // type@0053 │ │ +003674: 7010 be00 0200 |0084: invoke-direct {v2}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.:()V // method@00be │ │ +00367a: 2203 4200 |0087: new-instance v3, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0042 │ │ +00367e: 7010 8200 0300 |0089: invoke-direct {v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:()V // method@0082 │ │ +003684: 7030 a400 2903 |008c: invoke-direct {v9, v2, v3}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V // method@00a4 │ │ +00368a: 6e20 a600 0900 |008f: invoke-virtual {v9, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.walk:(Ljava/lang/Object;)Ljava/lang/Object; // method@00a6 │ │ +003690: 0c00 |0092: move-result-object v0 │ │ +003692: 1f00 5200 |0093: check-cast v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +003696: 3900 1200 |0095: if-nez v0, 00a7 // +0012 │ │ +00369a: 6200 0200 |0097: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ +00369e: 1a02 4b01 |0099: const-string v2, "Solvability failure, late" // string@014b │ │ +0036a2: 6e20 3800 2000 |009b: invoke-virtual {v0, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0038 │ │ +0036a8: 6e10 a500 0900 |009e: invoke-virtual {v9}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.getHighestImportance:()Ljava/lang/Object; // method@00a5 │ │ +0036ae: 0c09 |00a1: move-result-object v9 │ │ +0036b0: 0790 |00a2: move-object v0, v9 │ │ +0036b2: 1f00 5200 |00a3: check-cast v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +0036b6: 1209 |00a5: const/4 v9, #int 0 // #0 │ │ +0036b8: 2802 |00a6: goto 00a8 // +0002 │ │ +0036ba: 1219 |00a7: const/4 v9, #int 1 // #1 │ │ +0036bc: 3800 2d00 |00a8: if-eqz v0, 00d5 // +002d │ │ +0036c0: 1202 |00aa: const/4 v2, #int 0 // #0 │ │ +0036c2: 3552 2a00 |00ab: if-ge v2, v5, 00d5 // +002a │ │ +0036c6: 1203 |00ad: const/4 v3, #int 0 // #0 │ │ +0036c8: 3553 1d00 |00ae: if-ge v3, v5, 00cb // +001d │ │ +0036cc: da06 0209 |00b0: mul-int/lit8 v6, v2, #int 9 // #09 │ │ +0036d0: b036 |00b2: add-int/2addr v6, v3 │ │ +0036d2: 6e20 b800 6000 |00b3: invoke-virtual {v0, v6}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.getChoice:(I)I // method@00b8 │ │ +0036d8: 0a06 |00b6: move-result v6 │ │ +0036da: 12f7 |00b7: const/4 v7, #int -1 // #ff │ │ +0036dc: 3376 0800 |00b8: if-ne v6, v7, 00c0 // +0008 │ │ +0036e0: 6206 0200 |00ba: sget-object v6, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ +0036e4: 6e20 3600 4600 |00bc: invoke-virtual {v6, v4}, Ljava/io/PrintStream;.print:(C)V // method@0036 │ │ +0036ea: 2809 |00bf: goto 00c8 // +0009 │ │ +0036ec: 6207 0200 |00c0: sget-object v7, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ +0036f0: d806 0631 |00c2: add-int/lit8 v6, v6, #int 49 // #31 │ │ +0036f4: 8e66 |00c4: int-to-char v6, v6 │ │ +0036f6: 6e20 3600 6700 |00c5: invoke-virtual {v7, v6}, Ljava/io/PrintStream;.print:(C)V // method@0036 │ │ +0036fc: d803 0301 |00c8: add-int/lit8 v3, v3, #int 1 // #01 │ │ +003700: 28e4 |00ca: goto 00ae // -001c │ │ +003702: 6203 0200 |00cb: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002 │ │ +003706: 1306 0a00 |00cd: const/16 v6, #int 10 // #a │ │ +00370a: 6e20 3600 6300 |00cf: invoke-virtual {v3, v6}, Ljava/io/PrintStream;.print:(C)V // method@0036 │ │ +003710: d802 0201 |00d2: add-int/lit8 v2, v2, #int 1 // #01 │ │ +003714: 28d7 |00d4: goto 00ab // -0029 │ │ +003716: 0f09 |00d5: return v9 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=118 │ │ 0x0011 line=122 │ │ 0x0014 line=123 │ │ 0x0022 line=129 │ │ 0x0028 line=130 │ │ @@ -1190,21 +1191,21 @@ │ │ 0x00ba line=152 │ │ 0x00c0 line=154 │ │ 0x00cb line=157 │ │ locals : │ │ 0x0000 - 0x00d6 reg=9 (null) [Ljava/lang/String; │ │ │ │ Virtual methods - │ │ - source_file_idx : 326 (STMain.java) │ │ + source_file_idx : 328 (STMain.java) │ │ │ │ Class #10 header: │ │ class_idx : 81 │ │ access_flags : 17 (0x0011) │ │ superclass_idx : 45 │ │ -source_file_idx : 338 │ │ +source_file_idx : 340 │ │ static_fields_size : 11 │ │ instance_fields_size: 0 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 0 │ │ │ │ Class #10 annotations: │ │ Annotations on class │ │ @@ -1279,17 +1280,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -003974: |[003974] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$Reason.:()V │ │ -003984: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -00398a: 0e00 |0003: return-void │ │ +003980: |[003980] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$Reason.:()V │ │ +003990: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +003996: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=188 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$Reason; │ │ │ │ #1 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$Reason;) │ │ @@ -1297,32 +1298,32 @@ │ │ type : '(I)I' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 8 16-bit code units │ │ -003954: |[003954] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$Reason.digitHROf:(I)I │ │ -003964: 1500 ff00 |0000: const/high16 v0, #int 16711680 // #ff │ │ -003968: b501 |0002: and-int/2addr v1, v0 │ │ -00396a: e101 0110 |0003: shr-int/lit8 v1, v1, #int 16 // #10 │ │ -00396e: d801 0101 |0005: add-int/lit8 v1, v1, #int 1 // #01 │ │ -003972: 0f01 |0007: return v1 │ │ +003960: |[003960] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$Reason.digitHROf:(I)I │ │ +003970: 1500 ff00 |0000: const/high16 v0, #int 16711680 // #ff │ │ +003974: b501 |0002: and-int/2addr v1, v0 │ │ +003976: e101 0110 |0003: shr-int/lit8 v1, v1, #int 16 // #10 │ │ +00397a: d801 0101 |0005: add-int/lit8 v1, v1, #int 1 // #01 │ │ +00397e: 0f01 |0007: return v1 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ - source_file_idx : 338 (SudokuRoot.java) │ │ + source_file_idx : 340 (SudokuRoot.java) │ │ │ │ Class #11 header: │ │ class_idx : 82 │ │ access_flags : 17 (0x0011) │ │ superclass_idx : 45 │ │ -source_file_idx : 338 │ │ +source_file_idx : 340 │ │ static_fields_size : 0 │ │ instance_fields_size: 5 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 5 │ │ │ │ Class #11 annotations: │ │ Annotations on class │ │ @@ -1362,27 +1363,27 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 23 16-bit code units │ │ -003b1c: |[003b1c] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.:()V │ │ -003b2c: 7010 4900 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0049 │ │ -003b32: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -003b34: 5c20 2700 |0004: iput-boolean v0, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ -003b38: 1301 d902 |0006: const/16 v1, #int 729 // #2d9 │ │ -003b3c: 2311 8100 |0008: new-array v1, v1, [I // type@0081 │ │ -003b40: 5b21 2900 |000a: iput-object v1, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ -003b44: 1301 5100 |000c: const/16 v1, #int 81 // #51 │ │ -003b48: 2311 8700 |000e: new-array v1, v1, [Z // type@0087 │ │ -003b4c: 5b21 2500 |0010: iput-object v1, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ -003b50: 5920 2600 |0012: iput v0, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ -003b54: 5c20 2800 |0014: iput-boolean v0, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.stateEpicFailCheckAlternator:Z // field@0028 │ │ -003b58: 0e00 |0016: return-void │ │ +003b28: |[003b28] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.:()V │ │ +003b38: 7010 4900 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0049 │ │ +003b3e: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +003b40: 5c20 2700 |0004: iput-boolean v0, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ +003b44: 1301 d902 |0006: const/16 v1, #int 729 // #2d9 │ │ +003b48: 2311 8100 |0008: new-array v1, v1, [I // type@0081 │ │ +003b4c: 5b21 2900 |000a: iput-object v1, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ +003b50: 1301 5100 |000c: const/16 v1, #int 81 // #51 │ │ +003b54: 2311 8700 |000e: new-array v1, v1, [Z // type@0087 │ │ +003b58: 5b21 2500 |0010: iput-object v1, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ +003b5c: 5920 2600 |0012: iput v0, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ +003b60: 5c20 2800 |0014: iput-boolean v0, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.stateEpicFailCheckAlternator:Z // field@0028 │ │ +003b64: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=80 │ │ 0x0004 line=78 │ │ 0x000a line=81 │ │ 0x0010 line=82 │ │ 0x0012 line=83 │ │ @@ -1395,126 +1396,126 @@ │ │ type : '(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 21 │ │ ins : 4 │ │ outs : 2 │ │ insns size : 207 16-bit code units │ │ -003b5c: |[003b5c] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V │ │ -003b6c: 0800 1100 |0000: move-object/from16 v0, v17 │ │ -003b70: 0801 1200 |0002: move-object/from16 v1, v18 │ │ -003b74: 0202 1300 |0004: move/from16 v2, v19 │ │ -003b78: 0203 1400 |0006: move/from16 v3, v20 │ │ -003b7c: 7601 4900 1100 |0008: invoke-direct/range {v17}, Ljava/lang/Object;.:()V // method@0049 │ │ -003b82: 1204 |000b: const/4 v4, #int 0 // #0 │ │ -003b84: 5c04 2700 |000c: iput-boolean v4, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ -003b88: 5515 2700 |000e: iget-boolean v5, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ -003b8c: 5c05 2700 |0010: iput-boolean v5, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ -003b90: 5515 2800 |0012: iget-boolean v5, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.stateEpicFailCheckAlternator:Z // field@0028 │ │ -003b94: 1216 |0014: const/4 v6, #int 1 // #1 │ │ -003b96: b765 |0015: xor-int/2addr v5, v6 │ │ -003b98: 5c05 2800 |0016: iput-boolean v5, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.stateEpicFailCheckAlternator:Z // field@0028 │ │ -003b9c: 5415 2900 |0018: iget-object v5, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ -003ba0: 6e10 7001 0500 |001a: invoke-virtual {v5}, [I.clone:()Ljava/lang/Object; // method@0170 │ │ -003ba6: 0c05 |001d: move-result-object v5 │ │ -003ba8: 1f05 8100 |001e: check-cast v5, [I // type@0081 │ │ -003bac: 5b05 2900 |0020: iput-object v5, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ -003bb0: 5417 2500 |0022: iget-object v7, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ -003bb4: 6e10 7101 0700 |0024: invoke-virtual {v7}, [Z.clone:()Ljava/lang/Object; // method@0171 │ │ -003bba: 0c07 |0027: move-result-object v7 │ │ -003bbc: 1f07 8700 |0028: check-cast v7, [Z // type@0087 │ │ -003bc0: 5b07 2500 |002a: iput-object v7, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ -003bc4: 4707 0702 |002c: aget-boolean v7, v7, v2 │ │ -003bc8: 3907 9700 |002e: if-nez v7, 00c5 // +0097 │ │ -003bcc: 3a03 7600 |0030: if-ltz v3, 00a6 // +0076 │ │ -003bd0: 1307 0800 |0032: const/16 v7, #int 8 // #8 │ │ -003bd4: 3673 7200 |0034: if-gt v3, v7, 00a6 // +0072 │ │ -003bd8: da07 0209 |0036: mul-int/lit8 v7, v2, #int 9 // #09 │ │ -003bdc: 9008 0703 |0038: add-int v8, v7, v3 │ │ -003be0: 4405 0508 |003a: aget v5, v5, v8 │ │ -003be4: 3905 6200 |003c: if-nez v5, 009e // +0062 │ │ -003be8: 1505 0007 |003e: const/high16 v5, #int 117440512 // #700 │ │ -003bec: b625 |0040: or-int/2addr v5, v2 │ │ -003bee: 1209 |0041: const/4 v9, #int 0 // #0 │ │ -003bf0: 130a 0900 |0042: const/16 v10, #int 9 // #9 │ │ -003bf4: 35a9 0b00 |0044: if-ge v9, v10, 004f // +000b │ │ -003bf8: 540a 2900 |0046: iget-object v10, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ -003bfc: 900b 0709 |0048: add-int v11, v7, v9 │ │ -003c00: 4b05 0a0b |004a: aput v5, v10, v11 │ │ -003c04: d809 0901 |004c: add-int/lit8 v9, v9, #int 1 // #01 │ │ -003c08: 28f4 |004e: goto 0042 // -000c │ │ -003c0a: dc05 0209 |004f: rem-int/lit8 v5, v2, #int 9 // #09 │ │ -003c0e: db07 0209 |0051: div-int/lit8 v7, v2, #int 9 // #09 │ │ -003c12: da09 0509 |0053: mul-int/lit8 v9, v5, #int 9 // #09 │ │ -003c16: b039 |0055: add-int/2addr v9, v3 │ │ -003c18: da0b 0709 |0056: mul-int/lit8 v11, v7, #int 9 // #09 │ │ -003c1c: da0b 0b09 |0058: mul-int/lit8 v11, v11, #int 9 // #09 │ │ -003c20: b03b |005a: add-int/2addr v11, v3 │ │ -003c22: db05 0503 |005b: div-int/lit8 v5, v5, #int 3 // #03 │ │ -003c26: da05 0503 |005d: mul-int/lit8 v5, v5, #int 3 // #03 │ │ -003c2a: db07 0703 |005f: div-int/lit8 v7, v7, #int 3 // #03 │ │ -003c2e: da07 0703 |0061: mul-int/lit8 v7, v7, #int 3 // #03 │ │ -003c32: da07 0709 |0063: mul-int/lit8 v7, v7, #int 9 // #09 │ │ -003c36: b075 |0065: add-int/2addr v5, v7 │ │ -003c38: da05 0509 |0066: mul-int/lit8 v5, v5, #int 9 // #09 │ │ -003c3c: b035 |0068: add-int/2addr v5, v3 │ │ -003c3e: 1503 0002 |0069: const/high16 v3, #int 33554432 // #200 │ │ -003c42: b623 |006b: or-int/2addr v3, v2 │ │ -003c44: 1507 0001 |006c: const/high16 v7, #int 16777216 // #100 │ │ -003c48: b627 |006e: or-int/2addr v7, v2 │ │ -003c4a: 150c 0003 |006f: const/high16 v12, #int 50331648 // #300 │ │ -003c4e: b62c |0071: or-int/2addr v12, v2 │ │ -003c50: 120d |0072: const/4 v13, #int 0 // #0 │ │ -003c52: 35ad 1d00 |0073: if-ge v13, v10, 0090 // +001d │ │ -003c56: 540e 2900 |0075: iget-object v14, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ -003c5a: da0f 0d09 |0077: mul-int/lit8 v15, v13, #int 9 // #09 │ │ -003c5e: da10 0f09 |0079: mul-int/lit8 v16, v15, #int 9 // #09 │ │ -003c62: 9010 0910 |007b: add-int v16, v9, v16 │ │ -003c66: 4b03 0e10 |007d: aput v3, v14, v16 │ │ -003c6a: b0bf |007f: add-int/2addr v15, v11 │ │ -003c6c: 4b07 0e0f |0080: aput v7, v14, v15 │ │ -003c70: 7100 be00 0000 |0082: invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.access$000:()[I // method@00be │ │ -003c76: 0c0f |0085: move-result-object v15 │ │ -003c78: 440f 0f0d |0086: aget v15, v15, v13 │ │ -003c7c: da0f 0f09 |0088: mul-int/lit8 v15, v15, #int 9 // #09 │ │ -003c80: b05f |008a: add-int/2addr v15, v5 │ │ -003c82: 4b0c 0e0f |008b: aput v12, v14, v15 │ │ -003c86: d80d 0d01 |008d: add-int/lit8 v13, v13, #int 1 // #01 │ │ -003c8a: 28e4 |008f: goto 0073 // -001c │ │ -003c8c: 5403 2900 |0090: iget-object v3, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ -003c90: 4b04 0308 |0092: aput v4, v3, v8 │ │ -003c94: 5403 2500 |0094: iget-object v3, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ -003c98: 4e06 0302 |0096: aput-boolean v6, v3, v2 │ │ -003c9c: 5211 2600 |0098: iget v1, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ -003ca0: b061 |009a: add-int/2addr v1, v6 │ │ -003ca2: 5901 2600 |009b: iput v1, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ -003ca6: 0e00 |009d: return-void │ │ -003ca8: 2201 3000 |009e: new-instance v1, Ljava/lang/RuntimeException; // type@0030 │ │ -003cac: 1a02 4602 |00a0: const-string v2, "invalid choice" // string@0246 │ │ -003cb0: 7020 4e00 2100 |00a2: invoke-direct {v1, v2}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ -003cb6: 2701 |00a5: throw v1 │ │ -003cb8: 2201 3000 |00a6: new-instance v1, Ljava/lang/RuntimeException; // type@0030 │ │ -003cbc: 2204 3200 |00a8: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ -003cc0: 7010 5400 0400 |00aa: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -003cc6: 1a05 8502 |00ad: const-string v5, "oor choice " // string@0285 │ │ -003cca: 6e20 5700 5400 |00af: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -003cd0: 6e20 5600 2400 |00b2: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -003cd6: 1a02 0500 |00b5: const-string v2, " : " // string@0005 │ │ -003cda: 6e20 5700 2400 |00b7: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -003ce0: 6e20 5600 3400 |00ba: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -003ce6: 6e10 5900 0400 |00bd: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -003cec: 0c02 |00c0: move-result-object v2 │ │ -003cee: 7020 4e00 2100 |00c1: invoke-direct {v1, v2}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ -003cf4: 2701 |00c4: throw v1 │ │ -003cf6: 2201 3000 |00c5: new-instance v1, Ljava/lang/RuntimeException; // type@0030 │ │ -003cfa: 1a02 0002 |00c7: const-string v2, "double-completion" // string@0200 │ │ -003cfe: 7020 4e00 2100 |00c9: invoke-direct {v1, v2}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ -003d04: 2802 |00cc: goto 00ce // +0002 │ │ -003d06: 2701 |00cd: throw v1 │ │ -003d08: 28ff |00ce: goto 00cd // -0001 │ │ +003b68: |[003b68] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V │ │ +003b78: 0800 1100 |0000: move-object/from16 v0, v17 │ │ +003b7c: 0801 1200 |0002: move-object/from16 v1, v18 │ │ +003b80: 0202 1300 |0004: move/from16 v2, v19 │ │ +003b84: 0203 1400 |0006: move/from16 v3, v20 │ │ +003b88: 7601 4900 1100 |0008: invoke-direct/range {v17}, Ljava/lang/Object;.:()V // method@0049 │ │ +003b8e: 1204 |000b: const/4 v4, #int 0 // #0 │ │ +003b90: 5c04 2700 |000c: iput-boolean v4, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ +003b94: 5515 2700 |000e: iget-boolean v5, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ +003b98: 5c05 2700 |0010: iput-boolean v5, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ +003b9c: 5515 2800 |0012: iget-boolean v5, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.stateEpicFailCheckAlternator:Z // field@0028 │ │ +003ba0: 1216 |0014: const/4 v6, #int 1 // #1 │ │ +003ba2: b765 |0015: xor-int/2addr v5, v6 │ │ +003ba4: 5c05 2800 |0016: iput-boolean v5, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.stateEpicFailCheckAlternator:Z // field@0028 │ │ +003ba8: 5415 2900 |0018: iget-object v5, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ +003bac: 6e10 7001 0500 |001a: invoke-virtual {v5}, [I.clone:()Ljava/lang/Object; // method@0170 │ │ +003bb2: 0c05 |001d: move-result-object v5 │ │ +003bb4: 1f05 8100 |001e: check-cast v5, [I // type@0081 │ │ +003bb8: 5b05 2900 |0020: iput-object v5, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ +003bbc: 5417 2500 |0022: iget-object v7, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ +003bc0: 6e10 7101 0700 |0024: invoke-virtual {v7}, [Z.clone:()Ljava/lang/Object; // method@0171 │ │ +003bc6: 0c07 |0027: move-result-object v7 │ │ +003bc8: 1f07 8700 |0028: check-cast v7, [Z // type@0087 │ │ +003bcc: 5b07 2500 |002a: iput-object v7, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ +003bd0: 4707 0702 |002c: aget-boolean v7, v7, v2 │ │ +003bd4: 3907 9700 |002e: if-nez v7, 00c5 // +0097 │ │ +003bd8: 3a03 7600 |0030: if-ltz v3, 00a6 // +0076 │ │ +003bdc: 1307 0800 |0032: const/16 v7, #int 8 // #8 │ │ +003be0: 3673 7200 |0034: if-gt v3, v7, 00a6 // +0072 │ │ +003be4: da07 0209 |0036: mul-int/lit8 v7, v2, #int 9 // #09 │ │ +003be8: 9008 0703 |0038: add-int v8, v7, v3 │ │ +003bec: 4405 0508 |003a: aget v5, v5, v8 │ │ +003bf0: 3905 6200 |003c: if-nez v5, 009e // +0062 │ │ +003bf4: 1505 0007 |003e: const/high16 v5, #int 117440512 // #700 │ │ +003bf8: b625 |0040: or-int/2addr v5, v2 │ │ +003bfa: 1209 |0041: const/4 v9, #int 0 // #0 │ │ +003bfc: 130a 0900 |0042: const/16 v10, #int 9 // #9 │ │ +003c00: 35a9 0b00 |0044: if-ge v9, v10, 004f // +000b │ │ +003c04: 540a 2900 |0046: iget-object v10, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ +003c08: 900b 0709 |0048: add-int v11, v7, v9 │ │ +003c0c: 4b05 0a0b |004a: aput v5, v10, v11 │ │ +003c10: d809 0901 |004c: add-int/lit8 v9, v9, #int 1 // #01 │ │ +003c14: 28f4 |004e: goto 0042 // -000c │ │ +003c16: dc05 0209 |004f: rem-int/lit8 v5, v2, #int 9 // #09 │ │ +003c1a: db07 0209 |0051: div-int/lit8 v7, v2, #int 9 // #09 │ │ +003c1e: da09 0509 |0053: mul-int/lit8 v9, v5, #int 9 // #09 │ │ +003c22: b039 |0055: add-int/2addr v9, v3 │ │ +003c24: da0b 0709 |0056: mul-int/lit8 v11, v7, #int 9 // #09 │ │ +003c28: da0b 0b09 |0058: mul-int/lit8 v11, v11, #int 9 // #09 │ │ +003c2c: b03b |005a: add-int/2addr v11, v3 │ │ +003c2e: db05 0503 |005b: div-int/lit8 v5, v5, #int 3 // #03 │ │ +003c32: da05 0503 |005d: mul-int/lit8 v5, v5, #int 3 // #03 │ │ +003c36: db07 0703 |005f: div-int/lit8 v7, v7, #int 3 // #03 │ │ +003c3a: da07 0703 |0061: mul-int/lit8 v7, v7, #int 3 // #03 │ │ +003c3e: da07 0709 |0063: mul-int/lit8 v7, v7, #int 9 // #09 │ │ +003c42: b075 |0065: add-int/2addr v5, v7 │ │ +003c44: da05 0509 |0066: mul-int/lit8 v5, v5, #int 9 // #09 │ │ +003c48: b035 |0068: add-int/2addr v5, v3 │ │ +003c4a: 1503 0002 |0069: const/high16 v3, #int 33554432 // #200 │ │ +003c4e: b623 |006b: or-int/2addr v3, v2 │ │ +003c50: 1507 0001 |006c: const/high16 v7, #int 16777216 // #100 │ │ +003c54: b627 |006e: or-int/2addr v7, v2 │ │ +003c56: 150c 0003 |006f: const/high16 v12, #int 50331648 // #300 │ │ +003c5a: b62c |0071: or-int/2addr v12, v2 │ │ +003c5c: 120d |0072: const/4 v13, #int 0 // #0 │ │ +003c5e: 35ad 1d00 |0073: if-ge v13, v10, 0090 // +001d │ │ +003c62: 540e 2900 |0075: iget-object v14, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ +003c66: da0f 0d09 |0077: mul-int/lit8 v15, v13, #int 9 // #09 │ │ +003c6a: da10 0f09 |0079: mul-int/lit8 v16, v15, #int 9 // #09 │ │ +003c6e: 9010 0910 |007b: add-int v16, v9, v16 │ │ +003c72: 4b03 0e10 |007d: aput v3, v14, v16 │ │ +003c76: b0bf |007f: add-int/2addr v15, v11 │ │ +003c78: 4b07 0e0f |0080: aput v7, v14, v15 │ │ +003c7c: 7100 bc00 0000 |0082: invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.-$$Nest$sfgetsquareOfs:()[I // method@00bc │ │ +003c82: 0c0f |0085: move-result-object v15 │ │ +003c84: 440f 0f0d |0086: aget v15, v15, v13 │ │ +003c88: da0f 0f09 |0088: mul-int/lit8 v15, v15, #int 9 // #09 │ │ +003c8c: b05f |008a: add-int/2addr v15, v5 │ │ +003c8e: 4b0c 0e0f |008b: aput v12, v14, v15 │ │ +003c92: d80d 0d01 |008d: add-int/lit8 v13, v13, #int 1 // #01 │ │ +003c96: 28e4 |008f: goto 0073 // -001c │ │ +003c98: 5403 2900 |0090: iget-object v3, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ +003c9c: 4b04 0308 |0092: aput v4, v3, v8 │ │ +003ca0: 5403 2500 |0094: iget-object v3, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ +003ca4: 4e06 0302 |0096: aput-boolean v6, v3, v2 │ │ +003ca8: 5211 2600 |0098: iget v1, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ +003cac: b061 |009a: add-int/2addr v1, v6 │ │ +003cae: 5901 2600 |009b: iput v1, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ +003cb2: 0e00 |009d: return-void │ │ +003cb4: 2201 3000 |009e: new-instance v1, Ljava/lang/RuntimeException; // type@0030 │ │ +003cb8: 1a02 4802 |00a0: const-string v2, "invalid choice" // string@0248 │ │ +003cbc: 7020 4e00 2100 |00a2: invoke-direct {v1, v2}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ +003cc2: 2701 |00a5: throw v1 │ │ +003cc4: 2201 3000 |00a6: new-instance v1, Ljava/lang/RuntimeException; // type@0030 │ │ +003cc8: 2204 3200 |00a8: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ +003ccc: 7010 5400 0400 |00aa: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +003cd2: 1a05 8702 |00ad: const-string v5, "oor choice " // string@0287 │ │ +003cd6: 6e20 5700 5400 |00af: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +003cdc: 6e20 5600 2400 |00b2: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +003ce2: 1a02 0500 |00b5: const-string v2, " : " // string@0005 │ │ +003ce6: 6e20 5700 2400 |00b7: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +003cec: 6e20 5600 3400 |00ba: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +003cf2: 6e10 5900 0400 |00bd: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +003cf8: 0c02 |00c0: move-result-object v2 │ │ +003cfa: 7020 4e00 2100 |00c1: invoke-direct {v1, v2}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ +003d00: 2701 |00c4: throw v1 │ │ +003d02: 2201 3000 |00c5: new-instance v1, Ljava/lang/RuntimeException; // type@0030 │ │ +003d06: 1a02 0202 |00c7: const-string v2, "double-completion" // string@0202 │ │ +003d0a: 7020 4e00 2100 |00c9: invoke-direct {v1, v2}, Ljava/lang/RuntimeException;.:(Ljava/lang/String;)V // method@004e │ │ +003d10: 2802 |00cc: goto 00ce // +0002 │ │ +003d12: 2701 |00cd: throw v1 │ │ +003d14: 28ff |00ce: goto 00cd // -0001 │ │ catches : (none) │ │ positions : │ │ 0x0008 line=86 │ │ 0x000c line=78 │ │ 0x000e line=87 │ │ 0x0012 line=88 │ │ 0x0018 line=89 │ │ @@ -1546,75 +1547,75 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 13 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 97 16-bit code units │ │ -0039b8: |[0039b8] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.checkForEpicFailure:()I │ │ -0039c8: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -0039ca: 1201 |0001: const/4 v1, #int 0 // #0 │ │ -0039cc: 1302 0900 |0002: const/16 v2, #int 9 // #9 │ │ -0039d0: 3521 5c00 |0004: if-ge v1, v2, 0060 // +005c │ │ -0039d4: 1203 |0006: const/4 v3, #int 0 // #0 │ │ -0039d6: 3523 5600 |0007: if-ge v3, v2, 005d // +0056 │ │ -0039da: 1204 |0009: const/4 v4, #int 0 // #0 │ │ -0039dc: 1205 |000a: const/4 v5, #int 0 // #0 │ │ -0039de: 1206 |000b: const/4 v6, #int 0 // #0 │ │ -0039e0: 1207 |000c: const/4 v7, #int 0 // #0 │ │ -0039e2: 3524 3000 |000d: if-ge v4, v2, 003d // +0030 │ │ -0039e6: da08 0109 |000f: mul-int/lit8 v8, v1, #int 9 // #09 │ │ -0039ea: b048 |0011: add-int/2addr v8, v4 │ │ -0039ec: da09 0409 |0012: mul-int/lit8 v9, v4, #int 9 // #09 │ │ -0039f0: b019 |0014: add-int/2addr v9, v1 │ │ -0039f2: 7100 be00 0000 |0015: invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.access$000:()[I // method@00be │ │ -0039f8: 0c0a |0018: move-result-object v10 │ │ -0039fa: 440a 0a04 |0019: aget v10, v10, v4 │ │ -0039fe: 7100 be00 0000 |001b: invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.access$000:()[I // method@00be │ │ -003a04: 0c0b |001e: move-result-object v11 │ │ -003a06: 440b 0b01 |001f: aget v11, v11, v1 │ │ -003a0a: da0b 0b03 |0021: mul-int/lit8 v11, v11, #int 3 // #03 │ │ -003a0e: b0ba |0023: add-int/2addr v10, v11 │ │ -003a10: 6e30 bb00 8c03 |0024: invoke-virtual {v12, v8, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ -003a16: 0a08 |0027: move-result v8 │ │ -003a18: 121b |0028: const/4 v11, #int 1 // #1 │ │ -003a1a: 3808 0300 |0029: if-eqz v8, 002c // +0003 │ │ -003a1e: 1215 |002b: const/4 v5, #int 1 // #1 │ │ -003a20: 6e30 bb00 9c03 |002c: invoke-virtual {v12, v9, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ -003a26: 0a08 |002f: move-result v8 │ │ -003a28: 3808 0300 |0030: if-eqz v8, 0033 // +0003 │ │ -003a2c: 1216 |0032: const/4 v6, #int 1 // #1 │ │ -003a2e: 6e30 bb00 ac03 |0033: invoke-virtual {v12, v10, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ -003a34: 0a08 |0036: move-result v8 │ │ -003a36: 3808 0300 |0037: if-eqz v8, 003a // +0003 │ │ -003a3a: 1217 |0039: const/4 v7, #int 1 // #1 │ │ -003a3c: d804 0401 |003a: add-int/lit8 v4, v4, #int 1 // #01 │ │ -003a40: 28d1 |003c: goto 000d // -002f │ │ -003a42: 3905 0b00 |003d: if-nez v5, 0048 // +000b │ │ -003a46: 1500 0004 |003f: const/high16 v0, #int 67108864 // #400 │ │ -003a4a: da01 0109 |0041: mul-int/lit8 v1, v1, #int 9 // #09 │ │ -003a4e: b610 |0043: or-int/2addr v0, v1 │ │ -003a50: e001 0310 |0044: shl-int/lit8 v1, v3, #int 16 // #10 │ │ -003a54: b610 |0046: or-int/2addr v0, v1 │ │ -003a56: 0f00 |0047: return v0 │ │ -003a58: 3906 0500 |0048: if-nez v6, 004d // +0005 │ │ -003a5c: 1500 0005 |004a: const/high16 v0, #int 83886080 // #500 │ │ -003a60: 28f7 |004c: goto 0043 // -0009 │ │ -003a62: 3907 0d00 |004d: if-nez v7, 005a // +000d │ │ -003a66: 1500 0006 |004f: const/high16 v0, #int 100663296 // #600 │ │ -003a6a: 7100 be00 0000 |0051: invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.access$000:()[I // method@00be │ │ -003a70: 0c02 |0054: move-result-object v2 │ │ -003a72: 4401 0201 |0055: aget v1, v2, v1 │ │ -003a76: da01 0103 |0057: mul-int/lit8 v1, v1, #int 3 // #03 │ │ -003a7a: 28ea |0059: goto 0043 // -0016 │ │ -003a7c: d803 0301 |005a: add-int/lit8 v3, v3, #int 1 // #01 │ │ -003a80: 28ab |005c: goto 0007 // -0055 │ │ -003a82: d801 0101 |005d: add-int/lit8 v1, v1, #int 1 // #01 │ │ -003a86: 28a3 |005f: goto 0002 // -005d │ │ -003a88: 0f00 |0060: return v0 │ │ +0039c4: |[0039c4] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.checkForEpicFailure:()I │ │ +0039d4: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +0039d6: 1201 |0001: const/4 v1, #int 0 // #0 │ │ +0039d8: 1302 0900 |0002: const/16 v2, #int 9 // #9 │ │ +0039dc: 3521 5c00 |0004: if-ge v1, v2, 0060 // +005c │ │ +0039e0: 1203 |0006: const/4 v3, #int 0 // #0 │ │ +0039e2: 3523 5600 |0007: if-ge v3, v2, 005d // +0056 │ │ +0039e6: 1204 |0009: const/4 v4, #int 0 // #0 │ │ +0039e8: 1205 |000a: const/4 v5, #int 0 // #0 │ │ +0039ea: 1206 |000b: const/4 v6, #int 0 // #0 │ │ +0039ec: 1207 |000c: const/4 v7, #int 0 // #0 │ │ +0039ee: 3524 3000 |000d: if-ge v4, v2, 003d // +0030 │ │ +0039f2: da08 0109 |000f: mul-int/lit8 v8, v1, #int 9 // #09 │ │ +0039f6: b048 |0011: add-int/2addr v8, v4 │ │ +0039f8: da09 0409 |0012: mul-int/lit8 v9, v4, #int 9 // #09 │ │ +0039fc: b019 |0014: add-int/2addr v9, v1 │ │ +0039fe: 7100 bc00 0000 |0015: invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.-$$Nest$sfgetsquareOfs:()[I // method@00bc │ │ +003a04: 0c0a |0018: move-result-object v10 │ │ +003a06: 440a 0a04 |0019: aget v10, v10, v4 │ │ +003a0a: 7100 bc00 0000 |001b: invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.-$$Nest$sfgetsquareOfs:()[I // method@00bc │ │ +003a10: 0c0b |001e: move-result-object v11 │ │ +003a12: 440b 0b01 |001f: aget v11, v11, v1 │ │ +003a16: da0b 0b03 |0021: mul-int/lit8 v11, v11, #int 3 // #03 │ │ +003a1a: b0ba |0023: add-int/2addr v10, v11 │ │ +003a1c: 6e30 bb00 8c03 |0024: invoke-virtual {v12, v8, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ +003a22: 0a08 |0027: move-result v8 │ │ +003a24: 121b |0028: const/4 v11, #int 1 // #1 │ │ +003a26: 3808 0300 |0029: if-eqz v8, 002c // +0003 │ │ +003a2a: 1215 |002b: const/4 v5, #int 1 // #1 │ │ +003a2c: 6e30 bb00 9c03 |002c: invoke-virtual {v12, v9, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ +003a32: 0a08 |002f: move-result v8 │ │ +003a34: 3808 0300 |0030: if-eqz v8, 0033 // +0003 │ │ +003a38: 1216 |0032: const/4 v6, #int 1 // #1 │ │ +003a3a: 6e30 bb00 ac03 |0033: invoke-virtual {v12, v10, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ +003a40: 0a08 |0036: move-result v8 │ │ +003a42: 3808 0300 |0037: if-eqz v8, 003a // +0003 │ │ +003a46: 1217 |0039: const/4 v7, #int 1 // #1 │ │ +003a48: d804 0401 |003a: add-int/lit8 v4, v4, #int 1 // #01 │ │ +003a4c: 28d1 |003c: goto 000d // -002f │ │ +003a4e: 3905 0b00 |003d: if-nez v5, 0048 // +000b │ │ +003a52: 1500 0004 |003f: const/high16 v0, #int 67108864 // #400 │ │ +003a56: da01 0109 |0041: mul-int/lit8 v1, v1, #int 9 // #09 │ │ +003a5a: b610 |0043: or-int/2addr v0, v1 │ │ +003a5c: e001 0310 |0044: shl-int/lit8 v1, v3, #int 16 // #10 │ │ +003a60: b610 |0046: or-int/2addr v0, v1 │ │ +003a62: 0f00 |0047: return v0 │ │ +003a64: 3906 0500 |0048: if-nez v6, 004d // +0005 │ │ +003a68: 1500 0005 |004a: const/high16 v0, #int 83886080 // #500 │ │ +003a6c: 28f7 |004c: goto 0043 // -0009 │ │ +003a6e: 3907 0d00 |004d: if-nez v7, 005a // +000d │ │ +003a72: 1500 0006 |004f: const/high16 v0, #int 100663296 // #600 │ │ +003a76: 7100 bc00 0000 |0051: invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.-$$Nest$sfgetsquareOfs:()[I // method@00bc │ │ +003a7c: 0c02 |0054: move-result-object v2 │ │ +003a7e: 4401 0201 |0055: aget v1, v2, v1 │ │ +003a82: da01 0103 |0057: mul-int/lit8 v1, v1, #int 3 // #03 │ │ +003a86: 28ea |0059: goto 0043 // -0016 │ │ +003a88: d803 0301 |005a: add-int/lit8 v3, v3, #int 1 // #01 │ │ +003a8c: 28ab |005c: goto 0007 // -0055 │ │ +003a8e: d801 0101 |005d: add-int/lit8 v1, v1, #int 1 // #01 │ │ +003a92: 28a3 |005f: goto 0002 // -005d │ │ +003a94: 0f00 |0060: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0015 line=164 │ │ 0x0024 line=165 │ │ 0x002c line=167 │ │ 0x0033 line=169 │ │ 0x0051 line=177 │ │ @@ -1626,29 +1627,29 @@ │ │ type : '(I)I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 21 16-bit code units │ │ -003a8c: |[003a8c] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.getChoice:(I)I │ │ -003a9c: 12f0 |0000: const/4 v0, #int -1 // #ff │ │ -003a9e: 1201 |0001: const/4 v1, #int 0 // #0 │ │ -003aa0: 12f2 |0002: const/4 v2, #int -1 // #ff │ │ -003aa2: 1303 0900 |0003: const/16 v3, #int 9 // #9 │ │ -003aa6: 3531 0f00 |0005: if-ge v1, v3, 0014 // +000f │ │ -003aaa: 6e30 bb00 5401 |0007: invoke-virtual {v4, v5, v1}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ -003ab0: 0a03 |000a: move-result v3 │ │ -003ab2: 3803 0600 |000b: if-eqz v3, 0011 // +0006 │ │ -003ab6: 3202 0300 |000d: if-eq v2, v0, 0010 // +0003 │ │ -003aba: 0f00 |000f: return v0 │ │ -003abc: 0112 |0010: move v2, v1 │ │ -003abe: d801 0101 |0011: add-int/lit8 v1, v1, #int 1 // #01 │ │ -003ac2: 28f0 |0013: goto 0003 // -0010 │ │ -003ac4: 0f02 |0014: return v2 │ │ +003a98: |[003a98] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.getChoice:(I)I │ │ +003aa8: 12f0 |0000: const/4 v0, #int -1 // #ff │ │ +003aaa: 1201 |0001: const/4 v1, #int 0 // #0 │ │ +003aac: 12f2 |0002: const/4 v2, #int -1 // #ff │ │ +003aae: 1303 0900 |0003: const/16 v3, #int 9 // #9 │ │ +003ab2: 3531 0f00 |0005: if-ge v1, v3, 0014 // +000f │ │ +003ab6: 6e30 bb00 5401 |0007: invoke-virtual {v4, v5, v1}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ +003abc: 0a03 |000a: move-result v3 │ │ +003abe: 3803 0600 |000b: if-eqz v3, 0011 // +0006 │ │ +003ac2: 3202 0300 |000d: if-eq v2, v0, 0010 // +0003 │ │ +003ac6: 0f00 |000f: return v0 │ │ +003ac8: 0112 |0010: move v2, v1 │ │ +003aca: d801 0101 |0011: add-int/lit8 v1, v1, #int 1 // #01 │ │ +003ace: 28f0 |0013: goto 0003 // -0010 │ │ +003ad0: 0f02 |0014: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0007 line=137 │ │ locals : │ │ 0x0000 - 0x0015 reg=4 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; │ │ 0x0000 - 0x0015 reg=5 (null) I │ │ │ │ @@ -1657,26 +1658,26 @@ │ │ type : '(I)I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 18 16-bit code units │ │ -003ac8: |[003ac8] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.getChoiceCount:(I)I │ │ -003ad8: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -003ada: 1201 |0001: const/4 v1, #int 0 // #0 │ │ -003adc: 1302 0900 |0002: const/16 v2, #int 9 // #9 │ │ -003ae0: 3520 0d00 |0004: if-ge v0, v2, 0011 // +000d │ │ -003ae4: 6e30 bb00 4300 |0006: invoke-virtual {v3, v4, v0}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ -003aea: 0a02 |0009: move-result v2 │ │ -003aec: 3802 0400 |000a: if-eqz v2, 000e // +0004 │ │ -003af0: d801 0101 |000c: add-int/lit8 v1, v1, #int 1 // #01 │ │ -003af4: d800 0001 |000e: add-int/lit8 v0, v0, #int 1 // #01 │ │ -003af8: 28f2 |0010: goto 0002 // -000e │ │ -003afa: 0f01 |0011: return v1 │ │ +003ad4: |[003ad4] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.getChoiceCount:(I)I │ │ +003ae4: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +003ae6: 1201 |0001: const/4 v1, #int 0 // #0 │ │ +003ae8: 1302 0900 |0002: const/16 v2, #int 9 // #9 │ │ +003aec: 3520 0d00 |0004: if-ge v0, v2, 0011 // +000d │ │ +003af0: 6e30 bb00 4300 |0006: invoke-virtual {v3, v4, v0}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ +003af6: 0a02 |0009: move-result v2 │ │ +003af8: 3802 0400 |000a: if-eqz v2, 000e // +0004 │ │ +003afc: d801 0101 |000c: add-int/lit8 v1, v1, #int 1 // #01 │ │ +003b00: d800 0001 |000e: add-int/lit8 v0, v0, #int 1 // #01 │ │ +003b04: 28f2 |0010: goto 0002 // -000e │ │ +003b06: 0f01 |0011: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0006 line=130 │ │ locals : │ │ 0x0000 - 0x0012 reg=3 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; │ │ 0x0000 - 0x0012 reg=4 (null) I │ │ │ │ @@ -1685,20 +1686,20 @@ │ │ type : '(II)I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 0 │ │ insns size : 8 16-bit code units │ │ -003afc: |[003afc] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.reasonFor:(II)I │ │ -003b0c: 5410 2900 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ -003b10: da02 0209 |0002: mul-int/lit8 v2, v2, #int 9 // #09 │ │ -003b14: b032 |0004: add-int/2addr v2, v3 │ │ -003b16: 4402 0002 |0005: aget v2, v0, v2 │ │ -003b1a: 0f02 |0007: return v2 │ │ +003b08: |[003b08] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.reasonFor:(II)I │ │ +003b18: 5410 2900 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ +003b1c: da02 0209 |0002: mul-int/lit8 v2, v2, #int 9 // #09 │ │ +003b20: b032 |0004: add-int/2addr v2, v3 │ │ +003b22: 4402 0002 |0005: aget v2, v0, v2 │ │ +003b26: 0f02 |0007: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=125 │ │ locals : │ │ 0x0000 - 0x0008 reg=1 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; │ │ 0x0000 - 0x0008 reg=2 (null) I │ │ 0x0000 - 0x0008 reg=3 (null) I │ │ @@ -1708,39 +1709,39 @@ │ │ type : '(II)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 0 │ │ insns size : 13 16-bit code units │ │ -00398c: |[00398c] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.wouldBeValid:(II)Z │ │ -00399c: 5410 2900 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ -0039a0: da02 0209 |0002: mul-int/lit8 v2, v2, #int 9 // #09 │ │ -0039a4: b032 |0004: add-int/2addr v2, v3 │ │ -0039a6: 4402 0002 |0005: aget v2, v0, v2 │ │ -0039aa: 3902 0400 |0007: if-nez v2, 000b // +0004 │ │ -0039ae: 1212 |0009: const/4 v2, #int 1 // #1 │ │ -0039b0: 2802 |000a: goto 000c // +0002 │ │ -0039b2: 1202 |000b: const/4 v2, #int 0 // #0 │ │ -0039b4: 0f02 |000c: return v2 │ │ +003998: |[003998] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot$State.wouldBeValid:(II)Z │ │ +0039a8: 5410 2900 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.validity:[I // field@0029 │ │ +0039ac: da02 0209 |0002: mul-int/lit8 v2, v2, #int 9 // #09 │ │ +0039b0: b032 |0004: add-int/2addr v2, v3 │ │ +0039b2: 4402 0002 |0005: aget v2, v0, v2 │ │ +0039b6: 3902 0400 |0007: if-nez v2, 000b // +0004 │ │ +0039ba: 1212 |0009: const/4 v2, #int 1 // #1 │ │ +0039bc: 2802 |000a: goto 000c // +0002 │ │ +0039be: 1202 |000b: const/4 v2, #int 0 // #0 │ │ +0039c0: 0f02 |000c: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=122 │ │ locals : │ │ 0x0000 - 0x000d reg=1 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; │ │ 0x0000 - 0x000d reg=2 (null) I │ │ 0x0000 - 0x000d reg=3 (null) I │ │ │ │ - source_file_idx : 338 (SudokuRoot.java) │ │ + source_file_idx : 340 (SudokuRoot.java) │ │ │ │ Class #12 header: │ │ class_idx : 84 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #12 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE;' │ │ @@ -1760,47 +1761,47 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/MainActivity;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -003f54: |[003f54] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V │ │ -003f64: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -003f6a: 5b01 2c00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002c │ │ -003f6e: 0e00 |0005: return-void │ │ +003f60: |[003f60] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V │ │ +003f70: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +003f76: 5b01 2c00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002c │ │ +003f7a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE;) │ │ name : 'onClick' │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -003f70: |[003f70] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE.onClick:(Landroid/view/View;)V │ │ -003f80: 5410 2c00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002c │ │ -003f84: 6e20 e000 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.lambda$onCreate$2$MainActivity:(Landroid/view/View;)V // method@00e0 │ │ -003f8a: 0e00 |0005: return-void │ │ +003f7c: |[003f7c] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE.onClick:(Landroid/view/View;)V │ │ +003f8c: 5410 2c00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002c │ │ +003f90: 6e20 e000 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.lambda$onCreate$2$MainActivity:(Landroid/view/View;)V // method@00e0 │ │ +003f96: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #13 header: │ │ class_idx : 85 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #13 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI;' │ │ @@ -1820,47 +1821,47 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/MainActivity;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -003f8c: |[003f8c] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V │ │ -003f9c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -003fa2: 5b01 2d00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002d │ │ -003fa6: 0e00 |0005: return-void │ │ +003f98: |[003f98] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V │ │ +003fa8: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +003fae: 5b01 2d00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002d │ │ +003fb2: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI;) │ │ name : 'onClick' │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -003fa8: |[003fa8] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI.onClick:(Landroid/view/View;)V │ │ -003fb8: 5410 2d00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002d │ │ -003fbc: 6e20 e100 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.lambda$onCreate$3$MainActivity:(Landroid/view/View;)V // method@00e1 │ │ -003fc2: 0e00 |0005: return-void │ │ +003fb4: |[003fb4] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI.onClick:(Landroid/view/View;)V │ │ +003fc4: 5410 2d00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002d │ │ +003fc8: 6e20 e100 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.lambda$onCreate$3$MainActivity:(Landroid/view/View;)V // method@00e1 │ │ +003fce: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #14 header: │ │ class_idx : 86 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #14 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s;' │ │ @@ -1880,47 +1881,47 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/MainActivity;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -003fc4: |[003fc4] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V │ │ -003fd4: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -003fda: 5b01 2e00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002e │ │ -003fde: 0e00 |0005: return-void │ │ +003fd0: |[003fd0] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V │ │ +003fe0: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +003fe6: 5b01 2e00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002e │ │ +003fea: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s;) │ │ name : 'onClick' │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -003fe0: |[003fe0] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s.onClick:(Landroid/view/View;)V │ │ -003ff0: 5410 2e00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002e │ │ -003ff4: 6e20 df00 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.lambda$onCreate$1$MainActivity:(Landroid/view/View;)V // method@00df │ │ -003ffa: 0e00 |0005: return-void │ │ +003fec: |[003fec] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s.onClick:(Landroid/view/View;)V │ │ +003ffc: 5410 2e00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002e │ │ +004000: 6e20 df00 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.lambda$onCreate$1$MainActivity:(Landroid/view/View;)V // method@00df │ │ +004006: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #15 header: │ │ class_idx : 87 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #15 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE;' │ │ @@ -1940,47 +1941,47 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/MainActivity;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -003ffc: |[003ffc] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V │ │ -00400c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -004012: 5b01 2f00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002f │ │ -004016: 0e00 |0005: return-void │ │ +004008: |[004008] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V │ │ +004018: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +00401e: 5b01 2f00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002f │ │ +004022: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE;) │ │ name : 'onClick' │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -004018: |[004018] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE.onClick:(Landroid/view/View;)V │ │ -004028: 5410 2f00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002f │ │ -00402c: 6e20 de00 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.lambda$onCreate$0$MainActivity:(Landroid/view/View;)V // method@00de │ │ -004032: 0e00 |0005: return-void │ │ +004024: |[004024] t20kdc.offlinepuzzlesolver.-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE.onClick:(Landroid/view/View;)V │ │ +004034: 5410 2f00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE;.f$0:Lt20kdc/offlinepuzzlesolver/MainActivity; // field@002f │ │ +004038: 6e20 de00 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.lambda$onCreate$0$MainActivity:(Landroid/view/View;)V // method@00de │ │ +00403e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #16 header: │ │ class_idx : 88 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 2 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #16 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;' │ │ @@ -2004,49 +2005,49 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Class;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -004034: |[004034] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Class;)V │ │ -004044: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -00404a: 5b01 3000 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0030 │ │ -00404e: 5b02 3100 |0005: iput-object v2, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.f$1:Ljava/lang/Class; // field@0031 │ │ -004052: 0e00 |0007: return-void │ │ +004040: |[004040] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Class;)V │ │ +004050: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +004056: 5b01 3000 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0030 │ │ +00405a: 5b02 3100 |0005: iput-object v2, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.f$1:Ljava/lang/Class; // field@0031 │ │ +00405e: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;) │ │ name : 'onClick' │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 8 16-bit code units │ │ -004054: |[004054] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs.onClick:(Landroid/view/View;)V │ │ -004064: 5420 3000 |0000: iget-object v0, v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0030 │ │ -004068: 5421 3100 |0002: iget-object v1, v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.f$1:Ljava/lang/Class; // field@0031 │ │ -00406c: 6e30 0a01 1003 |0004: invoke-virtual {v0, v1, v3}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.lambda$bindSolveButton$0$StreamlineActivity:(Ljava/lang/Class;Landroid/view/View;)V // method@010a │ │ -004072: 0e00 |0007: return-void │ │ +004060: |[004060] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs.onClick:(Landroid/view/View;)V │ │ +004070: 5420 3000 |0000: iget-object v0, v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0030 │ │ +004074: 5421 3100 |0002: iget-object v1, v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.f$1:Ljava/lang/Class; // field@0031 │ │ +004078: 6e30 0a01 1003 |0004: invoke-virtual {v0, v1, v3}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.lambda$bindSolveButton$0$StreamlineActivity:(Ljava/lang/Class;Landroid/view/View;)V // method@010a │ │ +00407e: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #17 header: │ │ class_idx : 89 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 3 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #17 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;' │ │ @@ -2074,51 +2075,51 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -004074: |[004074] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V │ │ -004084: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -00408a: 5b01 3200 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread; // field@0032 │ │ -00408e: 5b02 3300 |0005: iput-object v2, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$1:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0033 │ │ -004092: 5b03 3400 |0007: iput-object v3, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$2:Ljava/lang/String; // field@0034 │ │ -004096: 0e00 |0009: return-void │ │ +004080: |[004080] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V │ │ +004090: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +004096: 5b01 3200 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread; // field@0032 │ │ +00409a: 5b02 3300 |0005: iput-object v2, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$1:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0033 │ │ +00409e: 5b03 3400 |0007: iput-object v3, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$2:Ljava/lang/String; // field@0034 │ │ +0040a2: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;) │ │ name : 'run' │ │ type : '()V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 10 16-bit code units │ │ -004098: |[004098] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA.run:()V │ │ -0040a8: 5430 3200 |0000: iget-object v0, v3, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread; // field@0032 │ │ -0040ac: 5431 3300 |0002: iget-object v1, v3, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$1:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0033 │ │ -0040b0: 5432 3400 |0004: iget-object v2, v3, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$2:Ljava/lang/String; // field@0034 │ │ -0040b4: 6e30 0201 1002 |0006: invoke-virtual {v0, v1, v2}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.lambda$run$0$StreamlineActivity$PuzzleSolverAsyncThread:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V // method@0102 │ │ -0040ba: 0e00 |0009: return-void │ │ +0040a4: |[0040a4] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA.run:()V │ │ +0040b4: 5430 3200 |0000: iget-object v0, v3, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread; // field@0032 │ │ +0040b8: 5431 3300 |0002: iget-object v1, v3, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$1:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0033 │ │ +0040bc: 5432 3400 |0004: iget-object v2, v3, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.f$2:Ljava/lang/String; // field@0034 │ │ +0040c0: 6e30 0201 1002 |0006: invoke-virtual {v0, v1, v2}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.lambda$run$0$StreamlineActivity$PuzzleSolverAsyncThread:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V // method@0102 │ │ +0040c6: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #18 header: │ │ class_idx : 90 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 2 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #18 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;' │ │ @@ -2142,49 +2143,49 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -0040bc: |[0040bc] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V │ │ -0040cc: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -0040d2: 5b01 3500 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0035 │ │ -0040d6: 5b02 3600 |0005: iput-object v2, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.f$1:Ljava/lang/String; // field@0036 │ │ -0040da: 0e00 |0007: return-void │ │ +0040c8: |[0040c8] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V │ │ +0040d8: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +0040de: 5b01 3500 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0035 │ │ +0040e2: 5b02 3600 |0005: iput-object v2, v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.f$1:Ljava/lang/String; // field@0036 │ │ +0040e6: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;) │ │ name : 'onClick' │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 8 16-bit code units │ │ -0040dc: |[0040dc] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64.onClick:(Landroid/view/View;)V │ │ -0040ec: 5420 3500 |0000: iget-object v0, v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0035 │ │ -0040f0: 5421 3600 |0002: iget-object v1, v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.f$1:Ljava/lang/String; // field@0036 │ │ -0040f4: 6e30 0901 1003 |0004: invoke-virtual {v0, v1, v3}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.lambda$bindRulesButton$1$StreamlineActivity:(Ljava/lang/String;Landroid/view/View;)V // method@0109 │ │ -0040fa: 0e00 |0007: return-void │ │ +0040e8: |[0040e8] t20kdc.offlinepuzzlesolver.-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64.onClick:(Landroid/view/View;)V │ │ +0040f8: 5420 3500 |0000: iget-object v0, v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.f$0:Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // field@0035 │ │ +0040fc: 5421 3600 |0002: iget-object v1, v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.f$1:Ljava/lang/String; // field@0036 │ │ +004100: 6e30 0901 1003 |0004: invoke-virtual {v0, v1, v3}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.lambda$bindRulesButton$1$StreamlineActivity:(Ljava/lang/String;Landroid/view/View;)V // method@0109 │ │ +004106: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #19 header: │ │ class_idx : 91 │ │ access_flags : 17 (0x0011) │ │ superclass_idx : 45 │ │ -source_file_idx : 121 │ │ +source_file_idx : 123 │ │ static_fields_size : 5 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #19 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/BuildConfig;' │ │ @@ -2224,31 +2225,31 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -0040fc: |[0040fc] t20kdc.offlinepuzzlesolver.BuildConfig.:()V │ │ -00410c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -004112: 0e00 |0003: return-void │ │ +004108: |[004108] t20kdc.offlinepuzzlesolver.BuildConfig.:()V │ │ +004118: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +00411e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=6 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/BuildConfig; │ │ │ │ Virtual methods - │ │ - source_file_idx : 121 (BuildConfig.java) │ │ + source_file_idx : 123 (BuildConfig.java) │ │ │ │ Class #20 header: │ │ class_idx : 92 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 4 │ │ -source_file_idx : 130 │ │ +source_file_idx : 132 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #20 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/CreditsActivity;' │ │ @@ -2263,17 +2264,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004114: |[004114] t20kdc.offlinepuzzlesolver.CreditsActivity.:()V │ │ -004124: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ -00412a: 0e00 |0003: return-void │ │ +004120: |[004120] t20kdc.offlinepuzzlesolver.CreditsActivity.:()V │ │ +004130: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ +004136: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=10 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/CreditsActivity; │ │ │ │ Virtual methods - │ │ @@ -2282,41 +2283,41 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 23 16-bit code units │ │ -00412c: |[00412c] t20kdc.offlinepuzzlesolver.CreditsActivity.onCreate:(Landroid/os/Bundle;)V │ │ -00413c: 6f20 0300 2100 |0000: invoke-super {v1, v2}, Landroid/app/Activity;.onCreate:(Landroid/os/Bundle;)V // method@0003 │ │ -004142: 1502 047f |0003: const/high16 v2, #int 2130968576 // #7f04 │ │ -004146: 6e20 da00 2100 |0005: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/CreditsActivity;.setContentView:(I)V // method@00da │ │ -00414c: 1402 1b00 037f |0008: const v2, #float 1.74129e+38 // #7f03001b │ │ -004152: 6e20 d800 2100 |000b: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/CreditsActivity;.findViewById:(I)Landroid/view/View; // method@00d8 │ │ -004158: 0c02 |000e: move-result-object v2 │ │ -00415a: 1f02 1600 |000f: check-cast v2, Landroid/webkit/WebView; // type@0016 │ │ -00415e: 1a00 1102 |0011: const-string v0, "file:///android_asset/credits.html" // string@0211 │ │ -004162: 6e20 2500 0200 |0013: invoke-virtual {v2, v0}, Landroid/webkit/WebView;.loadUrl:(Ljava/lang/String;)V // method@0025 │ │ -004168: 0e00 |0016: return-void │ │ +004138: |[004138] t20kdc.offlinepuzzlesolver.CreditsActivity.onCreate:(Landroid/os/Bundle;)V │ │ +004148: 6f20 0300 2100 |0000: invoke-super {v1, v2}, Landroid/app/Activity;.onCreate:(Landroid/os/Bundle;)V // method@0003 │ │ +00414e: 1502 047f |0003: const/high16 v2, #int 2130968576 // #7f04 │ │ +004152: 6e20 da00 2100 |0005: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/CreditsActivity;.setContentView:(I)V // method@00da │ │ +004158: 1402 1b00 037f |0008: const v2, #float 1.74129e+38 // #7f03001b │ │ +00415e: 6e20 d800 2100 |000b: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/CreditsActivity;.findViewById:(I)Landroid/view/View; // method@00d8 │ │ +004164: 0c02 |000e: move-result-object v2 │ │ +004166: 1f02 1600 |000f: check-cast v2, Landroid/webkit/WebView; // type@0016 │ │ +00416a: 1a00 1302 |0011: const-string v0, "file:///android_asset/credits.html" // string@0213 │ │ +00416e: 6e20 2500 0200 |0013: invoke-virtual {v2, v0}, Landroid/webkit/WebView;.loadUrl:(Ljava/lang/String;)V // method@0025 │ │ +004174: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=13 │ │ 0x0005 line=14 │ │ 0x000b line=15 │ │ locals : │ │ 0x0000 - 0x0017 reg=1 this Lt20kdc/offlinepuzzlesolver/CreditsActivity; │ │ 0x0000 - 0x0017 reg=2 (null) Landroid/os/Bundle; │ │ │ │ - source_file_idx : 130 (CreditsActivity.java) │ │ + source_file_idx : 132 (CreditsActivity.java) │ │ │ │ Class #21 header: │ │ class_idx : 93 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 4 │ │ -source_file_idx : 304 │ │ +source_file_idx : 306 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 7 │ │ │ │ Class #21 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/MainActivity;' │ │ @@ -2331,17 +2332,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -0041d8: |[0041d8] t20kdc.offlinepuzzlesolver.MainActivity.:()V │ │ -0041e8: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ -0041ee: 0e00 |0003: return-void │ │ +0041e4: |[0041e4] t20kdc.offlinepuzzlesolver.MainActivity.:()V │ │ +0041f4: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ +0041fa: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=18 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/MainActivity; │ │ │ │ Virtual methods - │ │ @@ -2350,20 +2351,20 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 11 16-bit code units │ │ -0041f0: |[0041f0] t20kdc.offlinepuzzlesolver.MainActivity.lambda$onCreate$0$MainActivity:(Landroid/view/View;)V │ │ -004200: 2202 0700 |0000: new-instance v2, Landroid/content/Intent; // type@0007 │ │ -004204: 1c00 6d00 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; // type@006d │ │ -004208: 7030 0b00 1200 |0004: invoke-direct {v2, v1, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ -00420e: 6e20 e600 2100 |0007: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ -004214: 0e00 |000a: return-void │ │ +0041fc: |[0041fc] t20kdc.offlinepuzzlesolver.MainActivity.lambda$onCreate$0$MainActivity:(Landroid/view/View;)V │ │ +00420c: 2202 0700 |0000: new-instance v2, Landroid/content/Intent; // type@0007 │ │ +004210: 1c00 6d00 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; // type@006d │ │ +004214: 7030 0b00 1200 |0004: invoke-direct {v2, v1, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ +00421a: 6e20 e600 2100 |0007: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ +004220: 0e00 |000a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=25 │ │ locals : │ │ 0x0000 - 0x000b reg=1 this Lt20kdc/offlinepuzzlesolver/MainActivity; │ │ 0x0000 - 0x000b reg=2 (null) Landroid/view/View; │ │ │ │ @@ -2372,20 +2373,20 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 11 16-bit code units │ │ -004218: |[004218] t20kdc.offlinepuzzlesolver.MainActivity.lambda$onCreate$1$MainActivity:(Landroid/view/View;)V │ │ -004228: 2202 0700 |0000: new-instance v2, Landroid/content/Intent; // type@0007 │ │ -00422c: 1c00 7000 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity; // type@0070 │ │ -004230: 7030 0b00 1200 |0004: invoke-direct {v2, v1, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ -004236: 6e20 e600 2100 |0007: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ -00423c: 0e00 |000a: return-void │ │ +004224: |[004224] t20kdc.offlinepuzzlesolver.MainActivity.lambda$onCreate$1$MainActivity:(Landroid/view/View;)V │ │ +004234: 2202 0700 |0000: new-instance v2, Landroid/content/Intent; // type@0007 │ │ +004238: 1c00 7000 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity; // type@0070 │ │ +00423c: 7030 0b00 1200 |0004: invoke-direct {v2, v1, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ +004242: 6e20 e600 2100 |0007: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ +004248: 0e00 |000a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=28 │ │ locals : │ │ 0x0000 - 0x000b reg=1 this Lt20kdc/offlinepuzzlesolver/MainActivity; │ │ 0x0000 - 0x000b reg=2 (null) Landroid/view/View; │ │ │ │ @@ -2394,20 +2395,20 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 11 16-bit code units │ │ -004240: |[004240] t20kdc.offlinepuzzlesolver.MainActivity.lambda$onCreate$2$MainActivity:(Landroid/view/View;)V │ │ -004250: 2202 0700 |0000: new-instance v2, Landroid/content/Intent; // type@0007 │ │ -004254: 1c00 7600 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; // type@0076 │ │ -004258: 7030 0b00 1200 |0004: invoke-direct {v2, v1, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ -00425e: 6e20 e600 2100 |0007: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ -004264: 0e00 |000a: return-void │ │ +00424c: |[00424c] t20kdc.offlinepuzzlesolver.MainActivity.lambda$onCreate$2$MainActivity:(Landroid/view/View;)V │ │ +00425c: 2202 0700 |0000: new-instance v2, Landroid/content/Intent; // type@0007 │ │ +004260: 1c00 7600 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; // type@0076 │ │ +004264: 7030 0b00 1200 |0004: invoke-direct {v2, v1, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ +00426a: 6e20 e600 2100 |0007: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ +004270: 0e00 |000a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=31 │ │ locals : │ │ 0x0000 - 0x000b reg=1 this Lt20kdc/offlinepuzzlesolver/MainActivity; │ │ 0x0000 - 0x000b reg=2 (null) Landroid/view/View; │ │ │ │ @@ -2416,20 +2417,20 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 11 16-bit code units │ │ -004268: |[004268] t20kdc.offlinepuzzlesolver.MainActivity.lambda$onCreate$3$MainActivity:(Landroid/view/View;)V │ │ -004278: 2202 0700 |0000: new-instance v2, Landroid/content/Intent; // type@0007 │ │ -00427c: 1c00 7c00 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // type@007c │ │ -004280: 7030 0b00 1200 |0004: invoke-direct {v2, v1, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ -004286: 6e20 e600 2100 |0007: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ -00428c: 0e00 |000a: return-void │ │ +004274: |[004274] t20kdc.offlinepuzzlesolver.MainActivity.lambda$onCreate$3$MainActivity:(Landroid/view/View;)V │ │ +004284: 2202 0700 |0000: new-instance v2, Landroid/content/Intent; // type@0007 │ │ +004288: 1c00 7c00 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // type@007c │ │ +00428c: 7030 0b00 1200 |0004: invoke-direct {v2, v1, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ +004292: 6e20 e600 2100 |0007: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ +004298: 0e00 |000a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=34 │ │ locals : │ │ 0x0000 - 0x000b reg=1 this Lt20kdc/offlinepuzzlesolver/MainActivity; │ │ 0x0000 - 0x000b reg=2 (null) Landroid/view/View; │ │ │ │ @@ -2438,43 +2439,43 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 70 16-bit code units │ │ -004290: |[004290] t20kdc.offlinepuzzlesolver.MainActivity.onCreate:(Landroid/os/Bundle;)V │ │ -0042a0: 6f20 0300 2100 |0000: invoke-super {v1, v2}, Landroid/app/Activity;.onCreate:(Landroid/os/Bundle;)V // method@0003 │ │ -0042a6: 1402 0100 047f |0003: const v2, #float 1.75458e+38 // #7f040001 │ │ -0042ac: 6e20 e500 2100 |0006: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.setContentView:(I)V // method@00e5 │ │ -0042b2: 1402 0900 037f |0009: const v2, #float 1.74129e+38 // #7f030009 │ │ -0042b8: 6e20 dc00 2100 |000c: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.findViewById:(I)Landroid/view/View; // method@00dc │ │ -0042be: 0c02 |000f: move-result-object v2 │ │ -0042c0: 2200 5700 |0010: new-instance v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE; // type@0057 │ │ -0042c4: 7020 ce00 1000 |0012: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE;.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V // method@00ce │ │ -0042ca: 6e20 1f00 0200 |0015: invoke-virtual {v2, v0}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ -0042d0: 1402 0700 037f |0018: const v2, #float 1.74129e+38 // #7f030007 │ │ -0042d6: 6e20 dc00 2100 |001b: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.findViewById:(I)Landroid/view/View; // method@00dc │ │ -0042dc: 0c02 |001e: move-result-object v2 │ │ -0042de: 2200 5600 |001f: new-instance v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s; // type@0056 │ │ -0042e2: 7020 cc00 1000 |0021: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s;.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V // method@00cc │ │ -0042e8: 6e20 1f00 0200 |0024: invoke-virtual {v2, v0}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ -0042ee: 1402 0800 037f |0027: const v2, #float 1.74129e+38 // #7f030008 │ │ -0042f4: 6e20 dc00 2100 |002a: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.findViewById:(I)Landroid/view/View; // method@00dc │ │ -0042fa: 0c02 |002d: move-result-object v2 │ │ -0042fc: 2200 5400 |002e: new-instance v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE; // type@0054 │ │ -004300: 7020 c800 1000 |0030: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE;.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V // method@00c8 │ │ -004306: 6e20 1f00 0200 |0033: invoke-virtual {v2, v0}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ -00430c: 1402 0300 037f |0036: const v2, #float 1.74129e+38 // #7f030003 │ │ -004312: 6e20 dc00 2100 |0039: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.findViewById:(I)Landroid/view/View; // method@00dc │ │ -004318: 0c02 |003c: move-result-object v2 │ │ -00431a: 2200 5500 |003d: new-instance v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI; // type@0055 │ │ -00431e: 7020 ca00 1000 |003f: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI;.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V // method@00ca │ │ -004324: 6e20 1f00 0200 |0042: invoke-virtual {v2, v0}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ -00432a: 0e00 |0045: return-void │ │ +00429c: |[00429c] t20kdc.offlinepuzzlesolver.MainActivity.onCreate:(Landroid/os/Bundle;)V │ │ +0042ac: 6f20 0300 2100 |0000: invoke-super {v1, v2}, Landroid/app/Activity;.onCreate:(Landroid/os/Bundle;)V // method@0003 │ │ +0042b2: 1402 0100 047f |0003: const v2, #float 1.75458e+38 // #7f040001 │ │ +0042b8: 6e20 e500 2100 |0006: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.setContentView:(I)V // method@00e5 │ │ +0042be: 1402 0900 037f |0009: const v2, #float 1.74129e+38 // #7f030009 │ │ +0042c4: 6e20 dc00 2100 |000c: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.findViewById:(I)Landroid/view/View; // method@00dc │ │ +0042ca: 0c02 |000f: move-result-object v2 │ │ +0042cc: 2200 5700 |0010: new-instance v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE; // type@0057 │ │ +0042d0: 7020 ce00 1000 |0012: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE;.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V // method@00ce │ │ +0042d6: 6e20 1f00 0200 |0015: invoke-virtual {v2, v0}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ +0042dc: 1402 0700 037f |0018: const v2, #float 1.74129e+38 // #7f030007 │ │ +0042e2: 6e20 dc00 2100 |001b: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.findViewById:(I)Landroid/view/View; // method@00dc │ │ +0042e8: 0c02 |001e: move-result-object v2 │ │ +0042ea: 2200 5600 |001f: new-instance v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s; // type@0056 │ │ +0042ee: 7020 cc00 1000 |0021: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s;.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V // method@00cc │ │ +0042f4: 6e20 1f00 0200 |0024: invoke-virtual {v2, v0}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ +0042fa: 1402 0800 037f |0027: const v2, #float 1.74129e+38 // #7f030008 │ │ +004300: 6e20 dc00 2100 |002a: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.findViewById:(I)Landroid/view/View; // method@00dc │ │ +004306: 0c02 |002d: move-result-object v2 │ │ +004308: 2200 5400 |002e: new-instance v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE; // type@0054 │ │ +00430c: 7020 c800 1000 |0030: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE;.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V // method@00c8 │ │ +004312: 6e20 1f00 0200 |0033: invoke-virtual {v2, v0}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ +004318: 1402 0300 037f |0036: const v2, #float 1.74129e+38 // #7f030003 │ │ +00431e: 6e20 dc00 2100 |0039: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.findViewById:(I)Landroid/view/View; // method@00dc │ │ +004324: 0c02 |003c: move-result-object v2 │ │ +004326: 2200 5500 |003d: new-instance v0, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI; // type@0055 │ │ +00432a: 7020 ca00 1000 |003f: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI;.:(Lt20kdc/offlinepuzzlesolver/MainActivity;)V // method@00ca │ │ +004330: 6e20 1f00 0200 |0042: invoke-virtual {v2, v0}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ +004336: 0e00 |0045: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=22 │ │ 0x0006 line=23 │ │ 0x000c line=24 │ │ 0x001b line=27 │ │ 0x002a line=30 │ │ @@ -2488,21 +2489,21 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 11 16-bit code units │ │ -00416c: |[00416c] t20kdc.offlinepuzzlesolver.MainActivity.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ -00417c: 6e10 dd00 0200 |0000: invoke-virtual {v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.getMenuInflater:()Landroid/view/MenuInflater; // method@00dd │ │ -004182: 0c00 |0003: move-result-object v0 │ │ -004184: 1501 057f |0004: const/high16 v1, #int 2131034112 // #7f05 │ │ -004188: 6e30 1d00 1003 |0006: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@001d │ │ -00418e: 1213 |0009: const/4 v3, #int 1 // #1 │ │ -004190: 0f03 |000a: return v3 │ │ +004178: |[004178] t20kdc.offlinepuzzlesolver.MainActivity.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ +004188: 6e10 dd00 0200 |0000: invoke-virtual {v2}, Lt20kdc/offlinepuzzlesolver/MainActivity;.getMenuInflater:()Landroid/view/MenuInflater; // method@00dd │ │ +00418e: 0c00 |0003: move-result-object v0 │ │ +004190: 1501 057f |0004: const/high16 v1, #int 2131034112 // #7f05 │ │ +004194: 6e30 1d00 1003 |0006: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@001d │ │ +00419a: 1213 |0009: const/4 v3, #int 1 // #1 │ │ +00419c: 0f03 |000a: return v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=41 │ │ locals : │ │ 0x0000 - 0x000b reg=2 this Lt20kdc/offlinepuzzlesolver/MainActivity; │ │ 0x0000 - 0x000b reg=3 (null) Landroid/view/Menu; │ │ │ │ @@ -2511,38 +2512,38 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 25 16-bit code units │ │ -004194: |[004194] t20kdc.offlinepuzzlesolver.MainActivity.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ -0041a4: 7210 1e00 0300 |0000: invoke-interface {v3}, Landroid/view/MenuItem;.getItemId:()I // method@001e │ │ -0041aa: 0a00 |0003: move-result v0 │ │ -0041ac: 1501 037f |0004: const/high16 v1, #int 2130903040 // #7f03 │ │ -0041b0: 3310 0e00 |0006: if-ne v0, v1, 0014 // +000e │ │ -0041b4: 2203 0700 |0008: new-instance v3, Landroid/content/Intent; // type@0007 │ │ -0041b8: 1c00 5c00 |000a: const-class v0, Lt20kdc/offlinepuzzlesolver/CreditsActivity; // type@005c │ │ -0041bc: 7030 0b00 2300 |000c: invoke-direct {v3, v2, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ -0041c2: 6e20 e600 3200 |000f: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ -0041c8: 1213 |0012: const/4 v3, #int 1 // #1 │ │ -0041ca: 0f03 |0013: return v3 │ │ -0041cc: 6f20 0500 3200 |0014: invoke-super {v2, v3}, Landroid/app/Activity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@0005 │ │ -0041d2: 0a03 |0017: move-result v3 │ │ -0041d4: 0f03 |0018: return v3 │ │ +0041a0: |[0041a0] t20kdc.offlinepuzzlesolver.MainActivity.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ +0041b0: 7210 1e00 0300 |0000: invoke-interface {v3}, Landroid/view/MenuItem;.getItemId:()I // method@001e │ │ +0041b6: 0a00 |0003: move-result v0 │ │ +0041b8: 1501 037f |0004: const/high16 v1, #int 2130903040 // #7f03 │ │ +0041bc: 3310 0e00 |0006: if-ne v0, v1, 0014 // +000e │ │ +0041c0: 2203 0700 |0008: new-instance v3, Landroid/content/Intent; // type@0007 │ │ +0041c4: 1c00 5c00 |000a: const-class v0, Lt20kdc/offlinepuzzlesolver/CreditsActivity; // type@005c │ │ +0041c8: 7030 0b00 2300 |000c: invoke-direct {v3, v2, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ +0041ce: 6e20 e600 3200 |000f: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/MainActivity;.startActivity:(Landroid/content/Intent;)V // method@00e6 │ │ +0041d4: 1213 |0012: const/4 v3, #int 1 // #1 │ │ +0041d6: 0f03 |0013: return v3 │ │ +0041d8: 6f20 0500 3200 |0014: invoke-super {v2, v3}, Landroid/app/Activity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@0005 │ │ +0041de: 0a03 |0017: move-result v3 │ │ +0041e0: 0f03 |0018: return v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ 0x0008 line=51 │ │ 0x0014 line=55 │ │ locals : │ │ 0x0000 - 0x0019 reg=2 this Lt20kdc/offlinepuzzlesolver/MainActivity; │ │ 0x0000 - 0x0019 reg=3 (null) Landroid/view/MenuItem; │ │ │ │ - source_file_idx : 304 (MainActivity.java) │ │ + source_file_idx : 306 (MainActivity.java) │ │ │ │ Class #22 header: │ │ class_idx : 94 │ │ access_flags : 17 (0x0011) │ │ superclass_idx : 45 │ │ source_file_idx : -1 │ │ static_fields_size : 4 │ │ @@ -2588,17 +2589,17 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -00432c: |[00432c] t20kdc.offlinepuzzlesolver.R$dimen.:()V │ │ -00433c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -004342: 0e00 |0003: return-void │ │ +004338: |[004338] t20kdc.offlinepuzzlesolver.R$dimen.:()V │ │ +004348: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +00434e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ source_file_idx : -1 (unknown) │ │ │ │ @@ -2635,17 +2636,17 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004344: |[004344] t20kdc.offlinepuzzlesolver.R$drawable.:()V │ │ -004354: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -00435a: 0e00 |0003: return-void │ │ +004350: |[004350] t20kdc.offlinepuzzlesolver.R$drawable.:()V │ │ +004360: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +004366: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ source_file_idx : -1 (unknown) │ │ │ │ @@ -2817,17 +2818,17 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -00435c: |[00435c] t20kdc.offlinepuzzlesolver.R$id.:()V │ │ -00436c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -004372: 0e00 |0003: return-void │ │ +004368: |[004368] t20kdc.offlinepuzzlesolver.R$id.:()V │ │ +004378: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +00437e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ source_file_idx : -1 (unknown) │ │ │ │ @@ -2899,17 +2900,17 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004374: |[004374] t20kdc.offlinepuzzlesolver.R$layout.:()V │ │ -004384: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -00438a: 0e00 |0003: return-void │ │ +004380: |[004380] t20kdc.offlinepuzzlesolver.R$layout.:()V │ │ +004390: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +004396: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ source_file_idx : -1 (unknown) │ │ │ │ @@ -2946,17 +2947,17 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -00438c: |[00438c] t20kdc.offlinepuzzlesolver.R$menu.:()V │ │ -00439c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -0043a2: 0e00 |0003: return-void │ │ +004398: |[004398] t20kdc.offlinepuzzlesolver.R$menu.:()V │ │ +0043a8: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +0043ae: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ source_file_idx : -1 (unknown) │ │ │ │ @@ -3108,17 +3109,17 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -0043a4: |[0043a4] t20kdc.offlinepuzzlesolver.R$string.:()V │ │ -0043b4: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -0043ba: 0e00 |0003: return-void │ │ +0043b0: |[0043b0] t20kdc.offlinepuzzlesolver.R$string.:()V │ │ +0043c0: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +0043c6: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ source_file_idx : -1 (unknown) │ │ │ │ @@ -3149,29 +3150,29 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -0043bc: |[0043bc] t20kdc.offlinepuzzlesolver.R.:()V │ │ -0043cc: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -0043d2: 0e00 |0003: return-void │ │ +0043c8: |[0043c8] t20kdc.offlinepuzzlesolver.R.:()V │ │ +0043d8: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +0043de: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ source_file_idx : -1 (unknown) │ │ │ │ Class #29 header: │ │ class_idx : 101 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 4 │ │ -source_file_idx : 327 │ │ +source_file_idx : 329 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #29 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/SolutionActivity;' │ │ @@ -3186,17 +3187,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -0043d4: |[0043d4] t20kdc.offlinepuzzlesolver.SolutionActivity.:()V │ │ -0043e4: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ -0043ea: 0e00 |0003: return-void │ │ +0043e0: |[0043e0] t20kdc.offlinepuzzlesolver.SolutionActivity.:()V │ │ +0043f0: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ +0043f6: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=12 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/SolutionActivity; │ │ │ │ Virtual methods - │ │ @@ -3205,56 +3206,56 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 9 │ │ ins : 2 │ │ outs : 6 │ │ insns size : 85 16-bit code units │ │ -0043ec: |[0043ec] t20kdc.offlinepuzzlesolver.SolutionActivity.onCreate:(Landroid/os/Bundle;)V │ │ -0043fc: 6f20 0300 8700 |0000: invoke-super {v7, v8}, Landroid/app/Activity;.onCreate:(Landroid/os/Bundle;)V // method@0003 │ │ -004402: 1408 0500 047f |0003: const v8, #float 1.75458e+38 // #7f040005 │ │ -004408: 6e20 f200 8700 |0006: invoke-virtual {v7, v8}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.setContentView:(I)V // method@00f2 │ │ -00440e: 6e10 f000 0700 |0009: invoke-virtual {v7}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.getIntent:()Landroid/content/Intent; // method@00f0 │ │ -004414: 0c08 |000c: move-result-object v8 │ │ -004416: 1a00 be01 |000d: const-string v0, "android.intent.extra.TITLE" // string@01be │ │ -00441a: 6e20 0c00 0800 |000f: invoke-virtual {v8, v0}, Landroid/content/Intent;.getStringExtra:(Ljava/lang/String;)Ljava/lang/String; // method@000c │ │ -004420: 0c08 |0012: move-result-object v8 │ │ -004422: 3808 0500 |0013: if-eqz v8, 0018 // +0005 │ │ -004426: 6e20 f300 8700 |0015: invoke-virtual {v7, v8}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.setTitle:(Ljava/lang/CharSequence;)V // method@00f3 │ │ -00442c: 6e10 f000 0700 |0018: invoke-virtual {v7}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.getIntent:()Landroid/content/Intent; // method@00f0 │ │ -004432: 0c08 |001b: move-result-object v8 │ │ -004434: 1a00 bf02 |001c: const-string v0, "t20kdc.top.pipe" // string@02bf │ │ -004438: 6e20 0c00 0800 |001e: invoke-virtual {v8, v0}, Landroid/content/Intent;.getStringExtra:(Ljava/lang/String;)Ljava/lang/String; // method@000c │ │ -00443e: 0c08 |0021: move-result-object v8 │ │ -004440: 1400 1b00 037f |0022: const v0, #float 1.74129e+38 // #7f03001b │ │ -004446: 6e20 ef00 0700 |0025: invoke-virtual {v7, v0}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.findViewById:(I)Landroid/view/View; // method@00ef │ │ -00444c: 0c00 |0028: move-result-object v0 │ │ -00444e: 0701 |0029: move-object v1, v0 │ │ -004450: 1f01 1600 |002a: check-cast v1, Landroid/webkit/WebView; // type@0016 │ │ -004454: 6e10 2300 0100 |002c: invoke-virtual {v1}, Landroid/webkit/WebView;.getSettings:()Landroid/webkit/WebSettings; // method@0023 │ │ -00445a: 0c00 |002f: move-result-object v0 │ │ -00445c: 1212 |0030: const/4 v2, #int 1 // #1 │ │ -00445e: 6e20 2000 2000 |0031: invoke-virtual {v0, v2}, Landroid/webkit/WebSettings;.setBuiltInZoomControls:(Z)V // method@0020 │ │ -004464: 3808 0600 |0034: if-eqz v8, 003a // +0006 │ │ -004468: 6e20 2500 8100 |0036: invoke-virtual {v1, v8}, Landroid/webkit/WebView;.loadUrl:(Ljava/lang/String;)V // method@0025 │ │ -00446e: 281b |0039: goto 0054 // +001b │ │ -004470: 6e10 f000 0700 |003a: invoke-virtual {v7}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.getIntent:()Landroid/content/Intent; // method@00f0 │ │ -004476: 0c08 |003d: move-result-object v8 │ │ -004478: 1a00 bd01 |003e: const-string v0, "android.intent.extra.HTML_TEXT" // string@01bd │ │ -00447c: 6e20 0c00 0800 |0040: invoke-virtual {v8, v0}, Landroid/content/Intent;.getStringExtra:(Ljava/lang/String;)Ljava/lang/String; // method@000c │ │ -004482: 0c08 |0043: move-result-object v8 │ │ -004484: 3908 0400 |0044: if-nez v8, 0048 // +0004 │ │ -004488: 1a08 4500 |0046: const-string v8, "

The solution was lost in intent transit.

" // string@0045 │ │ -00448c: 0783 |0048: move-object v3, v8 │ │ -00448e: 1a02 1002 |0049: const-string v2, "file:///android_asset/" // string@0210 │ │ -004492: 1a04 c202 |004b: const-string v4, "text/html" // string@02c2 │ │ -004496: 1a05 6601 |004d: const-string v5, "UTF-8" // string@0166 │ │ -00449a: 1a06 0000 |004f: const-string v6, "" // string@0000 │ │ -00449e: 7406 2400 0100 |0051: invoke-virtual/range {v1, v2, v3, v4, v5, v6}, Landroid/webkit/WebView;.loadDataWithBaseURL:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V // method@0024 │ │ -0044a4: 0e00 |0054: return-void │ │ +0043f8: |[0043f8] t20kdc.offlinepuzzlesolver.SolutionActivity.onCreate:(Landroid/os/Bundle;)V │ │ +004408: 6f20 0300 8700 |0000: invoke-super {v7, v8}, Landroid/app/Activity;.onCreate:(Landroid/os/Bundle;)V // method@0003 │ │ +00440e: 1408 0500 047f |0003: const v8, #float 1.75458e+38 // #7f040005 │ │ +004414: 6e20 f200 8700 |0006: invoke-virtual {v7, v8}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.setContentView:(I)V // method@00f2 │ │ +00441a: 6e10 f000 0700 |0009: invoke-virtual {v7}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.getIntent:()Landroid/content/Intent; // method@00f0 │ │ +004420: 0c08 |000c: move-result-object v8 │ │ +004422: 1a00 c001 |000d: const-string v0, "android.intent.extra.TITLE" // string@01c0 │ │ +004426: 6e20 0c00 0800 |000f: invoke-virtual {v8, v0}, Landroid/content/Intent;.getStringExtra:(Ljava/lang/String;)Ljava/lang/String; // method@000c │ │ +00442c: 0c08 |0012: move-result-object v8 │ │ +00442e: 3808 0500 |0013: if-eqz v8, 0018 // +0005 │ │ +004432: 6e20 f300 8700 |0015: invoke-virtual {v7, v8}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.setTitle:(Ljava/lang/CharSequence;)V // method@00f3 │ │ +004438: 6e10 f000 0700 |0018: invoke-virtual {v7}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.getIntent:()Landroid/content/Intent; // method@00f0 │ │ +00443e: 0c08 |001b: move-result-object v8 │ │ +004440: 1a00 c102 |001c: const-string v0, "t20kdc.top.pipe" // string@02c1 │ │ +004444: 6e20 0c00 0800 |001e: invoke-virtual {v8, v0}, Landroid/content/Intent;.getStringExtra:(Ljava/lang/String;)Ljava/lang/String; // method@000c │ │ +00444a: 0c08 |0021: move-result-object v8 │ │ +00444c: 1400 1b00 037f |0022: const v0, #float 1.74129e+38 // #7f03001b │ │ +004452: 6e20 ef00 0700 |0025: invoke-virtual {v7, v0}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.findViewById:(I)Landroid/view/View; // method@00ef │ │ +004458: 0c00 |0028: move-result-object v0 │ │ +00445a: 0701 |0029: move-object v1, v0 │ │ +00445c: 1f01 1600 |002a: check-cast v1, Landroid/webkit/WebView; // type@0016 │ │ +004460: 6e10 2300 0100 |002c: invoke-virtual {v1}, Landroid/webkit/WebView;.getSettings:()Landroid/webkit/WebSettings; // method@0023 │ │ +004466: 0c00 |002f: move-result-object v0 │ │ +004468: 1212 |0030: const/4 v2, #int 1 // #1 │ │ +00446a: 6e20 2000 2000 |0031: invoke-virtual {v0, v2}, Landroid/webkit/WebSettings;.setBuiltInZoomControls:(Z)V // method@0020 │ │ +004470: 3808 0600 |0034: if-eqz v8, 003a // +0006 │ │ +004474: 6e20 2500 8100 |0036: invoke-virtual {v1, v8}, Landroid/webkit/WebView;.loadUrl:(Ljava/lang/String;)V // method@0025 │ │ +00447a: 281b |0039: goto 0054 // +001b │ │ +00447c: 6e10 f000 0700 |003a: invoke-virtual {v7}, Lt20kdc/offlinepuzzlesolver/SolutionActivity;.getIntent:()Landroid/content/Intent; // method@00f0 │ │ +004482: 0c08 |003d: move-result-object v8 │ │ +004484: 1a00 bf01 |003e: const-string v0, "android.intent.extra.HTML_TEXT" // string@01bf │ │ +004488: 6e20 0c00 0800 |0040: invoke-virtual {v8, v0}, Landroid/content/Intent;.getStringExtra:(Ljava/lang/String;)Ljava/lang/String; // method@000c │ │ +00448e: 0c08 |0043: move-result-object v8 │ │ +004490: 3908 0400 |0044: if-nez v8, 0048 // +0004 │ │ +004494: 1a08 4700 |0046: const-string v8, "

The solution was lost in intent transit.

" // string@0047 │ │ +004498: 0783 |0048: move-object v3, v8 │ │ +00449a: 1a02 1202 |0049: const-string v2, "file:///android_asset/" // string@0212 │ │ +00449e: 1a04 c402 |004b: const-string v4, "text/html" // string@02c4 │ │ +0044a2: 1a05 6801 |004d: const-string v5, "UTF-8" // string@0168 │ │ +0044a6: 1a06 0000 |004f: const-string v6, "" // string@0000 │ │ +0044aa: 7406 2400 0100 |0051: invoke-virtual/range {v1, v2, v3, v4, v5, v6}, Landroid/webkit/WebView;.loadDataWithBaseURL:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V // method@0024 │ │ +0044b0: 0e00 |0054: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=15 │ │ 0x0006 line=16 │ │ 0x0009 line=17 │ │ 0x0015 line=19 │ │ 0x0018 line=20 │ │ @@ -3263,34 +3264,34 @@ │ │ 0x0036 line=24 │ │ 0x003a line=26 │ │ 0x0051 line=29 │ │ locals : │ │ 0x0000 - 0x0055 reg=7 this Lt20kdc/offlinepuzzlesolver/SolutionActivity; │ │ 0x0000 - 0x0055 reg=8 (null) Landroid/os/Bundle; │ │ │ │ - source_file_idx : 327 (SolutionActivity.java) │ │ + source_file_idx : 329 (SolutionActivity.java) │ │ │ │ Class #30 header: │ │ class_idx : 102 │ │ -access_flags : 16 (0x0010) │ │ +access_flags : 0 (0x0000) │ │ superclass_idx : 45 │ │ -source_file_idx : 334 │ │ +source_file_idx : 336 │ │ static_fields_size : 0 │ │ instance_fields_size: 4 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 3 │ │ │ │ Class #30 annotations: │ │ Annotations on class │ │ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=bindSeekWdg │ │ - VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=8 name=null │ │ + VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null │ │ │ │ Class #30 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/Streamline$1;' │ │ - Access flags : 0x0010 (FINAL) │ │ + Access flags : 0x0000 () │ │ Superclass : 'Ljava/lang/Object;' │ │ Interfaces - │ │ #0 : 'Landroid/widget/SeekBar$OnSeekBarChangeListener;' │ │ Static fields - │ │ Instance fields - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/Streamline$1;) │ │ name : 'val$base' │ │ @@ -3314,21 +3315,21 @@ │ │ type : '(Landroid/widget/TextView;Landroid/widget/SeekBar;ILjava/lang/Runnable;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 5 │ │ ins : 5 │ │ outs : 1 │ │ insns size : 12 16-bit code units │ │ -0044a8: |[0044a8] t20kdc.offlinepuzzlesolver.Streamline$1.:(Landroid/widget/TextView;Landroid/widget/SeekBar;ILjava/lang/Runnable;)V │ │ -0044b8: 5b01 8000 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$sb2:Landroid/widget/TextView; // field@0080 │ │ -0044bc: 5b02 7f00 |0002: iput-object v2, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$sb1:Landroid/widget/SeekBar; // field@007f │ │ -0044c0: 5903 7e00 |0004: iput v3, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$base:I // field@007e │ │ -0044c4: 5b04 8100 |0006: iput-object v4, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$update:Ljava/lang/Runnable; // field@0081 │ │ -0044c8: 7010 4900 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -0044ce: 0e00 |000b: return-void │ │ +0044b4: |[0044b4] t20kdc.offlinepuzzlesolver.Streamline$1.:(Landroid/widget/TextView;Landroid/widget/SeekBar;ILjava/lang/Runnable;)V │ │ +0044c4: 5b01 8000 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$sb2:Landroid/widget/TextView; // field@0080 │ │ +0044c8: 5b02 7f00 |0002: iput-object v2, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$sb1:Landroid/widget/SeekBar; // field@007f │ │ +0044cc: 5903 7e00 |0004: iput v3, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$base:I // field@007e │ │ +0044d0: 5b04 8100 |0006: iput-object v4, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$update:Ljava/lang/Runnable; // field@0081 │ │ +0044d4: 7010 4900 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +0044da: 0e00 |000b: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=44 │ │ locals : │ │ 0x0000 - 0x000c reg=0 this Lt20kdc/offlinepuzzlesolver/Streamline$1; │ │ 0x0000 - 0x000c reg=1 (null) Landroid/widget/TextView; │ │ 0x0000 - 0x000c reg=2 (null) Landroid/widget/SeekBar; │ │ @@ -3341,28 +3342,28 @@ │ │ type : '(Landroid/widget/SeekBar;IZ)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 2 │ │ insns size : 26 16-bit code units │ │ -0044d0: |[0044d0] t20kdc.offlinepuzzlesolver.Streamline$1.onProgressChanged:(Landroid/widget/SeekBar;IZ)V │ │ -0044e0: 5401 8000 |0000: iget-object v1, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$sb2:Landroid/widget/TextView; // field@0080 │ │ -0044e4: 5402 7f00 |0002: iget-object v2, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$sb1:Landroid/widget/SeekBar; // field@007f │ │ -0044e8: 6e10 3000 0200 |0004: invoke-virtual {v2}, Landroid/widget/SeekBar;.getProgress:()I // method@0030 │ │ -0044ee: 0a02 |0007: move-result v2 │ │ -0044f0: 5203 7e00 |0008: iget v3, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$base:I // field@007e │ │ -0044f4: b032 |000a: add-int/2addr v2, v3 │ │ -0044f6: 7110 4600 0200 |000b: invoke-static {v2}, Ljava/lang/Integer;.toString:(I)Ljava/lang/String; // method@0046 │ │ -0044fc: 0c02 |000e: move-result-object v2 │ │ -0044fe: 6e20 3500 2100 |000f: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@0035 │ │ -004504: 5401 8100 |0012: iget-object v1, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$update:Ljava/lang/Runnable; // field@0081 │ │ -004508: 3801 0500 |0014: if-eqz v1, 0019 // +0005 │ │ -00450c: 7210 4b00 0100 |0016: invoke-interface {v1}, Ljava/lang/Runnable;.run:()V // method@004b │ │ -004512: 0e00 |0019: return-void │ │ +0044dc: |[0044dc] t20kdc.offlinepuzzlesolver.Streamline$1.onProgressChanged:(Landroid/widget/SeekBar;IZ)V │ │ +0044ec: 5401 8000 |0000: iget-object v1, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$sb2:Landroid/widget/TextView; // field@0080 │ │ +0044f0: 5402 7f00 |0002: iget-object v2, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$sb1:Landroid/widget/SeekBar; // field@007f │ │ +0044f4: 6e10 3000 0200 |0004: invoke-virtual {v2}, Landroid/widget/SeekBar;.getProgress:()I // method@0030 │ │ +0044fa: 0a02 |0007: move-result v2 │ │ +0044fc: 5203 7e00 |0008: iget v3, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$base:I // field@007e │ │ +004500: b032 |000a: add-int/2addr v2, v3 │ │ +004502: 7110 4600 0200 |000b: invoke-static {v2}, Ljava/lang/Integer;.toString:(I)Ljava/lang/String; // method@0046 │ │ +004508: 0c02 |000e: move-result-object v2 │ │ +00450a: 6e20 3500 2100 |000f: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@0035 │ │ +004510: 5401 8100 |0012: iget-object v1, v0, Lt20kdc/offlinepuzzlesolver/Streamline$1;.val$update:Ljava/lang/Runnable; // field@0081 │ │ +004514: 3801 0500 |0014: if-eqz v1, 0019 // +0005 │ │ +004518: 7210 4b00 0100 |0016: invoke-interface {v1}, Ljava/lang/Runnable;.run:()V // method@004b │ │ +00451e: 0e00 |0019: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=48 │ │ 0x0012 line=49 │ │ 0x0016 line=50 │ │ locals : │ │ 0x0000 - 0x001a reg=0 this Lt20kdc/offlinepuzzlesolver/Streamline$1; │ │ @@ -3375,42 +3376,42 @@ │ │ type : '(Landroid/widget/SeekBar;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -004514: |[004514] t20kdc.offlinepuzzlesolver.Streamline$1.onStartTrackingTouch:(Landroid/widget/SeekBar;)V │ │ -004524: 0e00 |0000: return-void │ │ +004520: |[004520] t20kdc.offlinepuzzlesolver.Streamline$1.onStartTrackingTouch:(Landroid/widget/SeekBar;)V │ │ +004530: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #2 : (in Lt20kdc/offlinepuzzlesolver/Streamline$1;) │ │ name : 'onStopTrackingTouch' │ │ type : '(Landroid/widget/SeekBar;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -004528: |[004528] t20kdc.offlinepuzzlesolver.Streamline$1.onStopTrackingTouch:(Landroid/widget/SeekBar;)V │ │ -004538: 0e00 |0000: return-void │ │ +004534: |[004534] t20kdc.offlinepuzzlesolver.Streamline$1.onStopTrackingTouch:(Landroid/widget/SeekBar;)V │ │ +004544: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 334 (Streamline.java) │ │ + source_file_idx : 336 (Streamline.java) │ │ │ │ Class #31 header: │ │ class_idx : 103 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 45 │ │ -source_file_idx : 334 │ │ +source_file_idx : 336 │ │ static_fields_size : 0 │ │ instance_fields_size: 6 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 7 │ │ │ │ Class #31 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/Streamline;' │ │ @@ -3449,42 +3450,42 @@ │ │ type : '(Landroid/app/Activity;Landroid/os/Bundle;Z)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 6 │ │ ins : 4 │ │ outs : 3 │ │ insns size : 50 16-bit code units │ │ -004928: |[004928] t20kdc.offlinepuzzlesolver.Streamline.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V │ │ -004938: 7010 4900 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0049 │ │ -00493e: 5b23 8300 |0003: iput-object v3, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.context:Landroid/app/Activity; // field@0083 │ │ -004942: 1200 |0005: const/4 v0, #int 0 // #0 │ │ -004944: 6e20 0200 0300 |0006: invoke-virtual {v3, v0}, Landroid/app/Activity;.getPreferences:(I)Landroid/content/SharedPreferences; // method@0002 │ │ -00494a: 0c03 |0009: move-result-object v3 │ │ -00494c: 5b23 8600 |000a: iput-object v3, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsReader:Landroid/content/SharedPreferences; // field@0086 │ │ -004950: 3805 0900 |000c: if-eqz v5, 0015 // +0009 │ │ -004954: 7210 1100 0300 |000e: invoke-interface {v3}, Landroid/content/SharedPreferences;.edit:()Landroid/content/SharedPreferences$Editor; // method@0011 │ │ -00495a: 0c03 |0011: move-result-object v3 │ │ -00495c: 5b23 8500 |0012: iput-object v3, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ -004960: 2804 |0014: goto 0018 // +0004 │ │ -004962: 1203 |0015: const/4 v3, #int 0 // #0 │ │ -004964: 5b23 8500 |0016: iput-object v3, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ -004968: 1a03 bc02 |0018: const-string v3, "streamline_valid" // string@02bc │ │ -00496c: 1211 |001a: const/4 v1, #int 1 // #1 │ │ -00496e: 3805 0700 |001b: if-eqz v5, 0022 // +0007 │ │ -004972: 3804 0500 |001d: if-eqz v4, 0022 // +0005 │ │ -004976: 6e30 1900 3401 |001f: invoke-virtual {v4, v3, v1}, Landroid/os/Bundle;.putBoolean:(Ljava/lang/String;Z)V // method@0019 │ │ -00497c: 3804 0800 |0022: if-eqz v4, 002a // +0008 │ │ -004980: 6e20 1500 3400 |0024: invoke-virtual {v4, v3}, Landroid/os/Bundle;.containsKey:(Ljava/lang/String;)Z // method@0015 │ │ -004986: 0a03 |0027: move-result v3 │ │ -004988: 3903 0300 |0028: if-nez v3, 002b // +0003 │ │ -00498c: 1210 |002a: const/4 v0, #int 1 // #1 │ │ -00498e: 5c20 8400 |002b: iput-boolean v0, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.forcePrefsReader:Z // field@0084 │ │ -004992: 5b24 8200 |002d: iput-object v4, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ -004996: 5c25 8700 |002f: iput-boolean v5, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ -00499a: 0e00 |0031: return-void │ │ +004934: |[004934] t20kdc.offlinepuzzlesolver.Streamline.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V │ │ +004944: 7010 4900 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0049 │ │ +00494a: 5b23 8300 |0003: iput-object v3, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.context:Landroid/app/Activity; // field@0083 │ │ +00494e: 1200 |0005: const/4 v0, #int 0 // #0 │ │ +004950: 6e20 0200 0300 |0006: invoke-virtual {v3, v0}, Landroid/app/Activity;.getPreferences:(I)Landroid/content/SharedPreferences; // method@0002 │ │ +004956: 0c03 |0009: move-result-object v3 │ │ +004958: 5b23 8600 |000a: iput-object v3, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsReader:Landroid/content/SharedPreferences; // field@0086 │ │ +00495c: 3805 0900 |000c: if-eqz v5, 0015 // +0009 │ │ +004960: 7210 1100 0300 |000e: invoke-interface {v3}, Landroid/content/SharedPreferences;.edit:()Landroid/content/SharedPreferences$Editor; // method@0011 │ │ +004966: 0c03 |0011: move-result-object v3 │ │ +004968: 5b23 8500 |0012: iput-object v3, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ +00496c: 2804 |0014: goto 0018 // +0004 │ │ +00496e: 1203 |0015: const/4 v3, #int 0 // #0 │ │ +004970: 5b23 8500 |0016: iput-object v3, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ +004974: 1a03 be02 |0018: const-string v3, "streamline_valid" // string@02be │ │ +004978: 1211 |001a: const/4 v1, #int 1 // #1 │ │ +00497a: 3805 0700 |001b: if-eqz v5, 0022 // +0007 │ │ +00497e: 3804 0500 |001d: if-eqz v4, 0022 // +0005 │ │ +004982: 6e30 1900 3401 |001f: invoke-virtual {v4, v3, v1}, Landroid/os/Bundle;.putBoolean:(Ljava/lang/String;Z)V // method@0019 │ │ +004988: 3804 0800 |0022: if-eqz v4, 002a // +0008 │ │ +00498c: 6e20 1500 3400 |0024: invoke-virtual {v4, v3}, Landroid/os/Bundle;.containsKey:(Ljava/lang/String;)Z // method@0015 │ │ +004992: 0a03 |0027: move-result v3 │ │ +004994: 3903 0300 |0028: if-nez v3, 002b // +0003 │ │ +004998: 1210 |002a: const/4 v0, #int 1 // #1 │ │ +00499a: 5c20 8400 |002b: iput-boolean v0, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.forcePrefsReader:Z // field@0084 │ │ +00499e: 5b24 8200 |002d: iput-object v4, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ +0049a2: 5c25 8700 |002f: iput-boolean v5, v2, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ +0049a6: 0e00 |0031: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=23 │ │ 0x0003 line=24 │ │ 0x0006 line=27 │ │ 0x000e line=29 │ │ 0x0016 line=31 │ │ @@ -3503,28 +3504,28 @@ │ │ type : '(Landroid/app/Activity;IIILjava/lang/Runnable;)V' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 5 │ │ ins : 5 │ │ outs : 5 │ │ insns size : 26 16-bit code units │ │ -00499c: |[00499c] t20kdc.offlinepuzzlesolver.Streamline.bindSeekWdg:(Landroid/app/Activity;IIILjava/lang/Runnable;)V │ │ -0049ac: 6e20 0100 1000 |0000: invoke-virtual {v0, v1}, Landroid/app/Activity;.findViewById:(I)Landroid/view/View; // method@0001 │ │ -0049b2: 0c01 |0003: move-result-object v1 │ │ -0049b4: 1f01 1b00 |0004: check-cast v1, Landroid/widget/SeekBar; // type@001b │ │ -0049b8: 6e20 0100 2000 |0006: invoke-virtual {v0, v2}, Landroid/app/Activity;.findViewById:(I)Landroid/view/View; // method@0001 │ │ -0049be: 0c00 |0009: move-result-object v0 │ │ -0049c0: 1f00 1c00 |000a: check-cast v0, Landroid/widget/TextView; // type@001c │ │ -0049c4: 2202 6600 |000c: new-instance v2, Lt20kdc/offlinepuzzlesolver/Streamline$1; // type@0066 │ │ -0049c8: 7054 f400 0231 |000e: invoke-direct {v2, v0, v1, v3, v4}, Lt20kdc/offlinepuzzlesolver/Streamline$1;.:(Landroid/widget/TextView;Landroid/widget/SeekBar;ILjava/lang/Runnable;)V // method@00f4 │ │ -0049ce: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -0049d0: 1203 |0012: const/4 v3, #int 0 // #0 │ │ -0049d2: 7240 2f00 0233 |0013: invoke-interface {v2, v0, v3, v3}, Landroid/widget/SeekBar$OnSeekBarChangeListener;.onProgressChanged:(Landroid/widget/SeekBar;IZ)V // method@002f │ │ -0049d8: 6e20 3200 2100 |0016: invoke-virtual {v1, v2}, Landroid/widget/SeekBar;.setOnSeekBarChangeListener:(Landroid/widget/SeekBar$OnSeekBarChangeListener;)V // method@0032 │ │ -0049de: 0e00 |0019: return-void │ │ +0049a8: |[0049a8] t20kdc.offlinepuzzlesolver.Streamline.bindSeekWdg:(Landroid/app/Activity;IIILjava/lang/Runnable;)V │ │ +0049b8: 6e20 0100 1000 |0000: invoke-virtual {v0, v1}, Landroid/app/Activity;.findViewById:(I)Landroid/view/View; // method@0001 │ │ +0049be: 0c01 |0003: move-result-object v1 │ │ +0049c0: 1f01 1b00 |0004: check-cast v1, Landroid/widget/SeekBar; // type@001b │ │ +0049c4: 6e20 0100 2000 |0006: invoke-virtual {v0, v2}, Landroid/app/Activity;.findViewById:(I)Landroid/view/View; // method@0001 │ │ +0049ca: 0c00 |0009: move-result-object v0 │ │ +0049cc: 1f00 1c00 |000a: check-cast v0, Landroid/widget/TextView; // type@001c │ │ +0049d0: 2202 6600 |000c: new-instance v2, Lt20kdc/offlinepuzzlesolver/Streamline$1; // type@0066 │ │ +0049d4: 7054 f400 0231 |000e: invoke-direct {v2, v0, v1, v3, v4}, Lt20kdc/offlinepuzzlesolver/Streamline$1;.:(Landroid/widget/TextView;Landroid/widget/SeekBar;ILjava/lang/Runnable;)V // method@00f4 │ │ +0049da: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +0049dc: 1203 |0012: const/4 v3, #int 0 // #0 │ │ +0049de: 7240 2f00 0233 |0013: invoke-interface {v2, v0, v3, v3}, Landroid/widget/SeekBar$OnSeekBarChangeListener;.onProgressChanged:(Landroid/widget/SeekBar;IZ)V // method@002f │ │ +0049e4: 6e20 3200 2100 |0016: invoke-virtual {v1, v2}, Landroid/widget/SeekBar;.setOnSeekBarChangeListener:(Landroid/widget/SeekBar$OnSeekBarChangeListener;)V // method@0032 │ │ +0049ea: 0e00 |0019: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=42 │ │ 0x0006 line=43 │ │ 0x000c line=44 │ │ 0x0013 line=63 │ │ 0x0016 line=64 │ │ @@ -3541,19 +3542,19 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -0049e0: |[0049e0] t20kdc.offlinepuzzlesolver.Streamline.finish:()V │ │ -0049f0: 5410 8500 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ -0049f4: 3800 0500 |0002: if-eqz v0, 0007 // +0005 │ │ -0049f8: 7210 0e00 0000 |0004: invoke-interface {v0}, Landroid/content/SharedPreferences$Editor;.apply:()V // method@000e │ │ -0049fe: 0e00 |0007: return-void │ │ +0049ec: |[0049ec] t20kdc.offlinepuzzlesolver.Streamline.finish:()V │ │ +0049fc: 5410 8500 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ +004a00: 3800 0500 |0002: if-eqz v0, 0007 // +0005 │ │ +004a04: 7210 0e00 0000 |0004: invoke-interface {v0}, Landroid/content/SharedPreferences$Editor;.apply:()V // method@000e │ │ +004a0a: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=125 │ │ 0x0004 line=126 │ │ locals : │ │ 0x0000 - 0x0008 reg=1 this Lt20kdc/offlinepuzzlesolver/Streamline; │ │ │ │ @@ -3562,25 +3563,25 @@ │ │ type : '(Ljava/lang/String;I)I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 18 16-bit code units │ │ -0048c0: |[0048c0] t20kdc.offlinepuzzlesolver.Streamline.getInt:(Ljava/lang/String;I)I │ │ -0048d0: 5510 8400 |0000: iget-boolean v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.forcePrefsReader:Z // field@0084 │ │ -0048d4: 3900 0900 |0002: if-nez v0, 000b // +0009 │ │ -0048d8: 5410 8200 |0004: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ -0048dc: 6e30 1700 2003 |0006: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;I)I // method@0017 │ │ -0048e2: 0a02 |0009: move-result v2 │ │ -0048e4: 0f02 |000a: return v2 │ │ -0048e6: 5410 8600 |000b: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsReader:Landroid/content/SharedPreferences; // field@0086 │ │ -0048ea: 7230 1200 2003 |000d: invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences;.getInt:(Ljava/lang/String;I)I // method@0012 │ │ -0048f0: 0a02 |0010: move-result v2 │ │ -0048f2: 0f02 |0011: return v2 │ │ +0048cc: |[0048cc] t20kdc.offlinepuzzlesolver.Streamline.getInt:(Ljava/lang/String;I)I │ │ +0048dc: 5510 8400 |0000: iget-boolean v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.forcePrefsReader:Z // field@0084 │ │ +0048e0: 3900 0900 |0002: if-nez v0, 000b // +0009 │ │ +0048e4: 5410 8200 |0004: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ +0048e8: 6e30 1700 2003 |0006: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;I)I // method@0017 │ │ +0048ee: 0a02 |0009: move-result v2 │ │ +0048f0: 0f02 |000a: return v2 │ │ +0048f2: 5410 8600 |000b: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsReader:Landroid/content/SharedPreferences; // field@0086 │ │ +0048f6: 7230 1200 2003 |000d: invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences;.getInt:(Ljava/lang/String;I)I // method@0012 │ │ +0048fc: 0a02 |0010: move-result v2 │ │ +0048fe: 0f02 |0011: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=88 │ │ 0x0004 line=89 │ │ 0x000b line=90 │ │ locals : │ │ 0x0000 - 0x0012 reg=1 this Lt20kdc/offlinepuzzlesolver/Streamline; │ │ @@ -3592,25 +3593,25 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 18 16-bit code units │ │ -0048f4: |[0048f4] t20kdc.offlinepuzzlesolver.Streamline.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ │ -004904: 5510 8400 |0000: iget-boolean v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.forcePrefsReader:Z // field@0084 │ │ -004908: 3900 0900 |0002: if-nez v0, 000b // +0009 │ │ -00490c: 5410 8200 |0004: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ -004910: 6e30 1800 2003 |0006: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@0018 │ │ -004916: 0c02 |0009: move-result-object v2 │ │ -004918: 1102 |000a: return-object v2 │ │ -00491a: 5410 8600 |000b: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsReader:Landroid/content/SharedPreferences; // field@0086 │ │ -00491e: 7230 1300 2003 |000d: invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@0013 │ │ -004924: 0c02 |0010: move-result-object v2 │ │ -004926: 1102 |0011: return-object v2 │ │ +004900: |[004900] t20kdc.offlinepuzzlesolver.Streamline.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ │ +004910: 5510 8400 |0000: iget-boolean v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.forcePrefsReader:Z // field@0084 │ │ +004914: 3900 0900 |0002: if-nez v0, 000b // +0009 │ │ +004918: 5410 8200 |0004: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ +00491c: 6e30 1800 2003 |0006: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@0018 │ │ +004922: 0c02 |0009: move-result-object v2 │ │ +004924: 1102 |000a: return-object v2 │ │ +004926: 5410 8600 |000b: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsReader:Landroid/content/SharedPreferences; // field@0086 │ │ +00492a: 7230 1300 2003 |000d: invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@0013 │ │ +004930: 0c02 |0010: move-result-object v2 │ │ +004932: 1102 |0011: return-object v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=82 │ │ 0x0004 line=83 │ │ 0x000b line=84 │ │ locals : │ │ 0x0000 - 0x0012 reg=1 this Lt20kdc/offlinepuzzlesolver/Streamline; │ │ @@ -3622,20 +3623,20 @@ │ │ type : '(Ljava/lang/String;ILjava/lang/Object;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 4 │ │ outs : 4 │ │ insns size : 10 16-bit code units │ │ -004b10: |[004b10] t20kdc.offlinepuzzlesolver.Streamline.interact:(Ljava/lang/String;ILjava/lang/Object;)V │ │ -004b20: 5410 8300 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.context:Landroid/app/Activity; // field@0083 │ │ -004b24: 6e20 0100 3000 |0002: invoke-virtual {v0, v3}, Landroid/app/Activity;.findViewById:(I)Landroid/view/View; // method@0001 │ │ -004b2a: 0c03 |0005: move-result-object v3 │ │ -004b2c: 6e40 fe00 2143 |0006: invoke-virtual {v1, v2, v3, v4}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;Landroid/view/View;Ljava/lang/Object;)V // method@00fe │ │ -004b32: 0e00 |0009: return-void │ │ +004b1c: |[004b1c] t20kdc.offlinepuzzlesolver.Streamline.interact:(Ljava/lang/String;ILjava/lang/Object;)V │ │ +004b2c: 5410 8300 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.context:Landroid/app/Activity; // field@0083 │ │ +004b30: 6e20 0100 3000 |0002: invoke-virtual {v0, v3}, Landroid/app/Activity;.findViewById:(I)Landroid/view/View; // method@0001 │ │ +004b36: 0c03 |0005: move-result-object v3 │ │ +004b38: 6e40 fe00 2143 |0006: invoke-virtual {v1, v2, v3, v4}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;Landroid/view/View;Ljava/lang/Object;)V // method@00fe │ │ +004b3e: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=94 │ │ 0x0006 line=95 │ │ locals : │ │ 0x0000 - 0x000a reg=1 this Lt20kdc/offlinepuzzlesolver/Streamline; │ │ 0x0000 - 0x000a reg=2 (null) Ljava/lang/String; │ │ @@ -3647,81 +3648,81 @@ │ │ type : '(Ljava/lang/String;Landroid/view/View;Ljava/lang/Object;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 4 │ │ outs : 3 │ │ insns size : 122 16-bit code units │ │ -004a00: |[004a00] t20kdc.offlinepuzzlesolver.Streamline.interact:(Ljava/lang/String;Landroid/view/View;Ljava/lang/Object;)V │ │ -004a10: 2050 1800 |0000: instance-of v0, v5, Landroid/widget/EditText; // type@0018 │ │ -004a14: 3800 2000 |0002: if-eqz v0, 0022 // +0020 │ │ -004a18: 5530 8700 |0004: iget-boolean v0, v3, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ -004a1c: 3800 1000 |0006: if-eqz v0, 0016 // +0010 │ │ -004a20: 1f05 1800 |0008: check-cast v5, Landroid/widget/EditText; // type@0018 │ │ -004a24: 6e10 2c00 0500 |000a: invoke-virtual {v5}, Landroid/widget/EditText;.getText:()Landroid/text/Editable; // method@002c │ │ -004a2a: 0c05 |000d: move-result-object v5 │ │ -004a2c: 6e10 4a00 0500 |000e: invoke-virtual {v5}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@004a │ │ -004a32: 0c05 |0011: move-result-object v5 │ │ -004a34: 6e30 0001 4305 |0012: invoke-virtual {v3, v4, v5}, Lt20kdc/offlinepuzzlesolver/Streamline;.putString:(Ljava/lang/String;Ljava/lang/String;)V // method@0100 │ │ -004a3a: 2864 |0015: goto 0079 // +0064 │ │ -004a3c: 1f05 1800 |0016: check-cast v5, Landroid/widget/EditText; // type@0018 │ │ -004a40: 1f06 3100 |0018: check-cast v6, Ljava/lang/String; // type@0031 │ │ -004a44: 6e30 fc00 4306 |001a: invoke-virtual {v3, v4, v6}, Lt20kdc/offlinepuzzlesolver/Streamline;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@00fc │ │ -004a4a: 0c04 |001d: move-result-object v4 │ │ -004a4c: 6e20 2d00 4500 |001e: invoke-virtual {v5, v4}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@002d │ │ -004a52: 2858 |0021: goto 0079 // +0058 │ │ -004a54: 2050 1700 |0022: instance-of v0, v5, Landroid/widget/CheckBox; // type@0017 │ │ -004a58: 3800 2f00 |0024: if-eqz v0, 0053 // +002f │ │ -004a5c: 5530 8700 |0026: iget-boolean v0, v3, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ -004a60: 1211 |0028: const/4 v1, #int 1 // #1 │ │ -004a62: 1202 |0029: const/4 v2, #int 0 // #0 │ │ -004a64: 3800 1000 |002a: if-eqz v0, 003a // +0010 │ │ -004a68: 1f05 1700 |002c: check-cast v5, Landroid/widget/CheckBox; // type@0017 │ │ -004a6c: 6e10 2700 0500 |002e: invoke-virtual {v5}, Landroid/widget/CheckBox;.isChecked:()Z // method@0027 │ │ -004a72: 0a05 |0031: move-result v5 │ │ -004a74: 3805 0300 |0032: if-eqz v5, 0035 // +0003 │ │ -004a78: 2802 |0034: goto 0036 // +0002 │ │ -004a7a: 1201 |0035: const/4 v1, #int 0 // #0 │ │ -004a7c: 6e30 ff00 4301 |0036: invoke-virtual {v3, v4, v1}, Lt20kdc/offlinepuzzlesolver/Streamline;.putInt:(Ljava/lang/String;I)V // method@00ff │ │ -004a82: 2840 |0039: goto 0079 // +0040 │ │ -004a84: 1f05 1700 |003a: check-cast v5, Landroid/widget/CheckBox; // type@0017 │ │ -004a88: 1f06 2600 |003c: check-cast v6, Ljava/lang/Boolean; // type@0026 │ │ -004a8c: 6e10 3c00 0600 |003e: invoke-virtual {v6}, Ljava/lang/Boolean;.booleanValue:()Z // method@003c │ │ -004a92: 0a06 |0041: move-result v6 │ │ -004a94: 3806 0400 |0042: if-eqz v6, 0046 // +0004 │ │ -004a98: 1216 |0044: const/4 v6, #int 1 // #1 │ │ -004a9a: 2802 |0045: goto 0047 // +0002 │ │ -004a9c: 1206 |0046: const/4 v6, #int 0 // #0 │ │ -004a9e: 6e30 fb00 4306 |0047: invoke-virtual {v3, v4, v6}, Lt20kdc/offlinepuzzlesolver/Streamline;.getInt:(Ljava/lang/String;I)I // method@00fb │ │ -004aa4: 0a04 |004a: move-result v4 │ │ -004aa6: 3804 0300 |004b: if-eqz v4, 004e // +0003 │ │ -004aaa: 2802 |004d: goto 004f // +0002 │ │ -004aac: 1201 |004e: const/4 v1, #int 0 // #0 │ │ -004aae: 6e20 2800 1500 |004f: invoke-virtual {v5, v1}, Landroid/widget/CheckBox;.setChecked:(Z)V // method@0028 │ │ -004ab4: 2827 |0052: goto 0079 // +0027 │ │ -004ab6: 2050 1b00 |0053: instance-of v0, v5, Landroid/widget/SeekBar; // type@001b │ │ -004aba: 3800 2400 |0055: if-eqz v0, 0079 // +0024 │ │ -004abe: 5530 8700 |0057: iget-boolean v0, v3, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ -004ac2: 3800 0c00 |0059: if-eqz v0, 0065 // +000c │ │ -004ac6: 1f05 1b00 |005b: check-cast v5, Landroid/widget/SeekBar; // type@001b │ │ -004aca: 6e10 3000 0500 |005d: invoke-virtual {v5}, Landroid/widget/SeekBar;.getProgress:()I // method@0030 │ │ -004ad0: 0a05 |0060: move-result v5 │ │ -004ad2: 6e30 ff00 4305 |0061: invoke-virtual {v3, v4, v5}, Lt20kdc/offlinepuzzlesolver/Streamline;.putInt:(Ljava/lang/String;I)V // method@00ff │ │ -004ad8: 2815 |0064: goto 0079 // +0015 │ │ -004ada: 1f05 1b00 |0065: check-cast v5, Landroid/widget/SeekBar; // type@001b │ │ -004ade: 1f06 2b00 |0067: check-cast v6, Ljava/lang/Integer; // type@002b │ │ -004ae2: 6e10 4400 0600 |0069: invoke-virtual {v6}, Ljava/lang/Integer;.intValue:()I // method@0044 │ │ -004ae8: 0a06 |006c: move-result v6 │ │ -004aea: 6e30 fb00 4306 |006d: invoke-virtual {v3, v4, v6}, Lt20kdc/offlinepuzzlesolver/Streamline;.getInt:(Ljava/lang/String;I)I // method@00fb │ │ -004af0: 0a04 |0070: move-result v4 │ │ -004af2: 6e20 3300 4500 |0071: invoke-virtual {v5, v4}, Landroid/widget/SeekBar;.setProgress:(I)V // method@0033 │ │ -004af8: 2805 |0074: goto 0079 // +0005 │ │ -004afa: 0d04 |0075: move-exception v4 │ │ -004afc: 6e10 4100 0400 |0076: invoke-virtual {v4}, Ljava/lang/Exception;.printStackTrace:()V // method@0041 │ │ -004b02: 0e00 |0079: return-void │ │ +004a0c: |[004a0c] t20kdc.offlinepuzzlesolver.Streamline.interact:(Ljava/lang/String;Landroid/view/View;Ljava/lang/Object;)V │ │ +004a1c: 2050 1800 |0000: instance-of v0, v5, Landroid/widget/EditText; // type@0018 │ │ +004a20: 3800 2000 |0002: if-eqz v0, 0022 // +0020 │ │ +004a24: 5530 8700 |0004: iget-boolean v0, v3, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ +004a28: 3800 1000 |0006: if-eqz v0, 0016 // +0010 │ │ +004a2c: 1f05 1800 |0008: check-cast v5, Landroid/widget/EditText; // type@0018 │ │ +004a30: 6e10 2c00 0500 |000a: invoke-virtual {v5}, Landroid/widget/EditText;.getText:()Landroid/text/Editable; // method@002c │ │ +004a36: 0c05 |000d: move-result-object v5 │ │ +004a38: 6e10 4a00 0500 |000e: invoke-virtual {v5}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@004a │ │ +004a3e: 0c05 |0011: move-result-object v5 │ │ +004a40: 6e30 0001 4305 |0012: invoke-virtual {v3, v4, v5}, Lt20kdc/offlinepuzzlesolver/Streamline;.putString:(Ljava/lang/String;Ljava/lang/String;)V // method@0100 │ │ +004a46: 2864 |0015: goto 0079 // +0064 │ │ +004a48: 1f05 1800 |0016: check-cast v5, Landroid/widget/EditText; // type@0018 │ │ +004a4c: 1f06 3100 |0018: check-cast v6, Ljava/lang/String; // type@0031 │ │ +004a50: 6e30 fc00 4306 |001a: invoke-virtual {v3, v4, v6}, Lt20kdc/offlinepuzzlesolver/Streamline;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@00fc │ │ +004a56: 0c04 |001d: move-result-object v4 │ │ +004a58: 6e20 2d00 4500 |001e: invoke-virtual {v5, v4}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@002d │ │ +004a5e: 2858 |0021: goto 0079 // +0058 │ │ +004a60: 2050 1700 |0022: instance-of v0, v5, Landroid/widget/CheckBox; // type@0017 │ │ +004a64: 3800 2f00 |0024: if-eqz v0, 0053 // +002f │ │ +004a68: 5530 8700 |0026: iget-boolean v0, v3, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ +004a6c: 1211 |0028: const/4 v1, #int 1 // #1 │ │ +004a6e: 1202 |0029: const/4 v2, #int 0 // #0 │ │ +004a70: 3800 1000 |002a: if-eqz v0, 003a // +0010 │ │ +004a74: 1f05 1700 |002c: check-cast v5, Landroid/widget/CheckBox; // type@0017 │ │ +004a78: 6e10 2700 0500 |002e: invoke-virtual {v5}, Landroid/widget/CheckBox;.isChecked:()Z // method@0027 │ │ +004a7e: 0a05 |0031: move-result v5 │ │ +004a80: 3805 0300 |0032: if-eqz v5, 0035 // +0003 │ │ +004a84: 2802 |0034: goto 0036 // +0002 │ │ +004a86: 1201 |0035: const/4 v1, #int 0 // #0 │ │ +004a88: 6e30 ff00 4301 |0036: invoke-virtual {v3, v4, v1}, Lt20kdc/offlinepuzzlesolver/Streamline;.putInt:(Ljava/lang/String;I)V // method@00ff │ │ +004a8e: 2840 |0039: goto 0079 // +0040 │ │ +004a90: 1f05 1700 |003a: check-cast v5, Landroid/widget/CheckBox; // type@0017 │ │ +004a94: 1f06 2600 |003c: check-cast v6, Ljava/lang/Boolean; // type@0026 │ │ +004a98: 6e10 3c00 0600 |003e: invoke-virtual {v6}, Ljava/lang/Boolean;.booleanValue:()Z // method@003c │ │ +004a9e: 0a06 |0041: move-result v6 │ │ +004aa0: 3806 0400 |0042: if-eqz v6, 0046 // +0004 │ │ +004aa4: 1216 |0044: const/4 v6, #int 1 // #1 │ │ +004aa6: 2802 |0045: goto 0047 // +0002 │ │ +004aa8: 1206 |0046: const/4 v6, #int 0 // #0 │ │ +004aaa: 6e30 fb00 4306 |0047: invoke-virtual {v3, v4, v6}, Lt20kdc/offlinepuzzlesolver/Streamline;.getInt:(Ljava/lang/String;I)I // method@00fb │ │ +004ab0: 0a04 |004a: move-result v4 │ │ +004ab2: 3804 0300 |004b: if-eqz v4, 004e // +0003 │ │ +004ab6: 2802 |004d: goto 004f // +0002 │ │ +004ab8: 1201 |004e: const/4 v1, #int 0 // #0 │ │ +004aba: 6e20 2800 1500 |004f: invoke-virtual {v5, v1}, Landroid/widget/CheckBox;.setChecked:(Z)V // method@0028 │ │ +004ac0: 2827 |0052: goto 0079 // +0027 │ │ +004ac2: 2050 1b00 |0053: instance-of v0, v5, Landroid/widget/SeekBar; // type@001b │ │ +004ac6: 3800 2400 |0055: if-eqz v0, 0079 // +0024 │ │ +004aca: 5530 8700 |0057: iget-boolean v0, v3, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ +004ace: 3800 0c00 |0059: if-eqz v0, 0065 // +000c │ │ +004ad2: 1f05 1b00 |005b: check-cast v5, Landroid/widget/SeekBar; // type@001b │ │ +004ad6: 6e10 3000 0500 |005d: invoke-virtual {v5}, Landroid/widget/SeekBar;.getProgress:()I // method@0030 │ │ +004adc: 0a05 |0060: move-result v5 │ │ +004ade: 6e30 ff00 4305 |0061: invoke-virtual {v3, v4, v5}, Lt20kdc/offlinepuzzlesolver/Streamline;.putInt:(Ljava/lang/String;I)V // method@00ff │ │ +004ae4: 2815 |0064: goto 0079 // +0015 │ │ +004ae6: 1f05 1b00 |0065: check-cast v5, Landroid/widget/SeekBar; // type@001b │ │ +004aea: 1f06 2b00 |0067: check-cast v6, Ljava/lang/Integer; // type@002b │ │ +004aee: 6e10 4400 0600 |0069: invoke-virtual {v6}, Ljava/lang/Integer;.intValue:()I // method@0044 │ │ +004af4: 0a06 |006c: move-result v6 │ │ +004af6: 6e30 fb00 4306 |006d: invoke-virtual {v3, v4, v6}, Lt20kdc/offlinepuzzlesolver/Streamline;.getInt:(Ljava/lang/String;I)I // method@00fb │ │ +004afc: 0a04 |0070: move-result v4 │ │ +004afe: 6e20 3300 4500 |0071: invoke-virtual {v5, v4}, Landroid/widget/SeekBar;.setProgress:(I)V // method@0033 │ │ +004b04: 2805 |0074: goto 0079 // +0005 │ │ +004b06: 0d04 |0075: move-exception v4 │ │ +004b08: 6e10 4100 0400 |0076: invoke-virtual {v4}, Ljava/lang/Exception;.printStackTrace:()V // method@0041 │ │ +004b0e: 0e00 |0079: return-void │ │ catches : 1 │ │ 0x0000 - 0x0074 │ │ Ljava/lang/Exception; -> 0x0075 │ │ positions : │ │ 0x0000 line=99 │ │ 0x0004 line=100 │ │ 0x0008 line=101 │ │ @@ -3746,22 +3747,22 @@ │ │ type : '(Ljava/lang/String;I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 15 16-bit code units │ │ -004b34: |[004b34] t20kdc.offlinepuzzlesolver.Streamline.putInt:(Ljava/lang/String;I)V │ │ -004b44: 5410 8200 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ -004b48: 3800 0500 |0002: if-eqz v0, 0007 // +0005 │ │ -004b4c: 6e30 1a00 2003 |0004: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@001a │ │ -004b52: 5410 8500 |0007: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ -004b56: 3800 0500 |0009: if-eqz v0, 000e // +0005 │ │ -004b5a: 7230 0f00 2003 |000b: invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences$Editor;.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor; // method@000f │ │ -004b60: 0e00 |000e: return-void │ │ +004b40: |[004b40] t20kdc.offlinepuzzlesolver.Streamline.putInt:(Ljava/lang/String;I)V │ │ +004b50: 5410 8200 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ +004b54: 3800 0500 |0002: if-eqz v0, 0007 // +0005 │ │ +004b58: 6e30 1a00 2003 |0004: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@001a │ │ +004b5e: 5410 8500 |0007: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ +004b62: 3800 0500 |0009: if-eqz v0, 000e // +0005 │ │ +004b66: 7230 0f00 2003 |000b: invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences$Editor;.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor; // method@000f │ │ +004b6c: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=75 │ │ 0x0004 line=76 │ │ 0x0007 line=77 │ │ 0x000b line=78 │ │ locals : │ │ @@ -3774,40 +3775,40 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 15 16-bit code units │ │ -004b64: |[004b64] t20kdc.offlinepuzzlesolver.Streamline.putString:(Ljava/lang/String;Ljava/lang/String;)V │ │ -004b74: 5410 8200 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ -004b78: 3800 0500 |0002: if-eqz v0, 0007 // +0005 │ │ -004b7c: 6e30 1b00 2003 |0004: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putString:(Ljava/lang/String;Ljava/lang/String;)V // method@001b │ │ -004b82: 5410 8500 |0007: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ -004b86: 3800 0500 |0009: if-eqz v0, 000e // +0005 │ │ -004b8a: 7230 1000 2003 |000b: invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences$Editor;.putString:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; // method@0010 │ │ -004b90: 0e00 |000e: return-void │ │ +004b70: |[004b70] t20kdc.offlinepuzzlesolver.Streamline.putString:(Ljava/lang/String;Ljava/lang/String;)V │ │ +004b80: 5410 8200 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.bundle:Landroid/os/Bundle; // field@0082 │ │ +004b84: 3800 0500 |0002: if-eqz v0, 0007 // +0005 │ │ +004b88: 6e30 1b00 2003 |0004: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putString:(Ljava/lang/String;Ljava/lang/String;)V // method@001b │ │ +004b8e: 5410 8500 |0007: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/Streamline;.prefsEditor:Landroid/content/SharedPreferences$Editor; // field@0085 │ │ +004b92: 3800 0500 |0009: if-eqz v0, 000e // +0005 │ │ +004b96: 7230 1000 2003 |000b: invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences$Editor;.putString:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; // method@0010 │ │ +004b9c: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=68 │ │ 0x0004 line=69 │ │ 0x0007 line=70 │ │ 0x000b line=71 │ │ locals : │ │ 0x0000 - 0x000f reg=1 this Lt20kdc/offlinepuzzlesolver/Streamline; │ │ 0x0000 - 0x000f reg=2 (null) Ljava/lang/String; │ │ 0x0000 - 0x000f reg=3 (null) Ljava/lang/String; │ │ │ │ - source_file_idx : 334 (Streamline.java) │ │ + source_file_idx : 336 (Streamline.java) │ │ │ │ Class #32 header: │ │ class_idx : 104 │ │ access_flags : 0 (0x0000) │ │ superclass_idx : 52 │ │ -source_file_idx : 336 │ │ +source_file_idx : 338 │ │ static_fields_size : 0 │ │ instance_fields_size: 4 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 2 │ │ │ │ Class #32 annotations: │ │ Annotations on class │ │ @@ -3849,24 +3850,24 @@ │ │ type : '(Ljava/lang/Class;Landroid/os/Bundle;Ljava/util/concurrent/atomic/AtomicBoolean;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 6 │ │ ins : 5 │ │ outs : 2 │ │ insns size : 19 16-bit code units │ │ -00453c: |[00453c] t20kdc.offlinepuzzlesolver.StreamlineActivity$PuzzleSolverAsyncThread.:(Ljava/lang/Class;Landroid/os/Bundle;Ljava/util/concurrent/atomic/AtomicBoolean;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;)V │ │ -00454c: 1a00 3e01 |0000: const-string v0, "PuzzleSolverAsync" // string@013e │ │ -004550: 7020 5c00 0100 |0002: invoke-direct {v1, v0}, Ljava/lang/Thread;.:(Ljava/lang/String;)V // method@005c │ │ -004556: 5b12 8b00 |0005: iput-object v2, v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.cs:Ljava/lang/Class; // field@008b │ │ -00455a: 5b13 8900 |0007: iput-object v3, v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.bundle:Landroid/os/Bundle; // field@0089 │ │ -00455e: 5b14 8a00 |0009: iput-object v4, v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008a │ │ -004562: 2202 3500 |000b: new-instance v2, Ljava/lang/ref/WeakReference; // type@0035 │ │ -004566: 7020 6100 5200 |000d: invoke-direct {v2, v5}, Ljava/lang/ref/WeakReference;.:(Ljava/lang/Object;)V // method@0061 │ │ -00456c: 5b12 8800 |0010: iput-object v2, v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.activity:Ljava/lang/ref/WeakReference; // field@0088 │ │ -004570: 0e00 |0012: return-void │ │ +004548: |[004548] t20kdc.offlinepuzzlesolver.StreamlineActivity$PuzzleSolverAsyncThread.:(Ljava/lang/Class;Landroid/os/Bundle;Ljava/util/concurrent/atomic/AtomicBoolean;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;)V │ │ +004558: 1a00 4001 |0000: const-string v0, "PuzzleSolverAsync" // string@0140 │ │ +00455c: 7020 5c00 0100 |0002: invoke-direct {v1, v0}, Ljava/lang/Thread;.:(Ljava/lang/String;)V // method@005c │ │ +004562: 5b12 8b00 |0005: iput-object v2, v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.cs:Ljava/lang/Class; // field@008b │ │ +004566: 5b13 8900 |0007: iput-object v3, v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.bundle:Landroid/os/Bundle; // field@0089 │ │ +00456a: 5b14 8a00 |0009: iput-object v4, v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008a │ │ +00456e: 2202 3500 |000b: new-instance v2, Ljava/lang/ref/WeakReference; // type@0035 │ │ +004572: 7020 6100 5200 |000d: invoke-direct {v2, v5}, Ljava/lang/ref/WeakReference;.:(Ljava/lang/Object;)V // method@0061 │ │ +004578: 5b12 8800 |0010: iput-object v2, v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.activity:Ljava/lang/ref/WeakReference; // field@0088 │ │ +00457c: 0e00 |0012: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=72 │ │ 0x0005 line=73 │ │ 0x0007 line=74 │ │ 0x0009 line=75 │ │ 0x000b line=76 │ │ @@ -3883,27 +3884,27 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 25 16-bit code units │ │ -004574: |[004574] t20kdc.offlinepuzzlesolver.StreamlineActivity$PuzzleSolverAsyncThread.lambda$run$0$StreamlineActivity$PuzzleSolverAsyncThread:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V │ │ -004584: 5420 8a00 |0000: iget-object v0, v2, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008a │ │ -004588: 6e10 8300 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@0083 │ │ -00458e: 0a00 |0005: move-result v0 │ │ -004590: 3800 0300 |0006: if-eqz v0, 0009 // +0003 │ │ -004594: 0e00 |0008: return-void │ │ -004596: 2200 0700 |0009: new-instance v0, Landroid/content/Intent; // type@0007 │ │ -00459a: 1c01 6500 |000b: const-class v1, Lt20kdc/offlinepuzzlesolver/SolutionActivity; // type@0065 │ │ -00459e: 7030 0b00 3001 |000d: invoke-direct {v0, v3, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ -0045a4: 1a01 bd01 |0010: const-string v1, "android.intent.extra.HTML_TEXT" // string@01bd │ │ -0045a8: 6e30 0d00 1004 |0012: invoke-virtual {v0, v1, v4}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@000d │ │ -0045ae: 6e20 1101 0300 |0015: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.startActivity:(Landroid/content/Intent;)V // method@0111 │ │ -0045b4: 0e00 |0018: return-void │ │ +004580: |[004580] t20kdc.offlinepuzzlesolver.StreamlineActivity$PuzzleSolverAsyncThread.lambda$run$0$StreamlineActivity$PuzzleSolverAsyncThread:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V │ │ +004590: 5420 8a00 |0000: iget-object v0, v2, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008a │ │ +004594: 6e10 8300 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@0083 │ │ +00459a: 0a00 |0005: move-result v0 │ │ +00459c: 3800 0300 |0006: if-eqz v0, 0009 // +0003 │ │ +0045a0: 0e00 |0008: return-void │ │ +0045a2: 2200 0700 |0009: new-instance v0, Landroid/content/Intent; // type@0007 │ │ +0045a6: 1c01 6500 |000b: const-class v1, Lt20kdc/offlinepuzzlesolver/SolutionActivity; // type@0065 │ │ +0045aa: 7030 0b00 3001 |000d: invoke-direct {v0, v3, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ +0045b0: 1a01 bf01 |0010: const-string v1, "android.intent.extra.HTML_TEXT" // string@01bf │ │ +0045b4: 6e30 0d00 1004 |0012: invoke-virtual {v0, v1, v4}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@000d │ │ +0045ba: 6e20 1101 0300 |0015: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.startActivity:(Landroid/content/Intent;)V // method@0111 │ │ +0045c0: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=111 │ │ 0x0009 line=113 │ │ 0x0012 line=114 │ │ 0x0015 line=115 │ │ locals : │ │ @@ -3916,60 +3917,60 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 92 16-bit code units │ │ -0045b8: |[0045b8] t20kdc.offlinepuzzlesolver.StreamlineActivity$PuzzleSolverAsyncThread.run:()V │ │ -0045c8: 5440 8b00 |0000: iget-object v0, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.cs:Ljava/lang/Class; // field@008b │ │ -0045cc: 6e10 3f00 0000 |0002: invoke-virtual {v0}, Ljava/lang/Class;.newInstance:()Ljava/lang/Object; // method@003f │ │ -0045d2: 0c00 |0005: move-result-object v0 │ │ -0045d4: 1f00 7400 |0006: check-cast v0, Lt20kdc/offlinepuzzlesolver/game/Solver; // type@0074 │ │ -0045d8: 2201 3200 |0008: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -0045dc: 7010 5400 0100 |000a: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -0045e2: 5442 8900 |000d: iget-object v2, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.bundle:Landroid/os/Bundle; // field@0089 │ │ -0045e6: 5443 8a00 |000f: iget-object v3, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008a │ │ -0045ea: 7240 4a01 2031 |0011: invoke-interface {v0, v2, v1, v3}, Lt20kdc/offlinepuzzlesolver/game/Solver;.solve:(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V // method@014a │ │ -0045f0: 2820 |0014: goto 0034 // +0020 │ │ -0045f2: 0d00 |0015: move-exception v0 │ │ -0045f4: 1a02 3e00 |0016: const-string v2, "AN EXCEPTION OCCURRED... │ │ -" // string@003e │ │ -0045f8: 6e20 5700 2100 |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0045fe: 2202 2400 |001b: new-instance v2, Ljava/io/StringWriter; // type@0024 │ │ -004602: 7010 3a00 0200 |001d: invoke-direct {v2}, Ljava/io/StringWriter;.:()V // method@003a │ │ -004608: 2203 2300 |0020: new-instance v3, Ljava/io/PrintWriter; // type@0023 │ │ -00460c: 7020 3900 2300 |0022: invoke-direct {v3, v2}, Ljava/io/PrintWriter;.:(Ljava/io/Writer;)V // method@0039 │ │ -004612: 6e20 4200 3000 |0025: invoke-virtual {v0, v3}, Ljava/lang/Exception;.printStackTrace:(Ljava/io/PrintWriter;)V // method@0042 │ │ -004618: 6e10 3b00 0200 |0028: invoke-virtual {v2}, Ljava/io/StringWriter;.toString:()Ljava/lang/String; // method@003b │ │ -00461e: 0c00 |002b: move-result-object v0 │ │ -004620: 6e20 5700 0100 |002c: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -004626: 1a00 2f00 |002f: const-string v0, "" // string@002f │ │ -00462a: 6e20 5700 0100 |0031: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -004630: 5440 8a00 |0034: iget-object v0, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008a │ │ -004634: 6e10 8300 0000 |0036: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@0083 │ │ -00463a: 0a00 |0039: move-result v0 │ │ -00463c: 3800 0300 |003a: if-eqz v0, 003d // +0003 │ │ -004640: 0e00 |003c: return-void │ │ -004642: 6e10 5900 0100 |003d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -004648: 0c00 |0040: move-result-object v0 │ │ -00464a: 2807 |0041: goto 0048 // +0007 │ │ -00464c: 0d00 |0042: move-exception v0 │ │ -00464e: 6e10 4100 0000 |0043: invoke-virtual {v0}, Ljava/lang/Exception;.printStackTrace:()V // method@0041 │ │ -004654: 1a00 8700 |0046: const-string v0, "Exterior solver management exception. This shouldn't happen. As reporting the last exception could've caused the problem in the first place, no exception stack trace will be provided. Please defer to LogCat." // string@0087 │ │ -004658: 5441 8800 |0048: iget-object v1, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.activity:Ljava/lang/ref/WeakReference; // field@0088 │ │ -00465c: 6e10 6200 0100 |004a: invoke-virtual {v1}, Ljava/lang/ref/WeakReference;.get:()Ljava/lang/Object; // method@0062 │ │ -004662: 0c01 |004d: move-result-object v1 │ │ -004664: 1f01 6900 |004e: check-cast v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // type@0069 │ │ -004668: 3901 0300 |0050: if-nez v1, 0053 // +0003 │ │ -00466c: 0e00 |0052: return-void │ │ -00466e: 2202 5900 |0053: new-instance v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA; // type@0059 │ │ -004672: 7040 d200 4201 |0055: invoke-direct {v2, v4, v1, v0}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V // method@00d2 │ │ -004678: 6e20 1001 2100 |0058: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.runOnUiThread:(Ljava/lang/Runnable;)V // method@0110 │ │ -00467e: 0e00 |005b: return-void │ │ +0045c4: |[0045c4] t20kdc.offlinepuzzlesolver.StreamlineActivity$PuzzleSolverAsyncThread.run:()V │ │ +0045d4: 5440 8b00 |0000: iget-object v0, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.cs:Ljava/lang/Class; // field@008b │ │ +0045d8: 6e10 3f00 0000 |0002: invoke-virtual {v0}, Ljava/lang/Class;.newInstance:()Ljava/lang/Object; // method@003f │ │ +0045de: 0c00 |0005: move-result-object v0 │ │ +0045e0: 1f00 7400 |0006: check-cast v0, Lt20kdc/offlinepuzzlesolver/game/Solver; // type@0074 │ │ +0045e4: 2201 3200 |0008: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +0045e8: 7010 5400 0100 |000a: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +0045ee: 5442 8900 |000d: iget-object v2, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.bundle:Landroid/os/Bundle; // field@0089 │ │ +0045f2: 5443 8a00 |000f: iget-object v3, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008a │ │ +0045f6: 7240 4a01 2031 |0011: invoke-interface {v0, v2, v1, v3}, Lt20kdc/offlinepuzzlesolver/game/Solver;.solve:(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V // method@014a │ │ +0045fc: 2820 |0014: goto 0034 // +0020 │ │ +0045fe: 0d00 |0015: move-exception v0 │ │ +004600: 1a02 4000 |0016: const-string v2, "AN EXCEPTION OCCURRED... │ │ +" // string@0040 │ │ +004604: 6e20 5700 2100 |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00460a: 2202 2400 |001b: new-instance v2, Ljava/io/StringWriter; // type@0024 │ │ +00460e: 7010 3a00 0200 |001d: invoke-direct {v2}, Ljava/io/StringWriter;.:()V // method@003a │ │ +004614: 2203 2300 |0020: new-instance v3, Ljava/io/PrintWriter; // type@0023 │ │ +004618: 7020 3900 2300 |0022: invoke-direct {v3, v2}, Ljava/io/PrintWriter;.:(Ljava/io/Writer;)V // method@0039 │ │ +00461e: 6e20 4200 3000 |0025: invoke-virtual {v0, v3}, Ljava/lang/Exception;.printStackTrace:(Ljava/io/PrintWriter;)V // method@0042 │ │ +004624: 6e10 3b00 0200 |0028: invoke-virtual {v2}, Ljava/io/StringWriter;.toString:()Ljava/lang/String; // method@003b │ │ +00462a: 0c00 |002b: move-result-object v0 │ │ +00462c: 6e20 5700 0100 |002c: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +004632: 1a00 3100 |002f: const-string v0, "" // string@0031 │ │ +004636: 6e20 5700 0100 |0031: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00463c: 5440 8a00 |0034: iget-object v0, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008a │ │ +004640: 6e10 8300 0000 |0036: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@0083 │ │ +004646: 0a00 |0039: move-result v0 │ │ +004648: 3800 0300 |003a: if-eqz v0, 003d // +0003 │ │ +00464c: 0e00 |003c: return-void │ │ +00464e: 6e10 5900 0100 |003d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +004654: 0c00 |0040: move-result-object v0 │ │ +004656: 2807 |0041: goto 0048 // +0007 │ │ +004658: 0d00 |0042: move-exception v0 │ │ +00465a: 6e10 4100 0000 |0043: invoke-virtual {v0}, Ljava/lang/Exception;.printStackTrace:()V // method@0041 │ │ +004660: 1a00 8900 |0046: const-string v0, "Exterior solver management exception. This shouldn't happen. As reporting the last exception could've caused the problem in the first place, no exception stack trace will be provided. Please defer to LogCat." // string@0089 │ │ +004664: 5441 8800 |0048: iget-object v1, v4, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.activity:Ljava/lang/ref/WeakReference; // field@0088 │ │ +004668: 6e10 6200 0100 |004a: invoke-virtual {v1}, Ljava/lang/ref/WeakReference;.get:()Ljava/lang/Object; // method@0062 │ │ +00466e: 0c01 |004d: move-result-object v1 │ │ +004670: 1f01 6900 |004e: check-cast v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity; // type@0069 │ │ +004674: 3901 0300 |0050: if-nez v1, 0053 // +0003 │ │ +004678: 0e00 |0052: return-void │ │ +00467a: 2202 5900 |0053: new-instance v2, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA; // type@0059 │ │ +00467e: 7040 d200 4201 |0055: invoke-direct {v2, v4, v1, v0}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA;.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V // method@00d2 │ │ +004684: 6e20 1001 2100 |0058: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.runOnUiThread:(Ljava/lang/Runnable;)V // method@0110 │ │ +00468a: 0e00 |005b: return-void │ │ catches : 3 │ │ 0x0000 - 0x000d │ │ Ljava/lang/Exception; -> 0x0042 │ │ 0x000d - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ 0x0016 - 0x0041 │ │ Ljava/lang/Exception; -> 0x0042 │ │ @@ -3986,21 +3987,21 @@ │ │ 0x003d line=98 │ │ 0x0043 line=100 │ │ 0x0048 line=107 │ │ 0x0053 line=110 │ │ locals : │ │ 0x0000 - 0x005c reg=4 this Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread; │ │ │ │ - source_file_idx : 336 (StreamlineActivity.java) │ │ + source_file_idx : 338 (StreamlineActivity.java) │ │ │ │ Class #33 header: │ │ class_idx : 105 │ │ access_flags : 1025 (0x0401) │ │ superclass_idx : 4 │ │ -source_file_idx : 336 │ │ +source_file_idx : 338 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 8 │ │ │ │ Class #33 annotations: │ │ Annotations on class │ │ @@ -4021,17 +4022,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -0046a0: |[0046a0] t20kdc.offlinepuzzlesolver.StreamlineActivity.:()V │ │ -0046b0: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ -0046b6: 0e00 |0003: return-void │ │ +0046ac: |[0046ac] t20kdc.offlinepuzzlesolver.StreamlineActivity.:()V │ │ +0046bc: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ +0046c2: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=19 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/StreamlineActivity; │ │ │ │ Virtual methods - │ │ @@ -4040,22 +4041,22 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 16 16-bit code units │ │ -0046b8: |[0046b8] t20kdc.offlinepuzzlesolver.StreamlineActivity.bindRulesButton:(Ljava/lang/String;)V │ │ -0046c8: 1400 0500 037f |0000: const v0, #float 1.74129e+38 // #7f030005 │ │ -0046ce: 6e20 0701 0200 |0003: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.findViewById:(I)Landroid/view/View; // method@0107 │ │ -0046d4: 0c00 |0006: move-result-object v0 │ │ -0046d6: 2201 5a00 |0007: new-instance v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64; // type@005a │ │ -0046da: 7030 d400 2103 |0009: invoke-direct {v1, v2, v3}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V // method@00d4 │ │ -0046e0: 6e20 1f00 1000 |000c: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ -0046e6: 0e00 |000f: return-void │ │ +0046c4: |[0046c4] t20kdc.offlinepuzzlesolver.StreamlineActivity.bindRulesButton:(Ljava/lang/String;)V │ │ +0046d4: 1400 0500 037f |0000: const v0, #float 1.74129e+38 // #7f030005 │ │ +0046da: 6e20 0701 0200 |0003: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.findViewById:(I)Landroid/view/View; // method@0107 │ │ +0046e0: 0c00 |0006: move-result-object v0 │ │ +0046e2: 2201 5a00 |0007: new-instance v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64; // type@005a │ │ +0046e6: 7030 d400 2103 |0009: invoke-direct {v1, v2, v3}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64;.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/String;)V // method@00d4 │ │ +0046ec: 6e20 1f00 1000 |000c: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ +0046f2: 0e00 |000f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=57 │ │ locals : │ │ 0x0000 - 0x0010 reg=2 this Lt20kdc/offlinepuzzlesolver/StreamlineActivity; │ │ 0x0000 - 0x0010 reg=3 (null) Ljava/lang/String; │ │ │ │ @@ -4064,36 +4065,36 @@ │ │ type : '(Ljava/lang/Class;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 48 16-bit code units │ │ -0046e8: |[0046e8] t20kdc.offlinepuzzlesolver.StreamlineActivity.bindSolveButton:(Ljava/lang/Class;)V │ │ -0046f8: 2200 3200 |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ -0046fc: 7010 5400 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -004702: 1a01 4a01 |0005: const-string v1, "Solve button binding (class " // string@014a │ │ -004706: 6e20 5700 1000 |0007: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00470c: 6e10 4000 0400 |000a: invoke-virtual {v4}, Ljava/lang/Class;.toString:()Ljava/lang/String; // method@0040 │ │ -004712: 0c01 |000d: move-result-object v1 │ │ -004714: 6e20 5700 1000 |000e: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00471a: 1a01 2000 |0011: const-string v1, ")" // string@0020 │ │ -00471e: 6e20 5700 1000 |0013: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -004724: 6e10 5900 0000 |0016: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -00472a: 0c00 |0019: move-result-object v0 │ │ -00472c: 1241 |001a: const/4 v1, #int 4 // #4 │ │ -00472e: 1a02 4f01 |001b: const-string v2, "StreamlineActivity" // string@014f │ │ -004732: 7130 1c00 2100 |001d: invoke-static {v1, v2, v0}, Landroid/util/Log;.println:(ILjava/lang/String;Ljava/lang/String;)I // method@001c │ │ -004738: 1400 0600 037f |0020: const v0, #float 1.74129e+38 // #7f030006 │ │ -00473e: 6e20 0701 0300 |0023: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.findViewById:(I)Landroid/view/View; // method@0107 │ │ -004744: 0c00 |0026: move-result-object v0 │ │ -004746: 2201 5800 |0027: new-instance v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs; // type@0058 │ │ -00474a: 7030 d000 3104 |0029: invoke-direct {v1, v3, v4}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Class;)V // method@00d0 │ │ -004750: 6e20 1f00 1000 |002c: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ -004756: 0e00 |002f: return-void │ │ +0046f4: |[0046f4] t20kdc.offlinepuzzlesolver.StreamlineActivity.bindSolveButton:(Ljava/lang/Class;)V │ │ +004704: 2200 3200 |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ +004708: 7010 5400 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +00470e: 1a01 4c01 |0005: const-string v1, "Solve button binding (class " // string@014c │ │ +004712: 6e20 5700 1000 |0007: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +004718: 6e10 4000 0400 |000a: invoke-virtual {v4}, Ljava/lang/Class;.toString:()Ljava/lang/String; // method@0040 │ │ +00471e: 0c01 |000d: move-result-object v1 │ │ +004720: 6e20 5700 1000 |000e: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +004726: 1a01 2000 |0011: const-string v1, ")" // string@0020 │ │ +00472a: 6e20 5700 1000 |0013: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +004730: 6e10 5900 0000 |0016: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +004736: 0c00 |0019: move-result-object v0 │ │ +004738: 1241 |001a: const/4 v1, #int 4 // #4 │ │ +00473a: 1a02 5101 |001b: const-string v2, "StreamlineActivity" // string@0151 │ │ +00473e: 7130 1c00 2100 |001d: invoke-static {v1, v2, v0}, Landroid/util/Log;.println:(ILjava/lang/String;Ljava/lang/String;)I // method@001c │ │ +004744: 1400 0600 037f |0020: const v0, #float 1.74129e+38 // #7f030006 │ │ +00474a: 6e20 0701 0300 |0023: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.findViewById:(I)Landroid/view/View; // method@0107 │ │ +004750: 0c00 |0026: move-result-object v0 │ │ +004752: 2201 5800 |0027: new-instance v1, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs; // type@0058 │ │ +004756: 7030 d000 3104 |0029: invoke-direct {v1, v3, v4}, Lt20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs;.:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Class;)V // method@00d0 │ │ +00475c: 6e20 1f00 1000 |002c: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ +004762: 0e00 |002f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ 0x0023 line=46 │ │ locals : │ │ 0x0000 - 0x0030 reg=3 this Lt20kdc/offlinepuzzlesolver/StreamlineActivity; │ │ 0x0000 - 0x0030 reg=4 (null) Ljava/lang/Class; │ │ @@ -4103,27 +4104,27 @@ │ │ type : '(Ljava/lang/String;Landroid/view/View;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 28 16-bit code units │ │ -004758: |[004758] t20kdc.offlinepuzzlesolver.StreamlineActivity.lambda$bindRulesButton$1$StreamlineActivity:(Ljava/lang/String;Landroid/view/View;)V │ │ -004768: 2204 0700 |0000: new-instance v4, Landroid/content/Intent; // type@0007 │ │ -00476c: 1c00 6500 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/SolutionActivity; // type@0065 │ │ -004770: 7030 0b00 2400 |0004: invoke-direct {v4, v2, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ -004776: 1400 1400 067f |0007: const v0, #float 1.78117e+38 // #7f060014 │ │ -00477c: 6e20 0801 0200 |000a: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.getString:(I)Ljava/lang/String; // method@0108 │ │ -004782: 0c00 |000d: move-result-object v0 │ │ -004784: 1a01 be01 |000e: const-string v1, "android.intent.extra.TITLE" // string@01be │ │ -004788: 6e30 0d00 1400 |0010: invoke-virtual {v4, v1, v0}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@000d │ │ -00478e: 1a00 bf02 |0013: const-string v0, "t20kdc.top.pipe" // string@02bf │ │ -004792: 6e30 0d00 0403 |0015: invoke-virtual {v4, v0, v3}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@000d │ │ -004798: 6e20 1101 4200 |0018: invoke-virtual {v2, v4}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.startActivity:(Landroid/content/Intent;)V // method@0111 │ │ -00479e: 0e00 |001b: return-void │ │ +004764: |[004764] t20kdc.offlinepuzzlesolver.StreamlineActivity.lambda$bindRulesButton$1$StreamlineActivity:(Ljava/lang/String;Landroid/view/View;)V │ │ +004774: 2204 0700 |0000: new-instance v4, Landroid/content/Intent; // type@0007 │ │ +004778: 1c00 6500 |0002: const-class v0, Lt20kdc/offlinepuzzlesolver/SolutionActivity; // type@0065 │ │ +00477c: 7030 0b00 2400 |0004: invoke-direct {v4, v2, v0}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ +004782: 1400 1400 067f |0007: const v0, #float 1.78117e+38 // #7f060014 │ │ +004788: 6e20 0801 0200 |000a: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.getString:(I)Ljava/lang/String; // method@0108 │ │ +00478e: 0c00 |000d: move-result-object v0 │ │ +004790: 1a01 c001 |000e: const-string v1, "android.intent.extra.TITLE" // string@01c0 │ │ +004794: 6e30 0d00 1400 |0010: invoke-virtual {v4, v1, v0}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@000d │ │ +00479a: 1a00 c102 |0013: const-string v0, "t20kdc.top.pipe" // string@02c1 │ │ +00479e: 6e30 0d00 0403 |0015: invoke-virtual {v4, v0, v3}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@000d │ │ +0047a4: 6e20 1101 4200 |0018: invoke-virtual {v2, v4}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.startActivity:(Landroid/content/Intent;)V // method@0111 │ │ +0047aa: 0e00 |001b: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=58 │ │ 0x000a line=59 │ │ 0x0015 line=60 │ │ 0x0018 line=61 │ │ locals : │ │ @@ -4136,42 +4137,42 @@ │ │ type : '(Ljava/lang/Class;Landroid/view/View;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 5 │ │ insns size : 63 16-bit code units │ │ -0047a0: |[0047a0] t20kdc.offlinepuzzlesolver.StreamlineActivity.lambda$bindSolveButton$0$StreamlineActivity:(Ljava/lang/Class;Landroid/view/View;)V │ │ -0047b0: 2204 3200 |0000: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ -0047b4: 7010 5400 0400 |0002: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -0047ba: 1a00 4b01 |0005: const-string v0, "Solve button pressed (class " // string@014b │ │ -0047be: 6e20 5700 0400 |0007: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0047c4: 6e10 4000 0300 |000a: invoke-virtual {v3}, Ljava/lang/Class;.toString:()Ljava/lang/String; // method@0040 │ │ -0047ca: 0c00 |000d: move-result-object v0 │ │ -0047cc: 6e20 5700 0400 |000e: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0047d2: 1a00 2000 |0011: const-string v0, ")" // string@0020 │ │ -0047d6: 6e20 5700 0400 |0013: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0047dc: 6e10 5900 0400 |0016: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -0047e2: 0c04 |0019: move-result-object v4 │ │ -0047e4: 1240 |001a: const/4 v0, #int 4 // #4 │ │ -0047e6: 1a01 4f01 |001b: const-string v1, "StreamlineActivity" // string@014f │ │ -0047ea: 7130 1c00 1004 |001d: invoke-static {v0, v1, v4}, Landroid/util/Log;.println:(ILjava/lang/String;Ljava/lang/String;)I // method@001c │ │ -0047f0: 2204 0b00 |0020: new-instance v4, Landroid/os/Bundle; // type@000b │ │ -0047f4: 7010 1400 0400 |0022: invoke-direct {v4}, Landroid/os/Bundle;.:()V // method@0014 │ │ -0047fa: 2200 6700 |0025: new-instance v0, Lt20kdc/offlinepuzzlesolver/Streamline; // type@0067 │ │ -0047fe: 1211 |0027: const/4 v1, #int 1 // #1 │ │ -004800: 7040 f800 2014 |0028: invoke-direct {v0, v2, v4, v1}, Lt20kdc/offlinepuzzlesolver/Streamline;.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V // method@00f8 │ │ -004806: 6e20 0f01 0200 |002b: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V // method@010f │ │ -00480c: 6e10 fa00 0000 |002e: invoke-virtual {v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.finish:()V // method@00fa │ │ -004812: 2200 4200 |0031: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0042 │ │ -004816: 7010 8200 0000 |0033: invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.:()V // method@0082 │ │ -00481c: 2201 6800 |0036: new-instance v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread; // type@0068 │ │ -004820: 7052 0101 3104 |0038: invoke-direct {v1, v3, v4, v0, v2}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.:(Ljava/lang/Class;Landroid/os/Bundle;Ljava/util/concurrent/atomic/AtomicBoolean;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;)V // method@0101 │ │ -004826: 7130 1501 1200 |003b: invoke-static {v2, v1, v0}, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.launch:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Thread;Ljava/util/concurrent/atomic/AtomicBoolean;)V // method@0115 │ │ -00482c: 0e00 |003e: return-void │ │ +0047ac: |[0047ac] t20kdc.offlinepuzzlesolver.StreamlineActivity.lambda$bindSolveButton$0$StreamlineActivity:(Ljava/lang/Class;Landroid/view/View;)V │ │ +0047bc: 2204 3200 |0000: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ +0047c0: 7010 5400 0400 |0002: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +0047c6: 1a00 4d01 |0005: const-string v0, "Solve button pressed (class " // string@014d │ │ +0047ca: 6e20 5700 0400 |0007: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0047d0: 6e10 4000 0300 |000a: invoke-virtual {v3}, Ljava/lang/Class;.toString:()Ljava/lang/String; // method@0040 │ │ +0047d6: 0c00 |000d: move-result-object v0 │ │ +0047d8: 6e20 5700 0400 |000e: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0047de: 1a00 2000 |0011: const-string v0, ")" // string@0020 │ │ +0047e2: 6e20 5700 0400 |0013: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0047e8: 6e10 5900 0400 |0016: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0047ee: 0c04 |0019: move-result-object v4 │ │ +0047f0: 1240 |001a: const/4 v0, #int 4 // #4 │ │ +0047f2: 1a01 5101 |001b: const-string v1, "StreamlineActivity" // string@0151 │ │ +0047f6: 7130 1c00 1004 |001d: invoke-static {v0, v1, v4}, Landroid/util/Log;.println:(ILjava/lang/String;Ljava/lang/String;)I // method@001c │ │ +0047fc: 2204 0b00 |0020: new-instance v4, Landroid/os/Bundle; // type@000b │ │ +004800: 7010 1400 0400 |0022: invoke-direct {v4}, Landroid/os/Bundle;.:()V // method@0014 │ │ +004806: 2200 6700 |0025: new-instance v0, Lt20kdc/offlinepuzzlesolver/Streamline; // type@0067 │ │ +00480a: 1211 |0027: const/4 v1, #int 1 // #1 │ │ +00480c: 7040 f800 2014 |0028: invoke-direct {v0, v2, v4, v1}, Lt20kdc/offlinepuzzlesolver/Streamline;.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V // method@00f8 │ │ +004812: 6e20 0f01 0200 |002b: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V // method@010f │ │ +004818: 6e10 fa00 0000 |002e: invoke-virtual {v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.finish:()V // method@00fa │ │ +00481e: 2200 4200 |0031: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0042 │ │ +004822: 7010 8200 0000 |0033: invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.:()V // method@0082 │ │ +004828: 2201 6800 |0036: new-instance v1, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread; // type@0068 │ │ +00482c: 7052 0101 3104 |0038: invoke-direct {v1, v3, v4, v0, v2}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity$PuzzleSolverAsyncThread;.:(Ljava/lang/Class;Landroid/os/Bundle;Ljava/util/concurrent/atomic/AtomicBoolean;Lt20kdc/offlinepuzzlesolver/StreamlineActivity;)V // method@0101 │ │ +004832: 7130 1501 1200 |003b: invoke-static {v2, v1, v0}, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.launch:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Thread;Ljava/util/concurrent/atomic/AtomicBoolean;)V // method@0115 │ │ +004838: 0e00 |003e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ 0x0020 line=48 │ │ 0x0025 line=49 │ │ 0x002b line=50 │ │ 0x002e line=51 │ │ @@ -4187,21 +4188,21 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 13 16-bit code units │ │ -004830: |[004830] t20kdc.offlinepuzzlesolver.StreamlineActivity.loadSL:(Landroid/os/Bundle;)V │ │ -004840: 2200 6700 |0000: new-instance v0, Lt20kdc/offlinepuzzlesolver/Streamline; // type@0067 │ │ -004844: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -004846: 7040 f800 2013 |0003: invoke-direct {v0, v2, v3, v1}, Lt20kdc/offlinepuzzlesolver/Streamline;.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V // method@00f8 │ │ -00484c: 6e20 0f01 0200 |0006: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V // method@010f │ │ -004852: 6e10 fa00 0000 |0009: invoke-virtual {v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.finish:()V // method@00fa │ │ -004858: 0e00 |000c: return-void │ │ +00483c: |[00483c] t20kdc.offlinepuzzlesolver.StreamlineActivity.loadSL:(Landroid/os/Bundle;)V │ │ +00484c: 2200 6700 |0000: new-instance v0, Lt20kdc/offlinepuzzlesolver/Streamline; // type@0067 │ │ +004850: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +004852: 7040 f800 2013 |0003: invoke-direct {v0, v2, v3, v1}, Lt20kdc/offlinepuzzlesolver/Streamline;.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V // method@00f8 │ │ +004858: 6e20 0f01 0200 |0006: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V // method@010f │ │ +00485e: 6e10 fa00 0000 |0009: invoke-virtual {v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.finish:()V // method@00fa │ │ +004864: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=21 │ │ 0x0006 line=22 │ │ 0x0009 line=23 │ │ locals : │ │ 0x0000 - 0x000d reg=2 this Lt20kdc/offlinepuzzlesolver/StreamlineActivity; │ │ @@ -4212,23 +4213,23 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 17 16-bit code units │ │ -00485c: |[00485c] t20kdc.offlinepuzzlesolver.StreamlineActivity.onPause:()V │ │ -00486c: 6f10 0600 0300 |0000: invoke-super {v3}, Landroid/app/Activity;.onPause:()V // method@0006 │ │ -004872: 2200 6700 |0003: new-instance v0, Lt20kdc/offlinepuzzlesolver/Streamline; // type@0067 │ │ -004876: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -004878: 1212 |0006: const/4 v2, #int 1 // #1 │ │ -00487a: 7040 f800 3021 |0007: invoke-direct {v0, v3, v1, v2}, Lt20kdc/offlinepuzzlesolver/Streamline;.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V // method@00f8 │ │ -004880: 6e20 0f01 0300 |000a: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V // method@010f │ │ -004886: 6e10 fa00 0000 |000d: invoke-virtual {v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.finish:()V // method@00fa │ │ -00488c: 0e00 |0010: return-void │ │ +004868: |[004868] t20kdc.offlinepuzzlesolver.StreamlineActivity.onPause:()V │ │ +004878: 6f10 0600 0300 |0000: invoke-super {v3}, Landroid/app/Activity;.onPause:()V // method@0006 │ │ +00487e: 2200 6700 |0003: new-instance v0, Lt20kdc/offlinepuzzlesolver/Streamline; // type@0067 │ │ +004882: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +004884: 1212 |0006: const/4 v2, #int 1 // #1 │ │ +004886: 7040 f800 3021 |0007: invoke-direct {v0, v3, v1, v2}, Lt20kdc/offlinepuzzlesolver/Streamline;.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V // method@00f8 │ │ +00488c: 6e20 0f01 0300 |000a: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V // method@010f │ │ +004892: 6e10 fa00 0000 |000d: invoke-virtual {v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.finish:()V // method@00fa │ │ +004898: 0e00 |0010: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=36 │ │ 0x0003 line=37 │ │ 0x000a line=38 │ │ 0x000d line=39 │ │ locals : │ │ @@ -4239,22 +4240,22 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 16 16-bit code units │ │ -004890: |[004890] t20kdc.offlinepuzzlesolver.StreamlineActivity.onSaveInstanceState:(Landroid/os/Bundle;)V │ │ -0048a0: 6f20 0700 3200 |0000: invoke-super {v2, v3}, Landroid/app/Activity;.onSaveInstanceState:(Landroid/os/Bundle;)V // method@0007 │ │ -0048a6: 2200 6700 |0003: new-instance v0, Lt20kdc/offlinepuzzlesolver/Streamline; // type@0067 │ │ -0048aa: 1211 |0005: const/4 v1, #int 1 // #1 │ │ -0048ac: 7040 f800 2013 |0006: invoke-direct {v0, v2, v3, v1}, Lt20kdc/offlinepuzzlesolver/Streamline;.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V // method@00f8 │ │ -0048b2: 6e20 0f01 0200 |0009: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V // method@010f │ │ -0048b8: 6e10 fa00 0000 |000c: invoke-virtual {v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.finish:()V // method@00fa │ │ -0048be: 0e00 |000f: return-void │ │ +00489c: |[00489c] t20kdc.offlinepuzzlesolver.StreamlineActivity.onSaveInstanceState:(Landroid/os/Bundle;)V │ │ +0048ac: 6f20 0700 3200 |0000: invoke-super {v2, v3}, Landroid/app/Activity;.onSaveInstanceState:(Landroid/os/Bundle;)V // method@0007 │ │ +0048b2: 2200 6700 |0003: new-instance v0, Lt20kdc/offlinepuzzlesolver/Streamline; // type@0067 │ │ +0048b6: 1211 |0005: const/4 v1, #int 1 // #1 │ │ +0048b8: 7040 f800 2013 |0006: invoke-direct {v0, v2, v3, v1}, Lt20kdc/offlinepuzzlesolver/Streamline;.:(Landroid/app/Activity;Landroid/os/Bundle;Z)V // method@00f8 │ │ +0048be: 6e20 0f01 0200 |0009: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V // method@010f │ │ +0048c4: 6e10 fa00 0000 |000c: invoke-virtual {v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.finish:()V // method@00fa │ │ +0048ca: 0e00 |000f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=28 │ │ 0x0003 line=29 │ │ 0x0009 line=30 │ │ 0x000c line=31 │ │ locals : │ │ @@ -4263,21 +4264,21 @@ │ │ │ │ #7 : (in Lt20kdc/offlinepuzzlesolver/StreamlineActivity;) │ │ name : 'onStreamline' │ │ type : '(Lt20kdc/offlinepuzzlesolver/Streamline;)V' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ - source_file_idx : 336 (StreamlineActivity.java) │ │ + source_file_idx : 338 (StreamlineActivity.java) │ │ │ │ Class #34 header: │ │ class_idx : 106 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 4 │ │ -source_file_idx : 389 │ │ +source_file_idx : 391 │ │ static_fields_size : 2 │ │ instance_fields_size: 0 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 3 │ │ │ │ Class #34 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/WorkingActivity;' │ │ @@ -4300,17 +4301,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004b94: |[004b94] t20kdc.offlinepuzzlesolver.WorkingActivity.:()V │ │ -004ba4: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ -004baa: 0e00 |0003: return-void │ │ +004ba0: |[004ba0] t20kdc.offlinepuzzlesolver.WorkingActivity.:()V │ │ +004bb0: 7010 0000 0000 |0000: invoke-direct {v0}, Landroid/app/Activity;.:()V // method@0000 │ │ +004bb6: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=13 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/WorkingActivity; │ │ │ │ #1 : (in Lt20kdc/offlinepuzzlesolver/WorkingActivity;) │ │ @@ -4318,23 +4319,23 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Thread;Ljava/util/concurrent/atomic/AtomicBoolean;)V' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 18 16-bit code units │ │ -004bac: |[004bac] t20kdc.offlinepuzzlesolver.WorkingActivity.launch:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Thread;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ -004bbc: 6901 8d00 |0000: sput-object v1, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentWorkerThread:Ljava/lang/Thread; // field@008d │ │ -004bc0: 6902 8c00 |0002: sput-object v2, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentCanceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008c │ │ -004bc4: 6e10 5f00 0100 |0004: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@005f │ │ -004bca: 2201 0700 |0007: new-instance v1, Landroid/content/Intent; // type@0007 │ │ -004bce: 1c02 6a00 |0009: const-class v2, Lt20kdc/offlinepuzzlesolver/WorkingActivity; // type@006a │ │ -004bd2: 7030 0b00 0102 |000b: invoke-direct {v1, v0, v2}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ -004bd8: 6e20 1101 1000 |000e: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.startActivity:(Landroid/content/Intent;)V // method@0111 │ │ -004bde: 0e00 |0011: return-void │ │ +004bb8: |[004bb8] t20kdc.offlinepuzzlesolver.WorkingActivity.launch:(Lt20kdc/offlinepuzzlesolver/StreamlineActivity;Ljava/lang/Thread;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ +004bc8: 6901 8d00 |0000: sput-object v1, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentWorkerThread:Ljava/lang/Thread; // field@008d │ │ +004bcc: 6902 8c00 |0002: sput-object v2, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentCanceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008c │ │ +004bd0: 6e10 5f00 0100 |0004: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@005f │ │ +004bd6: 2201 0700 |0007: new-instance v1, Landroid/content/Intent; // type@0007 │ │ +004bda: 1c02 6a00 |0009: const-class v2, Lt20kdc/offlinepuzzlesolver/WorkingActivity; // type@006a │ │ +004bde: 7030 0b00 0102 |000b: invoke-direct {v1, v0, v2}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@000b │ │ +004be4: 6e20 1101 1000 |000e: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.startActivity:(Landroid/content/Intent;)V // method@0111 │ │ +004bea: 0e00 |0011: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=24 │ │ 0x0002 line=25 │ │ 0x0004 line=26 │ │ 0x0007 line=27 │ │ locals : │ │ @@ -4348,19 +4349,19 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 10 16-bit code units │ │ -004be0: |[004be0] t20kdc.offlinepuzzlesolver.WorkingActivity.onCreate:(Landroid/os/Bundle;)V │ │ -004bf0: 6f20 0300 1000 |0000: invoke-super {v0, v1}, Landroid/app/Activity;.onCreate:(Landroid/os/Bundle;)V // method@0003 │ │ -004bf6: 1401 0700 047f |0003: const v1, #float 1.75458e+38 // #7f040007 │ │ -004bfc: 6e20 1901 1000 |0006: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.setContentView:(I)V // method@0119 │ │ -004c02: 0e00 |0009: return-void │ │ +004bec: |[004bec] t20kdc.offlinepuzzlesolver.WorkingActivity.onCreate:(Landroid/os/Bundle;)V │ │ +004bfc: 6f20 0300 1000 |0000: invoke-super {v0, v1}, Landroid/app/Activity;.onCreate:(Landroid/os/Bundle;)V // method@0003 │ │ +004c02: 1401 0700 047f |0003: const v1, #float 1.75458e+38 // #7f040007 │ │ +004c08: 6e20 1901 1000 |0006: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.setContentView:(I)V // method@0119 │ │ +004c0e: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=32 │ │ 0x0006 line=33 │ │ locals : │ │ 0x0000 - 0x000a reg=0 this Lt20kdc/offlinepuzzlesolver/WorkingActivity; │ │ 0x0000 - 0x000a reg=1 (null) Landroid/os/Bundle; │ │ @@ -4370,32 +4371,32 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 34 16-bit code units │ │ -004c04: |[004c04] t20kdc.offlinepuzzlesolver.WorkingActivity.onDestroy:()V │ │ -004c14: 6f10 0400 0300 |0000: invoke-super {v3}, Landroid/app/Activity;.onDestroy:()V // method@0004 │ │ -004c1a: 6e10 1401 0300 |0003: invoke-virtual {v3}, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.isFinishing:()Z // method@0114 │ │ -004c20: 0a00 |0006: move-result v0 │ │ -004c22: 3800 1a00 |0007: if-eqz v0, 0021 // +001a │ │ -004c26: 6200 8c00 |0009: sget-object v0, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentCanceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008c │ │ -004c2a: 1a01 8401 |000b: const-string v1, "WorkingActivity" // string@0184 │ │ -004c2e: 1242 |000d: const/4 v2, #int 4 // #4 │ │ -004c30: 3800 0e00 |000e: if-eqz v0, 001c // +000e │ │ -004c34: 1a00 6701 |0010: const-string v0, "User has finished WorkingActivity, and a canceller is available" // string@0167 │ │ -004c38: 7130 1c00 1200 |0012: invoke-static {v2, v1, v0}, Landroid/util/Log;.println:(ILjava/lang/String;Ljava/lang/String;)I // method@001c │ │ -004c3e: 6200 8c00 |0015: sget-object v0, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentCanceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008c │ │ -004c42: 1211 |0017: const/4 v1, #int 1 // #1 │ │ -004c44: 6e20 8400 1000 |0018: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@0084 │ │ -004c4a: 2806 |001b: goto 0021 // +0006 │ │ -004c4c: 1a00 6801 |001c: const-string v0, "User has finished WorkingActivity, and a canceller is not available" // string@0168 │ │ -004c50: 7130 1c00 1200 |001e: invoke-static {v2, v1, v0}, Landroid/util/Log;.println:(ILjava/lang/String;Ljava/lang/String;)I // method@001c │ │ -004c56: 0e00 |0021: return-void │ │ +004c10: |[004c10] t20kdc.offlinepuzzlesolver.WorkingActivity.onDestroy:()V │ │ +004c20: 6f10 0400 0300 |0000: invoke-super {v3}, Landroid/app/Activity;.onDestroy:()V // method@0004 │ │ +004c26: 6e10 1401 0300 |0003: invoke-virtual {v3}, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.isFinishing:()Z // method@0114 │ │ +004c2c: 0a00 |0006: move-result v0 │ │ +004c2e: 3800 1a00 |0007: if-eqz v0, 0021 // +001a │ │ +004c32: 6200 8c00 |0009: sget-object v0, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentCanceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008c │ │ +004c36: 1a01 8601 |000b: const-string v1, "WorkingActivity" // string@0186 │ │ +004c3a: 1242 |000d: const/4 v2, #int 4 // #4 │ │ +004c3c: 3800 0e00 |000e: if-eqz v0, 001c // +000e │ │ +004c40: 1a00 6901 |0010: const-string v0, "User has finished WorkingActivity, and a canceller is available" // string@0169 │ │ +004c44: 7130 1c00 1200 |0012: invoke-static {v2, v1, v0}, Landroid/util/Log;.println:(ILjava/lang/String;Ljava/lang/String;)I // method@001c │ │ +004c4a: 6200 8c00 |0015: sget-object v0, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentCanceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@008c │ │ +004c4e: 1211 |0017: const/4 v1, #int 1 // #1 │ │ +004c50: 6e20 8400 1000 |0018: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@0084 │ │ +004c56: 2806 |001b: goto 0021 // +0006 │ │ +004c58: 1a00 6a01 |001c: const-string v0, "User has finished WorkingActivity, and a canceller is not available" // string@016a │ │ +004c5c: 7130 1c00 1200 |001e: invoke-static {v2, v1, v0}, Landroid/util/Log;.println:(ILjava/lang/String;Ljava/lang/String;)I // method@001c │ │ +004c62: 0e00 |0021: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=46 │ │ 0x0003 line=47 │ │ 0x0009 line=48 │ │ 0x0012 line=49 │ │ 0x0015 line=50 │ │ @@ -4408,38 +4409,38 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 17 16-bit code units │ │ -004c58: |[004c58] t20kdc.offlinepuzzlesolver.WorkingActivity.onStart:()V │ │ -004c68: 6f10 0800 0100 |0000: invoke-super {v1}, Landroid/app/Activity;.onStart:()V // method@0008 │ │ -004c6e: 6200 8d00 |0003: sget-object v0, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentWorkerThread:Ljava/lang/Thread; // field@008d │ │ -004c72: 3800 0800 |0005: if-eqz v0, 000d // +0008 │ │ -004c76: 6e10 5d00 0000 |0007: invoke-virtual {v0}, Ljava/lang/Thread;.isAlive:()Z // method@005d │ │ -004c7c: 0a00 |000a: move-result v0 │ │ -004c7e: 3900 0500 |000b: if-nez v0, 0010 // +0005 │ │ -004c82: 6e10 1301 0100 |000d: invoke-virtual {v1}, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.finish:()V // method@0113 │ │ -004c88: 0e00 |0010: return-void │ │ +004c64: |[004c64] t20kdc.offlinepuzzlesolver.WorkingActivity.onStart:()V │ │ +004c74: 6f10 0800 0100 |0000: invoke-super {v1}, Landroid/app/Activity;.onStart:()V // method@0008 │ │ +004c7a: 6200 8d00 |0003: sget-object v0, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.currentWorkerThread:Ljava/lang/Thread; // field@008d │ │ +004c7e: 3800 0800 |0005: if-eqz v0, 000d // +0008 │ │ +004c82: 6e10 5d00 0000 |0007: invoke-virtual {v0}, Ljava/lang/Thread;.isAlive:()Z // method@005d │ │ +004c88: 0a00 |000a: move-result v0 │ │ +004c8a: 3900 0500 |000b: if-nez v0, 0010 // +0005 │ │ +004c8e: 6e10 1301 0100 |000d: invoke-virtual {v1}, Lt20kdc/offlinepuzzlesolver/WorkingActivity;.finish:()V // method@0113 │ │ +004c94: 0e00 |0010: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ 0x0003 line=40 │ │ 0x000d line=41 │ │ locals : │ │ 0x0000 - 0x0011 reg=1 this Lt20kdc/offlinepuzzlesolver/WorkingActivity; │ │ │ │ - source_file_idx : 389 (WorkingActivity.java) │ │ + source_file_idx : 391 (WorkingActivity.java) │ │ │ │ Class #35 header: │ │ class_idx : 107 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 1 │ │ instance_fields_size: 0 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 1 │ │ │ │ Class #35 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E;' │ │ @@ -4459,63 +4460,63 @@ │ │ type : '()V' │ │ access : 0x11008 (STATIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -004c8c: |[004c8c] t20kdc.offlinepuzzlesolver.game.-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E.:()V │ │ -004c9c: 2200 6b00 |0000: new-instance v0, Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E; // type@006b │ │ -004ca0: 7010 1b01 0000 |0002: invoke-direct {v0}, Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E;.:()V // method@011b │ │ -004ca6: 6900 8e00 |0005: sput-object v0, Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E;.INSTANCE:Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E; // field@008e │ │ -004caa: 0e00 |0007: return-void │ │ +004c98: |[004c98] t20kdc.offlinepuzzlesolver.game.-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E.:()V │ │ +004ca8: 2200 6b00 |0000: new-instance v0, Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E; // type@006b │ │ +004cac: 7010 1b01 0000 |0002: invoke-direct {v0}, Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E;.:()V // method@011b │ │ +004cb2: 6900 8e00 |0005: sput-object v0, Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E;.INSTANCE:Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E; // field@008e │ │ +004cb6: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #1 : (in Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E;) │ │ name : '' │ │ type : '()V' │ │ access : 0x11002 (PRIVATE SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004cac: |[004cac] t20kdc.offlinepuzzlesolver.game.-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E.:()V │ │ -004cbc: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -004cc2: 0e00 |0003: return-void │ │ +004cb8: |[004cb8] t20kdc.offlinepuzzlesolver.game.-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E.:()V │ │ +004cc8: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +004cce: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E;) │ │ name : 'run' │ │ type : '()V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 4 16-bit code units │ │ -004cc4: |[004cc4] t20kdc.offlinepuzzlesolver.game.-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E.run:()V │ │ -004cd4: 7100 3801 0000 |0000: invoke-static {}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.lambda$onCreate$0:()V // method@0138 │ │ -004cda: 0e00 |0003: return-void │ │ +004cd0: |[004cd0] t20kdc.offlinepuzzlesolver.game.-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E.run:()V │ │ +004ce0: 7100 3801 0000 |0000: invoke-static {}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.lambda$onCreate$0:()V // method@0138 │ │ +004ce6: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #36 header: │ │ class_idx : 108 │ │ access_flags : 0 (0x0000) │ │ superclass_idx : 45 │ │ -source_file_idx : 305 │ │ +source_file_idx : 307 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #36 annotations: │ │ Annotations on class │ │ @@ -4540,18 +4541,18 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -004cdc: |[004cdc] t20kdc.offlinepuzzlesolver.game.NCupsActivity$1.:(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)V │ │ -004cec: 5b01 8f00 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; // field@008f │ │ -004cf0: 7010 4900 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -004cf6: 0e00 |0005: return-void │ │ +004ce8: |[004ce8] t20kdc.offlinepuzzlesolver.game.NCupsActivity$1.:(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)V │ │ +004cf8: 5b01 8f00 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; // field@008f │ │ +004cfc: 7010 4900 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +004d02: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=32 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; │ │ │ │ @@ -4561,53 +4562,53 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 43 16-bit code units │ │ -004cf8: |[004cf8] t20kdc.offlinepuzzlesolver.game.NCupsActivity$1.run:()V │ │ -004d08: 5450 8f00 |0000: iget-object v0, v5, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; // field@008f │ │ -004d0c: 1401 0e00 037f |0002: const v1, #float 1.74129e+38 // #7f03000e │ │ -004d12: 6e20 2301 1000 |0005: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.findViewById:(I)Landroid/view/View; // method@0123 │ │ -004d18: 0c00 |0008: move-result-object v0 │ │ -004d1a: 1f00 1b00 |0009: check-cast v0, Landroid/widget/SeekBar; // type@001b │ │ -004d1e: 6e10 3000 0000 |000b: invoke-virtual {v0}, Landroid/widget/SeekBar;.getProgress:()I // method@0030 │ │ -004d24: 0a00 |000e: move-result v0 │ │ -004d26: d800 0001 |000f: add-int/lit8 v0, v0, #int 1 // #01 │ │ -004d2a: 1201 |0011: const/4 v1, #int 0 // #0 │ │ -004d2c: 1202 |0012: const/4 v2, #int 0 // #0 │ │ -004d2e: 1303 1400 |0013: const/16 v3, #int 20 // #14 │ │ -004d32: 3532 1500 |0015: if-ge v2, v3, 002a // +0015 │ │ -004d36: 5453 8f00 |0017: iget-object v3, v5, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; // field@008f │ │ -004d3a: 7110 2001 0300 |0019: invoke-static {v3}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.access$000:(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)[Landroid/widget/CheckBox; // method@0120 │ │ -004d40: 0c03 |001c: move-result-object v3 │ │ -004d42: 4603 0302 |001d: aget-object v3, v3, v2 │ │ -004d46: 3502 0400 |001f: if-ge v2, v0, 0023 // +0004 │ │ -004d4a: 1204 |0021: const/4 v4, #int 0 // #0 │ │ -004d4c: 2802 |0022: goto 0024 // +0002 │ │ -004d4e: 1244 |0023: const/4 v4, #int 4 // #4 │ │ -004d50: 6e20 2a00 4300 |0024: invoke-virtual {v3, v4}, Landroid/widget/CheckBox;.setVisibility:(I)V // method@002a │ │ -004d56: d802 0201 |0027: add-int/lit8 v2, v2, #int 1 // #01 │ │ -004d5a: 28ea |0029: goto 0013 // -0016 │ │ -004d5c: 0e00 |002a: return-void │ │ +004d04: |[004d04] t20kdc.offlinepuzzlesolver.game.NCupsActivity$1.run:()V │ │ +004d14: 5450 8f00 |0000: iget-object v0, v5, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; // field@008f │ │ +004d18: 1401 0e00 037f |0002: const v1, #float 1.74129e+38 // #7f03000e │ │ +004d1e: 6e20 2301 1000 |0005: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.findViewById:(I)Landroid/view/View; // method@0123 │ │ +004d24: 0c00 |0008: move-result-object v0 │ │ +004d26: 1f00 1b00 |0009: check-cast v0, Landroid/widget/SeekBar; // type@001b │ │ +004d2a: 6e10 3000 0000 |000b: invoke-virtual {v0}, Landroid/widget/SeekBar;.getProgress:()I // method@0030 │ │ +004d30: 0a00 |000e: move-result v0 │ │ +004d32: d800 0001 |000f: add-int/lit8 v0, v0, #int 1 // #01 │ │ +004d36: 1201 |0011: const/4 v1, #int 0 // #0 │ │ +004d38: 1202 |0012: const/4 v2, #int 0 // #0 │ │ +004d3a: 1303 1400 |0013: const/16 v3, #int 20 // #14 │ │ +004d3e: 3532 1500 |0015: if-ge v2, v3, 002a // +0015 │ │ +004d42: 5453 8f00 |0017: iget-object v3, v5, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; // field@008f │ │ +004d46: 7110 2001 0300 |0019: invoke-static {v3}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.access$000:(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)[Landroid/widget/CheckBox; // method@0120 │ │ +004d4c: 0c03 |001c: move-result-object v3 │ │ +004d4e: 4603 0302 |001d: aget-object v3, v3, v2 │ │ +004d52: 3502 0400 |001f: if-ge v2, v0, 0023 // +0004 │ │ +004d56: 1204 |0021: const/4 v4, #int 0 // #0 │ │ +004d58: 2802 |0022: goto 0024 // +0002 │ │ +004d5a: 1244 |0023: const/4 v4, #int 4 // #4 │ │ +004d5c: 6e20 2a00 4300 |0024: invoke-virtual {v3, v4}, Landroid/widget/CheckBox;.setVisibility:(I)V // method@002a │ │ +004d62: d802 0201 |0027: add-int/lit8 v2, v2, #int 1 // #01 │ │ +004d66: 28ea |0029: goto 0013 // -0016 │ │ +004d68: 0e00 |002a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=35 │ │ 0x0017 line=37 │ │ locals : │ │ 0x0000 - 0x002b reg=5 this Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1; │ │ │ │ - source_file_idx : 305 (NCupsActivity.java) │ │ + source_file_idx : 307 (NCupsActivity.java) │ │ │ │ Class #37 header: │ │ class_idx : 114 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 45 │ │ -source_file_idx : 312 │ │ +source_file_idx : 314 │ │ static_fields_size : 0 │ │ instance_fields_size: 2 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 0 │ │ │ │ Class #37 annotations: │ │ Annotations on class │ │ @@ -4635,23 +4636,23 @@ │ │ type : '(I)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 15 16-bit code units │ │ -005a68: |[005a68] t20kdc.offlinepuzzlesolver.game.NQueensSolver$State.:(I)V │ │ -005a78: 7010 4900 0100 |0000: invoke-direct {v1}, Ljava/lang/Object;.:()V // method@0049 │ │ -005a7e: 2322 8100 |0003: new-array v2, v2, [I // type@0081 │ │ -005a82: 5b12 9800 |0005: iput-object v2, v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ -005a86: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -005a88: 5910 9700 |0008: iput v0, v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ -005a8c: 12f0 |000a: const/4 v0, #int -1 // #ff │ │ -005a8e: 7120 6900 0200 |000b: invoke-static {v2, v0}, Ljava/util/Arrays;.fill:([II)V // method@0069 │ │ -005a94: 0e00 |000e: return-void │ │ +005a74: |[005a74] t20kdc.offlinepuzzlesolver.game.NQueensSolver$State.:(I)V │ │ +005a84: 7010 4900 0100 |0000: invoke-direct {v1}, Ljava/lang/Object;.:()V // method@0049 │ │ +005a8a: 2322 8100 |0003: new-array v2, v2, [I // type@0081 │ │ +005a8e: 5b12 9800 |0005: iput-object v2, v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ +005a92: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +005a94: 5910 9700 |0008: iput v0, v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ +005a98: 12f0 |000a: const/4 v0, #int -1 // #ff │ │ +005a9a: 7120 6900 0200 |000b: invoke-static {v2, v0}, Ljava/util/Arrays;.fill:([II)V // method@0069 │ │ +005aa0: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=75 │ │ 0x0003 line=76 │ │ 0x0008 line=77 │ │ 0x000b line=78 │ │ locals : │ │ @@ -4663,46 +4664,46 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;I)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 24 16-bit code units │ │ -005a98: |[005a98] t20kdc.offlinepuzzlesolver.game.NQueensSolver$State.:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;I)V │ │ -005aa8: 7010 4900 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0049 │ │ -005aae: 5430 9800 |0003: iget-object v0, v3, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ -005ab2: 6e10 7001 0000 |0005: invoke-virtual {v0}, [I.clone:()Ljava/lang/Object; // method@0170 │ │ -005ab8: 0c00 |0008: move-result-object v0 │ │ -005aba: 1f00 8100 |0009: check-cast v0, [I // type@0081 │ │ -005abe: 5b20 9800 |000b: iput-object v0, v2, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ -005ac2: 5231 9700 |000d: iget v1, v3, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ -005ac6: d801 0101 |000f: add-int/lit8 v1, v1, #int 1 // #01 │ │ -005aca: 5921 9700 |0011: iput v1, v2, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ -005ace: 5233 9700 |0013: iget v3, v3, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ -005ad2: 4b04 0003 |0015: aput v4, v0, v3 │ │ -005ad6: 0e00 |0017: return-void │ │ +005aa4: |[005aa4] t20kdc.offlinepuzzlesolver.game.NQueensSolver$State.:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;I)V │ │ +005ab4: 7010 4900 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0049 │ │ +005aba: 5430 9800 |0003: iget-object v0, v3, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ +005abe: 6e10 7001 0000 |0005: invoke-virtual {v0}, [I.clone:()Ljava/lang/Object; // method@0170 │ │ +005ac4: 0c00 |0008: move-result-object v0 │ │ +005ac6: 1f00 8100 |0009: check-cast v0, [I // type@0081 │ │ +005aca: 5b20 9800 |000b: iput-object v0, v2, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ +005ace: 5231 9700 |000d: iget v1, v3, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ +005ad2: d801 0101 |000f: add-int/lit8 v1, v1, #int 1 // #01 │ │ +005ad6: 5921 9700 |0011: iput v1, v2, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ +005ada: 5233 9700 |0013: iget v3, v3, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ +005ade: 4b04 0003 |0015: aput v4, v0, v3 │ │ +005ae2: 0e00 |0017: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=80 │ │ 0x0003 line=81 │ │ 0x000d line=82 │ │ 0x0013 line=83 │ │ locals : │ │ 0x0000 - 0x0018 reg=2 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; │ │ 0x0000 - 0x0018 reg=3 (null) Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; │ │ 0x0000 - 0x0018 reg=4 (null) I │ │ │ │ Virtual methods - │ │ - source_file_idx : 312 (NQueensSolver.java) │ │ + source_file_idx : 314 (NQueensSolver.java) │ │ │ │ Class #38 header: │ │ class_idx : 116 │ │ access_flags : 1537 (0x0601) │ │ superclass_idx : 45 │ │ -source_file_idx : 332 │ │ +source_file_idx : 334 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 0 │ │ virtual_methods_size: 1 │ │ │ │ Class #38 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/game/Solver;' │ │ @@ -4715,21 +4716,21 @@ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/game/Solver;) │ │ name : 'solve' │ │ type : '(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ - source_file_idx : 332 (Solver.java) │ │ + source_file_idx : 334 (Solver.java) │ │ │ │ Class #39 header: │ │ class_idx : 117 │ │ access_flags : 0 (0x0000) │ │ superclass_idx : 45 │ │ -source_file_idx : 337 │ │ +source_file_idx : 339 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 2 │ │ │ │ Class #39 annotations: │ │ Annotations on class │ │ @@ -4757,18 +4758,18 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -005c1c: |[005c1c] t20kdc.offlinepuzzlesolver.game.SudokuActivity$1.:(Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;)V │ │ -005c2c: 5b01 9900 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; // field@0099 │ │ -005c30: 7010 4900 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -005c36: 0e00 |0005: return-void │ │ +005c28: |[005c28] t20kdc.offlinepuzzlesolver.game.SudokuActivity$1.:(Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;)V │ │ +005c38: 5b01 9900 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; // field@0099 │ │ +005c3c: 7010 4900 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +005c42: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=25 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; │ │ │ │ @@ -4778,19 +4779,19 @@ │ │ type : '(I)I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 7 16-bit code units │ │ -005bfc: |[005bfc] t20kdc.offlinepuzzlesolver.game.SudokuActivity$1.getCell:(I)I │ │ -005c0c: 5410 9900 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; // field@0099 │ │ -005c10: 5400 9a00 |0002: iget-object v0, v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ -005c14: 4402 0002 |0004: aget v2, v0, v2 │ │ -005c18: 0f02 |0006: return v2 │ │ +005c08: |[005c08] t20kdc.offlinepuzzlesolver.game.SudokuActivity$1.getCell:(I)I │ │ +005c18: 5410 9900 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; // field@0099 │ │ +005c1c: 5400 9a00 |0002: iget-object v0, v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ +005c20: 4402 0002 |0004: aget v2, v0, v2 │ │ +005c24: 0f02 |0006: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=28 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1; │ │ 0x0000 - 0x0007 reg=2 (null) I │ │ │ │ @@ -4799,34 +4800,34 @@ │ │ type : '(II)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 0 │ │ insns size : 7 16-bit code units │ │ -005c38: |[005c38] t20kdc.offlinepuzzlesolver.game.SudokuActivity$1.setCell:(II)V │ │ -005c48: 5410 9900 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; // field@0099 │ │ -005c4c: 5400 9a00 |0002: iget-object v0, v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ -005c50: 4b03 0002 |0004: aput v3, v0, v2 │ │ -005c54: 0e00 |0006: return-void │ │ +005c44: |[005c44] t20kdc.offlinepuzzlesolver.game.SudokuActivity$1.setCell:(II)V │ │ +005c54: 5410 9900 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; // field@0099 │ │ +005c58: 5400 9a00 |0002: iget-object v0, v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ +005c5c: 4b03 0002 |0004: aput v3, v0, v2 │ │ +005c60: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=32 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1; │ │ 0x0000 - 0x0007 reg=2 (null) I │ │ 0x0000 - 0x0007 reg=3 (null) I │ │ │ │ - source_file_idx : 337 (SudokuActivity.java) │ │ + source_file_idx : 339 (SudokuActivity.java) │ │ │ │ Class #40 header: │ │ class_idx : 120 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #40 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ;' │ │ @@ -4846,47 +4847,47 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -0061e8: |[0061e8] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V │ │ -0061f8: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -0061fe: 5b01 9b00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009b │ │ -006202: 0e00 |0005: return-void │ │ +0061f4: |[0061f4] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V │ │ +006204: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +00620a: 5b01 9b00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009b │ │ +00620e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ;) │ │ name : 'onClick' │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -006204: |[006204] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ.onClick:(Landroid/view/View;)V │ │ -006214: 5410 9b00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009b │ │ -006218: 6e20 6801 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.lambda$onCreate$0$NetGuardChallengeActivity:(Landroid/view/View;)V // method@0168 │ │ -00621e: 0e00 |0005: return-void │ │ +006210: |[006210] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ.onClick:(Landroid/view/View;)V │ │ +006220: 5410 9b00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009b │ │ +006224: 6e20 6801 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.lambda$onCreate$0$NetGuardChallengeActivity:(Landroid/view/View;)V // method@0168 │ │ +00622a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #41 header: │ │ class_idx : 121 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #41 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk;' │ │ @@ -4906,47 +4907,47 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -006220: |[006220] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V │ │ -006230: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -006236: 5b01 9c00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009c │ │ -00623a: 0e00 |0005: return-void │ │ +00622c: |[00622c] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V │ │ +00623c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +006242: 5b01 9c00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009c │ │ +006246: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk;) │ │ name : 'onClick' │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -00623c: |[00623c] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk.onClick:(Landroid/view/View;)V │ │ -00624c: 5410 9c00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009c │ │ -006250: 6e20 6a01 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.lambda$onCreate$2$NetGuardChallengeActivity:(Landroid/view/View;)V // method@016a │ │ -006256: 0e00 |0005: return-void │ │ +006248: |[006248] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk.onClick:(Landroid/view/View;)V │ │ +006258: 5410 9c00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009c │ │ +00625c: 6e20 6a01 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.lambda$onCreate$2$NetGuardChallengeActivity:(Landroid/view/View;)V // method@016a │ │ +006262: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #42 header: │ │ class_idx : 122 │ │ access_flags : 4113 (0x1011) │ │ superclass_idx : 45 │ │ -source_file_idx : 592 │ │ +source_file_idx : 594 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #42 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc;' │ │ @@ -4966,47 +4967,47 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V' │ │ access : 0x11001 (PUBLIC SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -006258: |[006258] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V │ │ -006268: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -00626e: 5b01 9d00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009d │ │ -006272: 0e00 |0005: return-void │ │ +006264: |[006264] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V │ │ +006274: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +00627a: 5b01 9d00 |0003: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009d │ │ +00627e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc;) │ │ name : 'onClick' │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0011 (PUBLIC FINAL) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -006274: |[006274] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc.onClick:(Landroid/view/View;)V │ │ -006284: 5410 9d00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009d │ │ -006288: 6e20 6901 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.lambda$onCreate$1$NetGuardChallengeActivity:(Landroid/view/View;)V // method@0169 │ │ -00628e: 0e00 |0005: return-void │ │ +006280: |[006280] t20kdc.offlinepuzzlesolver.ungame.-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc.onClick:(Landroid/view/View;)V │ │ +006290: 5410 9d00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc;.f$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009d │ │ +006294: 6e20 6901 2000 |0002: invoke-virtual {v0, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.lambda$onCreate$1$NetGuardChallengeActivity:(Landroid/view/View;)V // method@0169 │ │ +00629a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 592 (lambda) │ │ + source_file_idx : 594 (lambda) │ │ │ │ Class #43 header: │ │ class_idx : 123 │ │ access_flags : 0 (0x0000) │ │ superclass_idx : 45 │ │ -source_file_idx : 315 │ │ +source_file_idx : 317 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 3 │ │ │ │ Class #43 annotations: │ │ Annotations on class │ │ @@ -5031,18 +5032,18 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -006290: |[006290] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity$1.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V │ │ -0062a0: 5b01 9e00 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009e │ │ -0062a4: 7010 4900 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -0062aa: 0e00 |0005: return-void │ │ +00629c: |[00629c] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity$1.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V │ │ +0062ac: 5b01 9e00 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009e │ │ +0062b0: 7010 4900 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +0062b6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=27 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; │ │ │ │ @@ -5052,20 +5053,20 @@ │ │ type : '(Landroid/text/Editable;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 10 16-bit code units │ │ -0062ac: |[0062ac] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity$1.afterTextChanged:(Landroid/text/Editable;)V │ │ -0062bc: 5410 9e00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009e │ │ -0062c0: 6e10 4a00 0200 |0002: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@004a │ │ -0062c6: 0c02 |0005: move-result-object v2 │ │ -0062c8: 7120 6501 2000 |0006: invoke-static {v0, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.access$000:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;Ljava/lang/String;)V // method@0165 │ │ -0062ce: 0e00 |0009: return-void │ │ +0062b8: |[0062b8] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity$1.afterTextChanged:(Landroid/text/Editable;)V │ │ +0062c8: 5410 9e00 |0000: iget-object v0, v1, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1;.this$0:Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; // field@009e │ │ +0062cc: 6e10 4a00 0200 |0002: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@004a │ │ +0062d2: 0c02 |0005: move-result-object v2 │ │ +0062d4: 7120 6501 2000 |0006: invoke-static {v0, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.access$000:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;Ljava/lang/String;)V // method@0165 │ │ +0062da: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=40 │ │ locals : │ │ 0x0000 - 0x000a reg=1 this Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1; │ │ 0x0000 - 0x000a reg=2 (null) Landroid/text/Editable; │ │ │ │ @@ -5074,42 +5075,42 @@ │ │ type : '(Ljava/lang/CharSequence;III)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 5 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -0062d0: |[0062d0] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity$1.beforeTextChanged:(Ljava/lang/CharSequence;III)V │ │ -0062e0: 0e00 |0000: return-void │ │ +0062dc: |[0062dc] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity$1.beforeTextChanged:(Ljava/lang/CharSequence;III)V │ │ +0062ec: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #2 : (in Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1;) │ │ name : 'onTextChanged' │ │ type : '(Ljava/lang/CharSequence;III)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 5 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -0062e4: |[0062e4] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity$1.onTextChanged:(Ljava/lang/CharSequence;III)V │ │ -0062f4: 0e00 |0000: return-void │ │ +0062f0: |[0062f0] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity$1.onTextChanged:(Ljava/lang/CharSequence;III)V │ │ +006300: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ - source_file_idx : 315 (NetGuardChallengeActivity.java) │ │ + source_file_idx : 317 (NetGuardChallengeActivity.java) │ │ │ │ Class #44 header: │ │ class_idx : 77 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 45 │ │ -source_file_idx : 356 │ │ +source_file_idx : 358 │ │ static_fields_size : 0 │ │ instance_fields_size: 3 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 2 │ │ │ │ Class #44 annotations: │ │ Annotations on class │ │ @@ -5153,19 +5154,19 @@ │ │ type : '(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -0030b4: |[0030b4] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerSimple.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ -0030c4: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -0030ca: 5b01 0e00 |0003: iput-object v1, v0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ -0030ce: 5b02 0c00 |0005: iput-object v2, v0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@000c │ │ -0030d2: 0e00 |0007: return-void │ │ +0030c0: |[0030c0] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerSimple.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ +0030d0: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +0030d6: 5b01 0e00 |0003: iput-object v1, v0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ +0030da: 5b02 0c00 |0005: iput-object v2, v0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@000c │ │ +0030de: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=14 │ │ 0x0003 line=15 │ │ 0x0005 line=16 │ │ locals : │ │ 0x0000 - 0x0008 reg=0 this Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple; │ │ @@ -5177,55 +5178,55 @@ │ │ type : '(Ljava/lang/Object;)Ljava/lang/Object;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 76 16-bit code units │ │ -00300c: |[00300c] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerSimple.walkI:(Ljava/lang/Object;)Ljava/lang/Object; │ │ -00301c: 5430 0c00 |0000: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@000c │ │ -003020: 6e10 8300 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@0083 │ │ -003026: 0a00 |0005: move-result v0 │ │ -003028: 1201 |0006: const/4 v1, #int 0 // #0 │ │ -00302a: 3800 0300 |0007: if-eqz v0, 000a // +0003 │ │ -00302e: 1101 |0009: return-object v1 │ │ -003030: 5430 0e00 |000a: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ -003034: 7220 a200 4000 |000c: invoke-interface {v0, v4}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.isEndpoint:(Ljava/lang/Object;)Z // method@00a2 │ │ -00303a: 0a00 |000f: move-result v0 │ │ -00303c: 3800 0300 |0010: if-eqz v0, 0013 // +0003 │ │ -003040: 1104 |0012: return-object v4 │ │ -003042: 5430 0d00 |0013: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ -003046: 3900 0500 |0015: if-nez v0, 001a // +0005 │ │ -00304a: 5b34 0d00 |0017: iput-object v4, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ -00304e: 2811 |0019: goto 002a // +0011 │ │ -003050: 5432 0e00 |001a: iget-object v2, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ -003054: 7220 a000 0200 |001c: invoke-interface {v2, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.getImportanceOf:(Ljava/lang/Object;)I // method@00a0 │ │ -00305a: 0a00 |001f: move-result v0 │ │ -00305c: 5432 0e00 |0020: iget-object v2, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ -003060: 7220 a000 4200 |0022: invoke-interface {v2, v4}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.getImportanceOf:(Ljava/lang/Object;)I // method@00a0 │ │ -003066: 0a02 |0025: move-result v2 │ │ -003068: 3520 0400 |0026: if-ge v0, v2, 002a // +0004 │ │ -00306c: 5b34 0d00 |0028: iput-object v4, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ -003070: 2200 3800 |002a: new-instance v0, Ljava/util/ArrayList; // type@0038 │ │ -003074: 1302 1000 |002c: const/16 v2, #int 16 // #10 │ │ -003078: 7020 6600 2000 |002e: invoke-direct {v0, v2}, Ljava/util/ArrayList;.:(I)V // method@0066 │ │ -00307e: 5432 0e00 |0031: iget-object v2, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ -003082: 7230 a300 4200 |0033: invoke-interface {v2, v4, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.visit:(Ljava/lang/Object;Ljava/util/Collection;)V // method@00a3 │ │ -003088: 6e10 6800 0000 |0036: invoke-virtual {v0}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@0068 │ │ -00308e: 0c04 |0039: move-result-object v4 │ │ -003090: 7210 7300 0400 |003a: invoke-interface {v4}, Ljava/util/Iterator;.hasNext:()Z // method@0073 │ │ -003096: 0a00 |003d: move-result v0 │ │ -003098: 3800 0d00 |003e: if-eqz v0, 004b // +000d │ │ -00309c: 7210 7400 0400 |0040: invoke-interface {v4}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0074 │ │ -0030a2: 0c00 |0043: move-result-object v0 │ │ -0030a4: 7020 a700 0300 |0044: invoke-direct {v3, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.walkI:(Ljava/lang/Object;)Ljava/lang/Object; // method@00a7 │ │ -0030aa: 0c00 |0047: move-result-object v0 │ │ -0030ac: 3800 f2ff |0048: if-eqz v0, 003a // -000e │ │ -0030b0: 1100 |004a: return-object v0 │ │ -0030b2: 1101 |004b: return-object v1 │ │ +003018: |[003018] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerSimple.walkI:(Ljava/lang/Object;)Ljava/lang/Object; │ │ +003028: 5430 0c00 |0000: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@000c │ │ +00302c: 6e10 8300 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@0083 │ │ +003032: 0a00 |0005: move-result v0 │ │ +003034: 1201 |0006: const/4 v1, #int 0 // #0 │ │ +003036: 3800 0300 |0007: if-eqz v0, 000a // +0003 │ │ +00303a: 1101 |0009: return-object v1 │ │ +00303c: 5430 0e00 |000a: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ +003040: 7220 a200 4000 |000c: invoke-interface {v0, v4}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.isEndpoint:(Ljava/lang/Object;)Z // method@00a2 │ │ +003046: 0a00 |000f: move-result v0 │ │ +003048: 3800 0300 |0010: if-eqz v0, 0013 // +0003 │ │ +00304c: 1104 |0012: return-object v4 │ │ +00304e: 5430 0d00 |0013: iget-object v0, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ +003052: 3900 0500 |0015: if-nez v0, 001a // +0005 │ │ +003056: 5b34 0d00 |0017: iput-object v4, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ +00305a: 2811 |0019: goto 002a // +0011 │ │ +00305c: 5432 0e00 |001a: iget-object v2, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ +003060: 7220 a000 0200 |001c: invoke-interface {v2, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.getImportanceOf:(Ljava/lang/Object;)I // method@00a0 │ │ +003066: 0a00 |001f: move-result v0 │ │ +003068: 5432 0e00 |0020: iget-object v2, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ +00306c: 7220 a000 4200 |0022: invoke-interface {v2, v4}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.getImportanceOf:(Ljava/lang/Object;)I // method@00a0 │ │ +003072: 0a02 |0025: move-result v2 │ │ +003074: 3520 0400 |0026: if-ge v0, v2, 002a // +0004 │ │ +003078: 5b34 0d00 |0028: iput-object v4, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ +00307c: 2200 3800 |002a: new-instance v0, Ljava/util/ArrayList; // type@0038 │ │ +003080: 1302 1000 |002c: const/16 v2, #int 16 // #10 │ │ +003084: 7020 6600 2000 |002e: invoke-direct {v0, v2}, Ljava/util/ArrayList;.:(I)V // method@0066 │ │ +00308a: 5432 0e00 |0031: iget-object v2, v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ +00308e: 7230 a300 4200 |0033: invoke-interface {v2, v4, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.visit:(Ljava/lang/Object;Ljava/util/Collection;)V // method@00a3 │ │ +003094: 6e10 6800 0000 |0036: invoke-virtual {v0}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@0068 │ │ +00309a: 0c04 |0039: move-result-object v4 │ │ +00309c: 7210 7300 0400 |003a: invoke-interface {v4}, Ljava/util/Iterator;.hasNext:()Z // method@0073 │ │ +0030a2: 0a00 |003d: move-result v0 │ │ +0030a4: 3800 0d00 |003e: if-eqz v0, 004b // +000d │ │ +0030a8: 7210 7400 0400 |0040: invoke-interface {v4}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0074 │ │ +0030ae: 0c00 |0043: move-result-object v0 │ │ +0030b0: 7020 a700 0300 |0044: invoke-direct {v3, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.walkI:(Ljava/lang/Object;)Ljava/lang/Object; // method@00a7 │ │ +0030b6: 0c00 |0047: move-result-object v0 │ │ +0030b8: 3800 f2ff |0048: if-eqz v0, 003a // -000e │ │ +0030bc: 1100 |004a: return-object v0 │ │ +0030be: 1101 |004b: return-object v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=27 │ │ 0x000a line=29 │ │ 0x0013 line=31 │ │ 0x0017 line=32 │ │ 0x001a line=33 │ │ @@ -5244,17 +5245,17 @@ │ │ type : '()Ljava/lang/Object;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -002fc8: |[002fc8] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerSimple.getHighestImportance:()Ljava/lang/Object; │ │ -002fd8: 5410 0d00 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ -002fdc: 1100 |0002: return-object v0 │ │ +002fd4: |[002fd4] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerSimple.getHighestImportance:()Ljava/lang/Object; │ │ +002fe4: 5410 0d00 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ +002fe8: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=48 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple; │ │ │ │ #1 : (in Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;) │ │ @@ -5262,38 +5263,38 @@ │ │ type : '(Ljava/lang/Object;)Ljava/lang/Object;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 13 16-bit code units │ │ -002fe0: |[002fe0] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerSimple.walk:(Ljava/lang/Object;)Ljava/lang/Object; │ │ -002ff0: 5410 0e00 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ -002ff4: 7220 a100 2000 |0002: invoke-interface {v0, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.initState:(Ljava/lang/Object;)V // method@00a1 │ │ -002ffa: 1200 |0005: const/4 v0, #int 0 // #0 │ │ -002ffc: 5b10 0d00 |0006: iput-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ -003000: 7020 a700 2100 |0008: invoke-direct {v1, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.walkI:(Ljava/lang/Object;)Ljava/lang/Object; // method@00a7 │ │ -003006: 0c02 |000b: move-result-object v2 │ │ -003008: 1102 |000c: return-object v2 │ │ +002fec: |[002fec] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerSimple.walk:(Ljava/lang/Object;)Ljava/lang/Object; │ │ +002ffc: 5410 0e00 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@000e │ │ +003000: 7220 a100 2000 |0002: invoke-interface {v0, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.initState:(Ljava/lang/Object;)V // method@00a1 │ │ +003006: 1200 |0005: const/4 v0, #int 0 // #0 │ │ +003008: 5b10 0d00 |0006: iput-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.highestImportance:Ljava/lang/Object; // field@000d │ │ +00300c: 7020 a700 2100 |0008: invoke-direct {v1, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple;.walkI:(Ljava/lang/Object;)Ljava/lang/Object; // method@00a7 │ │ +003012: 0c02 |000b: move-result-object v2 │ │ +003014: 1102 |000c: return-object v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=21 │ │ 0x0006 line=22 │ │ 0x0008 line=23 │ │ locals : │ │ 0x0000 - 0x000d reg=1 this Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple; │ │ 0x0000 - 0x000d reg=2 (null) Ljava/lang/Object; │ │ │ │ - source_file_idx : 356 (TreeWalkerSimple.java) │ │ + source_file_idx : 358 (TreeWalkerSimple.java) │ │ │ │ Class #45 header: │ │ class_idx : 79 │ │ access_flags : 17 (0x0011) │ │ superclass_idx : 45 │ │ -source_file_idx : 357 │ │ +source_file_idx : 359 │ │ static_fields_size : 0 │ │ instance_fields_size: 10 │ │ direct_methods_size : 3 │ │ virtual_methods_size: 2 │ │ │ │ Class #45 annotations: │ │ Annotations on class │ │ @@ -5302,15 +5303,15 @@ │ │ VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "TN;" } │ │ Annotations on field #20 'endpoint' │ │ VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "TN;" } │ │ Annotations on field #21 'highestImportance' │ │ VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/util/concurrent/atomic/AtomicReference<" "TN;>;" } │ │ Annotations on field #23 'root' │ │ VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot<" "TN;>;" } │ │ -Annotations on method #170 '' │ │ +Annotations on method #171 '' │ │ VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot<" "TN;>;" "Ljava/util/concurrent/atomic/AtomicBoolean;" ")V" } │ │ Annotations on method #172 'getHighestImportance' │ │ VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()TN;" } │ │ Annotations on method #174 'walk' │ │ VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(TN;)TN;" } │ │ │ │ Class #45 - │ │ @@ -5359,48 +5360,64 @@ │ │ access : 0x0012 (PRIVATE FINAL) │ │ #9 : (in Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;) │ │ name : 'waker' │ │ type : 'Ljava/util/concurrent/Semaphore;' │ │ access : 0x0012 (PRIVATE FINAL) │ │ Direct methods - │ │ #0 : (in Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;) │ │ + name : '-$$Nest$mthreadContent' │ │ + type : '(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V' │ │ + access : 0x1008 (STATIC SYNTHETIC) │ │ + code - │ │ + registers : 1 │ │ + ins : 1 │ │ + outs : 1 │ │ + insns size : 4 16-bit code units │ │ +0032cc: |[0032cc] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.-$$Nest$mthreadContent:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V │ │ +0032dc: 7010 ad00 0000 |0000: invoke-direct {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.threadContent:()V // method@00ad │ │ +0032e2: 0e00 |0003: return-void │ │ + catches : (none) │ │ + positions : │ │ + locals : │ │ + │ │ + #1 : (in Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;) │ │ name : '' │ │ type : '(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 54 16-bit code units │ │ -0032c0: |[0032c0] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ -0032d0: 7010 4900 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0049 │ │ -0032d6: 2200 4000 |0003: new-instance v0, Ljava/util/concurrent/Semaphore; // type@0040 │ │ -0032da: 1211 |0005: const/4 v1, #int 1 // #1 │ │ -0032dc: 7020 7d00 1000 |0006: invoke-direct {v0, v1}, Ljava/util/concurrent/Semaphore;.:(I)V // method@007d │ │ -0032e2: 5b20 1200 |0009: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -0032e6: 1200 |000b: const/4 v0, #int 0 // #0 │ │ -0032e8: 5b20 1300 |000c: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ -0032ec: 2200 4400 |000e: new-instance v0, Ljava/util/concurrent/atomic/AtomicReference; // type@0044 │ │ -0032f0: 7010 8a00 0000 |0010: invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicReference;.:()V // method@008a │ │ -0032f6: 5b20 1500 |0013: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ -0032fa: 2200 4300 |0015: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@0043 │ │ -0032fe: 7010 8500 0000 |0017: invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.:()V // method@0085 │ │ -003304: 5b20 1600 |001a: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ -003308: 2200 4300 |001c: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@0043 │ │ -00330c: 7010 8500 0000 |001e: invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.:()V // method@0085 │ │ -003312: 5b20 1800 |0021: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.threadsInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0018 │ │ -003316: 2200 4000 |0023: new-instance v0, Ljava/util/concurrent/Semaphore; // type@0040 │ │ -00331a: 7020 7d00 1000 |0025: invoke-direct {v0, v1}, Ljava/util/concurrent/Semaphore;.:(I)V // method@007d │ │ -003320: 5b20 1900 |0028: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ -003324: 2200 4000 |002a: new-instance v0, Ljava/util/concurrent/Semaphore; // type@0040 │ │ -003328: 7020 7d00 1000 |002c: invoke-direct {v0, v1}, Ljava/util/concurrent/Semaphore;.:(I)V // method@007d │ │ -00332e: 5b20 1100 |002f: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ -003332: 5b23 1700 |0031: iput-object v3, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ -003336: 5b24 1000 |0033: iput-object v4, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@0010 │ │ -00333a: 0e00 |0035: return-void │ │ +0032e4: |[0032e4] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ +0032f4: 7010 4900 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0049 │ │ +0032fa: 2200 4000 |0003: new-instance v0, Ljava/util/concurrent/Semaphore; // type@0040 │ │ +0032fe: 1211 |0005: const/4 v1, #int 1 // #1 │ │ +003300: 7020 7d00 1000 |0006: invoke-direct {v0, v1}, Ljava/util/concurrent/Semaphore;.:(I)V // method@007d │ │ +003306: 5b20 1200 |0009: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +00330a: 1200 |000b: const/4 v0, #int 0 // #0 │ │ +00330c: 5b20 1300 |000c: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ +003310: 2200 4400 |000e: new-instance v0, Ljava/util/concurrent/atomic/AtomicReference; // type@0044 │ │ +003314: 7010 8a00 0000 |0010: invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicReference;.:()V // method@008a │ │ +00331a: 5b20 1500 |0013: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ +00331e: 2200 4300 |0015: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@0043 │ │ +003322: 7010 8500 0000 |0017: invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.:()V // method@0085 │ │ +003328: 5b20 1600 |001a: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ +00332c: 2200 4300 |001c: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@0043 │ │ +003330: 7010 8500 0000 |001e: invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.:()V // method@0085 │ │ +003336: 5b20 1800 |0021: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.threadsInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0018 │ │ +00333a: 2200 4000 |0023: new-instance v0, Ljava/util/concurrent/Semaphore; // type@0040 │ │ +00333e: 7020 7d00 1000 |0025: invoke-direct {v0, v1}, Ljava/util/concurrent/Semaphore;.:(I)V // method@007d │ │ +003344: 5b20 1900 |0028: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ +003348: 2200 4000 |002a: new-instance v0, Ljava/util/concurrent/Semaphore; // type@0040 │ │ +00334c: 7020 7d00 1000 |002c: invoke-direct {v0, v1}, Ljava/util/concurrent/Semaphore;.:(I)V // method@007d │ │ +003352: 5b20 1100 |002f: iput-object v0, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ +003356: 5b23 1700 |0031: iput-object v3, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ +00335a: 5b24 1000 |0033: iput-object v4, v2, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@0010 │ │ +00335e: 0e00 |0035: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ 0x0003 line=24 │ │ 0x000c line=25 │ │ 0x000e line=28 │ │ 0x0015 line=29 │ │ @@ -5410,159 +5427,141 @@ │ │ 0x0031 line=39 │ │ 0x0033 line=40 │ │ locals : │ │ 0x0000 - 0x0036 reg=2 this Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; │ │ 0x0000 - 0x0036 reg=3 (null) Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; │ │ 0x0000 - 0x0036 reg=4 (null) Ljava/util/concurrent/atomic/AtomicBoolean; │ │ │ │ - #1 : (in Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;) │ │ - name : 'access$000' │ │ - type : '(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V' │ │ - access : 0x1008 (STATIC SYNTHETIC) │ │ - code - │ │ - registers : 1 │ │ - ins : 1 │ │ - outs : 1 │ │ - insns size : 4 16-bit code units │ │ -00333c: |[00333c] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.access$000:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V │ │ -00334c: 7010 ad00 0000 |0000: invoke-direct {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.threadContent:()V // method@00ad │ │ -003352: 0e00 |0003: return-void │ │ - catches : (none) │ │ - positions : │ │ - 0x0000 line=20 │ │ - locals : │ │ - 0x0000 - 0x0004 reg=0 (null) Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; │ │ - │ │ #2 : (in Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;) │ │ name : 'threadContent' │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 246 16-bit code units │ │ -003354: |[003354] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.threadContent:()V │ │ -003364: 2200 3800 |0000: new-instance v0, Ljava/util/ArrayList; // type@0038 │ │ -003368: 1301 0004 |0002: const/16 v1, #int 1024 // #400 │ │ -00336c: 7020 6600 1000 |0004: invoke-direct {v0, v1}, Ljava/util/ArrayList;.:(I)V // method@0066 │ │ -003372: 5451 1600 |0007: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ -003376: 6e10 8800 0100 |0009: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@0088 │ │ -00337c: 0a01 |000c: move-result v1 │ │ -00337e: 3901 2700 |000d: if-nez v1, 0034 // +0027 │ │ -003382: 7210 7c00 0000 |000f: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ -003388: 0a01 |0012: move-result v1 │ │ -00338a: 3d01 0700 |0013: if-lez v1, 001a // +0007 │ │ -00338e: 1a01 5b01 |0015: const-string v1, "Thread exiting ERRONEOUSLY as tree has been cleared" // string@015b │ │ -003392: 7110 9c00 0100 |0017: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -003398: 1a01 5e01 |001a: const-string v1, "Thread exiting as tree has been cleared" // string@015e │ │ -00339c: 7110 9c00 0100 |001c: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -0033a2: 5451 1200 |001f: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -0033a6: 6e10 7e00 0100 |0021: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ -0033ac: 5451 1300 |0024: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ -0033b0: 3801 0700 |0026: if-eqz v1, 002d // +0007 │ │ -0033b4: 1a01 6001 |0028: const-string v1, "Tree clear was not correct as value stuck in distro loop" // string@0160 │ │ -0033b8: 7110 9c00 0100 |002a: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -0033be: 5451 1200 |002d: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -0033c2: 6e10 7f00 0100 |002f: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ -0033c8: 2900 6d00 |0032: goto/16 009f // +006d │ │ -0033cc: 5451 1400 |0034: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.endpoint:Ljava/lang/Object; // field@0014 │ │ -0033d0: 3801 0800 |0036: if-eqz v1, 003e // +0008 │ │ -0033d4: 1a01 5c01 |0038: const-string v1, "Thread exiting as endpoint has been found" // string@015c │ │ -0033d8: 7110 9c00 0100 |003a: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -0033de: 2862 |003d: goto 009f // +0062 │ │ -0033e0: 7210 7c00 0000 |003e: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ -0033e6: 0a01 |0041: move-result v1 │ │ -0033e8: 1202 |0042: const/4 v2, #int 0 // #0 │ │ -0033ea: 3d01 0900 |0043: if-lez v1, 004c // +0009 │ │ -0033ee: d801 01ff |0045: add-int/lit8 v1, v1, #int -1 // #ff │ │ -0033f2: 7220 7b00 1000 |0047: invoke-interface {v0, v1}, Ljava/util/List;.remove:(I)Ljava/lang/Object; // method@007b │ │ -0033f8: 0c01 |004a: move-result-object v1 │ │ -0033fa: 2802 |004b: goto 004d // +0002 │ │ -0033fc: 0721 |004c: move-object v1, v2 │ │ -0033fe: 3801 1b00 |004d: if-eqz v1, 0068 // +001b │ │ -003402: 5453 1200 |004f: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -003406: 6e10 8000 0300 |0051: invoke-virtual {v3}, Ljava/util/concurrent/Semaphore;.tryAcquire:()Z // method@0080 │ │ -00340c: 0a03 |0054: move-result v3 │ │ -00340e: 3803 1300 |0055: if-eqz v3, 0068 // +0013 │ │ -003412: 5453 1300 |0057: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ -003416: 3903 0a00 |0059: if-nez v3, 0063 // +000a │ │ -00341a: 5b51 1300 |005b: iput-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ -00341e: 5451 1200 |005d: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -003422: 6e10 7f00 0100 |005f: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ -003428: 28a5 |0062: goto 0007 // -005b │ │ -00342a: 5453 1200 |0063: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -00342e: 6e10 7f00 0300 |0065: invoke-virtual {v3}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ -003434: 3901 1300 |0068: if-nez v1, 007b // +0013 │ │ -003438: 5453 1200 |006a: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -00343c: 6e10 8000 0300 |006c: invoke-virtual {v3}, Ljava/util/concurrent/Semaphore;.tryAcquire:()Z // method@0080 │ │ -003442: 0a03 |006f: move-result v3 │ │ -003444: 3803 0b00 |0070: if-eqz v3, 007b // +000b │ │ -003448: 5451 1300 |0072: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ -00344c: 5b52 1300 |0074: iput-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ -003450: 5452 1200 |0076: iget-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -003454: 6e10 7f00 0200 |0078: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ -00345a: 3901 0600 |007b: if-nez v1, 0081 // +0006 │ │ -00345e: 7100 6000 0000 |007d: invoke-static {}, Ljava/lang/Thread;.yield:()V // method@0060 │ │ -003464: 2887 |0080: goto 0007 // -0079 │ │ -003466: 5452 1700 |0081: iget-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ -00346a: 7220 a200 1200 |0083: invoke-interface {v2, v1}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.isEndpoint:(Ljava/lang/Object;)Z // method@00a2 │ │ -003470: 0a02 |0086: move-result v2 │ │ -003472: 3802 3500 |0087: if-eqz v2, 00bc // +0035 │ │ -003476: 5452 1100 |0089: iget-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ -00347a: 6e10 7e00 0200 |008b: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ -003480: 5b51 1400 |008e: iput-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.endpoint:Ljava/lang/Object; // field@0014 │ │ -003484: 5451 1100 |0090: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ -003488: 6e10 7f00 0100 |0092: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ -00348e: 5451 1600 |0095: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ -003492: 6e10 8700 0100 |0097: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.decrementAndGet:()I // method@0087 │ │ -003498: 1a01 5d01 |009a: const-string v1, "Thread exiting as it found the endpoint" // string@015d │ │ -00349c: 7110 9c00 0100 |009c: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -0034a2: 5451 1600 |009f: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ -0034a6: 7210 7c00 0000 |00a1: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ -0034ac: 0a00 |00a4: move-result v0 │ │ -0034ae: 7b00 |00a5: neg-int v0, v0 │ │ -0034b0: 6e20 8600 0100 |00a6: invoke-virtual {v1, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.addAndGet:(I)I // method@0086 │ │ -0034b6: 5450 1800 |00a9: iget-object v0, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.threadsInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0018 │ │ -0034ba: 6e10 8700 0000 |00ab: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.decrementAndGet:()I // method@0087 │ │ -0034c0: 0a00 |00ae: move-result v0 │ │ -0034c2: 3900 0c00 |00af: if-nez v0, 00bb // +000c │ │ -0034c6: 1a00 4201 |00b1: const-string v0, "Releasing Waker Externally" // string@0142 │ │ -0034ca: 7110 9c00 0000 |00b3: invoke-static {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -0034d0: 5450 1900 |00b6: iget-object v0, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ -0034d4: 6e10 7f00 0000 |00b8: invoke-virtual {v0}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ -0034da: 0e00 |00bb: return-void │ │ -0034dc: 5452 1500 |00bc: iget-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ -0034e0: 6e10 8c00 0200 |00be: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicReference;.get:()Ljava/lang/Object; // method@008c │ │ -0034e6: 0c02 |00c1: move-result-object v2 │ │ -0034e8: 3802 1000 |00c2: if-eqz v2, 00d2 // +0010 │ │ -0034ec: 5453 1700 |00c4: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ -0034f0: 7220 a000 1300 |00c6: invoke-interface {v3, v1}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.getImportanceOf:(Ljava/lang/Object;)I // method@00a0 │ │ -0034f6: 0a03 |00c9: move-result v3 │ │ -0034f8: 5454 1700 |00ca: iget-object v4, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ -0034fc: 7220 a000 2400 |00cc: invoke-interface {v4, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.getImportanceOf:(Ljava/lang/Object;)I // method@00a0 │ │ -003502: 0a04 |00cf: move-result v4 │ │ -003504: 3743 0700 |00d0: if-le v3, v4, 00d7 // +0007 │ │ -003508: 5453 1500 |00d2: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ -00350c: 6e30 8b00 2301 |00d4: invoke-virtual {v3, v2, v1}, Ljava/util/concurrent/atomic/AtomicReference;.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z // method@008b │ │ -003512: 7210 7c00 0000 |00d7: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ -003518: 0a02 |00da: move-result v2 │ │ -00351a: 5453 1000 |00db: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@0010 │ │ -00351e: 6e10 8300 0300 |00dd: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@0083 │ │ -003524: 0a03 |00e0: move-result v3 │ │ -003526: 3903 0700 |00e1: if-nez v3, 00e8 // +0007 │ │ -00352a: 5453 1700 |00e3: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ -00352e: 7230 a300 1300 |00e5: invoke-interface {v3, v1, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.visit:(Ljava/lang/Object;Ljava/util/Collection;)V // method@00a3 │ │ -003534: 7210 7c00 0000 |00e8: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ -00353a: 0a01 |00eb: move-result v1 │ │ -00353c: 5453 1600 |00ec: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ -003540: d802 0201 |00ee: add-int/lit8 v2, v2, #int 1 // #01 │ │ -003544: b121 |00f0: sub-int/2addr v1, v2 │ │ -003546: 6e20 8600 1300 |00f1: invoke-virtual {v3, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.addAndGet:(I)I // method@0086 │ │ -00354c: 2900 13ff |00f4: goto/16 0007 // -00ed │ │ +003360: |[003360] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.threadContent:()V │ │ +003370: 2200 3800 |0000: new-instance v0, Ljava/util/ArrayList; // type@0038 │ │ +003374: 1301 0004 |0002: const/16 v1, #int 1024 // #400 │ │ +003378: 7020 6600 1000 |0004: invoke-direct {v0, v1}, Ljava/util/ArrayList;.:(I)V // method@0066 │ │ +00337e: 5451 1600 |0007: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ +003382: 6e10 8800 0100 |0009: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@0088 │ │ +003388: 0a01 |000c: move-result v1 │ │ +00338a: 3901 2700 |000d: if-nez v1, 0034 // +0027 │ │ +00338e: 7210 7c00 0000 |000f: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ +003394: 0a01 |0012: move-result v1 │ │ +003396: 3d01 0700 |0013: if-lez v1, 001a // +0007 │ │ +00339a: 1a01 5d01 |0015: const-string v1, "Thread exiting ERRONEOUSLY as tree has been cleared" // string@015d │ │ +00339e: 7110 9c00 0100 |0017: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +0033a4: 1a01 6001 |001a: const-string v1, "Thread exiting as tree has been cleared" // string@0160 │ │ +0033a8: 7110 9c00 0100 |001c: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +0033ae: 5451 1200 |001f: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +0033b2: 6e10 7e00 0100 |0021: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ +0033b8: 5451 1300 |0024: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ +0033bc: 3801 0700 |0026: if-eqz v1, 002d // +0007 │ │ +0033c0: 1a01 6201 |0028: const-string v1, "Tree clear was not correct as value stuck in distro loop" // string@0162 │ │ +0033c4: 7110 9c00 0100 |002a: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +0033ca: 5451 1200 |002d: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +0033ce: 6e10 7f00 0100 |002f: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ +0033d4: 2900 6d00 |0032: goto/16 009f // +006d │ │ +0033d8: 5451 1400 |0034: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.endpoint:Ljava/lang/Object; // field@0014 │ │ +0033dc: 3801 0800 |0036: if-eqz v1, 003e // +0008 │ │ +0033e0: 1a01 5e01 |0038: const-string v1, "Thread exiting as endpoint has been found" // string@015e │ │ +0033e4: 7110 9c00 0100 |003a: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +0033ea: 2862 |003d: goto 009f // +0062 │ │ +0033ec: 7210 7c00 0000 |003e: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ +0033f2: 0a01 |0041: move-result v1 │ │ +0033f4: 1202 |0042: const/4 v2, #int 0 // #0 │ │ +0033f6: 3d01 0900 |0043: if-lez v1, 004c // +0009 │ │ +0033fa: d801 01ff |0045: add-int/lit8 v1, v1, #int -1 // #ff │ │ +0033fe: 7220 7b00 1000 |0047: invoke-interface {v0, v1}, Ljava/util/List;.remove:(I)Ljava/lang/Object; // method@007b │ │ +003404: 0c01 |004a: move-result-object v1 │ │ +003406: 2802 |004b: goto 004d // +0002 │ │ +003408: 0721 |004c: move-object v1, v2 │ │ +00340a: 3801 1b00 |004d: if-eqz v1, 0068 // +001b │ │ +00340e: 5453 1200 |004f: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +003412: 6e10 8000 0300 |0051: invoke-virtual {v3}, Ljava/util/concurrent/Semaphore;.tryAcquire:()Z // method@0080 │ │ +003418: 0a03 |0054: move-result v3 │ │ +00341a: 3803 1300 |0055: if-eqz v3, 0068 // +0013 │ │ +00341e: 5453 1300 |0057: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ +003422: 3903 0a00 |0059: if-nez v3, 0063 // +000a │ │ +003426: 5b51 1300 |005b: iput-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ +00342a: 5451 1200 |005d: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +00342e: 6e10 7f00 0100 |005f: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ +003434: 28a5 |0062: goto 0007 // -005b │ │ +003436: 5453 1200 |0063: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +00343a: 6e10 7f00 0300 |0065: invoke-virtual {v3}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ +003440: 3901 1300 |0068: if-nez v1, 007b // +0013 │ │ +003444: 5453 1200 |006a: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +003448: 6e10 8000 0300 |006c: invoke-virtual {v3}, Ljava/util/concurrent/Semaphore;.tryAcquire:()Z // method@0080 │ │ +00344e: 0a03 |006f: move-result v3 │ │ +003450: 3803 0b00 |0070: if-eqz v3, 007b // +000b │ │ +003454: 5451 1300 |0072: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ +003458: 5b52 1300 |0074: iput-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ +00345c: 5452 1200 |0076: iget-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +003460: 6e10 7f00 0200 |0078: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ +003466: 3901 0600 |007b: if-nez v1, 0081 // +0006 │ │ +00346a: 7100 6000 0000 |007d: invoke-static {}, Ljava/lang/Thread;.yield:()V // method@0060 │ │ +003470: 2887 |0080: goto 0007 // -0079 │ │ +003472: 5452 1700 |0081: iget-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ +003476: 7220 a200 1200 |0083: invoke-interface {v2, v1}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.isEndpoint:(Ljava/lang/Object;)Z // method@00a2 │ │ +00347c: 0a02 |0086: move-result v2 │ │ +00347e: 3802 3500 |0087: if-eqz v2, 00bc // +0035 │ │ +003482: 5452 1100 |0089: iget-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ +003486: 6e10 7e00 0200 |008b: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ +00348c: 5b51 1400 |008e: iput-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.endpoint:Ljava/lang/Object; // field@0014 │ │ +003490: 5451 1100 |0090: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ +003494: 6e10 7f00 0100 |0092: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ +00349a: 5451 1600 |0095: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ +00349e: 6e10 8700 0100 |0097: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.decrementAndGet:()I // method@0087 │ │ +0034a4: 1a01 5f01 |009a: const-string v1, "Thread exiting as it found the endpoint" // string@015f │ │ +0034a8: 7110 9c00 0100 |009c: invoke-static {v1}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +0034ae: 5451 1600 |009f: iget-object v1, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ +0034b2: 7210 7c00 0000 |00a1: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ +0034b8: 0a00 |00a4: move-result v0 │ │ +0034ba: 7b00 |00a5: neg-int v0, v0 │ │ +0034bc: 6e20 8600 0100 |00a6: invoke-virtual {v1, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.addAndGet:(I)I // method@0086 │ │ +0034c2: 5450 1800 |00a9: iget-object v0, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.threadsInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0018 │ │ +0034c6: 6e10 8700 0000 |00ab: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.decrementAndGet:()I // method@0087 │ │ +0034cc: 0a00 |00ae: move-result v0 │ │ +0034ce: 3900 0c00 |00af: if-nez v0, 00bb // +000c │ │ +0034d2: 1a00 4401 |00b1: const-string v0, "Releasing Waker Externally" // string@0144 │ │ +0034d6: 7110 9c00 0000 |00b3: invoke-static {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +0034dc: 5450 1900 |00b6: iget-object v0, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ +0034e0: 6e10 7f00 0000 |00b8: invoke-virtual {v0}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ +0034e6: 0e00 |00bb: return-void │ │ +0034e8: 5452 1500 |00bc: iget-object v2, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ +0034ec: 6e10 8c00 0200 |00be: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicReference;.get:()Ljava/lang/Object; // method@008c │ │ +0034f2: 0c02 |00c1: move-result-object v2 │ │ +0034f4: 3802 1000 |00c2: if-eqz v2, 00d2 // +0010 │ │ +0034f8: 5453 1700 |00c4: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ +0034fc: 7220 a000 1300 |00c6: invoke-interface {v3, v1}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.getImportanceOf:(Ljava/lang/Object;)I // method@00a0 │ │ +003502: 0a03 |00c9: move-result v3 │ │ +003504: 5454 1700 |00ca: iget-object v4, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ +003508: 7220 a000 2400 |00cc: invoke-interface {v4, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.getImportanceOf:(Ljava/lang/Object;)I // method@00a0 │ │ +00350e: 0a04 |00cf: move-result v4 │ │ +003510: 3743 0700 |00d0: if-le v3, v4, 00d7 // +0007 │ │ +003514: 5453 1500 |00d2: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ +003518: 6e30 8b00 2301 |00d4: invoke-virtual {v3, v2, v1}, Ljava/util/concurrent/atomic/AtomicReference;.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z // method@008b │ │ +00351e: 7210 7c00 0000 |00d7: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ +003524: 0a02 |00da: move-result v2 │ │ +003526: 5453 1000 |00db: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.canceller:Ljava/util/concurrent/atomic/AtomicBoolean; // field@0010 │ │ +00352a: 6e10 8300 0300 |00dd: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@0083 │ │ +003530: 0a03 |00e0: move-result v3 │ │ +003532: 3903 0700 |00e1: if-nez v3, 00e8 // +0007 │ │ +003536: 5453 1700 |00e3: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ +00353a: 7230 a300 1300 |00e5: invoke-interface {v3, v1, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.visit:(Ljava/lang/Object;Ljava/util/Collection;)V // method@00a3 │ │ +003540: 7210 7c00 0000 |00e8: invoke-interface {v0}, Ljava/util/List;.size:()I // method@007c │ │ +003546: 0a01 |00eb: move-result v1 │ │ +003548: 5453 1600 |00ec: iget-object v3, v5, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ +00354c: d802 0201 |00ee: add-int/lit8 v2, v2, #int 1 // #01 │ │ +003550: b121 |00f0: sub-int/2addr v1, v2 │ │ +003552: 6e20 8600 1300 |00f1: invoke-virtual {v3, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.addAndGet:(I)I // method@0086 │ │ +003558: 2900 13ff |00f4: goto/16 0007 // -00ed │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ 0x0007 line=48 │ │ 0x000f line=49 │ │ 0x0017 line=50 │ │ 0x001c line=52 │ │ @@ -5611,19 +5610,19 @@ │ │ type : '()Ljava/lang/Object;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -00310c: |[00310c] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.getHighestImportance:()Ljava/lang/Object; │ │ -00311c: 5410 1500 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ -003120: 6e10 8c00 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicReference;.get:()Ljava/lang/Object; // method@008c │ │ -003126: 0c00 |0005: move-result-object v0 │ │ -003128: 1100 |0006: return-object v0 │ │ +003118: |[003118] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.getHighestImportance:()Ljava/lang/Object; │ │ +003128: 5410 1500 |0000: iget-object v0, v1, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ +00312c: 6e10 8c00 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicReference;.get:()Ljava/lang/Object; // method@008c │ │ +003132: 0c00 |0005: move-result-object v0 │ │ +003134: 1100 |0006: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=192 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; │ │ │ │ #1 : (in Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;) │ │ @@ -5631,99 +5630,99 @@ │ │ type : '(Ljava/lang/Object;)Ljava/lang/Object;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 8 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 181 16-bit code units │ │ -00312c: |[00312c] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.walk:(Ljava/lang/Object;)Ljava/lang/Object; │ │ -00313c: 1a00 2e01 |0000: const-string v0, "MT/Starting..." // string@012e │ │ -003140: 7110 9c00 0000 |0002: invoke-static {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -003146: 5460 1700 |0005: iget-object v0, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ -00314a: 7220 a100 7000 |0007: invoke-interface {v0, v7}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.initState:(Ljava/lang/Object;)V // method@00a1 │ │ -003150: 5460 1200 |000a: iget-object v0, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -003154: 6e10 7e00 0000 |000c: invoke-virtual {v0}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ -00315a: 5b67 1300 |000f: iput-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ -00315e: 5467 1200 |0011: iget-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ -003162: 6e10 7f00 0700 |0013: invoke-virtual {v7}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ -003168: 1207 |0016: const/4 v7, #int 0 // #0 │ │ -00316a: 5b67 1400 |0017: iput-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.endpoint:Ljava/lang/Object; // field@0014 │ │ -00316e: 5460 1500 |0019: iget-object v0, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ -003172: 6e20 8d00 7000 |001b: invoke-virtual {v0, v7}, Ljava/util/concurrent/atomic/AtomicReference;.set:(Ljava/lang/Object;)V // method@008d │ │ -003178: 5467 1600 |001e: iget-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ -00317c: 1210 |0020: const/4 v0, #int 1 // #1 │ │ -00317e: 6e20 8900 0700 |0021: invoke-virtual {v7, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@0089 │ │ -003184: 7100 4d00 0000 |0024: invoke-static {}, Ljava/lang/Runtime;.getRuntime:()Ljava/lang/Runtime; // method@004d │ │ -00318a: 0c07 |0027: move-result-object v7 │ │ -00318c: 6e10 4c00 0700 |0028: invoke-virtual {v7}, Ljava/lang/Runtime;.availableProcessors:()I // method@004c │ │ -003192: 0a07 |002b: move-result v7 │ │ -003194: 2370 8500 |002c: new-array v0, v7, [Ljava/lang/Thread; // type@0085 │ │ -003198: 5461 1800 |002e: iget-object v1, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.threadsInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0018 │ │ -00319c: 6e20 8900 7100 |0030: invoke-virtual {v1, v7}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@0089 │ │ -0031a2: 5461 1900 |0033: iget-object v1, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ -0031a6: 6e10 7e00 0100 |0035: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ -0031ac: 1201 |0038: const/4 v1, #int 0 // #0 │ │ -0031ae: 1202 |0039: const/4 v2, #int 0 // #0 │ │ -0031b0: 3572 2200 |003a: if-ge v2, v7, 005c // +0022 │ │ -0031b4: 2203 4e00 |003c: new-instance v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1; // type@004e │ │ -0031b8: 2204 3200 |003e: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ -0031bc: 7010 5400 0400 |0040: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -0031c2: 1a05 6101 |0043: const-string v5, "TreeWalker-" // string@0161 │ │ -0031c6: 6e20 5700 5400 |0045: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0031cc: 6e20 5600 2400 |0048: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -0031d2: 6e10 5900 0400 |004b: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -0031d8: 0c04 |004e: move-result-object v4 │ │ -0031da: 7030 a800 6304 |004f: invoke-direct {v3, v6, v4}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1;.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;Ljava/lang/String;)V // method@00a8 │ │ -0031e0: 4d03 0002 |0052: aput-object v3, v0, v2 │ │ -0031e4: 4603 0002 |0054: aget-object v3, v0, v2 │ │ -0031e8: 6e10 5f00 0300 |0056: invoke-virtual {v3}, Ljava/lang/Thread;.start:()V // method@005f │ │ -0031ee: d802 0201 |0059: add-int/lit8 v2, v2, #int 1 // #01 │ │ -0031f2: 28df |005b: goto 003a // -0021 │ │ -0031f4: 1a02 2c01 |005c: const-string v2, "MT/Main body..." // string@012c │ │ -0031f8: 7110 9c00 0200 |005e: invoke-static {v2}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -0031fe: 5462 1900 |0061: iget-object v2, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ -003202: 1603 e803 |0063: const-wide/16 v3, #int 1000 // #3e8 │ │ -003206: 6205 0300 |0065: sget-object v5, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@0003 │ │ -00320a: 6e40 8100 3254 |0067: invoke-virtual {v2, v3, v4, v5}, Ljava/util/concurrent/Semaphore;.tryAcquire:(JLjava/util/concurrent/TimeUnit;)Z // method@0081 │ │ -003210: 0a02 |006a: move-result v2 │ │ -003212: 2802 |006b: goto 006d // +0002 │ │ -003214: 1202 |006c: const/4 v2, #int 0 // #0 │ │ -003216: 3802 2d00 |006d: if-eqz v2, 009a // +002d │ │ -00321a: 1a02 2d01 |006f: const-string v2, "MT/Shutting down..." // string@012d │ │ -00321e: 7110 9c00 0200 |0071: invoke-static {v2}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -003224: 5462 1900 |0074: iget-object v2, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ -003228: 6e10 7f00 0200 |0076: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ -00322e: 5462 1100 |0079: iget-object v2, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ -003232: 6e10 7e00 0200 |007b: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ -003238: 5462 1100 |007e: iget-object v2, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ -00323c: 6e10 7f00 0200 |0080: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ -003242: 3571 0f00 |0083: if-ge v1, v7, 0092 // +000f │ │ -003246: 4602 0001 |0085: aget-object v2, v0, v1 │ │ -00324a: 6e10 5e00 0200 |0087: invoke-virtual {v2}, Ljava/lang/Thread;.join:()V // method@005e │ │ -003250: 2805 |008a: goto 008f // +0005 │ │ -003252: 0d02 |008b: move-exception v2 │ │ -003254: 6e10 4800 0200 |008c: invoke-virtual {v2}, Ljava/lang/InterruptedException;.printStackTrace:()V // method@0048 │ │ -00325a: d801 0101 |008f: add-int/lit8 v1, v1, #int 1 // #01 │ │ -00325e: 28f2 |0091: goto 0083 // -000e │ │ -003260: 1a07 2b01 |0092: const-string v7, "MT/All threads joined" // string@012b │ │ -003264: 7110 9c00 0700 |0094: invoke-static {v7}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -00326a: 5467 1400 |0097: iget-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.endpoint:Ljava/lang/Object; // field@0014 │ │ -00326e: 1107 |0099: return-object v7 │ │ -003270: 2202 3200 |009a: new-instance v2, Ljava/lang/StringBuilder; // type@0032 │ │ -003274: 7010 5400 0200 |009c: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -00327a: 1a03 2f01 |009f: const-string v3, "MT/in play: " // string@012f │ │ -00327e: 6e20 5700 3200 |00a1: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -003284: 5463 1600 |00a4: iget-object v3, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ -003288: 6e10 8800 0300 |00a6: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@0088 │ │ -00328e: 0a03 |00a9: move-result v3 │ │ -003290: 6e20 5600 3200 |00aa: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -003296: 6e10 5900 0200 |00ad: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -00329c: 0c02 |00b0: move-result-object v2 │ │ -00329e: 7110 9c00 0200 |00b1: invoke-static {v2}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ -0032a4: 28ad |00b4: goto 0061 // -0053 │ │ +003138: |[003138] t20kdc.libofflinepuzzlesolver.genlog.TreeWalkerThreads.walk:(Ljava/lang/Object;)Ljava/lang/Object; │ │ +003148: 1a00 3001 |0000: const-string v0, "MT/Starting..." // string@0130 │ │ +00314c: 7110 9c00 0000 |0002: invoke-static {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +003152: 5460 1700 |0005: iget-object v0, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.root:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot; // field@0017 │ │ +003156: 7220 a100 7000 |0007: invoke-interface {v0, v7}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;.initState:(Ljava/lang/Object;)V // method@00a1 │ │ +00315c: 5460 1200 |000a: iget-object v0, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +003160: 6e10 7e00 0000 |000c: invoke-virtual {v0}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ +003166: 5b67 1300 |000f: iput-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopValue:Ljava/lang/Object; // field@0013 │ │ +00316a: 5467 1200 |0011: iget-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.distroLoopSemaphore:Ljava/util/concurrent/Semaphore; // field@0012 │ │ +00316e: 6e10 7f00 0700 |0013: invoke-virtual {v7}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ +003174: 1207 |0016: const/4 v7, #int 0 // #0 │ │ +003176: 5b67 1400 |0017: iput-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.endpoint:Ljava/lang/Object; // field@0014 │ │ +00317a: 5460 1500 |0019: iget-object v0, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.highestImportance:Ljava/util/concurrent/atomic/AtomicReference; // field@0015 │ │ +00317e: 6e20 8d00 7000 |001b: invoke-virtual {v0, v7}, Ljava/util/concurrent/atomic/AtomicReference;.set:(Ljava/lang/Object;)V // method@008d │ │ +003184: 5467 1600 |001e: iget-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ +003188: 1210 |0020: const/4 v0, #int 1 // #1 │ │ +00318a: 6e20 8900 0700 |0021: invoke-virtual {v7, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@0089 │ │ +003190: 7100 4d00 0000 |0024: invoke-static {}, Ljava/lang/Runtime;.getRuntime:()Ljava/lang/Runtime; // method@004d │ │ +003196: 0c07 |0027: move-result-object v7 │ │ +003198: 6e10 4c00 0700 |0028: invoke-virtual {v7}, Ljava/lang/Runtime;.availableProcessors:()I // method@004c │ │ +00319e: 0a07 |002b: move-result v7 │ │ +0031a0: 2370 8500 |002c: new-array v0, v7, [Ljava/lang/Thread; // type@0085 │ │ +0031a4: 5461 1800 |002e: iget-object v1, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.threadsInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0018 │ │ +0031a8: 6e20 8900 7100 |0030: invoke-virtual {v1, v7}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@0089 │ │ +0031ae: 5461 1900 |0033: iget-object v1, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ +0031b2: 6e10 7e00 0100 |0035: invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ +0031b8: 1201 |0038: const/4 v1, #int 0 // #0 │ │ +0031ba: 1202 |0039: const/4 v2, #int 0 // #0 │ │ +0031bc: 3572 2200 |003a: if-ge v2, v7, 005c // +0022 │ │ +0031c0: 2203 4e00 |003c: new-instance v3, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1; // type@004e │ │ +0031c4: 2204 3200 |003e: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ +0031c8: 7010 5400 0400 |0040: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +0031ce: 1a05 6301 |0043: const-string v5, "TreeWalker-" // string@0163 │ │ +0031d2: 6e20 5700 5400 |0045: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0031d8: 6e20 5600 2400 |0048: invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +0031de: 6e10 5900 0400 |004b: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0031e4: 0c04 |004e: move-result-object v4 │ │ +0031e6: 7030 a800 6304 |004f: invoke-direct {v3, v6, v4}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1;.:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;Ljava/lang/String;)V // method@00a8 │ │ +0031ec: 4d03 0002 |0052: aput-object v3, v0, v2 │ │ +0031f0: 4603 0002 |0054: aget-object v3, v0, v2 │ │ +0031f4: 6e10 5f00 0300 |0056: invoke-virtual {v3}, Ljava/lang/Thread;.start:()V // method@005f │ │ +0031fa: d802 0201 |0059: add-int/lit8 v2, v2, #int 1 // #01 │ │ +0031fe: 28df |005b: goto 003a // -0021 │ │ +003200: 1a02 2e01 |005c: const-string v2, "MT/Main body..." // string@012e │ │ +003204: 7110 9c00 0200 |005e: invoke-static {v2}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +00320a: 5462 1900 |0061: iget-object v2, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ +00320e: 1603 e803 |0063: const-wide/16 v3, #int 1000 // #3e8 │ │ +003212: 6205 0300 |0065: sget-object v5, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@0003 │ │ +003216: 6e40 8100 3254 |0067: invoke-virtual {v2, v3, v4, v5}, Ljava/util/concurrent/Semaphore;.tryAcquire:(JLjava/util/concurrent/TimeUnit;)Z // method@0081 │ │ +00321c: 0a02 |006a: move-result v2 │ │ +00321e: 2802 |006b: goto 006d // +0002 │ │ +003220: 1202 |006c: const/4 v2, #int 0 // #0 │ │ +003222: 3802 2d00 |006d: if-eqz v2, 009a // +002d │ │ +003226: 1a02 2f01 |006f: const-string v2, "MT/Shutting down..." // string@012f │ │ +00322a: 7110 9c00 0200 |0071: invoke-static {v2}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +003230: 5462 1900 |0074: iget-object v2, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.waker:Ljava/util/concurrent/Semaphore; // field@0019 │ │ +003234: 6e10 7f00 0200 |0076: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ +00323a: 5462 1100 |0079: iget-object v2, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ +00323e: 6e10 7e00 0200 |007b: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.acquireUninterruptibly:()V // method@007e │ │ +003244: 5462 1100 |007e: iget-object v2, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.confirmer:Ljava/util/concurrent/Semaphore; // field@0011 │ │ +003248: 6e10 7f00 0200 |0080: invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;.release:()V // method@007f │ │ +00324e: 3571 0f00 |0083: if-ge v1, v7, 0092 // +000f │ │ +003252: 4602 0001 |0085: aget-object v2, v0, v1 │ │ +003256: 6e10 5e00 0200 |0087: invoke-virtual {v2}, Ljava/lang/Thread;.join:()V // method@005e │ │ +00325c: 2805 |008a: goto 008f // +0005 │ │ +00325e: 0d02 |008b: move-exception v2 │ │ +003260: 6e10 4800 0200 |008c: invoke-virtual {v2}, Ljava/lang/InterruptedException;.printStackTrace:()V // method@0048 │ │ +003266: d801 0101 |008f: add-int/lit8 v1, v1, #int 1 // #01 │ │ +00326a: 28f2 |0091: goto 0083 // -000e │ │ +00326c: 1a07 2d01 |0092: const-string v7, "MT/All threads joined" // string@012d │ │ +003270: 7110 9c00 0700 |0094: invoke-static {v7}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +003276: 5467 1400 |0097: iget-object v7, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.endpoint:Ljava/lang/Object; // field@0014 │ │ +00327a: 1107 |0099: return-object v7 │ │ +00327c: 5462 1600 |009a: iget-object v2, v6, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;.nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; // field@0016 │ │ +003280: 6e10 8800 0200 |009c: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@0088 │ │ +003286: 0a02 |009f: move-result v2 │ │ +003288: 2203 3200 |00a0: new-instance v3, Ljava/lang/StringBuilder; // type@0032 │ │ +00328c: 7010 5400 0300 |00a2: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +003292: 1a04 3101 |00a5: const-string v4, "MT/in play: " // string@0131 │ │ +003296: 6e20 5700 4300 |00a7: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00329c: 6e20 5600 2300 |00aa: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +0032a2: 6e10 5900 0300 |00ad: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0032a8: 0c02 |00b0: move-result-object v2 │ │ +0032aa: 7110 9c00 0200 |00b1: invoke-static {v2}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;.log:(Ljava/lang/String;)V // method@009c │ │ +0032b0: 28ad |00b4: goto 0061 // -0053 │ │ catches : 2 │ │ 0x0061 - 0x006b │ │ Ljava/lang/Exception; -> 0x006c │ │ 0x0087 - 0x008a │ │ Ljava/lang/InterruptedException; -> 0x008b │ │ positions : │ │ 0x0002 line=135 │ │ @@ -5752,21 +5751,21 @@ │ │ 0x0094 line=186 │ │ 0x0097 line=187 │ │ 0x009a line=170 │ │ locals : │ │ 0x0000 - 0x00b5 reg=6 this Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; │ │ 0x0000 - 0x00b5 reg=7 (null) Ljava/lang/Object; │ │ │ │ - source_file_idx : 357 (TreeWalkerThreads.java) │ │ + source_file_idx : 359 (TreeWalkerThreads.java) │ │ │ │ Class #46 header: │ │ class_idx : 83 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 45 │ │ -source_file_idx : 338 │ │ +source_file_idx : 340 │ │ static_fields_size : 2 │ │ instance_fields_size: 0 │ │ direct_methods_size : 4 │ │ virtual_methods_size: 8 │ │ │ │ Class #46 annotations: │ │ Annotations on class │ │ @@ -5790,94 +5789,93 @@ │ │ #1 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;) │ │ name : 'squareOfs' │ │ type : '[I' │ │ access : 0x001a (PRIVATE STATIC FINAL) │ │ Instance fields - │ │ Direct methods - │ │ #0 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;) │ │ + name : '-$$Nest$sfgetsquareOfs' │ │ + type : '()[I' │ │ + access : 0x1008 (STATIC SYNTHETIC) │ │ + code - │ │ + registers : 1 │ │ + ins : 0 │ │ + outs : 0 │ │ + insns size : 3 16-bit code units │ │ +003dd4: |[003dd4] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.-$$Nest$sfgetsquareOfs:()[I │ │ +003de4: 6200 2b00 |0000: sget-object v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.squareOfs:[I // field@002b │ │ +003de8: 1100 |0002: return-object v0 │ │ + catches : (none) │ │ + positions : │ │ + locals : │ │ + │ │ + #1 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;) │ │ name : '' │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 32 16-bit code units │ │ -003de0: |[003de0] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.:()V │ │ -003df0: 1300 0900 |0000: const/16 v0, #int 9 // #9 │ │ -003df4: 2300 8100 |0002: new-array v0, v0, [I // type@0081 │ │ -003df8: 2600 0600 0000 |0004: fill-array-data v0, 0000000a // +00000006 │ │ -003dfe: 6900 2b00 |0007: sput-object v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.squareOfs:[I // field@002b │ │ -003e02: 0e00 |0009: return-void │ │ -003e04: 0003 0400 0900 0000 0000 0000 0100 ... |000a: array-data (22 units) │ │ +003dec: |[003dec] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.:()V │ │ +003dfc: 1300 0900 |0000: const/16 v0, #int 9 // #9 │ │ +003e00: 2300 8100 |0002: new-array v0, v0, [I // type@0081 │ │ +003e04: 2600 0600 0000 |0004: fill-array-data v0, 0000000a // +00000006 │ │ +003e0a: 6900 2b00 |0007: sput-object v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.squareOfs:[I // field@002b │ │ +003e0e: 0e00 |0009: return-void │ │ +003e10: 0003 0400 0900 0000 0000 0000 0100 ... |000a: array-data (22 units) │ │ catches : (none) │ │ positions : │ │ 0x0004 line=10 │ │ locals : │ │ │ │ - #1 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;) │ │ + #2 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;) │ │ name : '' │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -003e30: |[003e30] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.:()V │ │ -003e40: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -003e46: 0e00 |0003: return-void │ │ +003e3c: |[003e3c] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.:()V │ │ +003e4c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +003e52: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=8 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; │ │ │ │ - #2 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;) │ │ - name : 'access$000' │ │ - type : '()[I' │ │ - access : 0x1008 (STATIC SYNTHETIC) │ │ - code - │ │ - registers : 1 │ │ - ins : 0 │ │ - outs : 0 │ │ - insns size : 3 16-bit code units │ │ -003dc8: |[003dc8] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.access$000:()[I │ │ -003dd8: 6200 2b00 |0000: sget-object v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.squareOfs:[I // field@002b │ │ -003ddc: 1100 |0002: return-object v0 │ │ - catches : (none) │ │ - positions : │ │ - 0x0000 line=8 │ │ - locals : │ │ - │ │ #3 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;) │ │ name : 'fudge' │ │ type : '(I)Z' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 8 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 23 16-bit code units │ │ -003d0c: |[003d0c] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.fudge:(I)Z │ │ -003d1c: 6300 2a00 |0000: sget-boolean v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.fudgeEnabledGlobally:Z // field@002a │ │ -003d20: 3800 1300 |0002: if-eqz v0, 0015 // +0013 │ │ -003d24: 8170 |0004: int-to-long v0, v7 │ │ -003d26: 7100 5b00 0000 |0005: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@005b │ │ -003d2c: 0b02 |0008: move-result-wide v2 │ │ -003d2e: 1604 1000 |0009: const-wide/16 v4, #int 16 // #10 │ │ -003d32: bf42 |000b: rem-long/2addr v2, v4 │ │ -003d34: bb20 |000c: add-long/2addr v0, v2 │ │ -003d36: 1602 0000 |000d: const-wide/16 v2, #int 0 // #0 │ │ -003d3a: 3107 0002 |000f: cmp-long v7, v0, v2 │ │ -003d3e: 3907 0400 |0011: if-nez v7, 0015 // +0004 │ │ -003d42: 1217 |0013: const/4 v7, #int 1 // #1 │ │ -003d44: 2802 |0014: goto 0016 // +0002 │ │ -003d46: 1207 |0015: const/4 v7, #int 0 // #0 │ │ -003d48: 0f07 |0016: return v7 │ │ +003d18: |[003d18] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.fudge:(I)Z │ │ +003d28: 6300 2a00 |0000: sget-boolean v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.fudgeEnabledGlobally:Z // field@002a │ │ +003d2c: 3800 1300 |0002: if-eqz v0, 0015 // +0013 │ │ +003d30: 8170 |0004: int-to-long v0, v7 │ │ +003d32: 7100 5b00 0000 |0005: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@005b │ │ +003d38: 0b02 |0008: move-result-wide v2 │ │ +003d3a: 1604 1000 |0009: const-wide/16 v4, #int 16 // #10 │ │ +003d3e: bf42 |000b: rem-long/2addr v2, v4 │ │ +003d40: bb20 |000c: add-long/2addr v0, v2 │ │ +003d42: 1602 0000 |000d: const-wide/16 v2, #int 0 // #0 │ │ +003d46: 3107 0002 |000f: cmp-long v7, v0, v2 │ │ +003d4a: 3907 0400 |0011: if-nez v7, 0015 // +0004 │ │ +003d4e: 1217 |0013: const/4 v7, #int 1 // #1 │ │ +003d50: 2802 |0014: goto 0016 // +0002 │ │ +003d52: 1207 |0015: const/4 v7, #int 0 // #0 │ │ +003d54: 0f07 |0016: return v7 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=59 │ │ locals : │ │ 0x0000 - 0x0017 reg=6 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; │ │ 0x0000 - 0x0017 reg=7 (null) I │ │ │ │ @@ -5887,19 +5885,19 @@ │ │ type : '(Ljava/lang/Object;)I' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 7 16-bit code units │ │ -003d90: |[003d90] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.getImportanceOf:(Ljava/lang/Object;)I │ │ -003da0: 1f01 5200 |0000: check-cast v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -003da4: 6e20 c100 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.getImportanceOf:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)I // method@00c1 │ │ -003daa: 0a01 |0005: move-result v1 │ │ -003dac: 0f01 |0006: return v1 │ │ +003d9c: |[003d9c] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.getImportanceOf:(Ljava/lang/Object;)I │ │ +003dac: 1f01 5200 |0000: check-cast v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +003db0: 6e20 c100 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.getImportanceOf:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)I // method@00c1 │ │ +003db6: 0a01 |0005: move-result v1 │ │ +003db8: 0f01 |0006: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=8 │ │ locals : │ │ 0x0000 - 0x0007 reg=0 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; │ │ 0x0000 - 0x0007 reg=1 (null) Ljava/lang/Object; │ │ │ │ @@ -5908,17 +5906,17 @@ │ │ type : '(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -003db0: |[003db0] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.getImportanceOf:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)I │ │ -003dc0: 5211 2600 |0000: iget v1, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ -003dc4: 0f01 |0002: return v1 │ │ +003dbc: |[003dbc] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.getImportanceOf:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)I │ │ +003dcc: 5211 2600 |0000: iget v1, v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ +003dd0: 0f01 |0002: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=64 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; │ │ 0x0000 - 0x0003 reg=1 (null) Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; │ │ │ │ @@ -5927,18 +5925,18 @@ │ │ type : '(Ljava/lang/Object;)V' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -003e48: |[003e48] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.initState:(Ljava/lang/Object;)V │ │ -003e58: 1f01 5200 |0000: check-cast v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -003e5c: 6e20 c300 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.initState:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)V // method@00c3 │ │ -003e62: 0e00 |0005: return-void │ │ +003e54: |[003e54] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.initState:(Ljava/lang/Object;)V │ │ +003e64: 1f01 5200 |0000: check-cast v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +003e68: 6e20 c300 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.initState:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)V // method@00c3 │ │ +003e6e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=8 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; │ │ 0x0000 - 0x0006 reg=1 (null) Ljava/lang/Object; │ │ │ │ @@ -5947,34 +5945,34 @@ │ │ type : '(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -003e64: |[003e64] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.initState:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)V │ │ -003e74: 0e00 |0000: return-void │ │ +003e70: |[003e70] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.initState:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)V │ │ +003e80: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #4 : (in Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;) │ │ name : 'isEndpoint' │ │ type : '(Ljava/lang/Object;)Z' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 7 16-bit code units │ │ -003d4c: |[003d4c] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.isEndpoint:(Ljava/lang/Object;)Z │ │ -003d5c: 1f01 5200 |0000: check-cast v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -003d60: 6e20 c500 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.isEndpoint:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)Z // method@00c5 │ │ -003d66: 0a01 |0005: move-result v1 │ │ -003d68: 0f01 |0006: return v1 │ │ +003d58: |[003d58] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.isEndpoint:(Ljava/lang/Object;)Z │ │ +003d68: 1f01 5200 |0000: check-cast v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +003d6c: 6e20 c500 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.isEndpoint:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)Z // method@00c5 │ │ +003d72: 0a01 |0005: move-result v1 │ │ +003d74: 0f01 |0006: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=8 │ │ locals : │ │ 0x0000 - 0x0007 reg=0 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; │ │ 0x0000 - 0x0007 reg=1 (null) Ljava/lang/Object; │ │ │ │ @@ -5983,22 +5981,22 @@ │ │ type : '(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 10 16-bit code units │ │ -003d6c: |[003d6c] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.isEndpoint:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)Z │ │ -003d7c: 5222 2600 |0000: iget v2, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ -003d80: 1300 5100 |0002: const/16 v0, #int 81 // #51 │ │ -003d84: 3302 0400 |0004: if-ne v2, v0, 0008 // +0004 │ │ -003d88: 1212 |0006: const/4 v2, #int 1 // #1 │ │ -003d8a: 2802 |0007: goto 0009 // +0002 │ │ -003d8c: 1202 |0008: const/4 v2, #int 0 // #0 │ │ -003d8e: 0f02 |0009: return v2 │ │ +003d78: |[003d78] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.isEndpoint:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;)Z │ │ +003d88: 5222 2600 |0000: iget v2, v2, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completionAmount:I // field@0026 │ │ +003d8c: 1300 5100 |0002: const/16 v0, #int 81 // #51 │ │ +003d90: 3302 0400 |0004: if-ne v2, v0, 0008 // +0004 │ │ +003d94: 1212 |0006: const/4 v2, #int 1 // #1 │ │ +003d96: 2802 |0007: goto 0009 // +0002 │ │ +003d98: 1202 |0008: const/4 v2, #int 0 // #0 │ │ +003d9a: 0f02 |0009: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=68 │ │ locals : │ │ 0x0000 - 0x000a reg=1 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; │ │ 0x0000 - 0x000a reg=2 (null) Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; │ │ │ │ @@ -6007,18 +6005,18 @@ │ │ type : '(Ljava/lang/Object;Ljava/util/Collection;)V' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 6 16-bit code units │ │ -003e78: |[003e78] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.visit:(Ljava/lang/Object;Ljava/util/Collection;)V │ │ -003e88: 1f01 5200 |0000: check-cast v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -003e8c: 6e30 c700 1002 |0002: invoke-virtual {v0, v1, v2}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.visit:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/util/Collection;)V // method@00c7 │ │ -003e92: 0e00 |0005: return-void │ │ +003e84: |[003e84] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.visit:(Ljava/lang/Object;Ljava/util/Collection;)V │ │ +003e94: 1f01 5200 |0000: check-cast v1, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +003e98: 6e30 c700 1002 |0002: invoke-virtual {v0, v1, v2}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.visit:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/util/Collection;)V // method@00c7 │ │ +003e9e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=8 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; │ │ 0x0000 - 0x0006 reg=1 (null) Ljava/lang/Object; │ │ 0x0000 - 0x0006 reg=2 (null) Ljava/util/Collection; │ │ @@ -6028,66 +6026,66 @@ │ │ type : '(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/util/Collection;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 11 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 87 16-bit code units │ │ -003e94: |[003e94] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.visit:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/util/Collection;)V │ │ -003ea4: 5590 2800 |0000: iget-boolean v0, v9, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.stateEpicFailCheckAlternator:Z // field@0028 │ │ -003ea8: 3800 0900 |0002: if-eqz v0, 000b // +0009 │ │ -003eac: 6e10 b700 0900 |0004: invoke-virtual {v9}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.checkForEpicFailure:()I // method@00b7 │ │ -003eb2: 0a00 |0007: move-result v0 │ │ -003eb4: 3800 0300 |0008: if-eqz v0, 000b // +0003 │ │ -003eb8: 0e00 |000a: return-void │ │ -003eba: 1300 0a00 |000b: const/16 v0, #int 10 // #a │ │ -003ebe: 12f1 |000d: const/4 v1, #int -1 // #ff │ │ -003ec0: 1202 |000e: const/4 v2, #int 0 // #0 │ │ -003ec2: 1203 |000f: const/4 v3, #int 0 // #0 │ │ -003ec4: 12f4 |0010: const/4 v4, #int -1 // #ff │ │ -003ec6: 1205 |0011: const/4 v5, #int 0 // #0 │ │ -003ec8: 1306 5100 |0012: const/16 v6, #int 81 // #51 │ │ -003ecc: 3563 2400 |0014: if-ge v3, v6, 0038 // +0024 │ │ -003ed0: 5496 2500 |0016: iget-object v6, v9, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ -003ed4: 4706 0603 |0018: aget-boolean v6, v6, v3 │ │ -003ed8: 3806 0300 |001a: if-eqz v6, 001d // +0003 │ │ -003edc: 2819 |001c: goto 0035 // +0019 │ │ -003ede: 6e20 b900 3900 |001d: invoke-virtual {v9, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.getChoiceCount:(I)I // method@00b9 │ │ -003ee4: 0a06 |0020: move-result v6 │ │ -003ee6: 5597 2700 |0021: iget-boolean v7, v9, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ -003eea: 3807 0600 |0023: if-eqz v7, 0029 // +0006 │ │ -003eee: 3906 0400 |0025: if-nez v6, 0029 // +0004 │ │ -003ef2: 1215 |0027: const/4 v5, #int 1 // #1 │ │ -003ef4: 280d |0028: goto 0035 // +000d │ │ -003ef6: 3406 0a00 |0029: if-lt v6, v0, 0033 // +000a │ │ -003efa: 3306 0a00 |002b: if-ne v6, v0, 0035 // +000a │ │ -003efe: 7020 bf00 3800 |002d: invoke-direct {v8, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.fudge:(I)Z // method@00bf │ │ -003f04: 0a07 |0030: move-result v7 │ │ -003f06: 3807 0400 |0031: if-eqz v7, 0035 // +0004 │ │ -003f0a: 0134 |0033: move v4, v3 │ │ -003f0c: 0160 |0034: move v0, v6 │ │ -003f0e: d803 0301 |0035: add-int/lit8 v3, v3, #int 1 // #01 │ │ -003f12: 28db |0037: goto 0012 // -0025 │ │ -003f14: 3314 0300 |0038: if-ne v4, v1, 003b // +0003 │ │ -003f18: 0e00 |003a: return-void │ │ -003f1a: 3900 0300 |003b: if-nez v0, 003e // +0003 │ │ -003f1e: 0e00 |003d: return-void │ │ -003f20: 1300 0900 |003e: const/16 v0, #int 9 // #9 │ │ -003f24: 3502 1600 |0040: if-ge v2, v0, 0056 // +0016 │ │ -003f28: 6e30 bb00 4902 |0042: invoke-virtual {v9, v4, v2}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ -003f2e: 0a00 |0045: move-result v0 │ │ -003f30: 3800 0d00 |0046: if-eqz v0, 0053 // +000d │ │ -003f34: 2200 5200 |0048: new-instance v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -003f38: 7040 b600 9024 |004a: invoke-direct {v0, v9, v4, v2}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@00b6 │ │ -003f3e: 7220 6a00 0a00 |004d: invoke-interface {v10, v0}, Ljava/util/Collection;.add:(Ljava/lang/Object;)Z // method@006a │ │ -003f44: 3805 0300 |0050: if-eqz v5, 0053 // +0003 │ │ -003f48: 0e00 |0052: return-void │ │ -003f4a: d802 0201 |0053: add-int/lit8 v2, v2, #int 1 // #01 │ │ -003f4e: 28e9 |0055: goto 003e // -0017 │ │ -003f50: 0e00 |0056: return-void │ │ +003ea0: |[003ea0] t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot.visit:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/util/Collection;)V │ │ +003eb0: 5590 2800 |0000: iget-boolean v0, v9, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.stateEpicFailCheckAlternator:Z // field@0028 │ │ +003eb4: 3800 0900 |0002: if-eqz v0, 000b // +0009 │ │ +003eb8: 6e10 b700 0900 |0004: invoke-virtual {v9}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.checkForEpicFailure:()I // method@00b7 │ │ +003ebe: 0a00 |0007: move-result v0 │ │ +003ec0: 3800 0300 |0008: if-eqz v0, 000b // +0003 │ │ +003ec4: 0e00 |000a: return-void │ │ +003ec6: 1300 0a00 |000b: const/16 v0, #int 10 // #a │ │ +003eca: 12f1 |000d: const/4 v1, #int -1 // #ff │ │ +003ecc: 1202 |000e: const/4 v2, #int 0 // #0 │ │ +003ece: 1203 |000f: const/4 v3, #int 0 // #0 │ │ +003ed0: 12f4 |0010: const/4 v4, #int -1 // #ff │ │ +003ed2: 1205 |0011: const/4 v5, #int 0 // #0 │ │ +003ed4: 1306 5100 |0012: const/16 v6, #int 81 // #51 │ │ +003ed8: 3563 2400 |0014: if-ge v3, v6, 0038 // +0024 │ │ +003edc: 5496 2500 |0016: iget-object v6, v9, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.completion:[Z // field@0025 │ │ +003ee0: 4706 0603 |0018: aget-boolean v6, v6, v3 │ │ +003ee4: 3806 0300 |001a: if-eqz v6, 001d // +0003 │ │ +003ee8: 2819 |001c: goto 0035 // +0019 │ │ +003eea: 6e20 b900 3900 |001d: invoke-virtual {v9, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.getChoiceCount:(I)I // method@00b9 │ │ +003ef0: 0a06 |0020: move-result v6 │ │ +003ef2: 5597 2700 |0021: iget-boolean v7, v9, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ +003ef6: 3807 0600 |0023: if-eqz v7, 0029 // +0006 │ │ +003efa: 3906 0400 |0025: if-nez v6, 0029 // +0004 │ │ +003efe: 1215 |0027: const/4 v5, #int 1 // #1 │ │ +003f00: 280d |0028: goto 0035 // +000d │ │ +003f02: 3406 0a00 |0029: if-lt v6, v0, 0033 // +000a │ │ +003f06: 3306 0a00 |002b: if-ne v6, v0, 0035 // +000a │ │ +003f0a: 7020 bf00 3800 |002d: invoke-direct {v8, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.fudge:(I)Z // method@00bf │ │ +003f10: 0a07 |0030: move-result v7 │ │ +003f12: 3807 0400 |0031: if-eqz v7, 0035 // +0004 │ │ +003f16: 0134 |0033: move v4, v3 │ │ +003f18: 0160 |0034: move v0, v6 │ │ +003f1a: d803 0301 |0035: add-int/lit8 v3, v3, #int 1 // #01 │ │ +003f1e: 28db |0037: goto 0012 // -0025 │ │ +003f20: 3314 0300 |0038: if-ne v4, v1, 003b // +0003 │ │ +003f24: 0e00 |003a: return-void │ │ +003f26: 3900 0300 |003b: if-nez v0, 003e // +0003 │ │ +003f2a: 0e00 |003d: return-void │ │ +003f2c: 1300 0900 |003e: const/16 v0, #int 9 // #9 │ │ +003f30: 3502 1600 |0040: if-ge v2, v0, 0056 // +0016 │ │ +003f34: 6e30 bb00 4902 |0042: invoke-virtual {v9, v4, v2}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ +003f3a: 0a00 |0045: move-result v0 │ │ +003f3c: 3800 0d00 |0046: if-eqz v0, 0053 // +000d │ │ +003f40: 2200 5200 |0048: new-instance v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +003f44: 7040 b600 9024 |004a: invoke-direct {v0, v9, v4, v2}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@00b6 │ │ +003f4a: 7220 6a00 0a00 |004d: invoke-interface {v10, v0}, Ljava/util/Collection;.add:(Ljava/lang/Object;)Z // method@006a │ │ +003f50: 3805 0300 |0050: if-eqz v5, 0053 // +0003 │ │ +003f54: 0e00 |0052: return-void │ │ +003f56: d802 0201 |0053: add-int/lit8 v2, v2, #int 1 // #01 │ │ +003f5a: 28e9 |0055: goto 003e // -0017 │ │ +003f5c: 0e00 |0056: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=21 │ │ 0x0004 line=22 │ │ 0x0016 line=31 │ │ 0x001d line=33 │ │ 0x0021 line=34 │ │ @@ -6095,21 +6093,21 @@ │ │ 0x0042 line=48 │ │ 0x0048 line=49 │ │ locals : │ │ 0x0000 - 0x0057 reg=8 this Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; │ │ 0x0000 - 0x0057 reg=9 (null) Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; │ │ 0x0000 - 0x0057 reg=10 (null) Ljava/util/Collection; │ │ │ │ - source_file_idx : 338 (SudokuRoot.java) │ │ + source_file_idx : 340 (SudokuRoot.java) │ │ │ │ Class #47 header: │ │ class_idx : 109 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 105 │ │ -source_file_idx : 305 │ │ +source_file_idx : 307 │ │ static_fields_size : 1 │ │ instance_fields_size: 1 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 2 │ │ │ │ Class #47 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;' │ │ @@ -6133,19 +6131,19 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -004d78: |[004d78] t20kdc.offlinepuzzlesolver.game.NCupsActivity.:()V │ │ -004d88: 7010 0401 0100 |0000: invoke-direct {v1}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.:()V // method@0104 │ │ -004d8e: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -004d90: 5b10 9100 |0004: iput-object v0, v1, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ -004d94: 0e00 |0006: return-void │ │ +004d84: |[004d84] t20kdc.offlinepuzzlesolver.game.NCupsActivity.:()V │ │ +004d94: 7010 0401 0100 |0000: invoke-direct {v1}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.:()V // method@0104 │ │ +004d9a: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +004d9c: 5b10 9100 |0004: iput-object v0, v1, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ +004da0: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=13 │ │ 0x0004 line=15 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; │ │ │ │ @@ -6154,17 +6152,17 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)[Landroid/widget/CheckBox;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004d60: |[004d60] t20kdc.offlinepuzzlesolver.game.NCupsActivity.access$000:(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)[Landroid/widget/CheckBox; │ │ -004d70: 5400 9100 |0000: iget-object v0, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ -004d74: 1100 |0002: return-object v0 │ │ +004d6c: |[004d6c] t20kdc.offlinepuzzlesolver.game.NCupsActivity.access$000:(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)[Landroid/widget/CheckBox; │ │ +004d7c: 5400 9100 |0000: iget-object v0, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ +004d80: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=13 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; │ │ │ │ Virtual methods - │ │ @@ -6173,70 +6171,70 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 8 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 127 16-bit code units │ │ -004d98: |[004d98] t20kdc.offlinepuzzlesolver.game.NCupsActivity.onCreate:(Landroid/os/Bundle;)V │ │ -004da8: 6f20 0c01 7600 |0000: invoke-super {v6, v7}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onCreate:(Landroid/os/Bundle;)V // method@010c │ │ -004dae: 1400 0200 047f |0003: const v0, #float 1.75458e+38 // #7f040002 │ │ -004db4: 6e20 2701 0600 |0006: invoke-virtual {v6, v0}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.setContentView:(I)V // method@0127 │ │ -004dba: 1300 1400 |0009: const/16 v0, #int 20 // #14 │ │ -004dbe: 2301 8200 |000b: new-array v1, v0, [Landroid/widget/CheckBox; // type@0082 │ │ -004dc2: 5b61 9100 |000d: iput-object v1, v6, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ -004dc6: 1201 |000f: const/4 v1, #int 0 // #0 │ │ -004dc8: 3501 3400 |0010: if-ge v1, v0, 0044 // +0034 │ │ -004dcc: 2202 1700 |0012: new-instance v2, Landroid/widget/CheckBox; // type@0017 │ │ -004dd0: 7020 2600 6200 |0014: invoke-direct {v2, v6}, Landroid/widget/CheckBox;.:(Landroid/content/Context;)V // method@0026 │ │ -004dd6: 2203 3200 |0017: new-instance v3, Ljava/lang/StringBuilder; // type@0032 │ │ -004dda: 7010 5400 0300 |0019: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -004de0: 1a04 8300 |001c: const-string v4, "Cup " // string@0083 │ │ -004de4: 6e20 5700 4300 |001e: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -004dea: d804 0101 |0021: add-int/lit8 v4, v1, #int 1 // #01 │ │ -004dee: 6e20 5600 4300 |0023: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -004df4: 1a05 0800 |0026: const-string v5, " Down" // string@0008 │ │ -004df8: 6e20 5700 5300 |0028: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -004dfe: 6e10 5900 0300 |002b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -004e04: 0c03 |002e: move-result-object v3 │ │ -004e06: 6e20 2900 3200 |002f: invoke-virtual {v2, v3}, Landroid/widget/CheckBox;.setText:(Ljava/lang/CharSequence;)V // method@0029 │ │ -004e0c: 1403 0b00 037f |0032: const v3, #float 1.74129e+38 // #7f03000b │ │ -004e12: 6e20 2301 3600 |0035: invoke-virtual {v6, v3}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.findViewById:(I)Landroid/view/View; // method@0123 │ │ -004e18: 0c03 |0038: move-result-object v3 │ │ -004e1a: 1f03 1900 |0039: check-cast v3, Landroid/widget/LinearLayout; // type@0019 │ │ -004e1e: 6e20 2e00 2300 |003b: invoke-virtual {v3, v2}, Landroid/widget/LinearLayout;.addView:(Landroid/view/View;)V // method@002e │ │ -004e24: 5463 9100 |003e: iget-object v3, v6, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ -004e28: 4d02 0301 |0040: aput-object v2, v3, v1 │ │ -004e2c: 0141 |0042: move v1, v4 │ │ -004e2e: 28cd |0043: goto 0010 // -0033 │ │ -004e30: 1400 0e00 037f |0044: const v0, #float 1.74129e+38 // #7f03000e │ │ -004e36: 6e20 2301 0600 |0047: invoke-virtual {v6, v0}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.findViewById:(I)Landroid/view/View; // method@0123 │ │ -004e3c: 0c01 |004a: move-result-object v1 │ │ -004e3e: 1f01 1b00 |004b: check-cast v1, Landroid/widget/SeekBar; // type@001b │ │ -004e42: 1302 1300 |004d: const/16 v2, #int 19 // #13 │ │ -004e46: 6e20 3100 2100 |004f: invoke-virtual {v1, v2}, Landroid/widget/SeekBar;.setMax:(I)V // method@0031 │ │ -004e4c: 1401 1000 037f |0052: const v1, #float 1.74129e+38 // #7f030010 │ │ -004e52: 6e20 2301 1600 |0055: invoke-virtual {v6, v1}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.findViewById:(I)Landroid/view/View; // method@0123 │ │ -004e58: 0c03 |0058: move-result-object v3 │ │ -004e5a: 1f03 1b00 |0059: check-cast v3, Landroid/widget/SeekBar; // type@001b │ │ -004e5e: 6e20 3100 2300 |005b: invoke-virtual {v3, v2}, Landroid/widget/SeekBar;.setMax:(I)V // method@0031 │ │ -004e64: 6e20 2401 7600 |005e: invoke-virtual {v6, v7}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.loadSL:(Landroid/os/Bundle;)V // method@0124 │ │ -004e6a: 1407 0f00 037f |0061: const v7, #float 1.74129e+38 // #7f03000f │ │ -004e70: 2202 6c00 |0064: new-instance v2, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1; // type@006c │ │ -004e74: 7020 1d01 6200 |0066: invoke-direct {v2, v6}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1;.:(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)V // method@011d │ │ -004e7a: 1213 |0069: const/4 v3, #int 1 // #1 │ │ -004e7c: 7152 f900 0637 |006a: invoke-static {v6, v0, v7, v3, v2}, Lt20kdc/offlinepuzzlesolver/Streamline;.bindSeekWdg:(Landroid/app/Activity;IIILjava/lang/Runnable;)V // method@00f9 │ │ -004e82: 1407 1100 037f |006d: const v7, #float 1.74129e+38 // #7f030011 │ │ -004e88: 1200 |0070: const/4 v0, #int 0 // #0 │ │ -004e8a: 7150 f900 1637 |0071: invoke-static {v6, v1, v7, v3, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.bindSeekWdg:(Landroid/app/Activity;IIILjava/lang/Runnable;)V // method@00f9 │ │ -004e90: 1a07 1202 |0074: const-string v7, "file:///android_asset/rnc.html" // string@0212 │ │ -004e94: 6e20 2101 7600 |0076: invoke-virtual {v6, v7}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.bindRulesButton:(Ljava/lang/String;)V // method@0121 │ │ -004e9a: 1c07 6f00 |0079: const-class v7, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver; // type@006f │ │ -004e9e: 6e20 2201 7600 |007b: invoke-virtual {v6, v7}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.bindSolveButton:(Ljava/lang/Class;)V // method@0122 │ │ -004ea4: 0e00 |007e: return-void │ │ +004da4: |[004da4] t20kdc.offlinepuzzlesolver.game.NCupsActivity.onCreate:(Landroid/os/Bundle;)V │ │ +004db4: 6f20 0c01 7600 |0000: invoke-super {v6, v7}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onCreate:(Landroid/os/Bundle;)V // method@010c │ │ +004dba: 1400 0200 047f |0003: const v0, #float 1.75458e+38 // #7f040002 │ │ +004dc0: 6e20 2701 0600 |0006: invoke-virtual {v6, v0}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.setContentView:(I)V // method@0127 │ │ +004dc6: 1300 1400 |0009: const/16 v0, #int 20 // #14 │ │ +004dca: 2301 8200 |000b: new-array v1, v0, [Landroid/widget/CheckBox; // type@0082 │ │ +004dce: 5b61 9100 |000d: iput-object v1, v6, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ +004dd2: 1201 |000f: const/4 v1, #int 0 // #0 │ │ +004dd4: 3501 3400 |0010: if-ge v1, v0, 0044 // +0034 │ │ +004dd8: 2202 1700 |0012: new-instance v2, Landroid/widget/CheckBox; // type@0017 │ │ +004ddc: 7020 2600 6200 |0014: invoke-direct {v2, v6}, Landroid/widget/CheckBox;.:(Landroid/content/Context;)V // method@0026 │ │ +004de2: 2203 3200 |0017: new-instance v3, Ljava/lang/StringBuilder; // type@0032 │ │ +004de6: 7010 5400 0300 |0019: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +004dec: 1a04 8500 |001c: const-string v4, "Cup " // string@0085 │ │ +004df0: 6e20 5700 4300 |001e: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +004df6: d804 0101 |0021: add-int/lit8 v4, v1, #int 1 // #01 │ │ +004dfa: 6e20 5600 4300 |0023: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +004e00: 1a05 0800 |0026: const-string v5, " Down" // string@0008 │ │ +004e04: 6e20 5700 5300 |0028: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +004e0a: 6e10 5900 0300 |002b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +004e10: 0c03 |002e: move-result-object v3 │ │ +004e12: 6e20 2900 3200 |002f: invoke-virtual {v2, v3}, Landroid/widget/CheckBox;.setText:(Ljava/lang/CharSequence;)V // method@0029 │ │ +004e18: 1403 0b00 037f |0032: const v3, #float 1.74129e+38 // #7f03000b │ │ +004e1e: 6e20 2301 3600 |0035: invoke-virtual {v6, v3}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.findViewById:(I)Landroid/view/View; // method@0123 │ │ +004e24: 0c03 |0038: move-result-object v3 │ │ +004e26: 1f03 1900 |0039: check-cast v3, Landroid/widget/LinearLayout; // type@0019 │ │ +004e2a: 6e20 2e00 2300 |003b: invoke-virtual {v3, v2}, Landroid/widget/LinearLayout;.addView:(Landroid/view/View;)V // method@002e │ │ +004e30: 5463 9100 |003e: iget-object v3, v6, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ +004e34: 4d02 0301 |0040: aput-object v2, v3, v1 │ │ +004e38: 0141 |0042: move v1, v4 │ │ +004e3a: 28cd |0043: goto 0010 // -0033 │ │ +004e3c: 1400 0e00 037f |0044: const v0, #float 1.74129e+38 // #7f03000e │ │ +004e42: 6e20 2301 0600 |0047: invoke-virtual {v6, v0}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.findViewById:(I)Landroid/view/View; // method@0123 │ │ +004e48: 0c01 |004a: move-result-object v1 │ │ +004e4a: 1f01 1b00 |004b: check-cast v1, Landroid/widget/SeekBar; // type@001b │ │ +004e4e: 1302 1300 |004d: const/16 v2, #int 19 // #13 │ │ +004e52: 6e20 3100 2100 |004f: invoke-virtual {v1, v2}, Landroid/widget/SeekBar;.setMax:(I)V // method@0031 │ │ +004e58: 1401 1000 037f |0052: const v1, #float 1.74129e+38 // #7f030010 │ │ +004e5e: 6e20 2301 1600 |0055: invoke-virtual {v6, v1}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.findViewById:(I)Landroid/view/View; // method@0123 │ │ +004e64: 0c03 |0058: move-result-object v3 │ │ +004e66: 1f03 1b00 |0059: check-cast v3, Landroid/widget/SeekBar; // type@001b │ │ +004e6a: 6e20 3100 2300 |005b: invoke-virtual {v3, v2}, Landroid/widget/SeekBar;.setMax:(I)V // method@0031 │ │ +004e70: 6e20 2401 7600 |005e: invoke-virtual {v6, v7}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.loadSL:(Landroid/os/Bundle;)V // method@0124 │ │ +004e76: 1407 0f00 037f |0061: const v7, #float 1.74129e+38 // #7f03000f │ │ +004e7c: 2202 6c00 |0064: new-instance v2, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1; // type@006c │ │ +004e80: 7020 1d01 6200 |0066: invoke-direct {v2, v6}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity$1;.:(Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;)V // method@011d │ │ +004e86: 1213 |0069: const/4 v3, #int 1 // #1 │ │ +004e88: 7152 f900 0637 |006a: invoke-static {v6, v0, v7, v3, v2}, Lt20kdc/offlinepuzzlesolver/Streamline;.bindSeekWdg:(Landroid/app/Activity;IIILjava/lang/Runnable;)V // method@00f9 │ │ +004e8e: 1407 1100 037f |006d: const v7, #float 1.74129e+38 // #7f030011 │ │ +004e94: 1200 |0070: const/4 v0, #int 0 // #0 │ │ +004e96: 7150 f900 1637 |0071: invoke-static {v6, v1, v7, v3, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.bindSeekWdg:(Landroid/app/Activity;IIILjava/lang/Runnable;)V // method@00f9 │ │ +004e9c: 1a07 1402 |0074: const-string v7, "file:///android_asset/rnc.html" // string@0214 │ │ +004ea0: 6e20 2101 7600 |0076: invoke-virtual {v6, v7}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.bindRulesButton:(Ljava/lang/String;)V // method@0121 │ │ +004ea6: 1c07 6f00 |0079: const-class v7, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver; // type@006f │ │ +004eaa: 6e20 2201 7600 |007b: invoke-virtual {v6, v7}, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.bindSolveButton:(Ljava/lang/Class;)V // method@0122 │ │ +004eb0: 0e00 |007e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=19 │ │ 0x0006 line=20 │ │ 0x000d line=21 │ │ 0x0012 line=23 │ │ 0x0017 line=24 │ │ @@ -6258,62 +6256,62 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/Streamline;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 64 16-bit code units │ │ -004ea8: |[004ea8] t20kdc.offlinepuzzlesolver.game.NCupsActivity.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V │ │ -004eb8: 1220 |0000: const/4 v0, #int 2 // #2 │ │ -004eba: 7110 4700 0000 |0001: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ -004ec0: 0c00 |0004: move-result-object v0 │ │ -004ec2: 1a01 9f02 |0005: const-string v1, "seek_cup_count" // string@029f │ │ -004ec6: 1402 0e00 037f |0007: const v2, #float 1.74129e+38 // #7f03000e │ │ -004ecc: 6e40 fd00 1602 |000a: invoke-virtual {v6, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ -004ed2: 1210 |000d: const/4 v0, #int 1 // #1 │ │ -004ed4: 7110 4700 0000 |000e: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ -004eda: 0c00 |0011: move-result-object v0 │ │ -004edc: 1a01 a102 |0012: const-string v1, "seek_cup_move" // string@02a1 │ │ -004ee0: 1402 1000 037f |0014: const v2, #float 1.74129e+38 // #7f030010 │ │ -004ee6: 6e40 fd00 1602 |0017: invoke-virtual {v6, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ -004eec: 1200 |001a: const/4 v0, #int 0 // #0 │ │ -004eee: 1201 |001b: const/4 v1, #int 0 // #0 │ │ -004ef0: 1302 1400 |001c: const/16 v2, #int 20 // #14 │ │ -004ef4: 3521 2100 |001e: if-ge v1, v2, 003f // +0021 │ │ -004ef8: 2202 3200 |0020: new-instance v2, Ljava/lang/StringBuilder; // type@0032 │ │ -004efc: 7010 5400 0200 |0022: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -004f02: 1a03 f301 |0025: const-string v3, "cup_" // string@01f3 │ │ -004f06: 6e20 5700 3200 |0027: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -004f0c: 6e20 5600 1200 |002a: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -004f12: 6e10 5900 0200 |002d: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -004f18: 0c02 |0030: move-result-object v2 │ │ -004f1a: 5453 9100 |0031: iget-object v3, v5, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ -004f1e: 4603 0301 |0033: aget-object v3, v3, v1 │ │ -004f22: 7110 3d00 0000 |0035: invoke-static {v0}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@003d │ │ -004f28: 0c04 |0038: move-result-object v4 │ │ -004f2a: 6e40 fe00 2643 |0039: invoke-virtual {v6, v2, v3, v4}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;Landroid/view/View;Ljava/lang/Object;)V // method@00fe │ │ -004f30: d801 0101 |003c: add-int/lit8 v1, v1, #int 1 // #01 │ │ -004f34: 28de |003e: goto 001c // -0022 │ │ -004f36: 0e00 |003f: return-void │ │ +004eb4: |[004eb4] t20kdc.offlinepuzzlesolver.game.NCupsActivity.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V │ │ +004ec4: 1220 |0000: const/4 v0, #int 2 // #2 │ │ +004ec6: 7110 4700 0000 |0001: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ +004ecc: 0c00 |0004: move-result-object v0 │ │ +004ece: 1a01 a102 |0005: const-string v1, "seek_cup_count" // string@02a1 │ │ +004ed2: 1402 0e00 037f |0007: const v2, #float 1.74129e+38 // #7f03000e │ │ +004ed8: 6e40 fd00 1602 |000a: invoke-virtual {v6, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ +004ede: 1210 |000d: const/4 v0, #int 1 // #1 │ │ +004ee0: 7110 4700 0000 |000e: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ +004ee6: 0c00 |0011: move-result-object v0 │ │ +004ee8: 1a01 a302 |0012: const-string v1, "seek_cup_move" // string@02a3 │ │ +004eec: 1402 1000 037f |0014: const v2, #float 1.74129e+38 // #7f030010 │ │ +004ef2: 6e40 fd00 1602 |0017: invoke-virtual {v6, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ +004ef8: 1200 |001a: const/4 v0, #int 0 // #0 │ │ +004efa: 1201 |001b: const/4 v1, #int 0 // #0 │ │ +004efc: 1302 1400 |001c: const/16 v2, #int 20 // #14 │ │ +004f00: 3521 2100 |001e: if-ge v1, v2, 003f // +0021 │ │ +004f04: 2202 3200 |0020: new-instance v2, Ljava/lang/StringBuilder; // type@0032 │ │ +004f08: 7010 5400 0200 |0022: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +004f0e: 1a03 f501 |0025: const-string v3, "cup_" // string@01f5 │ │ +004f12: 6e20 5700 3200 |0027: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +004f18: 6e20 5600 1200 |002a: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +004f1e: 6e10 5900 0200 |002d: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +004f24: 0c02 |0030: move-result-object v2 │ │ +004f26: 5453 9100 |0031: iget-object v3, v5, Lt20kdc/offlinepuzzlesolver/game/NCupsActivity;.cups:[Landroid/widget/CheckBox; // field@0091 │ │ +004f2a: 4603 0301 |0033: aget-object v3, v3, v1 │ │ +004f2e: 7110 3d00 0000 |0035: invoke-static {v0}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@003d │ │ +004f34: 0c04 |0038: move-result-object v4 │ │ +004f36: 6e40 fe00 2643 |0039: invoke-virtual {v6, v2, v3, v4}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;Landroid/view/View;Ljava/lang/Object;)V // method@00fe │ │ +004f3c: d801 0101 |003c: add-int/lit8 v1, v1, #int 1 // #01 │ │ +004f40: 28de |003e: goto 001c // -0022 │ │ +004f42: 0e00 |003f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0001 line=47 │ │ 0x000e line=48 │ │ 0x0020 line=50 │ │ locals : │ │ 0x0000 - 0x0040 reg=5 this Lt20kdc/offlinepuzzlesolver/game/NCupsActivity; │ │ 0x0000 - 0x0040 reg=6 (null) Lt20kdc/offlinepuzzlesolver/Streamline; │ │ │ │ - source_file_idx : 305 (NCupsActivity.java) │ │ + source_file_idx : 307 (NCupsActivity.java) │ │ │ │ Class #48 header: │ │ class_idx : 110 │ │ access_flags : 16 (0x0010) │ │ superclass_idx : 45 │ │ -source_file_idx : 307 │ │ +source_file_idx : 309 │ │ static_fields_size : 0 │ │ instance_fields_size: 3 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 4 │ │ │ │ Class #48 annotations: │ │ Annotations on class │ │ @@ -6349,20 +6347,20 @@ │ │ type : '(III)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -005068: |[005068] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.:(III)V │ │ -005078: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -00507e: 5901 9200 |0003: iput v1, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.cups:I // field@0092 │ │ -005082: 5902 9400 |0005: iput v2, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.move:I // field@0094 │ │ -005086: 5903 9300 |0007: iput v3, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ -00508a: 0e00 |0009: return-void │ │ +005074: |[005074] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.:(III)V │ │ +005084: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +00508a: 5901 9200 |0003: iput v1, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.cups:I // field@0092 │ │ +00508e: 5902 9400 |0005: iput v2, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.move:I // field@0094 │ │ +005092: 5903 9300 |0007: iput v3, v0, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ +005096: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=218 │ │ 0x0003 line=219 │ │ 0x0005 line=220 │ │ 0x0007 line=221 │ │ locals : │ │ @@ -6377,66 +6375,66 @@ │ │ type : '(I)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 92 16-bit code units │ │ -004fa0: |[004fa0] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.costTo:(I)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; │ │ -004fb0: 2200 3e00 |0000: new-instance v0, Ljava/util/LinkedList; // type@003e │ │ -004fb4: 7010 7500 0000 |0002: invoke-direct {v0}, Ljava/util/LinkedList;.:()V // method@0075 │ │ -004fba: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -004fbc: 1202 |0006: const/4 v2, #int 0 // #0 │ │ -004fbe: 5283 9200 |0007: iget v3, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.cups:I // field@0092 │ │ -004fc2: 5284 9400 |0009: iget v4, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.move:I // field@0094 │ │ -004fc6: b143 |000b: sub-int/2addr v3, v4 │ │ -004fc8: 3632 2000 |000c: if-gt v2, v3, 002c // +0020 │ │ -004fcc: 5283 9300 |000e: iget v3, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ -004fd0: 9105 0304 |0010: sub-int v5, v3, v4 │ │ -004fd4: 3652 0400 |0012: if-gt v2, v5, 0016 // +0004 │ │ -004fd8: b143 |0014: sub-int/2addr v3, v4 │ │ -004fda: 280d |0015: goto 0022 // +000d │ │ -004fdc: 3432 0400 |0016: if-lt v2, v3, 001a // +0004 │ │ -004fe0: b043 |0018: add-int/2addr v3, v4 │ │ -004fe2: 2809 |0019: goto 0022 // +0009 │ │ -004fe4: 9105 0302 |001a: sub-int v5, v3, v2 │ │ -004fe8: 9105 0305 |001c: sub-int v5, v3, v5 │ │ -004fec: b024 |001e: add-int/2addr v4, v2 │ │ -004fee: b134 |001f: sub-int/2addr v4, v3 │ │ -004ff0: 9003 0504 |0020: add-int v3, v5, v4 │ │ -004ff4: 7110 4700 0300 |0022: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ -004ffa: 0c03 |0025: move-result-object v3 │ │ -004ffc: 6e20 7600 3000 |0026: invoke-virtual {v0, v3}, Ljava/util/LinkedList;.add:(Ljava/lang/Object;)Z // method@0076 │ │ -005002: d802 0201 |0029: add-int/lit8 v2, v2, #int 1 // #01 │ │ -005006: 28dc |002b: goto 0007 // -0024 │ │ -005008: 6e10 7900 0000 |002c: invoke-virtual {v0}, Ljava/util/LinkedList;.size:()I // method@0079 │ │ -00500e: 0a02 |002f: move-result v2 │ │ -005010: 2322 8600 |0030: new-array v2, v2, [Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0086 │ │ -005014: 7110 9800 0200 |0032: invoke-static {v2}, Lt20kdc/libofflinepuzzlesolver/genlog/GA;.of:(Ljava/lang/Object;)[Ljava/lang/Object; // method@0098 │ │ -00501a: 0c02 |0035: move-result-object v2 │ │ -00501c: 1f02 8600 |0036: check-cast v2, [Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0086 │ │ -005020: 2123 |0038: array-length v3, v2 │ │ -005022: 3531 2200 |0039: if-ge v1, v3, 005b // +0022 │ │ -005026: 6e20 7800 1000 |003b: invoke-virtual {v0, v1}, Ljava/util/LinkedList;.get:(I)Ljava/lang/Object; // method@0078 │ │ -00502c: 0c03 |003e: move-result-object v3 │ │ -00502e: 1f03 2b00 |003f: check-cast v3, Ljava/lang/Integer; // type@002b │ │ -005032: 6e10 4400 0300 |0041: invoke-virtual {v3}, Ljava/lang/Integer;.intValue:()I // method@0044 │ │ -005038: 0a03 |0044: move-result v3 │ │ -00503a: 2204 4500 |0045: new-instance v4, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ -00503e: 2205 6e00 |0047: new-instance v5, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ -005042: 5286 9200 |0049: iget v6, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.cups:I // field@0092 │ │ -005046: 5287 9400 |004b: iget v7, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.move:I // field@0094 │ │ -00504a: 7040 2801 6537 |004d: invoke-direct {v5, v6, v7, v3}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.:(III)V // method@0128 │ │ -005050: d803 0901 |0050: add-int/lit8 v3, v9, #int 1 // #01 │ │ -005054: 1206 |0052: const/4 v6, #int 0 // #0 │ │ -005056: 7056 8e00 8435 |0053: invoke-direct {v4, v8, v5, v3, v6}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.:(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V // method@008e │ │ -00505c: 4d04 0201 |0056: aput-object v4, v2, v1 │ │ -005060: d801 0101 |0058: add-int/lit8 v1, v1, #int 1 // #01 │ │ -005064: 28de |005a: goto 0038 // -0022 │ │ -005066: 1102 |005b: return-object v2 │ │ +004fac: |[004fac] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.costTo:(I)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; │ │ +004fbc: 2200 3e00 |0000: new-instance v0, Ljava/util/LinkedList; // type@003e │ │ +004fc0: 7010 7500 0000 |0002: invoke-direct {v0}, Ljava/util/LinkedList;.:()V // method@0075 │ │ +004fc6: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +004fc8: 1202 |0006: const/4 v2, #int 0 // #0 │ │ +004fca: 5283 9200 |0007: iget v3, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.cups:I // field@0092 │ │ +004fce: 5284 9400 |0009: iget v4, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.move:I // field@0094 │ │ +004fd2: b143 |000b: sub-int/2addr v3, v4 │ │ +004fd4: 3632 2000 |000c: if-gt v2, v3, 002c // +0020 │ │ +004fd8: 5283 9300 |000e: iget v3, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ +004fdc: 9105 0304 |0010: sub-int v5, v3, v4 │ │ +004fe0: 3652 0400 |0012: if-gt v2, v5, 0016 // +0004 │ │ +004fe4: b143 |0014: sub-int/2addr v3, v4 │ │ +004fe6: 280d |0015: goto 0022 // +000d │ │ +004fe8: 3432 0400 |0016: if-lt v2, v3, 001a // +0004 │ │ +004fec: b043 |0018: add-int/2addr v3, v4 │ │ +004fee: 2809 |0019: goto 0022 // +0009 │ │ +004ff0: 9105 0302 |001a: sub-int v5, v3, v2 │ │ +004ff4: 9105 0305 |001c: sub-int v5, v3, v5 │ │ +004ff8: b024 |001e: add-int/2addr v4, v2 │ │ +004ffa: b134 |001f: sub-int/2addr v4, v3 │ │ +004ffc: 9003 0504 |0020: add-int v3, v5, v4 │ │ +005000: 7110 4700 0300 |0022: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ +005006: 0c03 |0025: move-result-object v3 │ │ +005008: 6e20 7600 3000 |0026: invoke-virtual {v0, v3}, Ljava/util/LinkedList;.add:(Ljava/lang/Object;)Z // method@0076 │ │ +00500e: d802 0201 |0029: add-int/lit8 v2, v2, #int 1 // #01 │ │ +005012: 28dc |002b: goto 0007 // -0024 │ │ +005014: 6e10 7900 0000 |002c: invoke-virtual {v0}, Ljava/util/LinkedList;.size:()I // method@0079 │ │ +00501a: 0a02 |002f: move-result v2 │ │ +00501c: 2322 8600 |0030: new-array v2, v2, [Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0086 │ │ +005020: 7110 9800 0200 |0032: invoke-static {v2}, Lt20kdc/libofflinepuzzlesolver/genlog/GA;.of:(Ljava/lang/Object;)[Ljava/lang/Object; // method@0098 │ │ +005026: 0c02 |0035: move-result-object v2 │ │ +005028: 1f02 8600 |0036: check-cast v2, [Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0086 │ │ +00502c: 2123 |0038: array-length v3, v2 │ │ +00502e: 3531 2200 |0039: if-ge v1, v3, 005b // +0022 │ │ +005032: 6e20 7800 1000 |003b: invoke-virtual {v0, v1}, Ljava/util/LinkedList;.get:(I)Ljava/lang/Object; // method@0078 │ │ +005038: 0c03 |003e: move-result-object v3 │ │ +00503a: 1f03 2b00 |003f: check-cast v3, Ljava/lang/Integer; // type@002b │ │ +00503e: 6e10 4400 0300 |0041: invoke-virtual {v3}, Ljava/lang/Integer;.intValue:()I // method@0044 │ │ +005044: 0a03 |0044: move-result v3 │ │ +005046: 2204 4500 |0045: new-instance v4, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // type@0045 │ │ +00504a: 2205 6e00 |0047: new-instance v5, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ +00504e: 5286 9200 |0049: iget v6, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.cups:I // field@0092 │ │ +005052: 5287 9400 |004b: iget v7, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.move:I // field@0094 │ │ +005056: 7040 2801 6537 |004d: invoke-direct {v5, v6, v7, v3}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.:(III)V // method@0128 │ │ +00505c: d803 0901 |0050: add-int/lit8 v3, v9, #int 1 // #01 │ │ +005060: 1206 |0052: const/4 v6, #int 0 // #0 │ │ +005062: 7056 8e00 8435 |0053: invoke-direct {v4, v8, v5, v3, v6}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.:(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V // method@008e │ │ +005068: 4d04 0201 |0056: aput-object v4, v2, v1 │ │ +00506c: d801 0101 |0058: add-int/lit8 v1, v1, #int 1 // #01 │ │ +005070: 28de |005a: goto 0038 // -0022 │ │ +005072: 1102 |005b: return-object v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=241 │ │ 0x0007 line=242 │ │ 0x000e line=243 │ │ 0x0022 line=259 │ │ 0x002c line=261 │ │ @@ -6452,25 +6450,25 @@ │ │ type : '(Ljava/lang/Object;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 16 16-bit code units │ │ -004f38: |[004f38] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.equals:(Ljava/lang/Object;)Z │ │ -004f48: 2030 6e00 |0000: instance-of v0, v3, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ -004f4c: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -004f4e: 3900 0300 |0003: if-nez v0, 0006 // +0003 │ │ -004f52: 0f01 |0005: return v1 │ │ -004f54: 5220 9300 |0006: iget v0, v2, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ -004f58: 1f03 6e00 |0008: check-cast v3, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ -004f5c: 5233 9300 |000a: iget v3, v3, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ -004f60: 3330 0300 |000c: if-ne v0, v3, 000f // +0003 │ │ -004f64: 1211 |000e: const/4 v1, #int 1 // #1 │ │ -004f66: 0f01 |000f: return v1 │ │ +004f44: |[004f44] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.equals:(Ljava/lang/Object;)Z │ │ +004f54: 2030 6e00 |0000: instance-of v0, v3, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ +004f58: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +004f5a: 3900 0300 |0003: if-nez v0, 0006 // +0003 │ │ +004f5e: 0f01 |0005: return v1 │ │ +004f60: 5220 9300 |0006: iget v0, v2, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ +004f64: 1f03 6e00 |0008: check-cast v3, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ +004f68: 5233 9300 |000a: iget v3, v3, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ +004f6c: 3330 0300 |000c: if-ne v0, v3, 000f // +0003 │ │ +004f70: 1211 |000e: const/4 v1, #int 1 // #1 │ │ +004f72: 0f01 |000f: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=226 │ │ 0x0006 line=228 │ │ locals : │ │ 0x0000 - 0x0010 reg=2 this Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; │ │ 0x0000 - 0x0010 reg=3 (null) Ljava/lang/Object; │ │ @@ -6480,17 +6478,17 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004f88: |[004f88] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.hashCode:()I │ │ -004f98: 5210 9300 |0000: iget v0, v1, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ -004f9c: 0f00 |0002: return v0 │ │ +004f94: |[004f94] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.hashCode:()I │ │ +004fa4: 5210 9300 |0000: iget v0, v1, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ +004fa8: 0f00 |0002: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=233 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; │ │ │ │ #3 : (in Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;) │ │ @@ -6498,34 +6496,34 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 8 16-bit code units │ │ -004f68: |[004f68] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.isEndpoint:()Z │ │ -004f78: 5210 9300 |0000: iget v0, v1, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ -004f7c: 3900 0400 |0002: if-nez v0, 0006 // +0004 │ │ -004f80: 1210 |0004: const/4 v0, #int 1 // #1 │ │ -004f82: 2802 |0005: goto 0007 // +0002 │ │ -004f84: 1200 |0006: const/4 v0, #int 0 // #0 │ │ -004f86: 0f00 |0007: return v0 │ │ +004f74: |[004f74] t20kdc.offlinepuzzlesolver.game.NCupsSolver$NCupsNode.isEndpoint:()Z │ │ +004f84: 5210 9300 |0000: iget v0, v1, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ +004f88: 3900 0400 |0002: if-nez v0, 0006 // +0004 │ │ +004f8c: 1210 |0004: const/4 v0, #int 1 // #1 │ │ +004f8e: 2802 |0005: goto 0007 // +0002 │ │ +004f90: 1200 |0006: const/4 v0, #int 0 // #0 │ │ +004f92: 0f00 |0007: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=271 │ │ locals : │ │ 0x0000 - 0x0008 reg=1 this Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; │ │ │ │ - source_file_idx : 307 (NCupsSolver.java) │ │ + source_file_idx : 309 (NCupsSolver.java) │ │ │ │ Class #49 header: │ │ class_idx : 111 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 45 │ │ -source_file_idx : 307 │ │ +source_file_idx : 309 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 6 │ │ virtual_methods_size: 1 │ │ │ │ Class #49 annotations: │ │ Annotations on class │ │ @@ -6549,17 +6547,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -0053c8: |[0053c8] t20kdc.offlinepuzzlesolver.game.NCupsSolver.:()V │ │ -0053d8: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -0053de: 0e00 |0003: return-void │ │ +0053d4: |[0053d4] t20kdc.offlinepuzzlesolver.game.NCupsSolver.:()V │ │ +0053e4: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +0053ea: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=11 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NCupsSolver; │ │ │ │ #1 : (in Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;) │ │ @@ -6567,21 +6565,21 @@ │ │ type : '([Z)[Z' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 9 16-bit code units │ │ -00508c: |[00508c] t20kdc.offlinepuzzlesolver.game.NCupsSolver.dupCupStates:([Z)[Z │ │ -00509c: 2140 |0000: array-length v0, v4 │ │ -00509e: 2300 8700 |0001: new-array v0, v0, [Z // type@0087 │ │ -0050a2: 2141 |0003: array-length v1, v4 │ │ -0050a4: 1202 |0004: const/4 v2, #int 0 // #0 │ │ -0050a6: 7151 5a00 2420 |0005: invoke-static {v4, v2, v0, v2, v1}, Ljava/lang/System;.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V // method@005a │ │ -0050ac: 1100 |0008: return-object v0 │ │ +005098: |[005098] t20kdc.offlinepuzzlesolver.game.NCupsSolver.dupCupStates:([Z)[Z │ │ +0050a8: 2140 |0000: array-length v0, v4 │ │ +0050aa: 2300 8700 |0001: new-array v0, v0, [Z // type@0087 │ │ +0050ae: 2141 |0003: array-length v1, v4 │ │ +0050b0: 1202 |0004: const/4 v2, #int 0 // #0 │ │ +0050b2: 7151 5a00 2420 |0005: invoke-static {v4, v2, v0, v2, v1}, Ljava/lang/System;.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V // method@005a │ │ +0050b8: 1100 |0008: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=188 │ │ 0x0003 line=189 │ │ locals : │ │ 0x0000 - 0x0009 reg=3 this Lt20kdc/offlinepuzzlesolver/game/NCupsSolver; │ │ 0x0000 - 0x0009 reg=4 (null) [Z │ │ @@ -6591,39 +6589,39 @@ │ │ type : '([Z)Ljava/lang/String;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 49 16-bit code units │ │ -0050b0: |[0050b0] t20kdc.offlinepuzzlesolver.game.NCupsSolver.formatCups:([Z)Ljava/lang/String; │ │ -0050c0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -0050c2: 1201 |0001: const/4 v1, #int 0 // #0 │ │ -0050c4: 2142 |0002: array-length v2, v4 │ │ -0050c6: 3520 0b00 |0003: if-ge v0, v2, 000e // +000b │ │ -0050ca: 4702 0400 |0005: aget-boolean v2, v4, v0 │ │ -0050ce: 3802 0400 |0007: if-eqz v2, 000b // +0004 │ │ -0050d2: d801 0101 |0009: add-int/lit8 v1, v1, #int 1 // #01 │ │ -0050d6: d800 0001 |000b: add-int/lit8 v0, v0, #int 1 // #01 │ │ -0050da: 28f5 |000d: goto 0002 // -000b │ │ -0050dc: 2200 3200 |000e: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ -0050e0: 7010 5400 0000 |0010: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -0050e6: 1a02 3d00 |0013: const-string v2, "" // string@003d │ │ -0050ea: 6e20 5700 2000 |0015: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0050f0: 7020 3001 4300 |0018: invoke-direct {v3, v4}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCupsI:([Z)Ljava/lang/String; // method@0130 │ │ -0050f6: 0c04 |001b: move-result-object v4 │ │ -0050f8: 6e20 5700 4000 |001c: invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0050fe: 1a04 3000 |001f: const-string v4, " (" // string@0030 │ │ -005102: 6e20 5700 4000 |0021: invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005108: 6e20 5600 1000 |0024: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -00510e: 1a04 0900 |0027: const-string v4, " down)" // string@0009 │ │ -005112: 6e20 5700 4000 |0029: invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005118: 6e10 5900 0000 |002c: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -00511e: 0c04 |002f: move-result-object v4 │ │ -005120: 1104 |0030: return-object v4 │ │ +0050bc: |[0050bc] t20kdc.offlinepuzzlesolver.game.NCupsSolver.formatCups:([Z)Ljava/lang/String; │ │ +0050cc: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +0050ce: 1201 |0001: const/4 v1, #int 0 // #0 │ │ +0050d0: 2142 |0002: array-length v2, v4 │ │ +0050d2: 3520 0b00 |0003: if-ge v0, v2, 000e // +000b │ │ +0050d6: 4702 0400 |0005: aget-boolean v2, v4, v0 │ │ +0050da: 3802 0400 |0007: if-eqz v2, 000b // +0004 │ │ +0050de: d801 0101 |0009: add-int/lit8 v1, v1, #int 1 // #01 │ │ +0050e2: d800 0001 |000b: add-int/lit8 v0, v0, #int 1 // #01 │ │ +0050e6: 28f5 |000d: goto 0002 // -000b │ │ +0050e8: 2200 3200 |000e: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ +0050ec: 7010 5400 0000 |0010: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +0050f2: 1a02 3f00 |0013: const-string v2, "" // string@003f │ │ +0050f6: 6e20 5700 2000 |0015: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0050fc: 7020 3001 4300 |0018: invoke-direct {v3, v4}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCupsI:([Z)Ljava/lang/String; // method@0130 │ │ +005102: 0c04 |001b: move-result-object v4 │ │ +005104: 6e20 5700 4000 |001c: invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00510a: 1a04 3200 |001f: const-string v4, " (" // string@0032 │ │ +00510e: 6e20 5700 4000 |0021: invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005114: 6e20 5600 1000 |0024: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +00511a: 1a04 0900 |0027: const-string v4, " down)" // string@0009 │ │ +00511e: 6e20 5700 4000 |0029: invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005124: 6e10 5900 0000 |002c: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +00512a: 0c04 |002f: move-result-object v4 │ │ +00512c: 1104 |0030: return-object v4 │ │ catches : (none) │ │ positions : │ │ 0x0002 line=202 │ │ 0x0005 line=203 │ │ 0x000e line=205 │ │ locals : │ │ 0x0000 - 0x0031 reg=3 this Lt20kdc/offlinepuzzlesolver/game/NCupsSolver; │ │ @@ -6634,30 +6632,30 @@ │ │ type : '([Z)Ljava/lang/String;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 26 16-bit code units │ │ -005124: |[005124] t20kdc.offlinepuzzlesolver.game.NCupsSolver.formatCupsI:([Z)Ljava/lang/String; │ │ -005134: 2150 |0000: array-length v0, v5 │ │ -005136: 2301 8000 |0001: new-array v1, v0, [C // type@0080 │ │ -00513a: 1202 |0003: const/4 v2, #int 0 // #0 │ │ -00513c: 3502 1000 |0004: if-ge v2, v0, 0014 // +0010 │ │ -005140: 4703 0502 |0006: aget-boolean v3, v5, v2 │ │ -005144: 3803 0500 |0008: if-eqz v3, 000d // +0005 │ │ -005148: 1303 4400 |000a: const/16 v3, #int 68 // #44 │ │ -00514c: 2803 |000c: goto 000f // +0003 │ │ -00514e: 1303 5500 |000d: const/16 v3, #int 85 // #55 │ │ -005152: 5003 0102 |000f: aput-char v3, v1, v2 │ │ -005156: d802 0201 |0011: add-int/lit8 v2, v2, #int 1 // #01 │ │ -00515a: 28f1 |0013: goto 0004 // -000f │ │ -00515c: 2205 3100 |0014: new-instance v5, Ljava/lang/String; // type@0031 │ │ -005160: 7020 4f00 1500 |0016: invoke-direct {v5, v1}, Ljava/lang/String;.:([C)V // method@004f │ │ -005166: 1105 |0019: return-object v5 │ │ +005130: |[005130] t20kdc.offlinepuzzlesolver.game.NCupsSolver.formatCupsI:([Z)Ljava/lang/String; │ │ +005140: 2150 |0000: array-length v0, v5 │ │ +005142: 2301 8000 |0001: new-array v1, v0, [C // type@0080 │ │ +005146: 1202 |0003: const/4 v2, #int 0 // #0 │ │ +005148: 3502 1000 |0004: if-ge v2, v0, 0014 // +0010 │ │ +00514c: 4703 0502 |0006: aget-boolean v3, v5, v2 │ │ +005150: 3803 0500 |0008: if-eqz v3, 000d // +0005 │ │ +005154: 1303 4400 |000a: const/16 v3, #int 68 // #44 │ │ +005158: 2803 |000c: goto 000f // +0003 │ │ +00515a: 1303 5500 |000d: const/16 v3, #int 85 // #55 │ │ +00515e: 5003 0102 |000f: aput-char v3, v1, v2 │ │ +005162: d802 0201 |0011: add-int/lit8 v2, v2, #int 1 // #01 │ │ +005166: 28f1 |0013: goto 0004 // -000f │ │ +005168: 2205 3100 |0014: new-instance v5, Ljava/lang/String; // type@0031 │ │ +00516c: 7020 4f00 1500 |0016: invoke-direct {v5, v1}, Ljava/lang/String;.:([C)V // method@004f │ │ +005172: 1105 |0019: return-object v5 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=194 │ │ 0x0006 line=196 │ │ 0x0014 line=197 │ │ locals : │ │ 0x0000 - 0x001a reg=4 this Lt20kdc/offlinepuzzlesolver/game/NCupsSolver; │ │ @@ -6668,218 +6666,218 @@ │ │ type : '(Ljava/lang/StringBuilder;I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/util/LinkedList;I)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 16 │ │ ins : 7 │ │ outs : 5 │ │ insns size : 425 16-bit code units │ │ -0053e0: |[0053e0] t20kdc.offlinepuzzlesolver.game.NCupsSolver.formatResults:(Ljava/lang/StringBuilder;I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/util/LinkedList;I)V │ │ -0053f0: 1a00 4100 |0000: const-string v0, "

Results

" // string@0041 │ │ -0053f4: 6e20 5700 0a00 |0002: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0053fa: 380f 0800 |0005: if-eqz v15, 000d // +0008 │ │ -0053fe: 1a00 6400 |0007: const-string v0, "

Failed: A solution couldn't be determined that reduced the number of down cups to 0. The closest will be given.

" // string@0064 │ │ -005402: 6e20 5700 0a00 |0009: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005408: 2806 |000c: goto 0012 // +0006 │ │ -00540a: 1a00 6600 |000d: const-string v0, "

Success: A solution was found.

" // string@0066 │ │ -00540e: 6e20 5700 0a00 |000f: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005414: 1a00 4000 |0012: const-string v0, "

Input

" // string@0040 │ │ -005418: 6e20 5700 0a00 |0014: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00541e: 1a00 6d00 |0017: const-string v0, "
    " // string@006d │ │ -005422: 6e20 5700 0a00 |0019: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005428: 2200 3200 |001c: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ -00542c: 7010 5400 0000 |001e: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005432: 1a01 5400 |0021: const-string v1, "
  • Cups: " // string@0054 │ │ -005436: 6e20 5700 1000 |0023: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00543c: 21c1 |0026: array-length v1, v12 │ │ -00543e: 6e20 5600 1000 |0027: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -005444: 1a01 3100 |002a: const-string v1, "
  • " // string@0031 │ │ -005448: 6e20 5700 1000 |002c: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00544e: 6e10 5900 0000 |002f: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005454: 0c00 |0032: move-result-object v0 │ │ -005456: 6e20 5700 0a00 |0033: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00545c: 2200 3200 |0036: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ -005460: 7010 5400 0000 |0038: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005466: 1a02 5200 |003b: const-string v2, "
  • Amount flipped per move: " // string@0052 │ │ -00546a: 6e20 5700 2000 |003d: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005470: 6e20 5600 b000 |0040: invoke-virtual {v0, v11}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -005476: 6e20 5700 1000 |0043: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00547c: 6e10 5900 0000 |0046: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005482: 0c00 |0049: move-result-object v0 │ │ -005484: 6e20 5700 0a00 |004a: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00548a: 2200 3200 |004d: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ -00548e: 7010 5400 0000 |004f: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005494: 1a02 5300 |0052: const-string v2, "
  • Cups down: " // string@0053 │ │ -005498: 6e20 5700 2000 |0054: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00549e: 7020 2f01 c900 |0057: invoke-direct {v9, v12}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCups:([Z)Ljava/lang/String; // method@012f │ │ -0054a4: 0c02 |005a: move-result-object v2 │ │ -0054a6: 6e20 5700 2000 |005b: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0054ac: 6e20 5700 1000 |005e: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0054b2: 6e10 5900 0000 |0061: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -0054b8: 0c00 |0064: move-result-object v0 │ │ -0054ba: 6e20 5700 0a00 |0065: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0054c0: 1a00 3700 |0068: const-string v0, "
" // string@0037 │ │ -0054c4: 6e20 5700 0a00 |006a: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0054ca: 7020 2e01 c900 |006d: invoke-direct {v9, v12}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.dupCupStates:([Z)[Z // method@012e │ │ -0054d0: 0c00 |0070: move-result-object v0 │ │ -0054d2: 1212 |0071: const/4 v2, #int 1 // #1 │ │ -0054d4: 1203 |0072: const/4 v3, #int 0 // #0 │ │ -0054d6: 380e 9200 |0073: if-eqz v14, 0105 // +0092 │ │ -0054da: 1a04 4400 |0075: const-string v4, "

Solution

" // string@0044 │ │ -0054de: 6e20 5700 4a00 |0077: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0054e4: 1a04 5900 |007a: const-string v4, "
    " // string@0059 │ │ -0054e8: 6e20 5700 4a00 |007c: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0054ee: 1204 |007f: const/4 v4, #int 0 // #0 │ │ -0054f0: 6e10 7900 0e00 |0080: invoke-virtual {v14}, Ljava/util/LinkedList;.size:()I // method@0079 │ │ -0054f6: 0a05 |0083: move-result v5 │ │ -0054f8: 3554 5b00 |0084: if-ge v4, v5, 00df // +005b │ │ -0054fc: 1a05 5100 |0086: const-string v5, "
    • " // string@0051 │ │ -005500: 6e20 5700 5a00 |0088: invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005506: 1205 |008b: const/4 v5, #int 0 // #0 │ │ -005508: 35b5 3100 |008c: if-ge v5, v11, 00bd // +0031 │ │ -00550c: 9006 0405 |008e: add-int v6, v4, v5 │ │ -005510: 6e20 7800 6e00 |0090: invoke-virtual {v14, v6}, Ljava/util/LinkedList;.get:(I)Ljava/lang/Object; // method@0078 │ │ -005516: 0c06 |0093: move-result-object v6 │ │ -005518: 1f06 2b00 |0094: check-cast v6, Ljava/lang/Integer; // type@002b │ │ -00551c: 6e10 4400 0600 |0096: invoke-virtual {v6}, Ljava/lang/Integer;.intValue:()I // method@0044 │ │ -005522: 0a06 |0099: move-result v6 │ │ -005524: 2207 3200 |009a: new-instance v7, Ljava/lang/StringBuilder; // type@0032 │ │ -005528: 7010 5400 0700 |009c: invoke-direct {v7}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -00552e: 1a08 5600 |009f: const-string v8, "
    • Flip cup " // string@0056 │ │ -005532: 6e20 5700 8700 |00a1: invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005538: d808 0601 |00a4: add-int/lit8 v8, v6, #int 1 // #01 │ │ -00553c: 6e20 5600 8700 |00a6: invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -005542: 1a08 2b00 |00a9: const-string v8, ".
    • " // string@002b │ │ -005546: 6e20 5700 8700 |00ab: invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00554c: 6e10 5900 0700 |00ae: invoke-virtual {v7}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005552: 0c07 |00b1: move-result-object v7 │ │ -005554: 6e20 5700 7a00 |00b2: invoke-virtual {v10, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00555a: 4707 0006 |00b5: aget-boolean v7, v0, v6 │ │ -00555e: b727 |00b7: xor-int/2addr v7, v2 │ │ -005560: 4e07 0006 |00b8: aput-boolean v7, v0, v6 │ │ -005564: d805 0501 |00ba: add-int/lit8 v5, v5, #int 1 // #01 │ │ -005568: 28d0 |00bc: goto 008c // -0030 │ │ -00556a: 2205 3200 |00bd: new-instance v5, Ljava/lang/StringBuilder; // type@0032 │ │ -00556e: 7010 5400 0500 |00bf: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005574: 1a06 5700 |00c2: const-string v6, "
    • Result: " // string@0057 │ │ -005578: 6e20 5700 6500 |00c4: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00557e: 7020 2f01 0900 |00c7: invoke-direct {v9, v0}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCups:([Z)Ljava/lang/String; // method@012f │ │ -005584: 0c06 |00ca: move-result-object v6 │ │ -005586: 6e20 5700 6500 |00cb: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00558c: 6e20 5700 1500 |00ce: invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005592: 6e10 5900 0500 |00d1: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005598: 0c05 |00d4: move-result-object v5 │ │ -00559a: 6e20 5700 5a00 |00d5: invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0055a0: 1a05 3800 |00d8: const-string v5, "
  1. " // string@0038 │ │ -0055a4: 6e20 5700 5a00 |00da: invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0055aa: b0b4 |00dd: add-int/2addr v4, v11 │ │ -0055ac: 28a2 |00de: goto 0080 // -005e │ │ -0055ae: 390f 0800 |00df: if-nez v15, 00e7 // +0008 │ │ -0055b2: 1a0f 5800 |00e1: const-string v15, "
  2. Success (all cups will be upright)
  3. " // string@0058 │ │ -0055b6: 6e20 5700 fa00 |00e3: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0055bc: 281a |00e6: goto 0100 // +001a │ │ -0055be: 2201 3200 |00e7: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -0055c2: 7010 5400 0100 |00e9: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -0055c8: 1a04 5500 |00ec: const-string v4, "
  4. Fail (" // string@0055 │ │ -0055cc: 6e20 5700 4100 |00ee: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0055d2: 6e20 5600 f100 |00f1: invoke-virtual {v1, v15}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -0055d8: 1a0f 0a00 |00f4: const-string v15, " down)
  5. " // string@000a │ │ -0055dc: 6e20 5700 f100 |00f6: invoke-virtual {v1, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0055e2: 6e10 5900 0100 |00f9: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -0055e8: 0c0f |00fc: move-result-object v15 │ │ -0055ea: 6e20 5700 fa00 |00fd: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0055f0: 1a0f 3200 |0100: const-string v15, "
" // string@0032 │ │ -0055f4: 6e20 5700 fa00 |0102: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0055fa: 1a0f 4300 |0105: const-string v15, "

Solution Summary

" // string@0043 │ │ -0055fe: 6e20 5700 fa00 |0107: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005604: 380d 9900 |010a: if-eqz v13, 01a3 // +0099 │ │ -005608: 1a0f 6700 |010c: const-string v15, "
│ │ -" // string@0067
│ │ -00560c: 6e20 5700 fa00                         |010e: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -005612: 390e 0c00                              |0111: if-nez v14, 011d // +000c
│ │ -005616: 1a0f 8500                              |0113: const-string v15, "Due to some sort of error, the per-cup moves and the changes caused by them are not available.
│ │ -" // string@0085
│ │ -00561a: 6e20 5700 fa00                         |0115: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -005620: 1a0f 8a00                              |0118: const-string v15, "However, the amount of cups flipped is still available.
│ │ -" // string@008a
│ │ -005624: 6e20 5700 fa00                         |011a: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -00562a: 210f                                   |011d: array-length v15, v0
│ │ -00562c: 715f 5a00 3c30                         |011e: invoke-static {v12, v3, v0, v3, v15}, Ljava/lang/System;.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V // method@005a
│ │ -005632: 21cc                                   |0121: array-length v12, v12
│ │ -005634: 23cc 8700                              |0122: new-array v12, v12, [Z // type@0087
│ │ -005638: 120f                                   |0124: const/4 v15, #int 0 // #0
│ │ -00563a: 1201                                   |0125: const/4 v1, #int 0 // #0
│ │ -00563c: 21d4                                   |0126: array-length v4, v13
│ │ -00563e: 354f 7600                              |0127: if-ge v15, v4, 019d // +0076
│ │ -005642: 1a04 2700                              |0129: const-string v4, "+ " // string@0027
│ │ -005646: 380e 5000                              |012b: if-eqz v14, 017b // +0050
│ │ -00564a: 1a05 0200                              |012d: const-string v5, " " // string@0002
│ │ -00564e: 380f 3e00                              |012f: if-eqz v15, 016d // +003e
│ │ -005652: 1a06 0300                              |0131: const-string v6, "  " // string@0003
│ │ -005656: 6e20 5700 6a00                         |0133: invoke-virtual {v10, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -00565c: 1206                                   |0136: const/4 v6, #int 0 // #0
│ │ -00565e: 35b6 1400                              |0137: if-ge v6, v11, 014b // +0014
│ │ -005662: d807 0101                              |0139: add-int/lit8 v7, v1, #int 1 // #01
│ │ -005666: 6e20 7800 1e00                         |013b: invoke-virtual {v14, v1}, Ljava/util/LinkedList;.get:(I)Ljava/lang/Object; // method@0078
│ │ -00566c: 0c01                                   |013e: move-result-object v1
│ │ -00566e: 1f01 2b00                              |013f: check-cast v1, Ljava/lang/Integer; // type@002b
│ │ -005672: 6e10 4400 0100                         |0141: invoke-virtual {v1}, Ljava/lang/Integer;.intValue:()I // method@0044
│ │ -005678: 0a01                                   |0144: move-result v1
│ │ -00567a: 4e02 0c01                              |0145: aput-boolean v2, v12, v1
│ │ -00567e: d806 0601                              |0147: add-int/lit8 v6, v6, #int 1 // #01
│ │ -005682: 0171                                   |0149: move v1, v7
│ │ -005684: 28ed                                   |014a: goto 0137 // -0013
│ │ -005686: 1206                                   |014b: const/4 v6, #int 0 // #0
│ │ -005688: 2107                                   |014c: array-length v7, v0
│ │ -00568a: 3576 1b00                              |014d: if-ge v6, v7, 0168 // +001b
│ │ -00568e: 4707 0c06                              |014f: aget-boolean v7, v12, v6
│ │ -005692: 3807 0500                              |0151: if-eqz v7, 0156 // +0005
│ │ -005696: 1a07 8601                              |0153: const-string v7, "X" // string@0186
│ │ -00569a: 2802                                   |0155: goto 0157 // +0002
│ │ -00569c: 0757                                   |0156: move-object v7, v5
│ │ -00569e: 6e20 5700 7a00                         |0157: invoke-virtual {v10, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -0056a4: 4707 0c06                              |015a: aget-boolean v7, v12, v6
│ │ -0056a8: 3807 0900                              |015c: if-eqz v7, 0165 // +0009
│ │ -0056ac: 4e03 0c06                              |015e: aput-boolean v3, v12, v6
│ │ -0056b0: 4707 0006                              |0160: aget-boolean v7, v0, v6
│ │ -0056b4: b727                                   |0162: xor-int/2addr v7, v2
│ │ -0056b6: 4e07 0006                              |0163: aput-boolean v7, v0, v6
│ │ -0056ba: d806 0601                              |0165: add-int/lit8 v6, v6, #int 1 // #01
│ │ -0056be: 28e5                                   |0167: goto 014c // -001b
│ │ -0056c0: 1a06 0100                              |0168: const-string v6, "
│ │ +0053ec:                                        |[0053ec] t20kdc.offlinepuzzlesolver.game.NCupsSolver.formatResults:(Ljava/lang/StringBuilder;I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/util/LinkedList;I)V
│ │ +0053fc: 1a00 4300                              |0000: const-string v0, "

Results

" // string@0043 │ │ +005400: 6e20 5700 0a00 |0002: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005406: 380f 0800 |0005: if-eqz v15, 000d // +0008 │ │ +00540a: 1a00 6600 |0007: const-string v0, "

Failed: A solution couldn't be determined that reduced the number of down cups to 0. The closest will be given.

" // string@0066 │ │ +00540e: 6e20 5700 0a00 |0009: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005414: 2806 |000c: goto 0012 // +0006 │ │ +005416: 1a00 6800 |000d: const-string v0, "

Success: A solution was found.

" // string@0068 │ │ +00541a: 6e20 5700 0a00 |000f: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005420: 1a00 4200 |0012: const-string v0, "

Input

" // string@0042 │ │ +005424: 6e20 5700 0a00 |0014: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00542a: 1a00 6f00 |0017: const-string v0, "
    " // string@006f │ │ +00542e: 6e20 5700 0a00 |0019: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005434: 2200 3200 |001c: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ +005438: 7010 5400 0000 |001e: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +00543e: 1a01 5600 |0021: const-string v1, "
  • Cups: " // string@0056 │ │ +005442: 6e20 5700 1000 |0023: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005448: 21c1 |0026: array-length v1, v12 │ │ +00544a: 6e20 5600 1000 |0027: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005450: 1a01 3300 |002a: const-string v1, "
  • " // string@0033 │ │ +005454: 6e20 5700 1000 |002c: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00545a: 6e10 5900 0000 |002f: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005460: 0c00 |0032: move-result-object v0 │ │ +005462: 6e20 5700 0a00 |0033: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005468: 2200 3200 |0036: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ +00546c: 7010 5400 0000 |0038: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005472: 1a02 5400 |003b: const-string v2, "
  • Amount flipped per move: " // string@0054 │ │ +005476: 6e20 5700 2000 |003d: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00547c: 6e20 5600 b000 |0040: invoke-virtual {v0, v11}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005482: 6e20 5700 1000 |0043: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005488: 6e10 5900 0000 |0046: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +00548e: 0c00 |0049: move-result-object v0 │ │ +005490: 6e20 5700 0a00 |004a: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005496: 2200 3200 |004d: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ +00549a: 7010 5400 0000 |004f: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +0054a0: 1a02 5500 |0052: const-string v2, "
  • Cups down: " // string@0055 │ │ +0054a4: 6e20 5700 2000 |0054: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0054aa: 7020 2f01 c900 |0057: invoke-direct {v9, v12}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCups:([Z)Ljava/lang/String; // method@012f │ │ +0054b0: 0c02 |005a: move-result-object v2 │ │ +0054b2: 6e20 5700 2000 |005b: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0054b8: 6e20 5700 1000 |005e: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0054be: 6e10 5900 0000 |0061: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0054c4: 0c00 |0064: move-result-object v0 │ │ +0054c6: 6e20 5700 0a00 |0065: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0054cc: 1a00 3900 |0068: const-string v0, "
" // string@0039 │ │ +0054d0: 6e20 5700 0a00 |006a: invoke-virtual {v10, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0054d6: 7020 2e01 c900 |006d: invoke-direct {v9, v12}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.dupCupStates:([Z)[Z // method@012e │ │ +0054dc: 0c00 |0070: move-result-object v0 │ │ +0054de: 1212 |0071: const/4 v2, #int 1 // #1 │ │ +0054e0: 1203 |0072: const/4 v3, #int 0 // #0 │ │ +0054e2: 380e 9200 |0073: if-eqz v14, 0105 // +0092 │ │ +0054e6: 1a04 4600 |0075: const-string v4, "

Solution

" // string@0046 │ │ +0054ea: 6e20 5700 4a00 |0077: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0054f0: 1a04 5b00 |007a: const-string v4, "
    " // string@005b │ │ +0054f4: 6e20 5700 4a00 |007c: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0054fa: 1204 |007f: const/4 v4, #int 0 // #0 │ │ +0054fc: 6e10 7900 0e00 |0080: invoke-virtual {v14}, Ljava/util/LinkedList;.size:()I // method@0079 │ │ +005502: 0a05 |0083: move-result v5 │ │ +005504: 3554 5b00 |0084: if-ge v4, v5, 00df // +005b │ │ +005508: 1a05 5300 |0086: const-string v5, "
    • " // string@0053 │ │ +00550c: 6e20 5700 5a00 |0088: invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005512: 1205 |008b: const/4 v5, #int 0 // #0 │ │ +005514: 35b5 3100 |008c: if-ge v5, v11, 00bd // +0031 │ │ +005518: 9006 0405 |008e: add-int v6, v4, v5 │ │ +00551c: 6e20 7800 6e00 |0090: invoke-virtual {v14, v6}, Ljava/util/LinkedList;.get:(I)Ljava/lang/Object; // method@0078 │ │ +005522: 0c06 |0093: move-result-object v6 │ │ +005524: 1f06 2b00 |0094: check-cast v6, Ljava/lang/Integer; // type@002b │ │ +005528: 6e10 4400 0600 |0096: invoke-virtual {v6}, Ljava/lang/Integer;.intValue:()I // method@0044 │ │ +00552e: 0a06 |0099: move-result v6 │ │ +005530: 2207 3200 |009a: new-instance v7, Ljava/lang/StringBuilder; // type@0032 │ │ +005534: 7010 5400 0700 |009c: invoke-direct {v7}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +00553a: 1a08 5800 |009f: const-string v8, "
    • Flip cup " // string@0058 │ │ +00553e: 6e20 5700 8700 |00a1: invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005544: d808 0601 |00a4: add-int/lit8 v8, v6, #int 1 // #01 │ │ +005548: 6e20 5600 8700 |00a6: invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +00554e: 1a08 2d00 |00a9: const-string v8, ".
    • " // string@002d │ │ +005552: 6e20 5700 8700 |00ab: invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005558: 6e10 5900 0700 |00ae: invoke-virtual {v7}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +00555e: 0c07 |00b1: move-result-object v7 │ │ +005560: 6e20 5700 7a00 |00b2: invoke-virtual {v10, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005566: 4707 0006 |00b5: aget-boolean v7, v0, v6 │ │ +00556a: b727 |00b7: xor-int/2addr v7, v2 │ │ +00556c: 4e07 0006 |00b8: aput-boolean v7, v0, v6 │ │ +005570: d805 0501 |00ba: add-int/lit8 v5, v5, #int 1 // #01 │ │ +005574: 28d0 |00bc: goto 008c // -0030 │ │ +005576: 2205 3200 |00bd: new-instance v5, Ljava/lang/StringBuilder; // type@0032 │ │ +00557a: 7010 5400 0500 |00bf: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005580: 1a06 5900 |00c2: const-string v6, "
    • Result: " // string@0059 │ │ +005584: 6e20 5700 6500 |00c4: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00558a: 7020 2f01 0900 |00c7: invoke-direct {v9, v0}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCups:([Z)Ljava/lang/String; // method@012f │ │ +005590: 0c06 |00ca: move-result-object v6 │ │ +005592: 6e20 5700 6500 |00cb: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005598: 6e20 5700 1500 |00ce: invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00559e: 6e10 5900 0500 |00d1: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0055a4: 0c05 |00d4: move-result-object v5 │ │ +0055a6: 6e20 5700 5a00 |00d5: invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0055ac: 1a05 3a00 |00d8: const-string v5, "
  1. " // string@003a │ │ +0055b0: 6e20 5700 5a00 |00da: invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0055b6: b0b4 |00dd: add-int/2addr v4, v11 │ │ +0055b8: 28a2 |00de: goto 0080 // -005e │ │ +0055ba: 390f 0800 |00df: if-nez v15, 00e7 // +0008 │ │ +0055be: 1a0f 5a00 |00e1: const-string v15, "
  2. Success (all cups will be upright)
  3. " // string@005a │ │ +0055c2: 6e20 5700 fa00 |00e3: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0055c8: 281a |00e6: goto 0100 // +001a │ │ +0055ca: 2201 3200 |00e7: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +0055ce: 7010 5400 0100 |00e9: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +0055d4: 1a04 5700 |00ec: const-string v4, "
  4. Fail (" // string@0057 │ │ +0055d8: 6e20 5700 4100 |00ee: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0055de: 6e20 5600 f100 |00f1: invoke-virtual {v1, v15}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +0055e4: 1a0f 0a00 |00f4: const-string v15, " down)
  5. " // string@000a │ │ +0055e8: 6e20 5700 f100 |00f6: invoke-virtual {v1, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0055ee: 6e10 5900 0100 |00f9: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0055f4: 0c0f |00fc: move-result-object v15 │ │ +0055f6: 6e20 5700 fa00 |00fd: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0055fc: 1a0f 3400 |0100: const-string v15, "
" // string@0034 │ │ +005600: 6e20 5700 fa00 |0102: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005606: 1a0f 4500 |0105: const-string v15, "

Solution Summary

" // string@0045 │ │ +00560a: 6e20 5700 fa00 |0107: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005610: 380d 9900 |010a: if-eqz v13, 01a3 // +0099 │ │ +005614: 1a0f 6900 |010c: const-string v15, "
│ │ +" // string@0069
│ │ +005618: 6e20 5700 fa00                         |010e: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +00561e: 390e 0c00                              |0111: if-nez v14, 011d // +000c
│ │ +005622: 1a0f 8700                              |0113: const-string v15, "Due to some sort of error, the per-cup moves and the changes caused by them are not available.
│ │ +" // string@0087
│ │ +005626: 6e20 5700 fa00                         |0115: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +00562c: 1a0f 8c00                              |0118: const-string v15, "However, the amount of cups flipped is still available.
│ │ +" // string@008c
│ │ +005630: 6e20 5700 fa00                         |011a: invoke-virtual {v10, v15}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +005636: 210f                                   |011d: array-length v15, v0
│ │ +005638: 715f 5a00 3c30                         |011e: invoke-static {v12, v3, v0, v3, v15}, Ljava/lang/System;.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V // method@005a
│ │ +00563e: 21cc                                   |0121: array-length v12, v12
│ │ +005640: 23cc 8700                              |0122: new-array v12, v12, [Z // type@0087
│ │ +005644: 120f                                   |0124: const/4 v15, #int 0 // #0
│ │ +005646: 1201                                   |0125: const/4 v1, #int 0 // #0
│ │ +005648: 21d4                                   |0126: array-length v4, v13
│ │ +00564a: 354f 7600                              |0127: if-ge v15, v4, 019d // +0076
│ │ +00564e: 1a04 2700                              |0129: const-string v4, "+ " // string@0027
│ │ +005652: 380e 5000                              |012b: if-eqz v14, 017b // +0050
│ │ +005656: 1a05 0200                              |012d: const-string v5, " " // string@0002
│ │ +00565a: 380f 3e00                              |012f: if-eqz v15, 016d // +003e
│ │ +00565e: 1a06 0300                              |0131: const-string v6, "  " // string@0003
│ │ +005662: 6e20 5700 6a00                         |0133: invoke-virtual {v10, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +005668: 1206                                   |0136: const/4 v6, #int 0 // #0
│ │ +00566a: 35b6 1400                              |0137: if-ge v6, v11, 014b // +0014
│ │ +00566e: d807 0101                              |0139: add-int/lit8 v7, v1, #int 1 // #01
│ │ +005672: 6e20 7800 1e00                         |013b: invoke-virtual {v14, v1}, Ljava/util/LinkedList;.get:(I)Ljava/lang/Object; // method@0078
│ │ +005678: 0c01                                   |013e: move-result-object v1
│ │ +00567a: 1f01 2b00                              |013f: check-cast v1, Ljava/lang/Integer; // type@002b
│ │ +00567e: 6e10 4400 0100                         |0141: invoke-virtual {v1}, Ljava/lang/Integer;.intValue:()I // method@0044
│ │ +005684: 0a01                                   |0144: move-result v1
│ │ +005686: 4e02 0c01                              |0145: aput-boolean v2, v12, v1
│ │ +00568a: d806 0601                              |0147: add-int/lit8 v6, v6, #int 1 // #01
│ │ +00568e: 0171                                   |0149: move v1, v7
│ │ +005690: 28ed                                   |014a: goto 0137 // -0013
│ │ +005692: 1206                                   |014b: const/4 v6, #int 0 // #0
│ │ +005694: 2107                                   |014c: array-length v7, v0
│ │ +005696: 3576 1b00                              |014d: if-ge v6, v7, 0168 // +001b
│ │ +00569a: 4707 0c06                              |014f: aget-boolean v7, v12, v6
│ │ +00569e: 3807 0500                              |0151: if-eqz v7, 0156 // +0005
│ │ +0056a2: 1a07 8801                              |0153: const-string v7, "X" // string@0188
│ │ +0056a6: 2802                                   |0155: goto 0157 // +0002
│ │ +0056a8: 0757                                   |0156: move-object v7, v5
│ │ +0056aa: 6e20 5700 7a00                         |0157: invoke-virtual {v10, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +0056b0: 4707 0c06                              |015a: aget-boolean v7, v12, v6
│ │ +0056b4: 3807 0900                              |015c: if-eqz v7, 0165 // +0009
│ │ +0056b8: 4e03 0c06                              |015e: aput-boolean v3, v12, v6
│ │ +0056bc: 4707 0006                              |0160: aget-boolean v7, v0, v6
│ │ +0056c0: b727                                   |0162: xor-int/2addr v7, v2
│ │ +0056c2: 4e07 0006                              |0163: aput-boolean v7, v0, v6
│ │ +0056c6: d806 0601                              |0165: add-int/lit8 v6, v6, #int 1 // #01
│ │ +0056ca: 28e5                                   |0167: goto 014c // -001b
│ │ +0056cc: 1a06 0100                              |0168: const-string v6, "
│ │  " // string@0001
│ │ -0056c4: 6e20 5700 6a00                         |016a: invoke-virtual {v10, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -0056ca: 6e20 5700 4a00                         |016d: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -0056d0: 7020 3001 0900                         |0170: invoke-direct {v9, v0}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCupsI:([Z)Ljava/lang/String; // method@0130
│ │ -0056d6: 0c04                                   |0173: move-result-object v4
│ │ -0056d8: 6e20 5700 4a00                         |0174: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -0056de: 6e20 5700 5a00                         |0177: invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -0056e4: 2804                                   |017a: goto 017e // +0004
│ │ -0056e6: 6e20 5700 4a00                         |017b: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -0056ec: 2204 3200                              |017e: new-instance v4, Ljava/lang/StringBuilder; // type@0032
│ │ -0056f0: 7010 5400 0400                         |0180: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054
│ │ -0056f6: 4605 0d0f                              |0183: aget-object v5, v13, v15
│ │ -0056fa: 5455 0600                              |0185: iget-object v5, v5, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006
│ │ -0056fe: 1f05 6e00                              |0187: check-cast v5, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e
│ │ -005702: 5255 9300                              |0189: iget v5, v5, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093
│ │ -005706: 6e20 5600 5400                         |018b: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056
│ │ -00570c: 1a05 0b00                              |018e: const-string v5, " down.
│ │ +0056d0: 6e20 5700 6a00                         |016a: invoke-virtual {v10, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +0056d6: 6e20 5700 4a00                         |016d: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +0056dc: 7020 3001 0900                         |0170: invoke-direct {v9, v0}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCupsI:([Z)Ljava/lang/String; // method@0130
│ │ +0056e2: 0c04                                   |0173: move-result-object v4
│ │ +0056e4: 6e20 5700 4a00                         |0174: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +0056ea: 6e20 5700 5a00                         |0177: invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +0056f0: 2804                                   |017a: goto 017e // +0004
│ │ +0056f2: 6e20 5700 4a00                         |017b: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +0056f8: 2204 3200                              |017e: new-instance v4, Ljava/lang/StringBuilder; // type@0032
│ │ +0056fc: 7010 5400 0400                         |0180: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054
│ │ +005702: 4605 0d0f                              |0183: aget-object v5, v13, v15
│ │ +005706: 5455 0600                              |0185: iget-object v5, v5, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006
│ │ +00570a: 1f05 6e00                              |0187: check-cast v5, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e
│ │ +00570e: 5255 9300                              |0189: iget v5, v5, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093
│ │ +005712: 6e20 5600 5400                         |018b: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056
│ │ +005718: 1a05 0b00                              |018e: const-string v5, " down.
│ │  " // string@000b
│ │ -005710: 6e20 5700 5400                         |0190: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -005716: 6e10 5900 0400                         |0193: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059
│ │ -00571c: 0c04                                   |0196: move-result-object v4
│ │ -00571e: 6e20 5700 4a00                         |0197: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -005724: d80f 0f01                              |019a: add-int/lit8 v15, v15, #int 1 // #01
│ │ -005728: 288a                                   |019c: goto 0126 // -0076
│ │ -00572a: 1a0b 3300                              |019d: const-string v11, "
│ │ -" // string@0033 │ │ -00572e: 6e20 5700 ba00 |019f: invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005734: 2806 |01a2: goto 01a8 // +0006 │ │ -005736: 1a0b 6500 |01a3: const-string v11, "

Not available (error).

" // string@0065 │ │ -00573a: 6e20 5700 ba00 |01a5: invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005740: 0e00 |01a8: return-void │ │ +00571c: 6e20 5700 5400 |0190: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005722: 6e10 5900 0400 |0193: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005728: 0c04 |0196: move-result-object v4 │ │ +00572a: 6e20 5700 4a00 |0197: invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005730: d80f 0f01 |019a: add-int/lit8 v15, v15, #int 1 // #01 │ │ +005734: 288a |019c: goto 0126 // -0076 │ │ +005736: 1a0b 3500 |019d: const-string v11, "
│ │ +" // string@0035 │ │ +00573a: 6e20 5700 ba00 |019f: invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005740: 2806 |01a2: goto 01a8 // +0006 │ │ +005742: 1a0b 6700 |01a3: const-string v11, "

Not available (error).

" // string@0067 │ │ +005746: 6e20 5700 ba00 |01a5: invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00574c: 0e00 |01a8: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=114 │ │ 0x0009 line=116 │ │ 0x000f line=118 │ │ 0x0014 line=120 │ │ 0x0019 line=121 │ │ @@ -6936,157 +6934,157 @@ │ │ type : '(I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/lang/StringBuilder;)Ljava/util/LinkedList;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 23 │ │ ins : 5 │ │ outs : 2 │ │ insns size : 296 16-bit code units │ │ -005168: |[005168] t20kdc.offlinepuzzlesolver.game.NCupsSolver.pathIntoFlips:(I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/lang/StringBuilder;)Ljava/util/LinkedList; │ │ -005178: 0800 1200 |0000: move-object/from16 v0, v18 │ │ -00517c: 0201 1300 |0002: move/from16 v1, v19 │ │ -005180: 0802 1500 |0004: move-object/from16 v2, v21 │ │ -005184: 0803 1600 |0006: move-object/from16 v3, v22 │ │ -005188: 2204 3e00 |0008: new-instance v4, Ljava/util/LinkedList; // type@003e │ │ -00518c: 7010 7500 0400 |000a: invoke-direct {v4}, Ljava/util/LinkedList;.:()V // method@0075 │ │ -005192: 0806 1400 |000d: move-object/from16 v6, v20 │ │ -005196: 1217 |000f: const/4 v7, #int 1 // #1 │ │ -005198: 2128 |0010: array-length v8, v2 │ │ -00519a: 3587 1601 |0011: if-ge v7, v8, 0127 // +0116 │ │ -00519e: 4608 0207 |0013: aget-object v8, v2, v7 │ │ -0051a2: 5488 0400 |0015: iget-object v8, v8, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.from:Ljava/lang/Object; // field@0004 │ │ -0051a6: 1f08 6e00 |0017: check-cast v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ -0051aa: 5288 9300 |0019: iget v8, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ -0051ae: 4609 0207 |001b: aget-object v9, v2, v7 │ │ -0051b2: 5499 0600 |001d: iget-object v9, v9, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ -0051b6: 1f09 6e00 |001f: check-cast v9, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ -0051ba: 5299 9300 |0021: iget v9, v9, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ -0051be: 120a |0023: const/4 v10, #int 0 // #0 │ │ -0051c0: 3798 0700 |0024: if-le v8, v9, 002b // +0007 │ │ -0051c4: 910b 0809 |0026: sub-int v11, v8, v9 │ │ -0051c8: 01bc |0028: move v12, v11 │ │ -0051ca: 120b |0029: const/4 v11, #int 0 // #0 │ │ -0051cc: 2804 |002a: goto 002e // +0004 │ │ -0051ce: 910b 0908 |002b: sub-int v11, v9, v8 │ │ -0051d2: 120c |002d: const/4 v12, #int 0 // #0 │ │ -0051d4: 900d 0b0c |002e: add-int v13, v11, v12 │ │ -0051d8: 351d 0700 |0030: if-ge v13, v1, 0037 // +0007 │ │ -0051dc: d80c 0c01 |0032: add-int/lit8 v12, v12, #int 1 // #01 │ │ -0051e0: d80b 0b01 |0034: add-int/lit8 v11, v11, #int 1 // #01 │ │ -0051e4: 28f8 |0036: goto 002e // -0008 │ │ -0051e6: 7020 2e01 6000 |0037: invoke-direct {v0, v6}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.dupCupStates:([Z)[Z // method@012e │ │ -0051ec: 0c0d |003a: move-result-object v13 │ │ -0051ee: 120e |003b: const/4 v14, #int 0 // #0 │ │ -0051f0: 120f |003c: const/4 v15, #int 0 // #0 │ │ -0051f2: 1310 0000 |003d: const/16 v16, #int 0 // #0 │ │ -0051f6: 21d5 |003f: array-length v5, v13 │ │ -0051f8: 355e 3900 |0040: if-ge v14, v5, 0079 // +0039 │ │ -0051fc: 3d0c 1500 |0042: if-lez v12, 0057 // +0015 │ │ -005200: 4705 0d0e |0044: aget-boolean v5, v13, v14 │ │ -005204: 3805 1100 |0046: if-eqz v5, 0057 // +0011 │ │ -005208: 7110 4700 0e00 |0048: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ -00520e: 0c05 |004b: move-result-object v5 │ │ -005210: 6e20 7600 5400 |004c: invoke-virtual {v4, v5}, Ljava/util/LinkedList;.add:(Ljava/lang/Object;)Z // method@0076 │ │ -005216: d80c 0cff |004f: add-int/lit8 v12, v12, #int -1 // #ff │ │ -00521a: d80f 0f01 |0051: add-int/lit8 v15, v15, #int 1 // #01 │ │ -00521e: 4e0a 0d0e |0053: aput-boolean v10, v13, v14 │ │ -005222: 1215 |0055: const/4 v5, #int 1 // #1 │ │ -005224: 2815 |0056: goto 006b // +0015 │ │ -005226: 3d0b feff |0057: if-lez v11, 0055 // -0002 │ │ -00522a: 4705 0d0e |0059: aget-boolean v5, v13, v14 │ │ -00522e: 3905 faff |005b: if-nez v5, 0055 // -0006 │ │ -005232: 7110 4700 0e00 |005d: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ -005238: 0c05 |0060: move-result-object v5 │ │ -00523a: 6e20 7600 5400 |0061: invoke-virtual {v4, v5}, Ljava/util/LinkedList;.add:(Ljava/lang/Object;)Z // method@0076 │ │ -005240: d80b 0bff |0064: add-int/lit8 v11, v11, #int -1 // #ff │ │ -005244: d80f 0f01 |0066: add-int/lit8 v15, v15, #int 1 // #01 │ │ -005248: 1215 |0068: const/4 v5, #int 1 // #1 │ │ -00524a: 4e05 0d0e |0069: aput-boolean v5, v13, v14 │ │ -00524e: 4711 0d0e |006b: aget-boolean v17, v13, v14 │ │ -005252: 3811 0700 |006d: if-eqz v17, 0074 // +0007 │ │ -005256: 0205 1000 |006f: move/from16 v5, v16 │ │ -00525a: d810 0501 |0071: add-int/lit8 v16, v5, #int 1 // #01 │ │ -00525e: 2803 |0073: goto 0076 // +0003 │ │ -005260: 0205 1000 |0074: move/from16 v5, v16 │ │ -005264: d80e 0e01 |0076: add-int/lit8 v14, v14, #int 1 // #01 │ │ -005268: 28c7 |0078: goto 003f // -0039 │ │ -00526a: 0205 1000 |0079: move/from16 v5, v16 │ │ -00526e: 321f 1d00 |007b: if-eq v15, v1, 0098 // +001d │ │ -005272: 2205 3200 |007d: new-instance v5, Ljava/lang/StringBuilder; // type@0032 │ │ -005276: 7010 5400 0500 |007f: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -00527c: 1a0a 5a00 |0082: const-string v10, "

ERROR: calculated " // string@005a │ │ -005280: 6e20 5700 a500 |0084: invoke-virtual {v5, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005286: 6e20 5600 f500 |0087: invoke-virtual {v5, v15}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -00528c: 1a0a 0c00 |008a: const-string v10, " flips in a move, which is not allowed.

" // string@000c │ │ -005290: 6e20 5700 a500 |008c: invoke-virtual {v5, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005296: 6e10 5900 0500 |008f: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -00529c: 0c05 |0092: move-result-object v5 │ │ -00529e: 6e20 5700 5300 |0093: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0052a4: 121a |0096: const/4 v10, #int 1 // #1 │ │ -0052a6: 2809 |0097: goto 00a0 // +0009 │ │ -0052a8: 3295 0800 |0098: if-eq v5, v9, 00a0 // +0008 │ │ -0052ac: 1a05 5b00 |009a: const-string v5, "

ERROR: simulated output did not actually match pathfinding.

" // string@005b │ │ -0052b0: 6e20 5700 5300 |009c: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0052b6: 28f7 |009f: goto 0096 // -0009 │ │ -0052b8: 380a 8200 |00a0: if-eqz v10, 0122 // +0082 │ │ -0052bc: 1a01 6100 |00a2: const-string v1, "

this is probably a bug, but may be the kind that indicates the theory behind all this doesn't really work.

" // string@0061 │ │ -0052c0: 6e20 5700 1300 |00a4: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0052c6: 1a01 6000 |00a7: const-string v1, "

see if the solution summary makes sense.

" // string@0060 │ │ -0052ca: 6e20 5700 1300 |00a9: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0052d0: 2201 3200 |00ac: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -0052d4: 7010 5400 0100 |00ae: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -0052da: 1a02 5e00 |00b1: const-string v2, "

precursor of move was " // string@005e │ │ -0052de: 6e20 5700 2100 |00b3: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0052e4: 7020 2f01 6000 |00b6: invoke-direct {v0, v6}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCups:([Z)Ljava/lang/String; // method@012f │ │ -0052ea: 0c02 |00b9: move-result-object v2 │ │ -0052ec: 6e20 5700 2100 |00ba: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0052f2: 1a02 2a00 |00bd: const-string v2, ".

" // string@002a │ │ -0052f6: 6e20 5700 2100 |00bf: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0052fc: 6e10 5900 0100 |00c2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005302: 0c01 |00c5: move-result-object v1 │ │ -005304: 6e20 5700 1300 |00c6: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00530a: 2201 3200 |00c9: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -00530e: 7010 5400 0100 |00cb: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005314: 1a04 5c00 |00ce: const-string v4, "

broken result of move was " // string@005c │ │ -005318: 6e20 5700 4100 |00d0: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00531e: 7020 2f01 d000 |00d3: invoke-direct {v0, v13}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCups:([Z)Ljava/lang/String; // method@012f │ │ -005324: 0c04 |00d6: move-result-object v4 │ │ -005326: 6e20 5700 4100 |00d7: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00532c: 6e20 5700 2100 |00da: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005332: 6e10 5900 0100 |00dd: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005338: 0c01 |00e0: move-result-object v1 │ │ -00533a: 6e20 5700 1300 |00e1: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005340: 2201 3200 |00e4: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -005344: 7010 5400 0100 |00e6: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -00534a: 1a04 5d00 |00e9: const-string v4, "

move old/new was " // string@005d │ │ -00534e: 6e20 5700 4100 |00eb: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005354: 6e20 5600 8100 |00ee: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -00535a: 1a04 0500 |00f1: const-string v4, " : " // string@0005 │ │ -00535e: 6e20 5700 4100 |00f3: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005364: 6e20 5600 9100 |00f6: invoke-virtual {v1, v9}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -00536a: 6e20 5700 2100 |00f9: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005370: 6e10 5900 0100 |00fc: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005376: 0c01 |00ff: move-result-object v1 │ │ -005378: 6e20 5700 1300 |0100: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00537e: 2201 3200 |0103: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -005382: 7010 5400 0100 |0105: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005388: 1a05 5f00 |0108: const-string v5, "

remainder uid/diu " // string@005f │ │ -00538c: 6e20 5700 5100 |010a: invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005392: 6e20 5600 b100 |010d: invoke-virtual {v1, v11}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -005398: 6e20 5700 4100 |0110: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00539e: 6e20 5600 c100 |0113: invoke-virtual {v1, v12}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -0053a4: 6e20 5700 2100 |0116: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0053aa: 6e10 5900 0100 |0119: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -0053b0: 0c01 |011c: move-result-object v1 │ │ -0053b2: 6e20 5700 1300 |011d: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0053b8: 1201 |0120: const/4 v1, #int 0 // #0 │ │ -0053ba: 1101 |0121: return-object v1 │ │ -0053bc: d807 0701 |0122: add-int/lit8 v7, v7, #int 1 // #01 │ │ -0053c0: 07d6 |0124: move-object v6, v13 │ │ -0053c2: 2900 ebfe |0125: goto/16 0010 // -0115 │ │ -0053c6: 1104 |0127: return-object v4 │ │ +005174: |[005174] t20kdc.offlinepuzzlesolver.game.NCupsSolver.pathIntoFlips:(I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/lang/StringBuilder;)Ljava/util/LinkedList; │ │ +005184: 0800 1200 |0000: move-object/from16 v0, v18 │ │ +005188: 0201 1300 |0002: move/from16 v1, v19 │ │ +00518c: 0802 1500 |0004: move-object/from16 v2, v21 │ │ +005190: 0803 1600 |0006: move-object/from16 v3, v22 │ │ +005194: 2204 3e00 |0008: new-instance v4, Ljava/util/LinkedList; // type@003e │ │ +005198: 7010 7500 0400 |000a: invoke-direct {v4}, Ljava/util/LinkedList;.:()V // method@0075 │ │ +00519e: 0806 1400 |000d: move-object/from16 v6, v20 │ │ +0051a2: 1217 |000f: const/4 v7, #int 1 // #1 │ │ +0051a4: 2128 |0010: array-length v8, v2 │ │ +0051a6: 3587 1601 |0011: if-ge v7, v8, 0127 // +0116 │ │ +0051aa: 4608 0207 |0013: aget-object v8, v2, v7 │ │ +0051ae: 5488 0400 |0015: iget-object v8, v8, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.from:Ljava/lang/Object; // field@0004 │ │ +0051b2: 1f08 6e00 |0017: check-cast v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ +0051b6: 5288 9300 |0019: iget v8, v8, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ +0051ba: 4609 0207 |001b: aget-object v9, v2, v7 │ │ +0051be: 5499 0600 |001d: iget-object v9, v9, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;.to:Ljava/lang/Object; // field@0006 │ │ +0051c2: 1f09 6e00 |001f: check-cast v9, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ +0051c6: 5299 9300 |0021: iget v9, v9, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.downCupCount:I // field@0093 │ │ +0051ca: 120a |0023: const/4 v10, #int 0 // #0 │ │ +0051cc: 3798 0700 |0024: if-le v8, v9, 002b // +0007 │ │ +0051d0: 910b 0809 |0026: sub-int v11, v8, v9 │ │ +0051d4: 01bc |0028: move v12, v11 │ │ +0051d6: 120b |0029: const/4 v11, #int 0 // #0 │ │ +0051d8: 2804 |002a: goto 002e // +0004 │ │ +0051da: 910b 0908 |002b: sub-int v11, v9, v8 │ │ +0051de: 120c |002d: const/4 v12, #int 0 // #0 │ │ +0051e0: 900d 0b0c |002e: add-int v13, v11, v12 │ │ +0051e4: 351d 0700 |0030: if-ge v13, v1, 0037 // +0007 │ │ +0051e8: d80c 0c01 |0032: add-int/lit8 v12, v12, #int 1 // #01 │ │ +0051ec: d80b 0b01 |0034: add-int/lit8 v11, v11, #int 1 // #01 │ │ +0051f0: 28f8 |0036: goto 002e // -0008 │ │ +0051f2: 7020 2e01 6000 |0037: invoke-direct {v0, v6}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.dupCupStates:([Z)[Z // method@012e │ │ +0051f8: 0c0d |003a: move-result-object v13 │ │ +0051fa: 120e |003b: const/4 v14, #int 0 // #0 │ │ +0051fc: 120f |003c: const/4 v15, #int 0 // #0 │ │ +0051fe: 1310 0000 |003d: const/16 v16, #int 0 // #0 │ │ +005202: 21d5 |003f: array-length v5, v13 │ │ +005204: 355e 3900 |0040: if-ge v14, v5, 0079 // +0039 │ │ +005208: 3d0c 1500 |0042: if-lez v12, 0057 // +0015 │ │ +00520c: 4705 0d0e |0044: aget-boolean v5, v13, v14 │ │ +005210: 3805 1100 |0046: if-eqz v5, 0057 // +0011 │ │ +005214: 7110 4700 0e00 |0048: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ +00521a: 0c05 |004b: move-result-object v5 │ │ +00521c: 6e20 7600 5400 |004c: invoke-virtual {v4, v5}, Ljava/util/LinkedList;.add:(Ljava/lang/Object;)Z // method@0076 │ │ +005222: d80c 0cff |004f: add-int/lit8 v12, v12, #int -1 // #ff │ │ +005226: d80f 0f01 |0051: add-int/lit8 v15, v15, #int 1 // #01 │ │ +00522a: 4e0a 0d0e |0053: aput-boolean v10, v13, v14 │ │ +00522e: 1215 |0055: const/4 v5, #int 1 // #1 │ │ +005230: 2815 |0056: goto 006b // +0015 │ │ +005232: 3d0b feff |0057: if-lez v11, 0055 // -0002 │ │ +005236: 4705 0d0e |0059: aget-boolean v5, v13, v14 │ │ +00523a: 3905 faff |005b: if-nez v5, 0055 // -0006 │ │ +00523e: 7110 4700 0e00 |005d: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ +005244: 0c05 |0060: move-result-object v5 │ │ +005246: 6e20 7600 5400 |0061: invoke-virtual {v4, v5}, Ljava/util/LinkedList;.add:(Ljava/lang/Object;)Z // method@0076 │ │ +00524c: d80b 0bff |0064: add-int/lit8 v11, v11, #int -1 // #ff │ │ +005250: d80f 0f01 |0066: add-int/lit8 v15, v15, #int 1 // #01 │ │ +005254: 1215 |0068: const/4 v5, #int 1 // #1 │ │ +005256: 4e05 0d0e |0069: aput-boolean v5, v13, v14 │ │ +00525a: 4711 0d0e |006b: aget-boolean v17, v13, v14 │ │ +00525e: 3811 0700 |006d: if-eqz v17, 0074 // +0007 │ │ +005262: 0205 1000 |006f: move/from16 v5, v16 │ │ +005266: d810 0501 |0071: add-int/lit8 v16, v5, #int 1 // #01 │ │ +00526a: 2803 |0073: goto 0076 // +0003 │ │ +00526c: 0205 1000 |0074: move/from16 v5, v16 │ │ +005270: d80e 0e01 |0076: add-int/lit8 v14, v14, #int 1 // #01 │ │ +005274: 28c7 |0078: goto 003f // -0039 │ │ +005276: 0205 1000 |0079: move/from16 v5, v16 │ │ +00527a: 321f 1d00 |007b: if-eq v15, v1, 0098 // +001d │ │ +00527e: 2205 3200 |007d: new-instance v5, Ljava/lang/StringBuilder; // type@0032 │ │ +005282: 7010 5400 0500 |007f: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005288: 1a0a 5c00 |0082: const-string v10, "

ERROR: calculated " // string@005c │ │ +00528c: 6e20 5700 a500 |0084: invoke-virtual {v5, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005292: 6e20 5600 f500 |0087: invoke-virtual {v5, v15}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005298: 1a0a 0c00 |008a: const-string v10, " flips in a move, which is not allowed.

" // string@000c │ │ +00529c: 6e20 5700 a500 |008c: invoke-virtual {v5, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0052a2: 6e10 5900 0500 |008f: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0052a8: 0c05 |0092: move-result-object v5 │ │ +0052aa: 6e20 5700 5300 |0093: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0052b0: 121a |0096: const/4 v10, #int 1 // #1 │ │ +0052b2: 2809 |0097: goto 00a0 // +0009 │ │ +0052b4: 3295 0800 |0098: if-eq v5, v9, 00a0 // +0008 │ │ +0052b8: 1a05 5d00 |009a: const-string v5, "

ERROR: simulated output did not actually match pathfinding.

" // string@005d │ │ +0052bc: 6e20 5700 5300 |009c: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0052c2: 28f7 |009f: goto 0096 // -0009 │ │ +0052c4: 380a 8200 |00a0: if-eqz v10, 0122 // +0082 │ │ +0052c8: 1a01 6300 |00a2: const-string v1, "

this is probably a bug, but may be the kind that indicates the theory behind all this doesn't really work.

" // string@0063 │ │ +0052cc: 6e20 5700 1300 |00a4: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0052d2: 1a01 6200 |00a7: const-string v1, "

see if the solution summary makes sense.

" // string@0062 │ │ +0052d6: 6e20 5700 1300 |00a9: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0052dc: 2201 3200 |00ac: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +0052e0: 7010 5400 0100 |00ae: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +0052e6: 1a02 6000 |00b1: const-string v2, "

precursor of move was " // string@0060 │ │ +0052ea: 6e20 5700 2100 |00b3: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0052f0: 7020 2f01 6000 |00b6: invoke-direct {v0, v6}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCups:([Z)Ljava/lang/String; // method@012f │ │ +0052f6: 0c02 |00b9: move-result-object v2 │ │ +0052f8: 6e20 5700 2100 |00ba: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0052fe: 1a02 2c00 |00bd: const-string v2, ".

" // string@002c │ │ +005302: 6e20 5700 2100 |00bf: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005308: 6e10 5900 0100 |00c2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +00530e: 0c01 |00c5: move-result-object v1 │ │ +005310: 6e20 5700 1300 |00c6: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005316: 2201 3200 |00c9: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +00531a: 7010 5400 0100 |00cb: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005320: 1a04 5e00 |00ce: const-string v4, "

broken result of move was " // string@005e │ │ +005324: 6e20 5700 4100 |00d0: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00532a: 7020 2f01 d000 |00d3: invoke-direct {v0, v13}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatCups:([Z)Ljava/lang/String; // method@012f │ │ +005330: 0c04 |00d6: move-result-object v4 │ │ +005332: 6e20 5700 4100 |00d7: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005338: 6e20 5700 2100 |00da: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00533e: 6e10 5900 0100 |00dd: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005344: 0c01 |00e0: move-result-object v1 │ │ +005346: 6e20 5700 1300 |00e1: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00534c: 2201 3200 |00e4: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +005350: 7010 5400 0100 |00e6: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005356: 1a04 5f00 |00e9: const-string v4, "

move old/new was " // string@005f │ │ +00535a: 6e20 5700 4100 |00eb: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005360: 6e20 5600 8100 |00ee: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005366: 1a04 0500 |00f1: const-string v4, " : " // string@0005 │ │ +00536a: 6e20 5700 4100 |00f3: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005370: 6e20 5600 9100 |00f6: invoke-virtual {v1, v9}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005376: 6e20 5700 2100 |00f9: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00537c: 6e10 5900 0100 |00fc: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005382: 0c01 |00ff: move-result-object v1 │ │ +005384: 6e20 5700 1300 |0100: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00538a: 2201 3200 |0103: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +00538e: 7010 5400 0100 |0105: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005394: 1a05 6100 |0108: const-string v5, "

remainder uid/diu " // string@0061 │ │ +005398: 6e20 5700 5100 |010a: invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00539e: 6e20 5600 b100 |010d: invoke-virtual {v1, v11}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +0053a4: 6e20 5700 4100 |0110: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0053aa: 6e20 5600 c100 |0113: invoke-virtual {v1, v12}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +0053b0: 6e20 5700 2100 |0116: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0053b6: 6e10 5900 0100 |0119: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0053bc: 0c01 |011c: move-result-object v1 │ │ +0053be: 6e20 5700 1300 |011d: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0053c4: 1201 |0120: const/4 v1, #int 0 // #0 │ │ +0053c6: 1101 |0121: return-object v1 │ │ +0053c8: d807 0701 |0122: add-int/lit8 v7, v7, #int 1 // #01 │ │ +0053cc: 07d6 |0124: move-object v6, v13 │ │ +0053ce: 2900 ebfe |0125: goto/16 0010 // -0115 │ │ +0053d2: 1104 |0127: return-object v4 │ │ catches : (none) │ │ positions : │ │ 0x0008 line=49 │ │ 0x0010 line=50 │ │ 0x0013 line=53 │ │ 0x001b line=54 │ │ 0x0037 line=75 │ │ @@ -7119,79 +7117,79 @@ │ │ type : '(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 13 │ │ ins : 4 │ │ outs : 7 │ │ insns size : 114 16-bit code units │ │ -005744: |[005744] t20kdc.offlinepuzzlesolver.game.NCupsSolver.solve:(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ -005754: 1a0c 9f02 |0000: const-string v12, "seek_cup_count" // string@029f │ │ -005758: 6e20 1600 ca00 |0002: invoke-virtual {v10, v12}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ -00575e: 0a0c |0005: move-result v12 │ │ -005760: 1210 |0006: const/4 v0, #int 1 // #1 │ │ -005762: b00c |0007: add-int/2addr v12, v0 │ │ -005764: 1a01 a102 |0008: const-string v1, "seek_cup_move" // string@02a1 │ │ -005768: 6e20 1600 1a00 |000a: invoke-virtual {v10, v1}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ -00576e: 0a01 |000d: move-result v1 │ │ -005770: d804 0101 |000e: add-int/lit8 v4, v1, #int 1 // #01 │ │ -005774: 23c5 8700 |0010: new-array v5, v12, [Z // type@0087 │ │ -005778: 1201 |0012: const/4 v1, #int 0 // #0 │ │ -00577a: 1202 |0013: const/4 v2, #int 0 // #0 │ │ -00577c: 1203 |0014: const/4 v3, #int 0 // #0 │ │ -00577e: 35c2 2700 |0015: if-ge v2, v12, 003c // +0027 │ │ -005782: 2206 3200 |0017: new-instance v6, Ljava/lang/StringBuilder; // type@0032 │ │ -005786: 7010 5400 0600 |0019: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -00578c: 1a07 f301 |001c: const-string v7, "cup_" // string@01f3 │ │ -005790: 6e20 5700 7600 |001e: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005796: 6e20 5600 2600 |0021: invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -00579c: 6e10 5900 0600 |0024: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -0057a2: 0c06 |0027: move-result-object v6 │ │ -0057a4: 6e20 1600 6a00 |0028: invoke-virtual {v10, v6}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ -0057aa: 0a06 |002b: move-result v6 │ │ -0057ac: 3806 0400 |002c: if-eqz v6, 0030 // +0004 │ │ -0057b0: 1216 |002e: const/4 v6, #int 1 // #1 │ │ -0057b2: 2802 |002f: goto 0031 // +0002 │ │ -0057b4: 1206 |0030: const/4 v6, #int 0 // #0 │ │ -0057b6: 4e06 0502 |0031: aput-boolean v6, v5, v2 │ │ -0057ba: 4706 0502 |0033: aget-boolean v6, v5, v2 │ │ -0057be: 3806 0400 |0035: if-eqz v6, 0039 // +0004 │ │ -0057c2: d803 0301 |0037: add-int/lit8 v3, v3, #int 1 // #01 │ │ -0057c6: d802 0201 |0039: add-int/lit8 v2, v2, #int 1 // #01 │ │ -0057ca: 28da |003b: goto 0015 // -0026 │ │ -0057cc: 220a 6e00 |003c: new-instance v10, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ -0057d0: 7040 2801 ca34 |003e: invoke-direct {v10, v12, v4, v3}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.:(III)V // method@0128 │ │ -0057d6: 2200 4700 |0041: new-instance v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder; // type@0047 │ │ -0057da: 7010 9100 0000 |0043: invoke-direct {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.:()V // method@0091 │ │ -0057e0: 1202 |0046: const/4 v2, #int 0 // #0 │ │ -0057e2: 6e40 9200 a021 |0047: invoke-virtual {v0, v10, v1, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.addStart:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;ILjava/lang/Object;)Z // method@0092 │ │ -0057e8: 6e10 9500 0000 |004a: invoke-virtual {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.runToCompletion:()[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // method@0095 │ │ -0057ee: 072a |004d: move-object v10, v2 │ │ -0057f0: 3631 1300 |004e: if-gt v1, v3, 0061 // +0013 │ │ -0057f4: 220a 6e00 |0050: new-instance v10, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ -0057f8: 7040 2801 ca14 |0052: invoke-direct {v10, v12, v4, v1}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.:(III)V // method@0128 │ │ -0057fe: 6e20 9300 a000 |0055: invoke-virtual {v0, v10}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.checkForPath:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // method@0093 │ │ -005804: 0c0a |0058: move-result-object v10 │ │ -005806: 380a 0500 |0059: if-eqz v10, 005e // +0005 │ │ -00580a: 07a6 |005b: move-object v6, v10 │ │ -00580c: 0118 |005c: move v8, v1 │ │ -00580e: 2806 |005d: goto 0063 // +0006 │ │ -005810: d801 0101 |005e: add-int/lit8 v1, v1, #int 1 // #01 │ │ -005814: 28ee |0060: goto 004e // -0012 │ │ -005816: 07a6 |0061: move-object v6, v10 │ │ -005818: 0138 |0062: move v8, v3 │ │ -00581a: 3806 0800 |0063: if-eqz v6, 006b // +0008 │ │ -00581e: 705b 3201 4965 |0065: invoke-direct {v9, v4, v5, v6, v11}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.pathIntoFlips:(I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/lang/StringBuilder;)Ljava/util/LinkedList; // method@0132 │ │ -005824: 0c0a |0068: move-result-object v10 │ │ -005826: 07a7 |0069: move-object v7, v10 │ │ -005828: 2802 |006a: goto 006c // +0002 │ │ -00582a: 0727 |006b: move-object v7, v2 │ │ -00582c: 0792 |006c: move-object v2, v9 │ │ -00582e: 07b3 |006d: move-object v3, v11 │ │ -005830: 7607 3101 0200 |006e: invoke-direct/range {v2, v3, v4, v5, v6, v7, v8}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatResults:(Ljava/lang/StringBuilder;I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/util/LinkedList;I)V // method@0131 │ │ -005836: 0e00 |0071: return-void │ │ +005750: |[005750] t20kdc.offlinepuzzlesolver.game.NCupsSolver.solve:(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ +005760: 1a0c a102 |0000: const-string v12, "seek_cup_count" // string@02a1 │ │ +005764: 6e20 1600 ca00 |0002: invoke-virtual {v10, v12}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ +00576a: 0a0c |0005: move-result v12 │ │ +00576c: 1210 |0006: const/4 v0, #int 1 // #1 │ │ +00576e: b00c |0007: add-int/2addr v12, v0 │ │ +005770: 1a01 a302 |0008: const-string v1, "seek_cup_move" // string@02a3 │ │ +005774: 6e20 1600 1a00 |000a: invoke-virtual {v10, v1}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ +00577a: 0a01 |000d: move-result v1 │ │ +00577c: d804 0101 |000e: add-int/lit8 v4, v1, #int 1 // #01 │ │ +005780: 23c5 8700 |0010: new-array v5, v12, [Z // type@0087 │ │ +005784: 1201 |0012: const/4 v1, #int 0 // #0 │ │ +005786: 1202 |0013: const/4 v2, #int 0 // #0 │ │ +005788: 1203 |0014: const/4 v3, #int 0 // #0 │ │ +00578a: 35c2 2700 |0015: if-ge v2, v12, 003c // +0027 │ │ +00578e: 2206 3200 |0017: new-instance v6, Ljava/lang/StringBuilder; // type@0032 │ │ +005792: 7010 5400 0600 |0019: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005798: 1a07 f501 |001c: const-string v7, "cup_" // string@01f5 │ │ +00579c: 6e20 5700 7600 |001e: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0057a2: 6e20 5600 2600 |0021: invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +0057a8: 6e10 5900 0600 |0024: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0057ae: 0c06 |0027: move-result-object v6 │ │ +0057b0: 6e20 1600 6a00 |0028: invoke-virtual {v10, v6}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ +0057b6: 0a06 |002b: move-result v6 │ │ +0057b8: 3806 0400 |002c: if-eqz v6, 0030 // +0004 │ │ +0057bc: 1216 |002e: const/4 v6, #int 1 // #1 │ │ +0057be: 2802 |002f: goto 0031 // +0002 │ │ +0057c0: 1206 |0030: const/4 v6, #int 0 // #0 │ │ +0057c2: 4e06 0502 |0031: aput-boolean v6, v5, v2 │ │ +0057c6: 4706 0502 |0033: aget-boolean v6, v5, v2 │ │ +0057ca: 3806 0400 |0035: if-eqz v6, 0039 // +0004 │ │ +0057ce: d803 0301 |0037: add-int/lit8 v3, v3, #int 1 // #01 │ │ +0057d2: d802 0201 |0039: add-int/lit8 v2, v2, #int 1 // #01 │ │ +0057d6: 28da |003b: goto 0015 // -0026 │ │ +0057d8: 220a 6e00 |003c: new-instance v10, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ +0057dc: 7040 2801 ca34 |003e: invoke-direct {v10, v12, v4, v3}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.:(III)V // method@0128 │ │ +0057e2: 2200 4700 |0041: new-instance v0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder; // type@0047 │ │ +0057e6: 7010 9100 0000 |0043: invoke-direct {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.:()V // method@0091 │ │ +0057ec: 1202 |0046: const/4 v2, #int 0 // #0 │ │ +0057ee: 6e40 9200 a021 |0047: invoke-virtual {v0, v10, v1, v2}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.addStart:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;ILjava/lang/Object;)Z // method@0092 │ │ +0057f4: 6e10 9500 0000 |004a: invoke-virtual {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.runToCompletion:()[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // method@0095 │ │ +0057fa: 072a |004d: move-object v10, v2 │ │ +0057fc: 3631 1300 |004e: if-gt v1, v3, 0061 // +0013 │ │ +005800: 220a 6e00 |0050: new-instance v10, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode; // type@006e │ │ +005804: 7040 2801 ca14 |0052: invoke-direct {v10, v12, v4, v1}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode;.:(III)V // method@0128 │ │ +00580a: 6e20 9300 a000 |0055: invoke-virtual {v0, v10}, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;.checkForPath:(Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;)[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT; // method@0093 │ │ +005810: 0c0a |0058: move-result-object v10 │ │ +005812: 380a 0500 |0059: if-eqz v10, 005e // +0005 │ │ +005816: 07a6 |005b: move-object v6, v10 │ │ +005818: 0118 |005c: move v8, v1 │ │ +00581a: 2806 |005d: goto 0063 // +0006 │ │ +00581c: d801 0101 |005e: add-int/lit8 v1, v1, #int 1 // #01 │ │ +005820: 28ee |0060: goto 004e // -0012 │ │ +005822: 07a6 |0061: move-object v6, v10 │ │ +005824: 0138 |0062: move v8, v3 │ │ +005826: 3806 0800 |0063: if-eqz v6, 006b // +0008 │ │ +00582a: 705b 3201 4965 |0065: invoke-direct {v9, v4, v5, v6, v11}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.pathIntoFlips:(I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/lang/StringBuilder;)Ljava/util/LinkedList; // method@0132 │ │ +005830: 0c0a |0068: move-result-object v10 │ │ +005832: 07a7 |0069: move-object v7, v10 │ │ +005834: 2802 |006a: goto 006c // +0002 │ │ +005836: 0727 |006b: move-object v7, v2 │ │ +005838: 0792 |006c: move-object v2, v9 │ │ +00583a: 07b3 |006d: move-object v3, v11 │ │ +00583c: 7607 3101 0200 |006e: invoke-direct/range {v2, v3, v4, v5, v6, v7, v8}, Lt20kdc/offlinepuzzlesolver/game/NCupsSolver;.formatResults:(Ljava/lang/StringBuilder;I[Z[Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;Ljava/util/LinkedList;I)V // method@0131 │ │ +005842: 0e00 |0071: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=14 │ │ 0x000a line=15 │ │ 0x0010 line=16 │ │ 0x0017 line=20 │ │ 0x0033 line=21 │ │ @@ -7205,21 +7203,21 @@ │ │ 0x006e line=45 │ │ locals : │ │ 0x0000 - 0x0072 reg=9 this Lt20kdc/offlinepuzzlesolver/game/NCupsSolver; │ │ 0x0000 - 0x0072 reg=10 (null) Landroid/os/Bundle; │ │ 0x0000 - 0x0072 reg=11 (null) Ljava/lang/StringBuilder; │ │ 0x0000 - 0x0072 reg=12 (null) Ljava/util/concurrent/atomic/AtomicBoolean; │ │ │ │ - source_file_idx : 307 (NCupsSolver.java) │ │ + source_file_idx : 309 (NCupsSolver.java) │ │ │ │ Class #50 header: │ │ class_idx : 112 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 105 │ │ -source_file_idx : 311 │ │ +source_file_idx : 313 │ │ static_fields_size : 1 │ │ instance_fields_size: 0 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 2 │ │ │ │ Class #50 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;' │ │ @@ -7239,17 +7237,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -005838: |[005838] t20kdc.offlinepuzzlesolver.game.NQueensActivity.:()V │ │ -005848: 7010 0401 0000 |0000: invoke-direct {v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.:()V // method@0104 │ │ -00584e: 0e00 |0003: return-void │ │ +005844: |[005844] t20kdc.offlinepuzzlesolver.game.NQueensActivity.:()V │ │ +005854: 7010 0401 0000 |0000: invoke-direct {v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.:()V // method@0104 │ │ +00585a: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=10 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NQueensActivity; │ │ │ │ #1 : (in Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;) │ │ @@ -7257,50 +7255,50 @@ │ │ type : '()V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 0 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -005850: |[005850] t20kdc.offlinepuzzlesolver.game.NQueensActivity.lambda$onCreate$0:()V │ │ -005860: 0e00 |0000: return-void │ │ +00585c: |[00585c] t20kdc.offlinepuzzlesolver.game.NQueensActivity.lambda$onCreate$0:()V │ │ +00586c: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;) │ │ name : 'onCreate' │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 46 16-bit code units │ │ -005864: |[005864] t20kdc.offlinepuzzlesolver.game.NQueensActivity.onCreate:(Landroid/os/Bundle;)V │ │ -005874: 6f20 0c01 4300 |0000: invoke-super {v3, v4}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onCreate:(Landroid/os/Bundle;)V // method@010c │ │ -00587a: 1400 0300 047f |0003: const v0, #float 1.75458e+38 // #7f040003 │ │ -005880: 6e20 3c01 0300 |0006: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.setContentView:(I)V // method@013c │ │ -005886: 1400 1200 037f |0009: const v0, #float 1.74129e+38 // #7f030012 │ │ -00588c: 6e20 3701 0300 |000c: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.findViewById:(I)Landroid/view/View; // method@0137 │ │ -005892: 0c01 |000f: move-result-object v1 │ │ -005894: 1f01 1b00 |0010: check-cast v1, Landroid/widget/SeekBar; // type@001b │ │ -005898: 1302 1f00 |0012: const/16 v2, #int 31 // #1f │ │ -00589c: 6e20 3100 2100 |0014: invoke-virtual {v1, v2}, Landroid/widget/SeekBar;.setMax:(I)V // method@0031 │ │ -0058a2: 6e20 3901 4300 |0017: invoke-virtual {v3, v4}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.loadSL:(Landroid/os/Bundle;)V // method@0139 │ │ -0058a8: 6204 8e00 |001a: sget-object v4, Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E;.INSTANCE:Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E; // field@008e │ │ -0058ac: 1401 1300 037f |001c: const v1, #float 1.74129e+38 // #7f030013 │ │ -0058b2: 1212 |001f: const/4 v2, #int 1 // #1 │ │ -0058b4: 7154 f900 0321 |0020: invoke-static {v3, v0, v1, v2, v4}, Lt20kdc/offlinepuzzlesolver/Streamline;.bindSeekWdg:(Landroid/app/Activity;IIILjava/lang/Runnable;)V // method@00f9 │ │ -0058ba: 1a04 1302 |0023: const-string v4, "file:///android_asset/rnq.html" // string@0213 │ │ -0058be: 6e20 3501 4300 |0025: invoke-virtual {v3, v4}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.bindRulesButton:(Ljava/lang/String;)V // method@0135 │ │ -0058c4: 1c04 7300 |0028: const-class v4, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver; // type@0073 │ │ -0058c8: 6e20 3601 4300 |002a: invoke-virtual {v3, v4}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.bindSolveButton:(Ljava/lang/Class;)V // method@0136 │ │ -0058ce: 0e00 |002d: return-void │ │ +005870: |[005870] t20kdc.offlinepuzzlesolver.game.NQueensActivity.onCreate:(Landroid/os/Bundle;)V │ │ +005880: 6f20 0c01 4300 |0000: invoke-super {v3, v4}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onCreate:(Landroid/os/Bundle;)V // method@010c │ │ +005886: 1400 0300 047f |0003: const v0, #float 1.75458e+38 // #7f040003 │ │ +00588c: 6e20 3c01 0300 |0006: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.setContentView:(I)V // method@013c │ │ +005892: 1400 1200 037f |0009: const v0, #float 1.74129e+38 // #7f030012 │ │ +005898: 6e20 3701 0300 |000c: invoke-virtual {v3, v0}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.findViewById:(I)Landroid/view/View; // method@0137 │ │ +00589e: 0c01 |000f: move-result-object v1 │ │ +0058a0: 1f01 1b00 |0010: check-cast v1, Landroid/widget/SeekBar; // type@001b │ │ +0058a4: 1302 1f00 |0012: const/16 v2, #int 31 // #1f │ │ +0058a8: 6e20 3100 2100 |0014: invoke-virtual {v1, v2}, Landroid/widget/SeekBar;.setMax:(I)V // method@0031 │ │ +0058ae: 6e20 3901 4300 |0017: invoke-virtual {v3, v4}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.loadSL:(Landroid/os/Bundle;)V // method@0139 │ │ +0058b4: 6204 8e00 |001a: sget-object v4, Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E;.INSTANCE:Lt20kdc/offlinepuzzlesolver/game/-$$Lambda$NQueensActivity$XvDL-HtoDR7QatN8b6DwIjKuS7E; // field@008e │ │ +0058b8: 1401 1300 037f |001c: const v1, #float 1.74129e+38 // #7f030013 │ │ +0058be: 1212 |001f: const/4 v2, #int 1 // #1 │ │ +0058c0: 7154 f900 0321 |0020: invoke-static {v3, v0, v1, v2, v4}, Lt20kdc/offlinepuzzlesolver/Streamline;.bindSeekWdg:(Landroid/app/Activity;IIILjava/lang/Runnable;)V // method@00f9 │ │ +0058c6: 1a04 1502 |0023: const-string v4, "file:///android_asset/rnq.html" // string@0215 │ │ +0058ca: 6e20 3501 4300 |0025: invoke-virtual {v3, v4}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.bindRulesButton:(Ljava/lang/String;)V // method@0135 │ │ +0058d0: 1c04 7300 |0028: const-class v4, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver; // type@0073 │ │ +0058d4: 6e20 3601 4300 |002a: invoke-virtual {v3, v4}, Lt20kdc/offlinepuzzlesolver/game/NQueensActivity;.bindSolveButton:(Ljava/lang/Class;)V // method@0136 │ │ +0058da: 0e00 |002d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=15 │ │ 0x0006 line=16 │ │ 0x000c line=17 │ │ 0x0017 line=18 │ │ 0x001a line=19 │ │ @@ -7315,36 +7313,36 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/Streamline;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 14 16-bit code units │ │ -0058d0: |[0058d0] t20kdc.offlinepuzzlesolver.game.NQueensActivity.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V │ │ -0058e0: 1270 |0000: const/4 v0, #int 7 // #7 │ │ -0058e2: 7110 4700 0000 |0001: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ -0058e8: 0c00 |0004: move-result-object v0 │ │ -0058ea: 1a01 cb01 |0005: const-string v1, "board_size" // string@01cb │ │ -0058ee: 1402 1200 037f |0007: const v2, #float 1.74129e+38 // #7f030012 │ │ -0058f4: 6e40 fd00 1402 |000a: invoke-virtual {v4, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ -0058fa: 0e00 |000d: return-void │ │ +0058dc: |[0058dc] t20kdc.offlinepuzzlesolver.game.NQueensActivity.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V │ │ +0058ec: 1270 |0000: const/4 v0, #int 7 // #7 │ │ +0058ee: 7110 4700 0000 |0001: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0047 │ │ +0058f4: 0c00 |0004: move-result-object v0 │ │ +0058f6: 1a01 cd01 |0005: const-string v1, "board_size" // string@01cd │ │ +0058fa: 1402 1200 037f |0007: const v2, #float 1.74129e+38 // #7f030012 │ │ +005900: 6e40 fd00 1402 |000a: invoke-virtual {v4, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ +005906: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0001 line=28 │ │ locals : │ │ 0x0000 - 0x000e reg=3 this Lt20kdc/offlinepuzzlesolver/game/NQueensActivity; │ │ 0x0000 - 0x000e reg=4 (null) Lt20kdc/offlinepuzzlesolver/Streamline; │ │ │ │ - source_file_idx : 311 (NQueensActivity.java) │ │ + source_file_idx : 313 (NQueensActivity.java) │ │ │ │ Class #51 header: │ │ class_idx : 113 │ │ access_flags : 0 (0x0000) │ │ superclass_idx : 45 │ │ -source_file_idx : 312 │ │ +source_file_idx : 314 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 8 │ │ │ │ Class #51 annotations: │ │ Annotations on class │ │ @@ -7372,18 +7370,18 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -00597c: |[00597c] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver;)V │ │ -00598c: 5b01 9600 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/NQueensSolver; // field@0096 │ │ -005990: 7010 4900 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -005996: 0e00 |0005: return-void │ │ +005988: |[005988] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver;)V │ │ +005998: 5b01 9600 |0000: iput-object v1, v0, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.this$0:Lt20kdc/offlinepuzzlesolver/game/NQueensSolver; // field@0096 │ │ +00599c: 7010 4900 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +0059a2: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=15 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lt20kdc/offlinepuzzlesolver/game/NQueensSolver; │ │ │ │ @@ -7393,19 +7391,19 @@ │ │ type : '(Ljava/lang/Object;)I' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 7 16-bit code units │ │ -005944: |[005944] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.getImportanceOf:(Ljava/lang/Object;)I │ │ -005954: 1f01 7200 |0000: check-cast v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ -005958: 6e20 3f01 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.getImportanceOf:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)I // method@013f │ │ -00595e: 0a01 |0005: move-result v1 │ │ -005960: 0f01 |0006: return v1 │ │ +005950: |[005950] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.getImportanceOf:(Ljava/lang/Object;)I │ │ +005960: 1f01 7200 |0000: check-cast v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ +005964: 6e20 3f01 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.getImportanceOf:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)I // method@013f │ │ +00596a: 0a01 |0005: move-result v1 │ │ +00596c: 0f01 |0006: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=15 │ │ locals : │ │ 0x0000 - 0x0007 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; │ │ 0x0000 - 0x0007 reg=1 (null) Ljava/lang/Object; │ │ │ │ @@ -7414,17 +7412,17 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -005964: |[005964] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.getImportanceOf:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)I │ │ -005974: 5211 9700 |0000: iget v1, v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ -005978: 0f01 |0002: return v1 │ │ +005970: |[005970] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.getImportanceOf:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)I │ │ +005980: 5211 9700 |0000: iget v1, v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ +005984: 0f01 |0002: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; │ │ 0x0000 - 0x0003 reg=1 (null) Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; │ │ │ │ @@ -7433,18 +7431,18 @@ │ │ type : '(Ljava/lang/Object;)V' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -005998: |[005998] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.initState:(Ljava/lang/Object;)V │ │ -0059a8: 1f01 7200 |0000: check-cast v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ -0059ac: 6e20 4101 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.initState:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)V // method@0141 │ │ -0059b2: 0e00 |0005: return-void │ │ +0059a4: |[0059a4] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.initState:(Ljava/lang/Object;)V │ │ +0059b4: 1f01 7200 |0000: check-cast v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ +0059b8: 6e20 4101 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.initState:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)V // method@0141 │ │ +0059be: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=15 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; │ │ 0x0000 - 0x0006 reg=1 (null) Ljava/lang/Object; │ │ │ │ @@ -7453,34 +7451,34 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -0059b4: |[0059b4] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.initState:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)V │ │ -0059c4: 0e00 |0000: return-void │ │ +0059c0: |[0059c0] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.initState:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)V │ │ +0059d0: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #4 : (in Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;) │ │ name : 'isEndpoint' │ │ type : '(Ljava/lang/Object;)Z' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 7 16-bit code units │ │ -0058fc: |[0058fc] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.isEndpoint:(Ljava/lang/Object;)Z │ │ -00590c: 1f01 7200 |0000: check-cast v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ -005910: 6e20 4301 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.isEndpoint:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)Z // method@0143 │ │ -005916: 0a01 |0005: move-result v1 │ │ -005918: 0f01 |0006: return v1 │ │ +005908: |[005908] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.isEndpoint:(Ljava/lang/Object;)Z │ │ +005918: 1f01 7200 |0000: check-cast v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ +00591c: 6e20 4301 1000 |0002: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.isEndpoint:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)Z // method@0143 │ │ +005922: 0a01 |0005: move-result v1 │ │ +005924: 0f01 |0006: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=15 │ │ locals : │ │ 0x0000 - 0x0007 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; │ │ 0x0000 - 0x0007 reg=1 (null) Ljava/lang/Object; │ │ │ │ @@ -7489,23 +7487,23 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 11 16-bit code units │ │ -00591c: |[00591c] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.isEndpoint:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)Z │ │ -00592c: 5220 9700 |0000: iget v0, v2, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ -005930: 5422 9800 |0002: iget-object v2, v2, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ -005934: 2122 |0004: array-length v2, v2 │ │ -005936: 3320 0400 |0005: if-ne v0, v2, 0009 // +0004 │ │ -00593a: 1212 |0007: const/4 v2, #int 1 // #1 │ │ -00593c: 2802 |0008: goto 000a // +0002 │ │ -00593e: 1202 |0009: const/4 v2, #int 0 // #0 │ │ -005940: 0f02 |000a: return v2 │ │ +005928: |[005928] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.isEndpoint:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;)Z │ │ +005938: 5220 9700 |0000: iget v0, v2, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ +00593c: 5422 9800 |0002: iget-object v2, v2, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ +005940: 2122 |0004: array-length v2, v2 │ │ +005942: 3320 0400 |0005: if-ne v0, v2, 0009 // +0004 │ │ +005946: 1212 |0007: const/4 v2, #int 1 // #1 │ │ +005948: 2802 |0008: goto 000a // +0002 │ │ +00594a: 1202 |0009: const/4 v2, #int 0 // #0 │ │ +00594c: 0f02 |000a: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ 0x0000 - 0x000b reg=1 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; │ │ 0x0000 - 0x000b reg=2 (null) Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; │ │ │ │ @@ -7514,18 +7512,18 @@ │ │ type : '(Ljava/lang/Object;Ljava/util/Collection;)V' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 6 16-bit code units │ │ -0059c8: |[0059c8] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.visit:(Ljava/lang/Object;Ljava/util/Collection;)V │ │ -0059d8: 1f01 7200 |0000: check-cast v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ -0059dc: 6e30 4501 1002 |0002: invoke-virtual {v0, v1, v2}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.visit:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;Ljava/util/Collection;)V // method@0145 │ │ -0059e2: 0e00 |0005: return-void │ │ +0059d4: |[0059d4] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.visit:(Ljava/lang/Object;Ljava/util/Collection;)V │ │ +0059e4: 1f01 7200 |0000: check-cast v1, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ +0059e8: 6e30 4501 1002 |0002: invoke-virtual {v0, v1, v2}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.visit:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;Ljava/util/Collection;)V // method@0145 │ │ +0059ee: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=15 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; │ │ 0x0000 - 0x0006 reg=1 (null) Ljava/lang/Object; │ │ 0x0000 - 0x0006 reg=2 (null) Ljava/util/Collection; │ │ @@ -7535,68 +7533,68 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;Ljava/util/Collection;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 11 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 58 16-bit code units │ │ -0059e4: |[0059e4] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.visit:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;Ljava/util/Collection;)V │ │ -0059f4: 5290 9700 |0000: iget v0, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ -0059f8: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -0059fa: 1202 |0003: const/4 v2, #int 0 // #0 │ │ -0059fc: 5493 9800 |0004: iget-object v3, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ -005a00: 2133 |0006: array-length v3, v3 │ │ -005a02: 3532 3200 |0007: if-ge v2, v3, 0039 // +0032 │ │ -005a06: 0106 |0009: move v6, v0 │ │ -005a08: 0124 |000a: move v4, v2 │ │ -005a0a: 0145 |000b: move v5, v4 │ │ -005a0c: 1203 |000c: const/4 v3, #int 0 // #0 │ │ -005a0e: 1217 |000d: const/4 v7, #int 1 // #1 │ │ -005a10: 3503 1e00 |000e: if-ge v3, v0, 002c // +001e │ │ -005a14: b074 |0010: add-int/2addr v4, v7 │ │ -005a16: d805 05ff |0011: add-int/lit8 v5, v5, #int -1 // #ff │ │ -005a1a: d806 06ff |0013: add-int/lit8 v6, v6, #int -1 // #ff │ │ -005a1e: 5497 9800 |0015: iget-object v7, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ -005a22: 4407 0706 |0017: aget v7, v7, v6 │ │ -005a26: 3257 1200 |0019: if-eq v7, v5, 002b // +0012 │ │ -005a2a: 5497 9800 |001b: iget-object v7, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ -005a2e: 4407 0706 |001d: aget v7, v7, v6 │ │ -005a32: 3227 0c00 |001f: if-eq v7, v2, 002b // +000c │ │ -005a36: 5497 9800 |0021: iget-object v7, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ -005a3a: 4407 0706 |0023: aget v7, v7, v6 │ │ -005a3e: 3347 0300 |0025: if-ne v7, v4, 0028 // +0003 │ │ -005a42: 2804 |0027: goto 002b // +0004 │ │ -005a44: d803 0301 |0028: add-int/lit8 v3, v3, #int 1 // #01 │ │ -005a48: 28e3 |002a: goto 000d // -001d │ │ -005a4a: 1207 |002b: const/4 v7, #int 0 // #0 │ │ -005a4c: 3807 0a00 |002c: if-eqz v7, 0036 // +000a │ │ -005a50: 2203 7200 |002e: new-instance v3, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ -005a54: 7030 4701 9302 |0030: invoke-direct {v3, v9, v2}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;I)V // method@0147 │ │ -005a5a: 7220 6a00 3a00 |0033: invoke-interface {v10, v3}, Ljava/util/Collection;.add:(Ljava/lang/Object;)Z // method@006a │ │ -005a60: d802 0201 |0036: add-int/lit8 v2, v2, #int 1 // #01 │ │ -005a64: 28cc |0038: goto 0004 // -0034 │ │ -005a66: 0e00 |0039: return-void │ │ +0059f0: |[0059f0] t20kdc.offlinepuzzlesolver.game.NQueensSolver$1.visit:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;Ljava/util/Collection;)V │ │ +005a00: 5290 9700 |0000: iget v0, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.filled:I // field@0097 │ │ +005a04: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +005a06: 1202 |0003: const/4 v2, #int 0 // #0 │ │ +005a08: 5493 9800 |0004: iget-object v3, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ +005a0c: 2133 |0006: array-length v3, v3 │ │ +005a0e: 3532 3200 |0007: if-ge v2, v3, 0039 // +0032 │ │ +005a12: 0106 |0009: move v6, v0 │ │ +005a14: 0124 |000a: move v4, v2 │ │ +005a16: 0145 |000b: move v5, v4 │ │ +005a18: 1203 |000c: const/4 v3, #int 0 // #0 │ │ +005a1a: 1217 |000d: const/4 v7, #int 1 // #1 │ │ +005a1c: 3503 1e00 |000e: if-ge v3, v0, 002c // +001e │ │ +005a20: b074 |0010: add-int/2addr v4, v7 │ │ +005a22: d805 05ff |0011: add-int/lit8 v5, v5, #int -1 // #ff │ │ +005a26: d806 06ff |0013: add-int/lit8 v6, v6, #int -1 // #ff │ │ +005a2a: 5497 9800 |0015: iget-object v7, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ +005a2e: 4407 0706 |0017: aget v7, v7, v6 │ │ +005a32: 3257 1200 |0019: if-eq v7, v5, 002b // +0012 │ │ +005a36: 5497 9800 |001b: iget-object v7, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ +005a3a: 4407 0706 |001d: aget v7, v7, v6 │ │ +005a3e: 3227 0c00 |001f: if-eq v7, v2, 002b // +000c │ │ +005a42: 5497 9800 |0021: iget-object v7, v9, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098 │ │ +005a46: 4407 0706 |0023: aget v7, v7, v6 │ │ +005a4a: 3347 0300 |0025: if-ne v7, v4, 0028 // +0003 │ │ +005a4e: 2804 |0027: goto 002b // +0004 │ │ +005a50: d803 0301 |0028: add-int/lit8 v3, v3, #int 1 // #01 │ │ +005a54: 28e3 |002a: goto 000d // -001d │ │ +005a56: 1207 |002b: const/4 v7, #int 0 // #0 │ │ +005a58: 3807 0a00 |002c: if-eqz v7, 0036 // +000a │ │ +005a5c: 2203 7200 |002e: new-instance v3, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ +005a60: 7030 4701 9302 |0030: invoke-direct {v3, v9, v2}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;I)V // method@0147 │ │ +005a66: 7220 6a00 3a00 |0033: invoke-interface {v10, v3}, Ljava/util/Collection;.add:(Ljava/lang/Object;)Z // method@006a │ │ +005a6c: d802 0201 |0036: add-int/lit8 v2, v2, #int 1 // #01 │ │ +005a70: 28cc |0038: goto 0004 // -0034 │ │ +005a72: 0e00 |0039: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=21 │ │ 0x0004 line=22 │ │ 0x0015 line=31 │ │ 0x002e line=37 │ │ locals : │ │ 0x0000 - 0x003a reg=8 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; │ │ 0x0000 - 0x003a reg=9 (null) Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; │ │ 0x0000 - 0x003a reg=10 (null) Ljava/util/Collection; │ │ │ │ - source_file_idx : 312 (NQueensSolver.java) │ │ + source_file_idx : 314 (NQueensSolver.java) │ │ │ │ Class #52 header: │ │ class_idx : 115 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 45 │ │ -source_file_idx : 312 │ │ +source_file_idx : 314 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #52 annotations: │ │ Annotations on class │ │ @@ -7616,17 +7614,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -005ad8: |[005ad8] t20kdc.offlinepuzzlesolver.game.NQueensSolver.:()V │ │ -005ae8: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -005aee: 0e00 |0003: return-void │ │ +005ae4: |[005ae4] t20kdc.offlinepuzzlesolver.game.NQueensSolver.:()V │ │ +005af4: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +005afa: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=12 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver; │ │ │ │ Virtual methods - │ │ @@ -7635,82 +7633,82 @@ │ │ type : '(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 11 │ │ ins : 4 │ │ outs : 2 │ │ insns size : 125 16-bit code units │ │ -005af0: |[005af0] t20kdc.offlinepuzzlesolver.game.NQueensSolver.solve:(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ -005b00: 2200 7100 |0000: new-instance v0, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; // type@0071 │ │ -005b04: 7020 3d01 7000 |0002: invoke-direct {v0, v7}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver;)V // method@013d │ │ -005b0a: 7120 9d00 a000 |0005: invoke-static {v0, v10}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker$-CC;.of:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker; // method@009d │ │ -005b10: 0c0a |0008: move-result-object v10 │ │ -005b12: 2200 7200 |0009: new-instance v0, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ -005b16: 1a01 cb01 |000b: const-string v1, "board_size" // string@01cb │ │ -005b1a: 6e20 1600 1800 |000d: invoke-virtual {v8, v1}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ -005b20: 0a08 |0010: move-result v8 │ │ -005b22: 1211 |0011: const/4 v1, #int 1 // #1 │ │ -005b24: b018 |0012: add-int/2addr v8, v1 │ │ -005b26: 7020 4601 8000 |0013: invoke-direct {v0, v8}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.:(I)V // method@0146 │ │ -005b2c: 7220 9f00 0a00 |0016: invoke-interface {v10, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;.walk:(Ljava/lang/Object;)Ljava/lang/Object; // method@009f │ │ -005b32: 0c08 |0019: move-result-object v8 │ │ -005b34: 1f08 7200 |001a: check-cast v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ -005b38: 3908 0800 |001c: if-nez v8, 0024 // +0008 │ │ -005b3c: 1a08 4800 |001e: const-string v8, "It broke and failed to find a solution! Is this even possible?" // string@0048 │ │ -005b40: 6e20 5700 8900 |0020: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005b46: 2859 |0023: goto 007c // +0059 │ │ -005b48: 1a0a 4400 |0024: const-string v10, "

Solution

" // string@0044 │ │ -005b4c: 6e20 5700 a900 |0026: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005b52: 1a0a 4200 |0029: const-string v10, "

Solution (Copyable)

" // string@0042 │ │ -005b56: 6e20 5700 a900 |002b: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005b5c: 1a0a 6700 |002e: const-string v10, "
│ │ -" // string@0067
│ │ -005b60: 6e20 5700 a900                         |0030: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -005b66: 130a 2000                              |0033: const/16 v10, #int 32 // #20
│ │ -005b6a: 6e20 5500 a900                         |0035: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -005b70: 1200                                   |0038: const/4 v0, #int 0 // #0
│ │ -005b72: 1202                                   |0039: const/4 v2, #int 0 // #0
│ │ -005b74: 5483 9800                              |003a: iget-object v3, v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098
│ │ -005b78: 2133                                   |003c: array-length v3, v3
│ │ -005b7a: 1304 2b00                              |003d: const/16 v4, #int 43 // #2b
│ │ -005b7e: 3532 0800                              |003f: if-ge v2, v3, 0047 // +0008
│ │ -005b82: 6e20 5500 4900                         |0041: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -005b88: d802 0201                              |0044: add-int/lit8 v2, v2, #int 1 // #01
│ │ -005b8c: 28f4                                   |0046: goto 003a // -000c
│ │ -005b8e: 1302 0a00                              |0047: const/16 v2, #int 10 // #a
│ │ -005b92: 6e20 5500 2900                         |0049: invoke-virtual {v9, v2}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -005b98: 1203                                   |004c: const/4 v3, #int 0 // #0
│ │ -005b9a: 5485 9800                              |004d: iget-object v5, v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098
│ │ -005b9e: 2155                                   |004f: array-length v5, v5
│ │ -005ba0: 3553 2700                              |0050: if-ge v3, v5, 0077 // +0027
│ │ -005ba4: 6e20 5500 4900                         |0052: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -005baa: 1205                                   |0055: const/4 v5, #int 0 // #0
│ │ -005bac: 5486 9800                              |0056: iget-object v6, v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098
│ │ -005bb0: 2166                                   |0058: array-length v6, v6
│ │ -005bb2: 3565 1800                              |0059: if-ge v5, v6, 0071 // +0018
│ │ -005bb6: 5486 9800                              |005b: iget-object v6, v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098
│ │ -005bba: 4406 0605                              |005d: aget v6, v6, v5
│ │ -005bbe: 3336 0400                              |005f: if-ne v6, v3, 0063 // +0004
│ │ -005bc2: 1216                                   |0061: const/4 v6, #int 1 // #1
│ │ -005bc4: 2802                                   |0062: goto 0064 // +0002
│ │ -005bc6: 1206                                   |0063: const/4 v6, #int 0 // #0
│ │ -005bc8: 3806 0500                              |0064: if-eqz v6, 0069 // +0005
│ │ -005bcc: 1306 5100                              |0066: const/16 v6, #int 81 // #51
│ │ -005bd0: 2803                                   |0068: goto 006b // +0003
│ │ -005bd2: 1306 2000                              |0069: const/16 v6, #int 32 // #20
│ │ -005bd6: 6e20 5500 6900                         |006b: invoke-virtual {v9, v6}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -005bdc: d805 0501                              |006e: add-int/lit8 v5, v5, #int 1 // #01
│ │ -005be0: 28e6                                   |0070: goto 0056 // -001a
│ │ -005be2: 6e20 5500 2900                         |0071: invoke-virtual {v9, v2}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -005be8: d803 0301                              |0074: add-int/lit8 v3, v3, #int 1 // #01
│ │ -005bec: 28d7                                   |0076: goto 004d // -0029
│ │ -005bee: 1a08 3300                              |0077: const-string v8, "
│ │ -" // string@0033 │ │ -005bf2: 6e20 5700 8900 |0079: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005bf8: 0e00 |007c: return-void │ │ +005afc: |[005afc] t20kdc.offlinepuzzlesolver.game.NQueensSolver.solve:(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ +005b0c: 2200 7100 |0000: new-instance v0, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1; // type@0071 │ │ +005b10: 7020 3d01 7000 |0002: invoke-direct {v0, v7}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$1;.:(Lt20kdc/offlinepuzzlesolver/game/NQueensSolver;)V // method@013d │ │ +005b16: 7120 9d00 a000 |0005: invoke-static {v0, v10}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker$-CC;.of:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker; // method@009d │ │ +005b1c: 0c0a |0008: move-result-object v10 │ │ +005b1e: 2200 7200 |0009: new-instance v0, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ +005b22: 1a01 cd01 |000b: const-string v1, "board_size" // string@01cd │ │ +005b26: 6e20 1600 1800 |000d: invoke-virtual {v8, v1}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ +005b2c: 0a08 |0010: move-result v8 │ │ +005b2e: 1211 |0011: const/4 v1, #int 1 // #1 │ │ +005b30: b018 |0012: add-int/2addr v8, v1 │ │ +005b32: 7020 4601 8000 |0013: invoke-direct {v0, v8}, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.:(I)V // method@0146 │ │ +005b38: 7220 9f00 0a00 |0016: invoke-interface {v10, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;.walk:(Ljava/lang/Object;)Ljava/lang/Object; // method@009f │ │ +005b3e: 0c08 |0019: move-result-object v8 │ │ +005b40: 1f08 7200 |001a: check-cast v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State; // type@0072 │ │ +005b44: 3908 0800 |001c: if-nez v8, 0024 // +0008 │ │ +005b48: 1a08 4a00 |001e: const-string v8, "It broke and failed to find a solution! Is this even possible?" // string@004a │ │ +005b4c: 6e20 5700 8900 |0020: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005b52: 2859 |0023: goto 007c // +0059 │ │ +005b54: 1a0a 4600 |0024: const-string v10, "

Solution

" // string@0046 │ │ +005b58: 6e20 5700 a900 |0026: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005b5e: 1a0a 4400 |0029: const-string v10, "

Solution (Copyable)

" // string@0044 │ │ +005b62: 6e20 5700 a900 |002b: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005b68: 1a0a 6900 |002e: const-string v10, "
│ │ +" // string@0069
│ │ +005b6c: 6e20 5700 a900                         |0030: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +005b72: 130a 2000                              |0033: const/16 v10, #int 32 // #20
│ │ +005b76: 6e20 5500 a900                         |0035: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +005b7c: 1200                                   |0038: const/4 v0, #int 0 // #0
│ │ +005b7e: 1202                                   |0039: const/4 v2, #int 0 // #0
│ │ +005b80: 5483 9800                              |003a: iget-object v3, v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098
│ │ +005b84: 2133                                   |003c: array-length v3, v3
│ │ +005b86: 1304 2b00                              |003d: const/16 v4, #int 43 // #2b
│ │ +005b8a: 3532 0800                              |003f: if-ge v2, v3, 0047 // +0008
│ │ +005b8e: 6e20 5500 4900                         |0041: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +005b94: d802 0201                              |0044: add-int/lit8 v2, v2, #int 1 // #01
│ │ +005b98: 28f4                                   |0046: goto 003a // -000c
│ │ +005b9a: 1302 0a00                              |0047: const/16 v2, #int 10 // #a
│ │ +005b9e: 6e20 5500 2900                         |0049: invoke-virtual {v9, v2}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +005ba4: 1203                                   |004c: const/4 v3, #int 0 // #0
│ │ +005ba6: 5485 9800                              |004d: iget-object v5, v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098
│ │ +005baa: 2155                                   |004f: array-length v5, v5
│ │ +005bac: 3553 2700                              |0050: if-ge v3, v5, 0077 // +0027
│ │ +005bb0: 6e20 5500 4900                         |0052: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +005bb6: 1205                                   |0055: const/4 v5, #int 0 // #0
│ │ +005bb8: 5486 9800                              |0056: iget-object v6, v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098
│ │ +005bbc: 2166                                   |0058: array-length v6, v6
│ │ +005bbe: 3565 1800                              |0059: if-ge v5, v6, 0071 // +0018
│ │ +005bc2: 5486 9800                              |005b: iget-object v6, v8, Lt20kdc/offlinepuzzlesolver/game/NQueensSolver$State;.queenStates:[I // field@0098
│ │ +005bc6: 4406 0605                              |005d: aget v6, v6, v5
│ │ +005bca: 3336 0400                              |005f: if-ne v6, v3, 0063 // +0004
│ │ +005bce: 1216                                   |0061: const/4 v6, #int 1 // #1
│ │ +005bd0: 2802                                   |0062: goto 0064 // +0002
│ │ +005bd2: 1206                                   |0063: const/4 v6, #int 0 // #0
│ │ +005bd4: 3806 0500                              |0064: if-eqz v6, 0069 // +0005
│ │ +005bd8: 1306 5100                              |0066: const/16 v6, #int 81 // #51
│ │ +005bdc: 2803                                   |0068: goto 006b // +0003
│ │ +005bde: 1306 2000                              |0069: const/16 v6, #int 32 // #20
│ │ +005be2: 6e20 5500 6900                         |006b: invoke-virtual {v9, v6}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +005be8: d805 0501                              |006e: add-int/lit8 v5, v5, #int 1 // #01
│ │ +005bec: 28e6                                   |0070: goto 0056 // -001a
│ │ +005bee: 6e20 5500 2900                         |0071: invoke-virtual {v9, v2}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +005bf4: d803 0301                              |0074: add-int/lit8 v3, v3, #int 1 // #01
│ │ +005bf8: 28d7                                   |0076: goto 004d // -0029
│ │ +005bfa: 1a08 3500                              |0077: const-string v8, "
│ │ +" // string@0035 │ │ +005bfe: 6e20 5700 8900 |0079: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005c04: 0e00 |007c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=15 │ │ 0x0009 line=50 │ │ 0x0020 line=52 │ │ 0x0026 line=54 │ │ 0x002b line=55 │ │ @@ -7728,21 +7726,21 @@ │ │ 0x0079 line=69 │ │ locals : │ │ 0x0000 - 0x007d reg=7 this Lt20kdc/offlinepuzzlesolver/game/NQueensSolver; │ │ 0x0000 - 0x007d reg=8 (null) Landroid/os/Bundle; │ │ 0x0000 - 0x007d reg=9 (null) Ljava/lang/StringBuilder; │ │ 0x0000 - 0x007d reg=10 (null) Ljava/util/concurrent/atomic/AtomicBoolean; │ │ │ │ - source_file_idx : 312 (NQueensSolver.java) │ │ + source_file_idx : 314 (NQueensSolver.java) │ │ │ │ Class #53 header: │ │ class_idx : 118 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 105 │ │ -source_file_idx : 337 │ │ +source_file_idx : 339 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 2 │ │ │ │ Class #53 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;' │ │ @@ -7761,20 +7759,20 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -005c58: |[005c58] t20kdc.offlinepuzzlesolver.game.SudokuActivity.:()V │ │ -005c68: 7010 0401 0100 |0000: invoke-direct {v1}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.:()V // method@0104 │ │ -005c6e: 1300 5100 |0003: const/16 v0, #int 81 // #51 │ │ -005c72: 2300 8100 |0005: new-array v0, v0, [I // type@0081 │ │ -005c76: 5b10 9a00 |0007: iput-object v0, v1, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ -005c7a: 0e00 |0009: return-void │ │ +005c64: |[005c64] t20kdc.offlinepuzzlesolver.game.SudokuActivity.:()V │ │ +005c74: 7010 0401 0100 |0000: invoke-direct {v1}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.:()V // method@0104 │ │ +005c7a: 1300 5100 |0003: const/16 v0, #int 81 // #51 │ │ +005c7e: 2300 8100 |0005: new-array v0, v0, [I // type@0081 │ │ +005c82: 5b10 9a00 |0007: iput-object v0, v1, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ +005c86: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=12 │ │ 0x0007 line=13 │ │ locals : │ │ 0x0000 - 0x000a reg=1 this Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; │ │ │ │ @@ -7784,39 +7782,39 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 58 16-bit code units │ │ -005c7c: |[005c7c] t20kdc.offlinepuzzlesolver.game.SudokuActivity.onCreate:(Landroid/os/Bundle;)V │ │ -005c8c: 6f20 0c01 3200 |0000: invoke-super {v2, v3}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onCreate:(Landroid/os/Bundle;)V // method@010c │ │ -005c92: 1400 0600 047f |0003: const v0, #float 1.75458e+38 // #7f040006 │ │ -005c98: 6e20 5501 0200 |0006: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.setContentView:(I)V // method@0155 │ │ -005c9e: 6e20 5201 3200 |0009: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.loadSL:(Landroid/os/Bundle;)V // method@0152 │ │ -005ca4: 1403 0100 037f |000c: const v3, #float 1.74129e+38 // #7f030001 │ │ -005caa: 6e20 5101 3200 |000f: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.findViewById:(I)Landroid/view/View; // method@0151 │ │ -005cb0: 0c03 |0012: move-result-object v3 │ │ -005cb2: 1f03 1600 |0013: check-cast v3, Landroid/webkit/WebView; // type@0016 │ │ -005cb6: 6e10 2300 0300 |0015: invoke-virtual {v3}, Landroid/webkit/WebView;.getSettings:()Landroid/webkit/WebSettings; // method@0023 │ │ -005cbc: 0c00 |0018: move-result-object v0 │ │ -005cbe: 1211 |0019: const/4 v1, #int 1 // #1 │ │ -005cc0: 6e20 2000 1000 |001a: invoke-virtual {v0, v1}, Landroid/webkit/WebSettings;.setBuiltInZoomControls:(Z)V // method@0020 │ │ -005cc6: 6e20 2100 1000 |001d: invoke-virtual {v0, v1}, Landroid/webkit/WebSettings;.setJavaScriptEnabled:(Z)V // method@0021 │ │ -005ccc: 2200 7500 |0020: new-instance v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1; // type@0075 │ │ -005cd0: 7020 4b01 2000 |0022: invoke-direct {v0, v2}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1;.:(Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;)V // method@014b │ │ -005cd6: 1a01 5f01 |0025: const-string v1, "Towertop" // string@015f │ │ -005cda: 6e30 2200 0301 |0027: invoke-virtual {v3, v0, v1}, Landroid/webkit/WebView;.addJavascriptInterface:(Ljava/lang/Object;Ljava/lang/String;)V // method@0022 │ │ -005ce0: 1a00 1502 |002a: const-string v0, "file:///android_asset/sudoku_editor.html" // string@0215 │ │ -005ce4: 6e20 2500 0300 |002c: invoke-virtual {v3, v0}, Landroid/webkit/WebView;.loadUrl:(Ljava/lang/String;)V // method@0025 │ │ -005cea: 1a03 1402 |002f: const-string v3, "file:///android_asset/rsu.html" // string@0214 │ │ -005cee: 6e20 4f01 3200 |0031: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.bindRulesButton:(Ljava/lang/String;)V // method@014f │ │ -005cf4: 1c03 7700 |0034: const-class v3, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver; // type@0077 │ │ -005cf8: 6e20 5001 3200 |0036: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.bindSolveButton:(Ljava/lang/Class;)V // method@0150 │ │ -005cfe: 0e00 |0039: return-void │ │ +005c88: |[005c88] t20kdc.offlinepuzzlesolver.game.SudokuActivity.onCreate:(Landroid/os/Bundle;)V │ │ +005c98: 6f20 0c01 3200 |0000: invoke-super {v2, v3}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onCreate:(Landroid/os/Bundle;)V // method@010c │ │ +005c9e: 1400 0600 047f |0003: const v0, #float 1.75458e+38 // #7f040006 │ │ +005ca4: 6e20 5501 0200 |0006: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.setContentView:(I)V // method@0155 │ │ +005caa: 6e20 5201 3200 |0009: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.loadSL:(Landroid/os/Bundle;)V // method@0152 │ │ +005cb0: 1403 0100 037f |000c: const v3, #float 1.74129e+38 // #7f030001 │ │ +005cb6: 6e20 5101 3200 |000f: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.findViewById:(I)Landroid/view/View; // method@0151 │ │ +005cbc: 0c03 |0012: move-result-object v3 │ │ +005cbe: 1f03 1600 |0013: check-cast v3, Landroid/webkit/WebView; // type@0016 │ │ +005cc2: 6e10 2300 0300 |0015: invoke-virtual {v3}, Landroid/webkit/WebView;.getSettings:()Landroid/webkit/WebSettings; // method@0023 │ │ +005cc8: 0c00 |0018: move-result-object v0 │ │ +005cca: 1211 |0019: const/4 v1, #int 1 // #1 │ │ +005ccc: 6e20 2000 1000 |001a: invoke-virtual {v0, v1}, Landroid/webkit/WebSettings;.setBuiltInZoomControls:(Z)V // method@0020 │ │ +005cd2: 6e20 2100 1000 |001d: invoke-virtual {v0, v1}, Landroid/webkit/WebSettings;.setJavaScriptEnabled:(Z)V // method@0021 │ │ +005cd8: 2200 7500 |0020: new-instance v0, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1; // type@0075 │ │ +005cdc: 7020 4b01 2000 |0022: invoke-direct {v0, v2}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity$1;.:(Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;)V // method@014b │ │ +005ce2: 1a01 6101 |0025: const-string v1, "Towertop" // string@0161 │ │ +005ce6: 6e30 2200 0301 |0027: invoke-virtual {v3, v0, v1}, Landroid/webkit/WebView;.addJavascriptInterface:(Ljava/lang/Object;Ljava/lang/String;)V // method@0022 │ │ +005cec: 1a00 1702 |002a: const-string v0, "file:///android_asset/sudoku_editor.html" // string@0217 │ │ +005cf0: 6e20 2500 0300 |002c: invoke-virtual {v3, v0}, Landroid/webkit/WebView;.loadUrl:(Ljava/lang/String;)V // method@0025 │ │ +005cf6: 1a03 1602 |002f: const-string v3, "file:///android_asset/rsu.html" // string@0216 │ │ +005cfa: 6e20 4f01 3200 |0031: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.bindRulesButton:(Ljava/lang/String;)V // method@014f │ │ +005d00: 1c03 7700 |0034: const-class v3, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver; // type@0077 │ │ +005d04: 6e20 5001 3200 |0036: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.bindSolveButton:(Ljava/lang/Class;)V // method@0150 │ │ +005d0a: 0e00 |0039: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=17 │ │ 0x0006 line=18 │ │ 0x0009 line=19 │ │ 0x000f line=21 │ │ 0x0015 line=22 │ │ @@ -7835,61 +7833,61 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/Streamline;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 62 16-bit code units │ │ -005d00: |[005d00] t20kdc.offlinepuzzlesolver.game.SudokuActivity.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V │ │ -005d10: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -005d12: 1201 |0001: const/4 v1, #int 0 // #0 │ │ -005d14: 1302 5100 |0002: const/16 v2, #int 81 // #51 │ │ -005d18: 3521 3900 |0004: if-ge v1, v2, 003d // +0039 │ │ -005d1c: 5562 8700 |0006: iget-boolean v2, v6, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ -005d20: 1a03 da01 |0008: const-string v3, "c" // string@01da │ │ -005d24: 3802 1900 |000a: if-eqz v2, 0023 // +0019 │ │ -005d28: 2202 3200 |000c: new-instance v2, Ljava/lang/StringBuilder; // type@0032 │ │ -005d2c: 7010 5400 0200 |000e: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005d32: 6e20 5700 3200 |0011: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005d38: 6e20 5600 1200 |0014: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -005d3e: 6e10 5900 0200 |0017: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005d44: 0c02 |001a: move-result-object v2 │ │ -005d46: 5453 9a00 |001b: iget-object v3, v5, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ -005d4a: 4403 0301 |001d: aget v3, v3, v1 │ │ -005d4e: 6e30 ff00 2603 |001f: invoke-virtual {v6, v2, v3}, Lt20kdc/offlinepuzzlesolver/Streamline;.putInt:(Ljava/lang/String;I)V // method@00ff │ │ -005d54: 2818 |0022: goto 003a // +0018 │ │ -005d56: 5452 9a00 |0023: iget-object v2, v5, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ -005d5a: 2204 3200 |0025: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ -005d5e: 7010 5400 0400 |0027: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005d64: 6e20 5700 3400 |002a: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005d6a: 6e20 5600 1400 |002d: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -005d70: 6e10 5900 0400 |0030: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005d76: 0c03 |0033: move-result-object v3 │ │ -005d78: 6e30 fb00 3600 |0034: invoke-virtual {v6, v3, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.getInt:(Ljava/lang/String;I)I // method@00fb │ │ -005d7e: 0a03 |0037: move-result v3 │ │ -005d80: 4b03 0201 |0038: aput v3, v2, v1 │ │ -005d84: d801 0101 |003a: add-int/lit8 v1, v1, #int 1 // #01 │ │ -005d88: 28c6 |003c: goto 0002 // -003a │ │ -005d8a: 0e00 |003d: return-void │ │ +005d0c: |[005d0c] t20kdc.offlinepuzzlesolver.game.SudokuActivity.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V │ │ +005d1c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +005d1e: 1201 |0001: const/4 v1, #int 0 // #0 │ │ +005d20: 1302 5100 |0002: const/16 v2, #int 81 // #51 │ │ +005d24: 3521 3900 |0004: if-ge v1, v2, 003d // +0039 │ │ +005d28: 5562 8700 |0006: iget-boolean v2, v6, Lt20kdc/offlinepuzzlesolver/Streamline;.saving:Z // field@0087 │ │ +005d2c: 1a03 dc01 |0008: const-string v3, "c" // string@01dc │ │ +005d30: 3802 1900 |000a: if-eqz v2, 0023 // +0019 │ │ +005d34: 2202 3200 |000c: new-instance v2, Ljava/lang/StringBuilder; // type@0032 │ │ +005d38: 7010 5400 0200 |000e: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005d3e: 6e20 5700 3200 |0011: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005d44: 6e20 5600 1200 |0014: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005d4a: 6e10 5900 0200 |0017: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005d50: 0c02 |001a: move-result-object v2 │ │ +005d52: 5453 9a00 |001b: iget-object v3, v5, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ +005d56: 4403 0301 |001d: aget v3, v3, v1 │ │ +005d5a: 6e30 ff00 2603 |001f: invoke-virtual {v6, v2, v3}, Lt20kdc/offlinepuzzlesolver/Streamline;.putInt:(Ljava/lang/String;I)V // method@00ff │ │ +005d60: 2818 |0022: goto 003a // +0018 │ │ +005d62: 5452 9a00 |0023: iget-object v2, v5, Lt20kdc/offlinepuzzlesolver/game/SudokuActivity;.data:[I // field@009a │ │ +005d66: 2204 3200 |0025: new-instance v4, Ljava/lang/StringBuilder; // type@0032 │ │ +005d6a: 7010 5400 0400 |0027: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005d70: 6e20 5700 3400 |002a: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005d76: 6e20 5600 1400 |002d: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005d7c: 6e10 5900 0400 |0030: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005d82: 0c03 |0033: move-result-object v3 │ │ +005d84: 6e30 fb00 3600 |0034: invoke-virtual {v6, v3, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.getInt:(Ljava/lang/String;I)I // method@00fb │ │ +005d8a: 0a03 |0037: move-result v3 │ │ +005d8c: 4b03 0201 |0038: aput v3, v2, v1 │ │ +005d90: d801 0101 |003a: add-int/lit8 v1, v1, #int 1 // #01 │ │ +005d94: 28c6 |003c: goto 0002 // -003a │ │ +005d96: 0e00 |003d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0006 line=43 │ │ 0x000c line=44 │ │ 0x0023 line=46 │ │ locals : │ │ 0x0000 - 0x003e reg=5 this Lt20kdc/offlinepuzzlesolver/game/SudokuActivity; │ │ 0x0000 - 0x003e reg=6 (null) Lt20kdc/offlinepuzzlesolver/Streamline; │ │ │ │ - source_file_idx : 337 (SudokuActivity.java) │ │ + source_file_idx : 339 (SudokuActivity.java) │ │ │ │ Class #54 header: │ │ class_idx : 119 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 45 │ │ -source_file_idx : 339 │ │ +source_file_idx : 341 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 3 │ │ virtual_methods_size: 1 │ │ │ │ Class #54 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;' │ │ @@ -7905,17 +7903,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -005d8c: |[005d8c] t20kdc.offlinepuzzlesolver.game.SudokuSolver.:()V │ │ -005d9c: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ -005da2: 0e00 |0003: return-void │ │ +005d98: |[005d98] t20kdc.offlinepuzzlesolver.game.SudokuSolver.:()V │ │ +005da8: 7010 4900 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0049 │ │ +005dae: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=19 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/game/SudokuSolver; │ │ │ │ #1 : (in Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;) │ │ @@ -7923,68 +7921,68 @@ │ │ type : '(Ljava/lang/StringBuilder;Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 13 │ │ ins : 5 │ │ outs : 2 │ │ insns size : 106 16-bit code units │ │ -005da4: |[005da4] t20kdc.offlinepuzzlesolver.game.SudokuSolver.drawBoard:(Ljava/lang/StringBuilder;Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V │ │ -005db4: 1a00 6800 |0000: const-string v0, "" // string@0068 │ │ -005db8: 6e20 5700 0900 |0002: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005dbe: 1200 |0005: const/4 v0, #int 0 // #0 │ │ -005dc0: 1201 |0006: const/4 v1, #int 0 // #0 │ │ -005dc2: 1302 0900 |0007: const/16 v2, #int 9 // #9 │ │ -005dc6: 3521 5b00 |0009: if-ge v1, v2, 0064 // +005b │ │ -005dca: 3801 0b00 |000b: if-eqz v1, 0016 // +000b │ │ -005dce: dc03 0103 |000d: rem-int/lit8 v3, v1, #int 3 // #03 │ │ -005dd2: 3903 0700 |000f: if-nez v3, 0016 // +0007 │ │ -005dd6: 1a03 6c00 |0011: const-string v3, "" // string@006c │ │ -005dda: 6e20 5700 3900 |0013: invoke-virtual {v9, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005de0: 1a03 6b00 |0016: const-string v3, "" // string@006b │ │ -005de4: 6e20 5700 3900 |0018: invoke-virtual {v9, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005dea: 1203 |001b: const/4 v3, #int 0 // #0 │ │ -005dec: 3523 4000 |001c: if-ge v3, v2, 005c // +0040 │ │ -005df0: dc04 0303 |001e: rem-int/lit8 v4, v3, #int 3 // #03 │ │ -005df4: 3904 0700 |0020: if-nez v4, 0027 // +0007 │ │ -005df8: 1a04 6a00 |0022: const-string v4, "" // string@006a │ │ -005dfc: 6e20 5700 4900 |0024: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005e02: 1304 3f00 |0027: const/16 v4, #int 63 // #3f │ │ -005e06: da05 0109 |0029: mul-int/lit8 v5, v1, #int 9 // #09 │ │ -005e0a: b035 |002b: add-int/2addr v5, v3 │ │ -005e0c: 6e20 b800 5a00 |002c: invoke-virtual {v10, v5}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.getChoice:(I)I // method@00b8 │ │ -005e12: 0a06 |002f: move-result v6 │ │ -005e14: 12f7 |0030: const/4 v7, #int -1 // #ff │ │ -005e16: 3276 0800 |0031: if-eq v6, v7, 0039 // +0008 │ │ -005e1a: d806 0631 |0033: add-int/lit8 v6, v6, #int 49 // #31 │ │ -005e1e: 8e64 |0035: int-to-char v4, v6 │ │ -005e20: 1a06 0000 |0036: const-string v6, "" // string@0000 │ │ -005e24: 2803 |0038: goto 003b // +0003 │ │ -005e26: 1a06 e401 |0039: const-string v6, "color: transparent;" // string@01e4 │ │ -005e2a: 335c 0500 |003b: if-ne v12, v5, 0040 // +0005 │ │ -005e2e: 1a06 e301 |003d: const-string v6, "color: black; background: lightsalmon;" // string@01e3 │ │ -005e32: 2805 |003f: goto 0044 // +0005 │ │ -005e34: 335b 0400 |0040: if-ne v11, v5, 0044 // +0004 │ │ -005e38: 1a06 e501 |0042: const-string v6, "color: white; background: midnightblue;" // string@01e5 │ │ -005e3c: 1a05 6900 |0044: const-string v5, "" // string@0035 │ │ -005e60: 6e20 5700 4900 |0056: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005e66: d803 0301 |0059: add-int/lit8 v3, v3, #int 1 // #01 │ │ -005e6a: 28c1 |005b: goto 001c // -003f │ │ -005e6c: 1a02 3600 |005c: const-string v2, "" // string@0036 │ │ -005e70: 6e20 5700 2900 |005e: invoke-virtual {v9, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005e76: d801 0101 |0061: add-int/lit8 v1, v1, #int 1 // #01 │ │ -005e7a: 28a4 |0063: goto 0007 // -005c │ │ -005e7c: 1a0a 3400 |0064: const-string v10, "
" // string@0011 │ │ -005e50: 6e20 5700 5900 |004e: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005e56: 6e20 5500 4900 |0051: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055 │ │ -005e5c: 1a04 3500 |0054: const-string v4, "
" // string@0034 │ │ -005e80: 6e20 5700 a900 |0066: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005e86: 0e00 |0069: return-void │ │ +005db0: |[005db0] t20kdc.offlinepuzzlesolver.game.SudokuSolver.drawBoard:(Ljava/lang/StringBuilder;Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V │ │ +005dc0: 1a00 6a00 |0000: const-string v0, "" // string@006a │ │ +005dc4: 6e20 5700 0900 |0002: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005dca: 1200 |0005: const/4 v0, #int 0 // #0 │ │ +005dcc: 1201 |0006: const/4 v1, #int 0 // #0 │ │ +005dce: 1302 0900 |0007: const/16 v2, #int 9 // #9 │ │ +005dd2: 3521 5b00 |0009: if-ge v1, v2, 0064 // +005b │ │ +005dd6: 3801 0b00 |000b: if-eqz v1, 0016 // +000b │ │ +005dda: dc03 0103 |000d: rem-int/lit8 v3, v1, #int 3 // #03 │ │ +005dde: 3903 0700 |000f: if-nez v3, 0016 // +0007 │ │ +005de2: 1a03 6e00 |0011: const-string v3, "" // string@006e │ │ +005de6: 6e20 5700 3900 |0013: invoke-virtual {v9, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005dec: 1a03 6d00 |0016: const-string v3, "" // string@006d │ │ +005df0: 6e20 5700 3900 |0018: invoke-virtual {v9, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005df6: 1203 |001b: const/4 v3, #int 0 // #0 │ │ +005df8: 3523 4000 |001c: if-ge v3, v2, 005c // +0040 │ │ +005dfc: dc04 0303 |001e: rem-int/lit8 v4, v3, #int 3 // #03 │ │ +005e00: 3904 0700 |0020: if-nez v4, 0027 // +0007 │ │ +005e04: 1a04 6c00 |0022: const-string v4, "" // string@006c │ │ +005e08: 6e20 5700 4900 |0024: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005e0e: 1304 3f00 |0027: const/16 v4, #int 63 // #3f │ │ +005e12: da05 0109 |0029: mul-int/lit8 v5, v1, #int 9 // #09 │ │ +005e16: b035 |002b: add-int/2addr v5, v3 │ │ +005e18: 6e20 b800 5a00 |002c: invoke-virtual {v10, v5}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.getChoice:(I)I // method@00b8 │ │ +005e1e: 0a06 |002f: move-result v6 │ │ +005e20: 12f7 |0030: const/4 v7, #int -1 // #ff │ │ +005e22: 3276 0800 |0031: if-eq v6, v7, 0039 // +0008 │ │ +005e26: d806 0631 |0033: add-int/lit8 v6, v6, #int 49 // #31 │ │ +005e2a: 8e64 |0035: int-to-char v4, v6 │ │ +005e2c: 1a06 0000 |0036: const-string v6, "" // string@0000 │ │ +005e30: 2803 |0038: goto 003b // +0003 │ │ +005e32: 1a06 e601 |0039: const-string v6, "color: transparent;" // string@01e6 │ │ +005e36: 335c 0500 |003b: if-ne v12, v5, 0040 // +0005 │ │ +005e3a: 1a06 e501 |003d: const-string v6, "color: black; background: lightsalmon;" // string@01e5 │ │ +005e3e: 2805 |003f: goto 0044 // +0005 │ │ +005e40: 335b 0400 |0040: if-ne v11, v5, 0044 // +0004 │ │ +005e44: 1a06 e701 |0042: const-string v6, "color: white; background: midnightblue;" // string@01e7 │ │ +005e48: 1a05 6b00 |0044: const-string v5, "" // string@0037 │ │ +005e6c: 6e20 5700 4900 |0056: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005e72: d803 0301 |0059: add-int/lit8 v3, v3, #int 1 // #01 │ │ +005e76: 28c1 |005b: goto 001c // -003f │ │ +005e78: 1a02 3800 |005c: const-string v2, "" // string@0038 │ │ +005e7c: 6e20 5700 2900 |005e: invoke-virtual {v9, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005e82: d801 0101 |0061: add-int/lit8 v1, v1, #int 1 // #01 │ │ +005e86: 28a4 |0063: goto 0007 // -005c │ │ +005e88: 1a0a 3600 |0064: const-string v10, "
" // string@0011 │ │ +005e5c: 6e20 5700 5900 |004e: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005e62: 6e20 5500 4900 |0051: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055 │ │ +005e68: 1a04 3700 |0054: const-string v4, "
" // string@0036 │ │ +005e8c: 6e20 5700 a900 |0066: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005e92: 0e00 |0069: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=90 │ │ 0x000d line=92 │ │ 0x0013 line=93 │ │ 0x0018 line=94 │ │ 0x001e line=96 │ │ @@ -8009,91 +8007,91 @@ │ │ type : '(ILt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/lang/StringBuilder;I)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 5 │ │ outs : 5 │ │ insns size : 171 16-bit code units │ │ -005e88: |[005e88] t20kdc.offlinepuzzlesolver.game.SudokuSolver.drawReason:(ILt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/lang/StringBuilder;I)V │ │ -005e98: 1500 00ff |0000: const/high16 v0, #int -16777216 // #ff00 │ │ -005e9c: b550 |0002: and-int/2addr v0, v5 │ │ -005e9e: 1401 ffff 0000 |0003: const v1, #float 9.18341e-41 // #0000ffff │ │ -005ea4: b551 |0006: and-int/2addr v1, v5 │ │ -005ea6: 1502 0001 |0007: const/high16 v2, #int 16777216 // #100 │ │ -005eaa: 3320 0900 |0009: if-ne v0, v2, 0012 // +0009 │ │ -005eae: 1a05 4f00 |000b: const-string v5, "The lighter marked tile would conflict with the darkened row." // string@004f │ │ -005eb2: 6e20 5700 5700 |000d: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005eb8: 2900 9700 |0010: goto/16 00a7 // +0097 │ │ -005ebc: 1502 0002 |0012: const/high16 v2, #int 33554432 // #200 │ │ -005ec0: 3320 0900 |0014: if-ne v0, v2, 001d // +0009 │ │ -005ec4: 1a05 4e00 |0016: const-string v5, "The lighter marked tile would conflict with the darkened column." // string@004e │ │ -005ec8: 6e20 5700 5700 |0018: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005ece: 2900 8c00 |001b: goto/16 00a7 // +008c │ │ -005ed2: 1502 0003 |001d: const/high16 v2, #int 50331648 // #300 │ │ -005ed6: 3320 0900 |001f: if-ne v0, v2, 0028 // +0009 │ │ -005eda: 1a05 4d00 |0021: const-string v5, "The lighter marked tile would conflict with the darkened 3x3 square." // string@004d │ │ -005ede: 6e20 5700 5700 |0023: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005ee4: 2900 8100 |0026: goto/16 00a7 // +0081 │ │ -005ee8: 1502 0004 |0028: const/high16 v2, #int 67108864 // #400 │ │ -005eec: 1a03 4900 |002a: const-string v3, "It is impossible to place digit " // string@0049 │ │ -005ef0: 3320 1e00 |002c: if-ne v0, v2, 004a // +001e │ │ -005ef4: 2200 3200 |002e: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ -005ef8: 7010 5400 0000 |0030: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005efe: 6e20 5700 3000 |0033: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005f04: 7110 b400 0500 |0036: invoke-static {v5}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$Reason;.digitHROf:(I)I // method@00b4 │ │ -005f0a: 0a05 |0039: move-result v5 │ │ -005f0c: 6e20 5600 5000 |003a: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -005f12: 1a05 1000 |003d: const-string v5, " on the marked row." // string@0010 │ │ -005f16: 6e20 5700 5000 |003f: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005f1c: 6e10 5900 0000 |0042: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005f22: 0c05 |0045: move-result-object v5 │ │ -005f24: 6e20 5700 5700 |0046: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005f2a: 285e |0049: goto 00a7 // +005e │ │ -005f2c: 1502 0005 |004a: const/high16 v2, #int 83886080 // #500 │ │ -005f30: 3320 1e00 |004c: if-ne v0, v2, 006a // +001e │ │ -005f34: 2200 3200 |004e: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ -005f38: 7010 5400 0000 |0050: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005f3e: 6e20 5700 3000 |0053: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005f44: 7110 b400 0500 |0056: invoke-static {v5}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$Reason;.digitHROf:(I)I // method@00b4 │ │ -005f4a: 0a05 |0059: move-result v5 │ │ -005f4c: 6e20 5600 5000 |005a: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -005f52: 1a05 0f00 |005d: const-string v5, " on the marked column.
" // string@000f │ │ -005f56: 6e20 5700 5000 |005f: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005f5c: 6e10 5900 0000 |0062: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005f62: 0c05 |0065: move-result-object v5 │ │ -005f64: 6e20 5700 5700 |0066: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005f6a: 283e |0069: goto 00a7 // +003e │ │ -005f6c: 1502 0006 |006a: const/high16 v2, #int 100663296 // #600 │ │ -005f70: 3320 1e00 |006c: if-ne v0, v2, 008a // +001e │ │ -005f74: 2200 3200 |006e: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ -005f78: 7010 5400 0000 |0070: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005f7e: 6e20 5700 3000 |0073: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005f84: 7110 b400 0500 |0076: invoke-static {v5}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$Reason;.digitHROf:(I)I // method@00b4 │ │ -005f8a: 0a05 |0079: move-result v5 │ │ -005f8c: 6e20 5600 5000 |007a: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -005f92: 1a05 0e00 |007d: const-string v5, " on the marked 3x3 square.
" // string@000e │ │ -005f96: 6e20 5700 5000 |007f: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005f9c: 6e10 5900 0000 |0082: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005fa2: 0c05 |0085: move-result-object v5 │ │ -005fa4: 6e20 5700 5700 |0086: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005faa: 281e |0089: goto 00a7 // +001e │ │ -005fac: 2200 3200 |008a: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ -005fb0: 7010 5400 0000 |008c: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -005fb6: 1a02 4a00 |008f: const-string v2, "Reason code " // string@004a │ │ -005fba: 6e20 5700 2000 |0091: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005fc0: 7110 4500 0500 |0094: invoke-static {v5}, Ljava/lang/Integer;.toHexString:(I)Ljava/lang/String; // method@0045 │ │ -005fc6: 0c05 |0097: move-result-object v5 │ │ -005fc8: 6e20 5700 5000 |0098: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005fce: 1a05 0700 |009b: const-string v5, " ; please see light-marked and darkened tiles and source. You should never see this." // string@0007 │ │ -005fd2: 6e20 5700 5000 |009d: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005fd8: 6e10 5900 0000 |00a0: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -005fde: 0c05 |00a3: move-result-object v5 │ │ -005fe0: 6e20 5700 5700 |00a4: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -005fe6: 7058 5701 7416 |00a7: invoke-direct {v4, v7, v6, v1, v8}, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;.drawBoard:(Ljava/lang/StringBuilder;Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@0157 │ │ -005fec: 0e00 |00aa: return-void │ │ +005e94: |[005e94] t20kdc.offlinepuzzlesolver.game.SudokuSolver.drawReason:(ILt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/lang/StringBuilder;I)V │ │ +005ea4: 1500 00ff |0000: const/high16 v0, #int -16777216 // #ff00 │ │ +005ea8: b550 |0002: and-int/2addr v0, v5 │ │ +005eaa: 1401 ffff 0000 |0003: const v1, #float 9.18341e-41 // #0000ffff │ │ +005eb0: b551 |0006: and-int/2addr v1, v5 │ │ +005eb2: 1502 0001 |0007: const/high16 v2, #int 16777216 // #100 │ │ +005eb6: 3320 0900 |0009: if-ne v0, v2, 0012 // +0009 │ │ +005eba: 1a05 5100 |000b: const-string v5, "The lighter marked tile would conflict with the darkened row." // string@0051 │ │ +005ebe: 6e20 5700 5700 |000d: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005ec4: 2900 9700 |0010: goto/16 00a7 // +0097 │ │ +005ec8: 1502 0002 |0012: const/high16 v2, #int 33554432 // #200 │ │ +005ecc: 3320 0900 |0014: if-ne v0, v2, 001d // +0009 │ │ +005ed0: 1a05 5000 |0016: const-string v5, "The lighter marked tile would conflict with the darkened column." // string@0050 │ │ +005ed4: 6e20 5700 5700 |0018: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005eda: 2900 8c00 |001b: goto/16 00a7 // +008c │ │ +005ede: 1502 0003 |001d: const/high16 v2, #int 50331648 // #300 │ │ +005ee2: 3320 0900 |001f: if-ne v0, v2, 0028 // +0009 │ │ +005ee6: 1a05 4f00 |0021: const-string v5, "The lighter marked tile would conflict with the darkened 3x3 square." // string@004f │ │ +005eea: 6e20 5700 5700 |0023: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005ef0: 2900 8100 |0026: goto/16 00a7 // +0081 │ │ +005ef4: 1502 0004 |0028: const/high16 v2, #int 67108864 // #400 │ │ +005ef8: 1a03 4b00 |002a: const-string v3, "It is impossible to place digit " // string@004b │ │ +005efc: 3320 1e00 |002c: if-ne v0, v2, 004a // +001e │ │ +005f00: 2200 3200 |002e: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ +005f04: 7010 5400 0000 |0030: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005f0a: 6e20 5700 3000 |0033: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005f10: 7110 b400 0500 |0036: invoke-static {v5}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$Reason;.digitHROf:(I)I // method@00b4 │ │ +005f16: 0a05 |0039: move-result v5 │ │ +005f18: 6e20 5600 5000 |003a: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005f1e: 1a05 1000 |003d: const-string v5, " on the marked row." // string@0010 │ │ +005f22: 6e20 5700 5000 |003f: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005f28: 6e10 5900 0000 |0042: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005f2e: 0c05 |0045: move-result-object v5 │ │ +005f30: 6e20 5700 5700 |0046: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005f36: 285e |0049: goto 00a7 // +005e │ │ +005f38: 1502 0005 |004a: const/high16 v2, #int 83886080 // #500 │ │ +005f3c: 3320 1e00 |004c: if-ne v0, v2, 006a // +001e │ │ +005f40: 2200 3200 |004e: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ +005f44: 7010 5400 0000 |0050: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005f4a: 6e20 5700 3000 |0053: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005f50: 7110 b400 0500 |0056: invoke-static {v5}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$Reason;.digitHROf:(I)I // method@00b4 │ │ +005f56: 0a05 |0059: move-result v5 │ │ +005f58: 6e20 5600 5000 |005a: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005f5e: 1a05 0f00 |005d: const-string v5, " on the marked column." // string@000f │ │ +005f62: 6e20 5700 5000 |005f: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005f68: 6e10 5900 0000 |0062: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005f6e: 0c05 |0065: move-result-object v5 │ │ +005f70: 6e20 5700 5700 |0066: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005f76: 283e |0069: goto 00a7 // +003e │ │ +005f78: 1502 0006 |006a: const/high16 v2, #int 100663296 // #600 │ │ +005f7c: 3320 1e00 |006c: if-ne v0, v2, 008a // +001e │ │ +005f80: 2200 3200 |006e: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ +005f84: 7010 5400 0000 |0070: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005f8a: 6e20 5700 3000 |0073: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005f90: 7110 b400 0500 |0076: invoke-static {v5}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$Reason;.digitHROf:(I)I // method@00b4 │ │ +005f96: 0a05 |0079: move-result v5 │ │ +005f98: 6e20 5600 5000 |007a: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +005f9e: 1a05 0e00 |007d: const-string v5, " on the marked 3x3 square." // string@000e │ │ +005fa2: 6e20 5700 5000 |007f: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005fa8: 6e10 5900 0000 |0082: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005fae: 0c05 |0085: move-result-object v5 │ │ +005fb0: 6e20 5700 5700 |0086: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005fb6: 281e |0089: goto 00a7 // +001e │ │ +005fb8: 2200 3200 |008a: new-instance v0, Ljava/lang/StringBuilder; // type@0032 │ │ +005fbc: 7010 5400 0000 |008c: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +005fc2: 1a02 4c00 |008f: const-string v2, "Reason code " // string@004c │ │ +005fc6: 6e20 5700 2000 |0091: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005fcc: 7110 4500 0500 |0094: invoke-static {v5}, Ljava/lang/Integer;.toHexString:(I)Ljava/lang/String; // method@0045 │ │ +005fd2: 0c05 |0097: move-result-object v5 │ │ +005fd4: 6e20 5700 5000 |0098: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005fda: 1a05 0700 |009b: const-string v5, " ; please see light-marked and darkened tiles and source. You should never see this." // string@0007 │ │ +005fde: 6e20 5700 5000 |009d: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005fe4: 6e10 5900 0000 |00a0: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +005fea: 0c05 |00a3: move-result-object v5 │ │ +005fec: 6e20 5700 5700 |00a4: invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +005ff2: 7058 5701 7416 |00a7: invoke-direct {v4, v7, v6, v1, v8}, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;.drawBoard:(Ljava/lang/StringBuilder;Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@0157 │ │ +005ff8: 0e00 |00aa: return-void │ │ catches : (none) │ │ positions : │ │ 0x000d line=126 │ │ 0x0018 line=128 │ │ 0x0023 line=130 │ │ 0x002e line=132 │ │ 0x004e line=134 │ │ @@ -8113,134 +8111,134 @@ │ │ type : '(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 11 │ │ ins : 4 │ │ outs : 5 │ │ insns size : 244 16-bit code units │ │ -005ff0: |[005ff0] t20kdc.offlinepuzzlesolver.game.SudokuSolver.solve:(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ -006000: 2200 5200 |0000: new-instance v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -006004: 7010 b500 0000 |0002: invoke-direct {v0}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:()V // method@00b5 │ │ -00600a: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -00600c: 1202 |0006: const/4 v2, #int 0 // #0 │ │ -00600e: 1303 5100 |0007: const/16 v3, #int 81 // #51 │ │ -006012: 1214 |0009: const/4 v4, #int 1 // #1 │ │ -006014: 3532 5a00 |000a: if-ge v2, v3, 0064 // +005a │ │ -006018: 2203 3200 |000c: new-instance v3, Ljava/lang/StringBuilder; // type@0032 │ │ -00601c: 7010 5400 0300 |000e: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -006022: 1a05 da01 |0011: const-string v5, "c" // string@01da │ │ -006026: 6e20 5700 5300 |0013: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00602c: 6e20 5600 2300 |0016: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -006032: 6e10 5900 0300 |0019: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -006038: 0c03 |001c: move-result-object v3 │ │ -00603a: 6e20 1600 3800 |001d: invoke-virtual {v8, v3}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ -006040: 0a03 |0020: move-result v3 │ │ -006042: 3803 4000 |0021: if-eqz v3, 0061 // +0040 │ │ -006046: d803 03ff |0023: add-int/lit8 v3, v3, #int -1 // #ff │ │ -00604a: 6e30 bb00 2003 |0025: invoke-virtual {v0, v2, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ -006050: 0a05 |0028: move-result v5 │ │ -006052: 3805 0900 |0029: if-eqz v5, 0032 // +0009 │ │ -006056: 2204 5200 |002b: new-instance v4, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -00605a: 7040 b600 0432 |002d: invoke-direct {v4, v0, v2, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@00b6 │ │ -006060: 0740 |0030: move-object v0, v4 │ │ -006062: 2830 |0031: goto 0061 // +0030 │ │ -006064: 6e30 ba00 2003 |0032: invoke-virtual {v0, v2, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.reasonFor:(II)I // method@00ba │ │ -00606a: 0a08 |0035: move-result v8 │ │ -00606c: 220a 3200 |0036: new-instance v10, Ljava/lang/StringBuilder; // type@0032 │ │ -006070: 7010 5400 0a00 |0038: invoke-direct {v10}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -006076: 1a01 4b00 |003b: const-string v1, "The input contained a contradiction preventing tile " // string@004b │ │ -00607a: 6e20 5700 1a00 |003d: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -006080: dc01 0209 |0040: rem-int/lit8 v1, v2, #int 9 // #09 │ │ -006084: b041 |0042: add-int/2addr v1, v4 │ │ -006086: 6e20 5600 1a00 |0043: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -00608c: 1a01 2800 |0046: const-string v1, ", " // string@0028 │ │ -006090: 6e20 5700 1a00 |0048: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -006096: db01 0209 |004b: div-int/lit8 v1, v2, #int 9 // #09 │ │ -00609a: b041 |004d: add-int/2addr v1, v4 │ │ -00609c: 6e20 5600 1a00 |004e: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ -0060a2: 1a01 0d00 |0051: const-string v1, " from being placed. Reason follows.
" // string@000d │ │ -0060a6: 6e20 5700 1a00 |0053: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0060ac: 6e10 5900 0a00 |0056: invoke-virtual {v10}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -0060b2: 0c0a |0059: move-result-object v10 │ │ -0060b4: 6e20 5700 a900 |005a: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0060ba: 7052 5801 8790 |005d: invoke-direct {v7, v8, v0, v9, v2}, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;.drawReason:(ILt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/lang/StringBuilder;I)V // method@0158 │ │ -0060c0: 0e00 |0060: return-void │ │ -0060c2: d802 0201 |0061: add-int/lit8 v2, v2, #int 1 // #01 │ │ -0060c6: 28a4 |0063: goto 0007 // -005c │ │ -0060c8: 6e10 b700 0000 |0064: invoke-virtual {v0}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.checkForEpicFailure:()I // method@00b7 │ │ -0060ce: 0a08 |0067: move-result v8 │ │ -0060d0: 12f2 |0068: const/4 v2, #int -1 // #ff │ │ -0060d2: 3808 0b00 |0069: if-eqz v8, 0074 // +000b │ │ -0060d6: 1a0a 4c00 |006b: const-string v10, "The input puzzle was unsolvable in a clear fashion. Reason follows.
" // string@004c │ │ -0060da: 6e20 5700 a900 |006d: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0060e0: 7052 5801 8790 |0070: invoke-direct {v7, v8, v0, v9, v2}, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;.drawReason:(ILt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/lang/StringBuilder;I)V // method@0158 │ │ -0060e6: 0e00 |0073: return-void │ │ -0060e8: 2208 5300 |0074: new-instance v8, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; // type@0053 │ │ -0060ec: 7010 bd00 0800 |0076: invoke-direct {v8}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.:()V // method@00bd │ │ -0060f2: 7120 9d00 a800 |0079: invoke-static {v8, v10}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker$-CC;.of:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker; // method@009d │ │ -0060f8: 0c08 |007c: move-result-object v8 │ │ -0060fa: 7220 9f00 0800 |007d: invoke-interface {v8, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;.walk:(Ljava/lang/Object;)Ljava/lang/Object; // method@009f │ │ -006100: 0c0a |0080: move-result-object v10 │ │ -006102: 1f0a 5200 |0081: check-cast v10, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -006106: 390a 1e00 |0083: if-nez v10, 00a1 // +001e │ │ -00610a: 1a0a 6300 |0085: const-string v10, "

Failed.

" // string@0063 │ │ -00610e: 6e20 5700 a900 |0087: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -006114: 1a0a 6200 |008a: const-string v10, "

But here's the best shot anyway...

" // string@0062 │ │ -006118: 6e20 5700 a900 |008c: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00611e: 5c04 2700 |008f: iput-boolean v4, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ -006122: 7220 9f00 0800 |0091: invoke-interface {v8, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;.walk:(Ljava/lang/Object;)Ljava/lang/Object; // method@009f │ │ -006128: 7210 9e00 0800 |0094: invoke-interface {v8}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;.getHighestImportance:()Ljava/lang/Object; // method@009e │ │ -00612e: 0c08 |0097: move-result-object v8 │ │ -006130: 078a |0098: move-object v10, v8 │ │ -006132: 1f0a 5200 |0099: check-cast v10, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ -006136: 1a08 3f00 |009b: const-string v8, "

Closest

" // string@003f │ │ -00613a: 6e20 5700 8900 |009d: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -006140: 2806 |00a0: goto 00a6 // +0006 │ │ -006142: 1a08 4400 |00a1: const-string v8, "

Solution

" // string@0044 │ │ -006146: 6e20 5700 8900 |00a3: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00614c: 380a 4d00 |00a6: if-eqz v10, 00f3 // +004d │ │ -006150: 1a08 4700 |00a8: const-string v8, "

Main

" // string@0047 │ │ -006154: 6e20 5700 8900 |00aa: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00615a: 7052 5701 972a |00ad: invoke-direct {v7, v9, v10, v2, v2}, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;.drawBoard:(Ljava/lang/StringBuilder;Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@0157 │ │ -006160: 1a08 4600 |00b0: const-string v8, "

Formatted for copying

" // string@0046 │ │ -006164: 6e20 5700 8900 |00b2: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00616a: 1a08 6700 |00b5: const-string v8, "
│ │ -" // string@0067
│ │ -00616e: 6e20 5700 8900                         |00b7: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ -006174: 1208                                   |00ba: const/4 v8, #int 0 // #0
│ │ -006176: 1300 0900                              |00bb: const/16 v0, #int 9 // #9
│ │ -00617a: 3508 3100                              |00bd: if-ge v8, v0, 00ee // +0031
│ │ -00617e: dc03 0803                              |00bf: rem-int/lit8 v3, v8, #int 3 // #03
│ │ -006182: 1304 0a00                              |00c1: const/16 v4, #int 10 // #a
│ │ -006186: 3903 0500                              |00c3: if-nez v3, 00c8 // +0005
│ │ -00618a: 6e20 5500 4900                         |00c5: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -006190: 1203                                   |00c8: const/4 v3, #int 0 // #0
│ │ -006192: 3503 1f00                              |00c9: if-ge v3, v0, 00e8 // +001f
│ │ -006196: dc05 0303                              |00cb: rem-int/lit8 v5, v3, #int 3 // #03
│ │ -00619a: 3905 0700                              |00cd: if-nez v5, 00d4 // +0007
│ │ -00619e: 1305 2000                              |00cf: const/16 v5, #int 32 // #20
│ │ -0061a2: 6e20 5500 5900                         |00d1: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -0061a8: 1305 3f00                              |00d4: const/16 v5, #int 63 // #3f
│ │ -0061ac: da06 0809                              |00d6: mul-int/lit8 v6, v8, #int 9 // #09
│ │ -0061b0: b036                                   |00d8: add-int/2addr v6, v3
│ │ -0061b2: 6e20 b800 6a00                         |00d9: invoke-virtual {v10, v6}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.getChoice:(I)I // method@00b8
│ │ -0061b8: 0a06                                   |00dc: move-result v6
│ │ -0061ba: 3226 0500                              |00dd: if-eq v6, v2, 00e2 // +0005
│ │ -0061be: d806 0631                              |00df: add-int/lit8 v6, v6, #int 49 // #31
│ │ -0061c2: 8e65                                   |00e1: int-to-char v5, v6
│ │ -0061c4: 6e20 5500 5900                         |00e2: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -0061ca: d803 0301                              |00e5: add-int/lit8 v3, v3, #int 1 // #01
│ │ -0061ce: 28e2                                   |00e7: goto 00c9 // -001e
│ │ -0061d0: 6e20 5500 4900                         |00e8: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ -0061d6: d808 0801                              |00eb: add-int/lit8 v8, v8, #int 1 // #01
│ │ -0061da: 28ce                                   |00ed: goto 00bb // -0032
│ │ -0061dc: 1a08 3300                              |00ee: const-string v8, "
│ │ -" // string@0033 │ │ -0061e0: 6e20 5700 8900 |00f0: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0061e6: 0e00 |00f3: return-void │ │ +005ffc: |[005ffc] t20kdc.offlinepuzzlesolver.game.SudokuSolver.solve:(Landroid/os/Bundle;Ljava/lang/StringBuilder;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ │ +00600c: 2200 5200 |0000: new-instance v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +006010: 7010 b500 0000 |0002: invoke-direct {v0}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:()V // method@00b5 │ │ +006016: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +006018: 1202 |0006: const/4 v2, #int 0 // #0 │ │ +00601a: 1303 5100 |0007: const/16 v3, #int 81 // #51 │ │ +00601e: 1214 |0009: const/4 v4, #int 1 // #1 │ │ +006020: 3532 5a00 |000a: if-ge v2, v3, 0064 // +005a │ │ +006024: 2203 3200 |000c: new-instance v3, Ljava/lang/StringBuilder; // type@0032 │ │ +006028: 7010 5400 0300 |000e: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +00602e: 1a05 dc01 |0011: const-string v5, "c" // string@01dc │ │ +006032: 6e20 5700 5300 |0013: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +006038: 6e20 5600 2300 |0016: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +00603e: 6e10 5900 0300 |0019: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +006044: 0c03 |001c: move-result-object v3 │ │ +006046: 6e20 1600 3800 |001d: invoke-virtual {v8, v3}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;)I // method@0016 │ │ +00604c: 0a03 |0020: move-result v3 │ │ +00604e: 3803 4000 |0021: if-eqz v3, 0061 // +0040 │ │ +006052: d803 03ff |0023: add-int/lit8 v3, v3, #int -1 // #ff │ │ +006056: 6e30 bb00 2003 |0025: invoke-virtual {v0, v2, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.wouldBeValid:(II)Z // method@00bb │ │ +00605c: 0a05 |0028: move-result v5 │ │ +00605e: 3805 0900 |0029: if-eqz v5, 0032 // +0009 │ │ +006062: 2204 5200 |002b: new-instance v4, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +006066: 7040 b600 0432 |002d: invoke-direct {v4, v0, v2, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.:(Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@00b6 │ │ +00606c: 0740 |0030: move-object v0, v4 │ │ +00606e: 2830 |0031: goto 0061 // +0030 │ │ +006070: 6e30 ba00 2003 |0032: invoke-virtual {v0, v2, v3}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.reasonFor:(II)I // method@00ba │ │ +006076: 0a08 |0035: move-result v8 │ │ +006078: 220a 3200 |0036: new-instance v10, Ljava/lang/StringBuilder; // type@0032 │ │ +00607c: 7010 5400 0a00 |0038: invoke-direct {v10}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +006082: 1a01 4d00 |003b: const-string v1, "The input contained a contradiction preventing tile " // string@004d │ │ +006086: 6e20 5700 1a00 |003d: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00608c: dc01 0209 |0040: rem-int/lit8 v1, v2, #int 9 // #09 │ │ +006090: b041 |0042: add-int/2addr v1, v4 │ │ +006092: 6e20 5600 1a00 |0043: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +006098: 1a01 2800 |0046: const-string v1, ", " // string@0028 │ │ +00609c: 6e20 5700 1a00 |0048: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0060a2: db01 0209 |004b: div-int/lit8 v1, v2, #int 9 // #09 │ │ +0060a6: b041 |004d: add-int/2addr v1, v4 │ │ +0060a8: 6e20 5600 1a00 |004e: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0056 │ │ +0060ae: 1a01 0d00 |0051: const-string v1, " from being placed. Reason follows.
" // string@000d │ │ +0060b2: 6e20 5700 1a00 |0053: invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0060b8: 6e10 5900 0a00 |0056: invoke-virtual {v10}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0060be: 0c0a |0059: move-result-object v10 │ │ +0060c0: 6e20 5700 a900 |005a: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0060c6: 7052 5801 8790 |005d: invoke-direct {v7, v8, v0, v9, v2}, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;.drawReason:(ILt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/lang/StringBuilder;I)V // method@0158 │ │ +0060cc: 0e00 |0060: return-void │ │ +0060ce: d802 0201 |0061: add-int/lit8 v2, v2, #int 1 // #01 │ │ +0060d2: 28a4 |0063: goto 0007 // -005c │ │ +0060d4: 6e10 b700 0000 |0064: invoke-virtual {v0}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.checkForEpicFailure:()I // method@00b7 │ │ +0060da: 0a08 |0067: move-result v8 │ │ +0060dc: 12f2 |0068: const/4 v2, #int -1 // #ff │ │ +0060de: 3808 0b00 |0069: if-eqz v8, 0074 // +000b │ │ +0060e2: 1a0a 4e00 |006b: const-string v10, "The input puzzle was unsolvable in a clear fashion. Reason follows.
" // string@004e │ │ +0060e6: 6e20 5700 a900 |006d: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0060ec: 7052 5801 8790 |0070: invoke-direct {v7, v8, v0, v9, v2}, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;.drawReason:(ILt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;Ljava/lang/StringBuilder;I)V // method@0158 │ │ +0060f2: 0e00 |0073: return-void │ │ +0060f4: 2208 5300 |0074: new-instance v8, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot; // type@0053 │ │ +0060f8: 7010 be00 0800 |0076: invoke-direct {v8}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;.:()V // method@00be │ │ +0060fe: 7120 9d00 a800 |0079: invoke-static {v8, v10}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker$-CC;.of:(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker; // method@009d │ │ +006104: 0c08 |007c: move-result-object v8 │ │ +006106: 7220 9f00 0800 |007d: invoke-interface {v8, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;.walk:(Ljava/lang/Object;)Ljava/lang/Object; // method@009f │ │ +00610c: 0c0a |0080: move-result-object v10 │ │ +00610e: 1f0a 5200 |0081: check-cast v10, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +006112: 390a 1e00 |0083: if-nez v10, 00a1 // +001e │ │ +006116: 1a0a 6500 |0085: const-string v10, "

Failed.

" // string@0065 │ │ +00611a: 6e20 5700 a900 |0087: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +006120: 1a0a 6400 |008a: const-string v10, "

But here's the best shot anyway...

" // string@0064 │ │ +006124: 6e20 5700 a900 |008c: invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00612a: 5c04 2700 |008f: iput-boolean v4, v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.enableWalkabouts:Z // field@0027 │ │ +00612e: 7220 9f00 0800 |0091: invoke-interface {v8, v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;.walk:(Ljava/lang/Object;)Ljava/lang/Object; // method@009f │ │ +006134: 7210 9e00 0800 |0094: invoke-interface {v8}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalker;.getHighestImportance:()Ljava/lang/Object; // method@009e │ │ +00613a: 0c08 |0097: move-result-object v8 │ │ +00613c: 078a |0098: move-object v10, v8 │ │ +00613e: 1f0a 5200 |0099: check-cast v10, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State; // type@0052 │ │ +006142: 1a08 4100 |009b: const-string v8, "

Closest

" // string@0041 │ │ +006146: 6e20 5700 8900 |009d: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00614c: 2806 |00a0: goto 00a6 // +0006 │ │ +00614e: 1a08 4600 |00a1: const-string v8, "

Solution

" // string@0046 │ │ +006152: 6e20 5700 8900 |00a3: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +006158: 380a 4d00 |00a6: if-eqz v10, 00f3 // +004d │ │ +00615c: 1a08 4900 |00a8: const-string v8, "

Main

" // string@0049 │ │ +006160: 6e20 5700 8900 |00aa: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +006166: 7052 5701 972a |00ad: invoke-direct {v7, v9, v10, v2, v2}, Lt20kdc/offlinepuzzlesolver/game/SudokuSolver;.drawBoard:(Ljava/lang/StringBuilder;Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;II)V // method@0157 │ │ +00616c: 1a08 4800 |00b0: const-string v8, "

Formatted for copying

" // string@0048 │ │ +006170: 6e20 5700 8900 |00b2: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +006176: 1a08 6900 |00b5: const-string v8, "
│ │ +" // string@0069
│ │ +00617a: 6e20 5700 8900                         |00b7: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057
│ │ +006180: 1208                                   |00ba: const/4 v8, #int 0 // #0
│ │ +006182: 1300 0900                              |00bb: const/16 v0, #int 9 // #9
│ │ +006186: 3508 3100                              |00bd: if-ge v8, v0, 00ee // +0031
│ │ +00618a: dc03 0803                              |00bf: rem-int/lit8 v3, v8, #int 3 // #03
│ │ +00618e: 1304 0a00                              |00c1: const/16 v4, #int 10 // #a
│ │ +006192: 3903 0500                              |00c3: if-nez v3, 00c8 // +0005
│ │ +006196: 6e20 5500 4900                         |00c5: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +00619c: 1203                                   |00c8: const/4 v3, #int 0 // #0
│ │ +00619e: 3503 1f00                              |00c9: if-ge v3, v0, 00e8 // +001f
│ │ +0061a2: dc05 0303                              |00cb: rem-int/lit8 v5, v3, #int 3 // #03
│ │ +0061a6: 3905 0700                              |00cd: if-nez v5, 00d4 // +0007
│ │ +0061aa: 1305 2000                              |00cf: const/16 v5, #int 32 // #20
│ │ +0061ae: 6e20 5500 5900                         |00d1: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +0061b4: 1305 3f00                              |00d4: const/16 v5, #int 63 // #3f
│ │ +0061b8: da06 0809                              |00d6: mul-int/lit8 v6, v8, #int 9 // #09
│ │ +0061bc: b036                                   |00d8: add-int/2addr v6, v3
│ │ +0061be: 6e20 b800 6a00                         |00d9: invoke-virtual {v10, v6}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;.getChoice:(I)I // method@00b8
│ │ +0061c4: 0a06                                   |00dc: move-result v6
│ │ +0061c6: 3226 0500                              |00dd: if-eq v6, v2, 00e2 // +0005
│ │ +0061ca: d806 0631                              |00df: add-int/lit8 v6, v6, #int 49 // #31
│ │ +0061ce: 8e65                                   |00e1: int-to-char v5, v6
│ │ +0061d0: 6e20 5500 5900                         |00e2: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +0061d6: d803 0301                              |00e5: add-int/lit8 v3, v3, #int 1 // #01
│ │ +0061da: 28e2                                   |00e7: goto 00c9 // -001e
│ │ +0061dc: 6e20 5500 4900                         |00e8: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@0055
│ │ +0061e2: d808 0801                              |00eb: add-int/lit8 v8, v8, #int 1 // #01
│ │ +0061e6: 28ce                                   |00ed: goto 00bb // -0032
│ │ +0061e8: 1a08 3500                              |00ee: const-string v8, "
│ │ +" // string@0035 │ │ +0061ec: 6e20 5700 8900 |00f0: invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0061f2: 0e00 |00f3: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=23 │ │ 0x000c line=25 │ │ 0x0025 line=27 │ │ 0x002b line=28 │ │ 0x0032 line=30 │ │ @@ -8272,21 +8270,21 @@ │ │ 0x00f0 line=77 │ │ locals : │ │ 0x0000 - 0x00f4 reg=7 this Lt20kdc/offlinepuzzlesolver/game/SudokuSolver; │ │ 0x0000 - 0x00f4 reg=8 (null) Landroid/os/Bundle; │ │ 0x0000 - 0x00f4 reg=9 (null) Ljava/lang/StringBuilder; │ │ 0x0000 - 0x00f4 reg=10 (null) Ljava/util/concurrent/atomic/AtomicBoolean; │ │ │ │ - source_file_idx : 339 (SudokuSolver.java) │ │ + source_file_idx : 341 (SudokuSolver.java) │ │ │ │ Class #55 header: │ │ class_idx : 124 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 105 │ │ -source_file_idx : 315 │ │ +source_file_idx : 317 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 3 │ │ virtual_methods_size: 5 │ │ │ │ Class #55 - │ │ Class descriptor : 'Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;' │ │ @@ -8301,17 +8299,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -0062f8: |[0062f8] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.:()V │ │ -006308: 7010 0401 0000 |0000: invoke-direct {v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.:()V // method@0104 │ │ -00630e: 0e00 |0003: return-void │ │ +006304: |[006304] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.:()V │ │ +006314: 7010 0401 0000 |0000: invoke-direct {v0}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.:()V // method@0104 │ │ +00631a: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=22 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; │ │ │ │ #1 : (in Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;) │ │ @@ -8319,17 +8317,17 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;Ljava/lang/String;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -006310: |[006310] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.access$000:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;Ljava/lang/String;)V │ │ -006320: 7020 6e01 1000 |0000: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.regenerate:(Ljava/lang/String;)V // method@016e │ │ -006326: 0e00 |0003: return-void │ │ +00631c: |[00631c] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.access$000:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;Ljava/lang/String;)V │ │ +00632c: 7020 6e01 1000 |0000: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.regenerate:(Ljava/lang/String;)V // method@016e │ │ +006332: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=22 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; │ │ 0x0000 - 0x0004 reg=1 (null) Ljava/lang/String; │ │ │ │ @@ -8338,91 +8336,91 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 160 16-bit code units │ │ -0064d8: |[0064d8] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.regenerate:(Ljava/lang/String;)V │ │ -0064e8: 1400 1400 037f |0000: const v0, #float 1.74129e+38 // #7f030014 │ │ -0064ee: 6e20 6601 0700 |0003: invoke-virtual {v7, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ -0064f4: 0c00 |0006: move-result-object v0 │ │ -0064f6: 1f00 1c00 |0007: check-cast v0, Landroid/widget/TextView; // type@001c │ │ -0064fa: 1a01 3d01 |0009: const-string v1, "O3" // string@013d │ │ -0064fe: 6e20 5300 1800 |000b: invoke-virtual {v8, v1}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@0053 │ │ -006504: 0a01 |000e: move-result v1 │ │ -006506: 1402 0c00 037f |000f: const v2, #float 1.74129e+38 // #7f03000c │ │ -00650c: 6e20 6601 2700 |0012: invoke-virtual {v7, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ -006512: 0c02 |0015: move-result-object v2 │ │ -006514: 1f02 1700 |0016: check-cast v2, Landroid/widget/CheckBox; // type@0017 │ │ -006518: 6e10 2700 0200 |0018: invoke-virtual {v2}, Landroid/widget/CheckBox;.isChecked:()Z // method@0027 │ │ -00651e: 0a02 |001b: move-result v2 │ │ -006520: 3802 0400 |001c: if-eqz v2, 0020 // +0004 │ │ -006524: df01 0101 |001e: xor-int/lit8 v1, v1, #int 1 // #01 │ │ -006528: 3801 1400 |0020: if-eqz v1, 0034 // +0014 │ │ -00652c: 2201 3200 |0022: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -006530: 7010 5400 0100 |0024: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -006536: 6e20 5700 8100 |0027: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00653c: 1a08 3a01 |002a: const-string v8, "NetGuard3" // string@013a │ │ -006540: 6e20 5700 8100 |002c: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -006546: 6e10 5900 0100 |002f: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -00654c: 0c08 |0032: move-result-object v8 │ │ -00654e: 2812 |0033: goto 0045 // +0012 │ │ -006550: 2201 3200 |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -006554: 7010 5400 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -00655a: 6e20 5700 8100 |0039: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -006560: 1a08 3901 |003c: const-string v8, "NetGuard2" // string@0139 │ │ -006564: 6e20 5700 8100 |003e: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00656a: 6e10 5900 0100 |0041: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -006570: 0c08 |0044: move-result-object v8 │ │ -006572: 1a01 2901 |0045: const-string v1, "MD5" // string@0129 │ │ -006576: 7110 6500 0100 |0047: invoke-static {v1}, Ljava/security/MessageDigest;.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest; // method@0065 │ │ -00657c: 0c01 |004a: move-result-object v1 │ │ -00657e: 1a02 6601 |004b: const-string v2, "UTF-8" // string@0166 │ │ -006582: 6e20 5200 2800 |004d: invoke-virtual {v8, v2}, Ljava/lang/String;.getBytes:(Ljava/lang/String;)[B // method@0052 │ │ -006588: 0c08 |0050: move-result-object v8 │ │ -00658a: 6e20 6400 8100 |0051: invoke-virtual {v1, v8}, Ljava/security/MessageDigest;.digest:([B)[B // method@0064 │ │ -006590: 0c08 |0054: move-result-object v8 │ │ -006592: 2201 3200 |0055: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -006596: 7010 5400 0100 |0057: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -00659c: 1202 |005a: const/4 v2, #int 0 // #0 │ │ -00659e: 1203 |005b: const/4 v3, #int 0 // #0 │ │ -0065a0: 2184 |005c: array-length v4, v8 │ │ -0065a2: 3543 1900 |005d: if-ge v3, v4, 0076 // +0019 │ │ -0065a6: 1a04 1200 |005f: const-string v4, "%02X" // string@0012 │ │ -0065aa: 1215 |0061: const/4 v5, #int 1 // #1 │ │ -0065ac: 2355 8300 |0062: new-array v5, v5, [Ljava/lang/Object; // type@0083 │ │ -0065b0: 4806 0803 |0064: aget-byte v6, v8, v3 │ │ -0065b4: 7110 3e00 0600 |0066: invoke-static {v6}, Ljava/lang/Byte;.valueOf:(B)Ljava/lang/Byte; // method@003e │ │ -0065ba: 0c06 |0069: move-result-object v6 │ │ -0065bc: 4d06 0502 |006a: aput-object v6, v5, v2 │ │ -0065c0: 7120 5100 5400 |006c: invoke-static {v4, v5}, Ljava/lang/String;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@0051 │ │ -0065c6: 0c04 |006f: move-result-object v4 │ │ -0065c8: 6e20 5700 4100 |0070: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -0065ce: d803 0301 |0073: add-int/lit8 v3, v3, #int 1 // #01 │ │ -0065d2: 28e7 |0075: goto 005c // -0019 │ │ -0065d4: 6e10 5900 0100 |0076: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -0065da: 0c08 |0079: move-result-object v8 │ │ -0065dc: 6e20 3500 8000 |007a: invoke-virtual {v0, v8}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@0035 │ │ -0065e2: 2822 |007d: goto 009f // +0022 │ │ -0065e4: 0d08 |007e: move-exception v8 │ │ -0065e6: 6e10 4100 0800 |007f: invoke-virtual {v8}, Ljava/lang/Exception;.printStackTrace:()V // method@0041 │ │ -0065ec: 2201 3200 |0082: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ -0065f0: 7010 5400 0100 |0084: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ -0065f6: 1a02 8600 |0087: const-string v2, "ERROR: " // string@0086 │ │ -0065fa: 6e20 5700 2100 |0089: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -006600: 6e10 4300 0800 |008c: invoke-virtual {v8}, Ljava/lang/Exception;.toString:()Ljava/lang/String; // method@0043 │ │ -006606: 0c08 |008f: move-result-object v8 │ │ -006608: 6e20 5700 8100 |0090: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -00660e: 1a08 0600 |0093: const-string v8, " ; CHECK LOGS" // string@0006 │ │ -006612: 6e20 5700 8100 |0095: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ -006618: 6e10 5900 0100 |0098: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ -00661e: 0c08 |009b: move-result-object v8 │ │ -006620: 6e20 3500 8000 |009c: invoke-virtual {v0, v8}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@0035 │ │ -006626: 0e00 |009f: return-void │ │ +0064e4: |[0064e4] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.regenerate:(Ljava/lang/String;)V │ │ +0064f4: 1400 1400 037f |0000: const v0, #float 1.74129e+38 // #7f030014 │ │ +0064fa: 6e20 6601 0700 |0003: invoke-virtual {v7, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ +006500: 0c00 |0006: move-result-object v0 │ │ +006502: 1f00 1c00 |0007: check-cast v0, Landroid/widget/TextView; // type@001c │ │ +006506: 1a01 3f01 |0009: const-string v1, "O3" // string@013f │ │ +00650a: 6e20 5300 1800 |000b: invoke-virtual {v8, v1}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@0053 │ │ +006510: 0a01 |000e: move-result v1 │ │ +006512: 1402 0c00 037f |000f: const v2, #float 1.74129e+38 // #7f03000c │ │ +006518: 6e20 6601 2700 |0012: invoke-virtual {v7, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ +00651e: 0c02 |0015: move-result-object v2 │ │ +006520: 1f02 1700 |0016: check-cast v2, Landroid/widget/CheckBox; // type@0017 │ │ +006524: 6e10 2700 0200 |0018: invoke-virtual {v2}, Landroid/widget/CheckBox;.isChecked:()Z // method@0027 │ │ +00652a: 0a02 |001b: move-result v2 │ │ +00652c: 3802 0400 |001c: if-eqz v2, 0020 // +0004 │ │ +006530: df01 0101 |001e: xor-int/lit8 v1, v1, #int 1 // #01 │ │ +006534: 3801 1400 |0020: if-eqz v1, 0034 // +0014 │ │ +006538: 2201 3200 |0022: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +00653c: 7010 5400 0100 |0024: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +006542: 6e20 5700 8100 |0027: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +006548: 1a08 3c01 |002a: const-string v8, "NetGuard3" // string@013c │ │ +00654c: 6e20 5700 8100 |002c: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +006552: 6e10 5900 0100 |002f: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +006558: 0c08 |0032: move-result-object v8 │ │ +00655a: 2812 |0033: goto 0045 // +0012 │ │ +00655c: 2201 3200 |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +006560: 7010 5400 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +006566: 6e20 5700 8100 |0039: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00656c: 1a08 3b01 |003c: const-string v8, "NetGuard2" // string@013b │ │ +006570: 6e20 5700 8100 |003e: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +006576: 6e10 5900 0100 |0041: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +00657c: 0c08 |0044: move-result-object v8 │ │ +00657e: 1a01 2b01 |0045: const-string v1, "MD5" // string@012b │ │ +006582: 7110 6500 0100 |0047: invoke-static {v1}, Ljava/security/MessageDigest;.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest; // method@0065 │ │ +006588: 0c01 |004a: move-result-object v1 │ │ +00658a: 1a02 6801 |004b: const-string v2, "UTF-8" // string@0168 │ │ +00658e: 6e20 5200 2800 |004d: invoke-virtual {v8, v2}, Ljava/lang/String;.getBytes:(Ljava/lang/String;)[B // method@0052 │ │ +006594: 0c08 |0050: move-result-object v8 │ │ +006596: 6e20 6400 8100 |0051: invoke-virtual {v1, v8}, Ljava/security/MessageDigest;.digest:([B)[B // method@0064 │ │ +00659c: 0c08 |0054: move-result-object v8 │ │ +00659e: 2201 3200 |0055: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +0065a2: 7010 5400 0100 |0057: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +0065a8: 1202 |005a: const/4 v2, #int 0 // #0 │ │ +0065aa: 1203 |005b: const/4 v3, #int 0 // #0 │ │ +0065ac: 2184 |005c: array-length v4, v8 │ │ +0065ae: 3543 1900 |005d: if-ge v3, v4, 0076 // +0019 │ │ +0065b2: 1a04 1200 |005f: const-string v4, "%02X" // string@0012 │ │ +0065b6: 1215 |0061: const/4 v5, #int 1 // #1 │ │ +0065b8: 2355 8300 |0062: new-array v5, v5, [Ljava/lang/Object; // type@0083 │ │ +0065bc: 4806 0803 |0064: aget-byte v6, v8, v3 │ │ +0065c0: 7110 3e00 0600 |0066: invoke-static {v6}, Ljava/lang/Byte;.valueOf:(B)Ljava/lang/Byte; // method@003e │ │ +0065c6: 0c06 |0069: move-result-object v6 │ │ +0065c8: 4d06 0502 |006a: aput-object v6, v5, v2 │ │ +0065cc: 7120 5100 5400 |006c: invoke-static {v4, v5}, Ljava/lang/String;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@0051 │ │ +0065d2: 0c04 |006f: move-result-object v4 │ │ +0065d4: 6e20 5700 4100 |0070: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +0065da: d803 0301 |0073: add-int/lit8 v3, v3, #int 1 // #01 │ │ +0065de: 28e7 |0075: goto 005c // -0019 │ │ +0065e0: 6e10 5900 0100 |0076: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +0065e6: 0c08 |0079: move-result-object v8 │ │ +0065e8: 6e20 3500 8000 |007a: invoke-virtual {v0, v8}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@0035 │ │ +0065ee: 2822 |007d: goto 009f // +0022 │ │ +0065f0: 0d08 |007e: move-exception v8 │ │ +0065f2: 6e10 4100 0800 |007f: invoke-virtual {v8}, Ljava/lang/Exception;.printStackTrace:()V // method@0041 │ │ +0065f8: 2201 3200 |0082: new-instance v1, Ljava/lang/StringBuilder; // type@0032 │ │ +0065fc: 7010 5400 0100 |0084: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0054 │ │ +006602: 1a02 8800 |0087: const-string v2, "ERROR: " // string@0088 │ │ +006606: 6e20 5700 2100 |0089: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00660c: 6e10 4300 0800 |008c: invoke-virtual {v8}, Ljava/lang/Exception;.toString:()Ljava/lang/String; // method@0043 │ │ +006612: 0c08 |008f: move-result-object v8 │ │ +006614: 6e20 5700 8100 |0090: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +00661a: 1a08 0600 |0093: const-string v8, " ; CHECK LOGS" // string@0006 │ │ +00661e: 6e20 5700 8100 |0095: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0057 │ │ +006624: 6e10 5900 0100 |0098: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0059 │ │ +00662a: 0c08 |009b: move-result-object v8 │ │ +00662c: 6e20 3500 8000 |009c: invoke-virtual {v0, v8}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@0035 │ │ +006632: 0e00 |009f: return-void │ │ catches : 1 │ │ 0x0009 - 0x007d │ │ Ljava/lang/Exception; -> 0x007e │ │ positions : │ │ 0x0003 line=67 │ │ 0x000b line=72 │ │ 0x0012 line=73 │ │ @@ -8446,27 +8444,27 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 25 16-bit code units │ │ -006328: |[006328] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.lambda$onCreate$0$NetGuardChallengeActivity:(Landroid/view/View;)V │ │ -006338: 1402 1400 037f |0000: const v2, #float 1.74129e+38 // #7f030014 │ │ -00633e: 6e20 6601 2100 |0003: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ -006344: 0c02 |0006: move-result-object v2 │ │ -006346: 1f02 1c00 |0007: check-cast v2, Landroid/widget/TextView; // type@001c │ │ -00634a: 1a00 e101 |0009: const-string v0, "clipboard" // string@01e1 │ │ -00634e: 6e20 6701 0100 |000b: invoke-virtual {v1, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@0167 │ │ -006354: 0c00 |000e: move-result-object v0 │ │ -006356: 1f00 0500 |000f: check-cast v0, Landroid/content/ClipboardManager; // type@0005 │ │ -00635a: 6e10 3400 0200 |0011: invoke-virtual {v2}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@0034 │ │ -006360: 0c02 |0014: move-result-object v2 │ │ -006362: 6e20 0a00 2000 |0015: invoke-virtual {v0, v2}, Landroid/content/ClipboardManager;.setText:(Ljava/lang/CharSequence;)V // method@000a │ │ -006368: 0e00 |0018: return-void │ │ +006334: |[006334] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.lambda$onCreate$0$NetGuardChallengeActivity:(Landroid/view/View;)V │ │ +006344: 1402 1400 037f |0000: const v2, #float 1.74129e+38 // #7f030014 │ │ +00634a: 6e20 6601 2100 |0003: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ +006350: 0c02 |0006: move-result-object v2 │ │ +006352: 1f02 1c00 |0007: check-cast v2, Landroid/widget/TextView; // type@001c │ │ +006356: 1a00 e301 |0009: const-string v0, "clipboard" // string@01e3 │ │ +00635a: 6e20 6701 0100 |000b: invoke-virtual {v1, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@0167 │ │ +006360: 0c00 |000e: move-result-object v0 │ │ +006362: 1f00 0500 |000f: check-cast v0, Landroid/content/ClipboardManager; // type@0005 │ │ +006366: 6e10 3400 0200 |0011: invoke-virtual {v2}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@0034 │ │ +00636c: 0c02 |0014: move-result-object v2 │ │ +00636e: 6e20 0a00 2000 |0015: invoke-virtual {v0, v2}, Landroid/content/ClipboardManager;.setText:(Ljava/lang/CharSequence;)V // method@000a │ │ +006374: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=44 │ │ 0x000b line=45 │ │ locals : │ │ 0x0000 - 0x0019 reg=1 this Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; │ │ 0x0000 - 0x0019 reg=2 (null) Landroid/view/View; │ │ @@ -8476,28 +8474,28 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 27 16-bit code units │ │ -00636c: |[00636c] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.lambda$onCreate$1$NetGuardChallengeActivity:(Landroid/view/View;)V │ │ -00637c: 1a02 e101 |0000: const-string v2, "clipboard" // string@01e1 │ │ -006380: 6e20 6701 2100 |0002: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@0167 │ │ -006386: 0c02 |0005: move-result-object v2 │ │ -006388: 1f02 0500 |0006: check-cast v2, Landroid/content/ClipboardManager; // type@0005 │ │ -00638c: 6e10 0900 0200 |0008: invoke-virtual {v2}, Landroid/content/ClipboardManager;.getText:()Ljava/lang/CharSequence; // method@0009 │ │ -006392: 0c02 |000b: move-result-object v2 │ │ -006394: 3802 0e00 |000c: if-eqz v2, 001a // +000e │ │ -006398: 1400 0a00 037f |000e: const v0, #float 1.74129e+38 // #7f03000a │ │ -00639e: 6e20 6601 0100 |0011: invoke-virtual {v1, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ -0063a4: 0c00 |0014: move-result-object v0 │ │ -0063a6: 1f00 1800 |0015: check-cast v0, Landroid/widget/EditText; // type@0018 │ │ -0063aa: 6e20 2d00 2000 |0017: invoke-virtual {v0, v2}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@002d │ │ -0063b0: 0e00 |001a: return-void │ │ +006378: |[006378] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.lambda$onCreate$1$NetGuardChallengeActivity:(Landroid/view/View;)V │ │ +006388: 1a02 e301 |0000: const-string v2, "clipboard" // string@01e3 │ │ +00638c: 6e20 6701 2100 |0002: invoke-virtual {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@0167 │ │ +006392: 0c02 |0005: move-result-object v2 │ │ +006394: 1f02 0500 |0006: check-cast v2, Landroid/content/ClipboardManager; // type@0005 │ │ +006398: 6e10 0900 0200 |0008: invoke-virtual {v2}, Landroid/content/ClipboardManager;.getText:()Ljava/lang/CharSequence; // method@0009 │ │ +00639e: 0c02 |000b: move-result-object v2 │ │ +0063a0: 3802 0e00 |000c: if-eqz v2, 001a // +000e │ │ +0063a4: 1400 0a00 037f |000e: const v0, #float 1.74129e+38 // #7f03000a │ │ +0063aa: 6e20 6601 0100 |0011: invoke-virtual {v1, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ +0063b0: 0c00 |0014: move-result-object v0 │ │ +0063b2: 1f00 1800 |0015: check-cast v0, Landroid/widget/EditText; // type@0018 │ │ +0063b6: 6e20 2d00 2000 |0017: invoke-virtual {v0, v2}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@002d │ │ +0063bc: 0e00 |001a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=48 │ │ 0x0011 line=50 │ │ locals : │ │ 0x0000 - 0x001b reg=1 this Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; │ │ 0x0000 - 0x001b reg=2 (null) Landroid/view/View; │ │ @@ -8507,25 +8505,25 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x1001 (PUBLIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 21 16-bit code units │ │ -0063b4: |[0063b4] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.lambda$onCreate$2$NetGuardChallengeActivity:(Landroid/view/View;)V │ │ -0063c4: 1401 0a00 037f |0000: const v1, #float 1.74129e+38 // #7f03000a │ │ -0063ca: 6e20 6601 1000 |0003: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ -0063d0: 0c01 |0006: move-result-object v1 │ │ -0063d2: 1f01 1800 |0007: check-cast v1, Landroid/widget/EditText; // type@0018 │ │ -0063d6: 6e10 2c00 0100 |0009: invoke-virtual {v1}, Landroid/widget/EditText;.getText:()Landroid/text/Editable; // method@002c │ │ -0063dc: 0c01 |000c: move-result-object v1 │ │ -0063de: 6e10 4a00 0100 |000d: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@004a │ │ -0063e4: 0c01 |0010: move-result-object v1 │ │ -0063e6: 7020 6e01 1000 |0011: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.regenerate:(Ljava/lang/String;)V // method@016e │ │ -0063ec: 0e00 |0014: return-void │ │ +0063c0: |[0063c0] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.lambda$onCreate$2$NetGuardChallengeActivity:(Landroid/view/View;)V │ │ +0063d0: 1401 0a00 037f |0000: const v1, #float 1.74129e+38 // #7f03000a │ │ +0063d6: 6e20 6601 1000 |0003: invoke-virtual {v0, v1}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ +0063dc: 0c01 |0006: move-result-object v1 │ │ +0063de: 1f01 1800 |0007: check-cast v1, Landroid/widget/EditText; // type@0018 │ │ +0063e2: 6e10 2c00 0100 |0009: invoke-virtual {v1}, Landroid/widget/EditText;.getText:()Landroid/text/Editable; // method@002c │ │ +0063e8: 0c01 |000c: move-result-object v1 │ │ +0063ea: 6e10 4a00 0100 |000d: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@004a │ │ +0063f0: 0c01 |0010: move-result-object v1 │ │ +0063f2: 7020 6e01 1000 |0011: invoke-direct {v0, v1}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.regenerate:(Ljava/lang/String;)V // method@016e │ │ +0063f8: 0e00 |0014: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=53 │ │ locals : │ │ 0x0000 - 0x0015 reg=0 this Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; │ │ 0x0000 - 0x0015 reg=1 (null) Landroid/view/View; │ │ │ │ @@ -8534,45 +8532,45 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 75 16-bit code units │ │ -0063f0: |[0063f0] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.onCreate:(Landroid/os/Bundle;)V │ │ -006400: 6f20 0c01 3200 |0000: invoke-super {v2, v3}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onCreate:(Landroid/os/Bundle;)V // method@010c │ │ -006406: 1400 0400 047f |0003: const v0, #float 1.75458e+38 // #7f040004 │ │ -00640c: 6e20 6f01 0200 |0006: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.setContentView:(I)V // method@016f │ │ -006412: 1400 0a00 037f |0009: const v0, #float 1.74129e+38 // #7f03000a │ │ -006418: 6e20 6601 0200 |000c: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ -00641e: 0c00 |000f: move-result-object v0 │ │ -006420: 1f00 1800 |0010: check-cast v0, Landroid/widget/EditText; // type@0018 │ │ -006424: 2201 7b00 |0012: new-instance v1, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1; // type@007b │ │ -006428: 7020 6001 2100 |0014: invoke-direct {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1;.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V // method@0160 │ │ -00642e: 6e20 2b00 1000 |0017: invoke-virtual {v0, v1}, Landroid/widget/EditText;.addTextChangedListener:(Landroid/text/TextWatcher;)V // method@002b │ │ -006434: 1400 0200 037f |001a: const v0, #float 1.74129e+38 // #7f030002 │ │ -00643a: 6e20 6601 0200 |001d: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ -006440: 0c00 |0020: move-result-object v0 │ │ -006442: 2201 7800 |0021: new-instance v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ; // type@0078 │ │ -006446: 7020 5a01 2100 |0023: invoke-direct {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ;.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V // method@015a │ │ -00644c: 6e20 1f00 1000 |0026: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ -006452: 1400 0400 037f |0029: const v0, #float 1.74129e+38 // #7f030004 │ │ -006458: 6e20 6601 0200 |002c: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ -00645e: 0c00 |002f: move-result-object v0 │ │ -006460: 2201 7a00 |0030: new-instance v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc; // type@007a │ │ -006464: 7020 5e01 2100 |0032: invoke-direct {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc;.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V // method@015e │ │ -00646a: 6e20 1f00 1000 |0035: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ -006470: 1400 0c00 037f |0038: const v0, #float 1.74129e+38 // #7f03000c │ │ -006476: 6e20 6601 0200 |003b: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ -00647c: 0c00 |003e: move-result-object v0 │ │ -00647e: 2201 7900 |003f: new-instance v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk; // type@0079 │ │ -006482: 7020 5c01 2100 |0041: invoke-direct {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk;.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V // method@015c │ │ -006488: 6e20 1f00 1000 |0044: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ -00648e: 6e20 6b01 3200 |0047: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.loadSL:(Landroid/os/Bundle;)V // method@016b │ │ -006494: 0e00 |004a: return-void │ │ +0063fc: |[0063fc] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.onCreate:(Landroid/os/Bundle;)V │ │ +00640c: 6f20 0c01 3200 |0000: invoke-super {v2, v3}, Lt20kdc/offlinepuzzlesolver/StreamlineActivity;.onCreate:(Landroid/os/Bundle;)V // method@010c │ │ +006412: 1400 0400 047f |0003: const v0, #float 1.75458e+38 // #7f040004 │ │ +006418: 6e20 6f01 0200 |0006: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.setContentView:(I)V // method@016f │ │ +00641e: 1400 0a00 037f |0009: const v0, #float 1.74129e+38 // #7f03000a │ │ +006424: 6e20 6601 0200 |000c: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ +00642a: 0c00 |000f: move-result-object v0 │ │ +00642c: 1f00 1800 |0010: check-cast v0, Landroid/widget/EditText; // type@0018 │ │ +006430: 2201 7b00 |0012: new-instance v1, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1; // type@007b │ │ +006434: 7020 6001 2100 |0014: invoke-direct {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1;.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V // method@0160 │ │ +00643a: 6e20 2b00 1000 |0017: invoke-virtual {v0, v1}, Landroid/widget/EditText;.addTextChangedListener:(Landroid/text/TextWatcher;)V // method@002b │ │ +006440: 1400 0200 037f |001a: const v0, #float 1.74129e+38 // #7f030002 │ │ +006446: 6e20 6601 0200 |001d: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ +00644c: 0c00 |0020: move-result-object v0 │ │ +00644e: 2201 7800 |0021: new-instance v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ; // type@0078 │ │ +006452: 7020 5a01 2100 |0023: invoke-direct {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ;.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V // method@015a │ │ +006458: 6e20 1f00 1000 |0026: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ +00645e: 1400 0400 037f |0029: const v0, #float 1.74129e+38 // #7f030004 │ │ +006464: 6e20 6601 0200 |002c: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ +00646a: 0c00 |002f: move-result-object v0 │ │ +00646c: 2201 7a00 |0030: new-instance v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc; // type@007a │ │ +006470: 7020 5e01 2100 |0032: invoke-direct {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc;.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V // method@015e │ │ +006476: 6e20 1f00 1000 |0035: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ +00647c: 1400 0c00 037f |0038: const v0, #float 1.74129e+38 // #7f03000c │ │ +006482: 6e20 6601 0200 |003b: invoke-virtual {v2, v0}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.findViewById:(I)Landroid/view/View; // method@0166 │ │ +006488: 0c00 |003e: move-result-object v0 │ │ +00648a: 2201 7900 |003f: new-instance v1, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk; // type@0079 │ │ +00648e: 7020 5c01 2100 |0041: invoke-direct {v1, v2}, Lt20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk;.:(Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;)V // method@015c │ │ +006494: 6e20 1f00 1000 |0044: invoke-virtual {v0, v1}, Landroid/view/View;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@001f │ │ +00649a: 6e20 6b01 3200 |0047: invoke-virtual {v2, v3}, Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity;.loadSL:(Landroid/os/Bundle;)V // method@016b │ │ +0064a0: 0e00 |004a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=25 │ │ 0x0006 line=26 │ │ 0x000c line=27 │ │ 0x001d line=43 │ │ 0x002c line=47 │ │ @@ -8587,29 +8585,29 @@ │ │ type : '(Lt20kdc/offlinepuzzlesolver/Streamline;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 24 16-bit code units │ │ -006498: |[006498] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V │ │ -0064a8: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -0064aa: 7110 3d00 0000 |0001: invoke-static {v0}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@003d │ │ -0064b0: 0c00 |0004: move-result-object v0 │ │ -0064b2: 1a01 7002 |0005: const-string v1, "ng_compat" // string@0270 │ │ -0064b6: 1402 0c00 037f |0007: const v2, #float 1.74129e+38 // #7f03000c │ │ -0064bc: 6e40 fd00 1402 |000a: invoke-virtual {v4, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ -0064c2: 6200 0000 |000d: sget-object v0, Landroid/os/Build;.SERIAL:Ljava/lang/String; // field@0000 │ │ -0064c6: 1a01 6f02 |000f: const-string v1, "ng_challenge" // string@026f │ │ -0064ca: 1402 0a00 037f |0011: const v2, #float 1.74129e+38 // #7f03000a │ │ -0064d0: 6e40 fd00 1402 |0014: invoke-virtual {v4, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ -0064d6: 0e00 |0017: return-void │ │ +0064a4: |[0064a4] t20kdc.offlinepuzzlesolver.ungame.NetGuardChallengeActivity.onStreamline:(Lt20kdc/offlinepuzzlesolver/Streamline;)V │ │ +0064b4: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +0064b6: 7110 3d00 0000 |0001: invoke-static {v0}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@003d │ │ +0064bc: 0c00 |0004: move-result-object v0 │ │ +0064be: 1a01 7202 |0005: const-string v1, "ng_compat" // string@0272 │ │ +0064c2: 1402 0c00 037f |0007: const v2, #float 1.74129e+38 // #7f03000c │ │ +0064c8: 6e40 fd00 1402 |000a: invoke-virtual {v4, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ +0064ce: 6200 0000 |000d: sget-object v0, Landroid/os/Build;.SERIAL:Ljava/lang/String; // field@0000 │ │ +0064d2: 1a01 7102 |000f: const-string v1, "ng_challenge" // string@0271 │ │ +0064d6: 1402 0a00 037f |0011: const v2, #float 1.74129e+38 // #7f03000a │ │ +0064dc: 6e40 fd00 1402 |0014: invoke-virtual {v4, v1, v2, v0}, Lt20kdc/offlinepuzzlesolver/Streamline;.interact:(Ljava/lang/String;ILjava/lang/Object;)V // method@00fd │ │ +0064e2: 0e00 |0017: return-void │ │ catches : (none) │ │ positions : │ │ 0x0001 line=61 │ │ 0x000d line=62 │ │ locals : │ │ 0x0000 - 0x0018 reg=3 this Lt20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity; │ │ 0x0000 - 0x0018 reg=4 (null) Lt20kdc/offlinepuzzlesolver/Streamline; │ │ │ │ - source_file_idx : 315 (NetGuardChallengeActivity.java) │ │ + source_file_idx : 317 (NetGuardChallengeActivity.java) │ ├── classes.jar │ │ ├── zipinfo {} │ │ │ @@ -1,20 +1,20 @@ │ │ │ -Zip file size: 83366 bytes, number of entries: 56 │ │ │ +Zip file size: 83417 bytes, number of entries: 56 │ │ │ ?rwxrwxr-x 2.0 unx 386 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT.class │ │ │ ?rwxrwxr-x 2.0 unx 225 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node.class │ │ │ -?rwxrwxr-x 2.0 unx 2532 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder.class │ │ │ -?rwxrwxr-x 2.0 unx 585 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/GA.class │ │ │ +?rwxrwxr-x 2.0 unx 2541 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder.class │ │ │ +?rwxrwxr-x 2.0 unx 579 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/GA.class │ │ │ ?rwxrwxr-x 2.0 unx 627 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/GML.class │ │ │ ?rwxrwxr-x 2.0 unx 484 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/TreeWalker$-CC.class │ │ │ ?rwxrwxr-x 2.0 unx 209 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/TreeWalker.class │ │ │ ?rwxrwxr-x 2.0 unx 304 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot.class │ │ │ -?rwxrwxr-x 2.0 unx 552 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1.class │ │ │ +?rwxrwxr-x 2.0 unx 564 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1.class │ │ │ ?rwxrwxr-x 2.0 unx 3293 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/sudoku/STMain.class │ │ │ ?rwxrwxr-x 2.0 unx 661 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$Reason.class │ │ │ -?rwxrwxr-x 2.0 unx 2179 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State.class │ │ │ +?rwxrwxr-x 2.0 unx 2191 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State.class │ │ │ ?rwxrwxr-x 2.0 unx 511 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$3KgMNc8dvEKK7aLxKdJeVOdP9SE.class │ │ │ ?rwxrwxr-x 2.0 unx 511 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$BwQ7cjr3FwkpnXHkHkAb7KpXrmI.class │ │ │ ?rwxrwxr-x 2.0 unx 511 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$_6VfIzcFO98HzFOnWqsMHUwws-s.class │ │ │ ?rwxrwxr-x 2.0 unx 511 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/-$$Lambda$MainActivity$bpa1A-WTVgiWQmvcDZytZTB8tPE.class │ │ │ ?rwxrwxr-x 2.0 unx 664 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$JhPVwJuZoOWPpMoqBfbDv-3r-vs.class │ │ │ ?rwxrwxr-x 2.0 unx 890 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$PuzzleSolverAsyncThread$N1ih3huZW3jzp16sxPgcNtgHnvA.class │ │ │ ?rwxrwxr-x 2.0 unx 667 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/-$$Lambda$StreamlineActivity$oJ7jQMPH-bDQ2AQw5368hn6ti64.class │ │ │ @@ -40,19 +40,19 @@ │ │ │ ?rwxrwxr-x 2.0 unx 199 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/Solver.class │ │ │ ?rwxrwxr-x 2.0 unx 482 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/SudokuActivity$1.class │ │ │ ?rwxrwxr-x 2.0 unx 604 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$8gBjvETtXLhRk7qfeJ-gG0DHMcQ.class │ │ │ ?rwxrwxr-x 2.0 unx 604 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$DcUMxUDoXu4wd9OKKD784k8bJpk.class │ │ │ ?rwxrwxr-x 2.0 unx 604 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/ungame/-$$Lambda$NetGuardChallengeActivity$NweOULdFXxgO8J3Llp4KMZ7TIwc.class │ │ │ ?rwxrwxr-x 2.0 unx 801 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity$1.class │ │ │ ?rwxrwxr-x 2.0 unx 1412 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerSimple.class │ │ │ -?rwxrwxr-x 2.0 unx 4352 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads.class │ │ │ -?rwxrwxr-x 2.0 unx 2044 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot.class │ │ │ +?rwxrwxr-x 2.0 unx 4364 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads.class │ │ │ +?rwxrwxr-x 2.0 unx 2056 b- stor 80-Jan-01 00:00 t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot.class │ │ │ ?rwxrwxr-x 2.0 unx 2299 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/NCupsActivity.class │ │ │ ?rwxrwxr-x 2.0 unx 1436 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/NCupsSolver$NCupsNode.class │ │ │ ?rwxrwxr-x 2.0 unx 5687 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/NCupsSolver.class │ │ │ ?rwxrwxr-x 2.0 unx 1377 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/NQueensActivity.class │ │ │ ?rwxrwxr-x 2.0 unx 1523 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/NQueensSolver$1.class │ │ │ ?rwxrwxr-x 2.0 unx 1600 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/NQueensSolver.class │ │ │ ?rwxrwxr-x 2.0 unx 1741 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/SudokuActivity.class │ │ │ ?rwxrwxr-x 2.0 unx 4235 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/game/SudokuSolver.class │ │ │ ?rwxrwxr-x 2.0 unx 3746 b- stor 80-Jan-01 00:00 t20kdc/offlinepuzzlesolver/ungame/NetGuardChallengeActivity.class │ │ │ -56 files, 72376 bytes uncompressed, 72376 bytes compressed: 0.0% │ │ │ +56 files, 72427 bytes uncompressed, 72427 bytes compressed: 0.0% │ │ ├── t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder.class │ │ │ ├── javap -verbose -constants -s -l -private {} │ │ │ │ @@ -203,48 +203,51 @@ │ │ │ │ 45: getfield #31 // Field t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT.to:Ljava/lang/Object; │ │ │ │ 48: checkcast #41 // class t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node │ │ │ │ 51: astore_2 │ │ │ │ 52: aload_2 │ │ │ │ 53: invokeinterface #45, 1 // InterfaceMethod t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node.isEndpoint:()Z │ │ │ │ 58: istore 4 │ │ │ │ 60: iload 4 │ │ │ │ - 62: ifeq 81 │ │ │ │ + 62: ifeq 84 │ │ │ │ 65: aload_0 │ │ │ │ 66: getfield #25 // Field knownEndpoints:Ljava/util/HashSet; │ │ │ │ 69: astore_2 │ │ │ │ 70: aload_1 │ │ │ │ 71: getfield #31 // Field t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT.to:Ljava/lang/Object; │ │ │ │ - 74: astore_3 │ │ │ │ - 75: aload_2 │ │ │ │ - 76: aload_3 │ │ │ │ - 77: invokevirtual #49 // Method java/util/HashSet.add:(Ljava/lang/Object;)Z │ │ │ │ - 80: pop │ │ │ │ - 81: aload_0 │ │ │ │ - 82: getfield #18 // Field backlinks:Ljava/util/HashMap; │ │ │ │ - 85: astore_2 │ │ │ │ - 86: aload_1 │ │ │ │ - 87: getfield #31 // Field t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT.to:Ljava/lang/Object; │ │ │ │ - 90: astore_3 │ │ │ │ - 91: aload_2 │ │ │ │ - 92: aload_3 │ │ │ │ - 93: aload_1 │ │ │ │ - 94: invokevirtual #53 // Method java/util/HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ │ │ - 97: pop │ │ │ │ - 98: aload_0 │ │ │ │ - 99: getfield #23 // Field needsUpdate:Ljava/util/HashSet; │ │ │ │ - 102: astore_2 │ │ │ │ - 103: aload_1 │ │ │ │ - 104: getfield #31 // Field t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT.to:Ljava/lang/Object; │ │ │ │ - 107: astore_1 │ │ │ │ - 108: aload_2 │ │ │ │ + 74: checkcast #41 // class t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node │ │ │ │ + 77: astore_3 │ │ │ │ + 78: aload_2 │ │ │ │ + 79: aload_3 │ │ │ │ + 80: invokevirtual #49 // Method java/util/HashSet.add:(Ljava/lang/Object;)Z │ │ │ │ + 83: pop │ │ │ │ + 84: aload_0 │ │ │ │ + 85: getfield #18 // Field backlinks:Ljava/util/HashMap; │ │ │ │ + 88: astore_2 │ │ │ │ + 89: aload_1 │ │ │ │ + 90: getfield #31 // Field t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT.to:Ljava/lang/Object; │ │ │ │ + 93: checkcast #41 // class t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node │ │ │ │ + 96: astore_3 │ │ │ │ + 97: aload_2 │ │ │ │ + 98: aload_3 │ │ │ │ + 99: aload_1 │ │ │ │ + 100: invokevirtual #53 // Method java/util/HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ │ │ + 103: pop │ │ │ │ + 104: aload_0 │ │ │ │ + 105: getfield #23 // Field needsUpdate:Ljava/util/HashSet; │ │ │ │ + 108: astore_2 │ │ │ │ 109: aload_1 │ │ │ │ - 110: invokevirtual #49 // Method java/util/HashSet.add:(Ljava/lang/Object;)Z │ │ │ │ - 113: pop │ │ │ │ - 114: iconst_1 │ │ │ │ - 115: ireturn │ │ │ │ + 110: getfield #31 // Field t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT.to:Ljava/lang/Object; │ │ │ │ + 113: checkcast #41 // class t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node │ │ │ │ + 116: astore_1 │ │ │ │ + 117: aload_2 │ │ │ │ + 118: aload_1 │ │ │ │ + 119: invokevirtual #49 // Method java/util/HashSet.add:(Ljava/lang/Object;)Z │ │ │ │ + 122: pop │ │ │ │ + 123: iconst_1 │ │ │ │ + 124: ireturn │ │ │ │ │ │ │ │ public final boolean addStart(t20kdc.libofflinepuzzlesolver.genlog.ComplexPathfinder$Node, int, java.lang.Object); │ │ │ │ descriptor: (Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node;ILjava/lang/Object;)Z │ │ │ │ flags: (0x0011) ACC_PUBLIC, ACC_FINAL │ │ │ │ Code: │ │ │ │ stack=300, locals=5, args_size=4 │ │ │ │ 0: new #27 // class t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT │ │ ├── t20kdc/libofflinepuzzlesolver/genlog/GA.class │ │ │ ├── javap -verbose -constants -s -l -private {} │ │ │ │ @@ -50,29 +50,27 @@ │ │ │ │ public static java.lang.Object[] of(java.lang.Object); │ │ │ │ descriptor: (Ljava/lang/Object;)[Ljava/lang/Object; │ │ │ │ flags: (0x0009) ACC_PUBLIC, ACC_STATIC │ │ │ │ Code: │ │ │ │ stack=300, locals=1, args_size=1 │ │ │ │ 0: aload_0 │ │ │ │ 1: checkcast #10 // class "[Ljava/lang/Object;" │ │ │ │ - 4: checkcast #10 // class "[Ljava/lang/Object;" │ │ │ │ - 7: areturn │ │ │ │ + 4: areturn │ │ │ │ │ │ │ │ public static java.lang.Object[] ofLL(java.util.LinkedList, java.lang.Class); │ │ │ │ descriptor: (Ljava/util/LinkedList;Ljava/lang/Class;)[Ljava/lang/Object; │ │ │ │ flags: (0x0009) ACC_PUBLIC, ACC_STATIC │ │ │ │ Code: │ │ │ │ stack=300, locals=3, args_size=2 │ │ │ │ 0: aload_0 │ │ │ │ 1: invokevirtual #16 // Method java/util/LinkedList.size:()I │ │ │ │ 4: istore_2 │ │ │ │ 5: aload_1 │ │ │ │ 6: iload_2 │ │ │ │ 7: invokestatic #22 // Method java/lang/reflect/Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object; │ │ │ │ 10: checkcast #10 // class "[Ljava/lang/Object;" │ │ │ │ - 13: checkcast #10 // class "[Ljava/lang/Object;" │ │ │ │ - 16: astore_1 │ │ │ │ - 17: aload_0 │ │ │ │ - 18: aload_1 │ │ │ │ - 19: invokevirtual #26 // Method java/util/LinkedList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object; │ │ │ │ - 22: areturn │ │ │ │ + 13: astore_1 │ │ │ │ + 14: aload_0 │ │ │ │ + 15: aload_1 │ │ │ │ + 16: invokevirtual #26 // Method java/util/LinkedList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object; │ │ │ │ + 19: areturn │ │ │ │ } │ │ ├── t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1.class │ │ │ ├── procyon -ec {} │ │ │ │ @@ -8,10 +8,10 @@ │ │ │ │ TreeWalkerThreads$1(final TreeWalkerThreads this$0, final String name) { │ │ │ │ this.this$0 = this$0; │ │ │ │ super(name); │ │ │ │ } │ │ │ │ │ │ │ │ @Override │ │ │ │ public void run() { │ │ │ │ - TreeWalkerThreads.access$000(this.this$0); │ │ │ │ + TreeWalkerThreads.-$$Nest$mthreadContent(this.this$0); │ │ │ │ } │ │ │ │ } │ │ ├── t20kdc/libofflinepuzzlesolver/sudoku/STMain.class │ │ │ ├── procyon -ec {} │ │ │ │ @@ -148,17 +148,18 @@ │ │ │ │ sb.append("Solvability failure, "); │ │ │ │ sb.append(l); │ │ │ │ sb.append(" "); │ │ │ │ sb.append(i); │ │ │ │ sb.append(", early"); │ │ │ │ out.println(sb.toString()); │ │ │ │ final PrintStream out2 = System.out; │ │ │ │ + final String hexString = Integer.toHexString(sudokuRoot$State.reasonFor(n, n3)); │ │ │ │ final StringBuilder sb2 = new StringBuilder(); │ │ │ │ sb2.append("RC "); │ │ │ │ - sb2.append(Integer.toHexString(sudokuRoot$State.reasonFor(n, n3))); │ │ │ │ + sb2.append(hexString); │ │ │ │ out2.println(sb2.toString()); │ │ │ │ return false; │ │ │ │ } │ │ │ │ sudokuRoot$State = new SudokuRoot$State(sudokuRoot$State, n, n3); │ │ │ │ } │ │ │ │ ++n; │ │ │ │ } │ │ ├── t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State.class │ │ │ ├── procyon -ec {} │ │ │ │ @@ -61,15 +61,15 @@ │ │ │ │ final int n13 = 0x1000000 | i; │ │ │ │ final int n14 = 0x3000000 | i; │ │ │ │ for (int k = 0; k < n6; ++k) { │ │ │ │ final int[] validity2 = this.validity; │ │ │ │ final int n15 = k * 9; │ │ │ │ validity2[n9 + n15 * 9] = n12; │ │ │ │ validity2[n15 + n10] = n13; │ │ │ │ - validity2[SudokuRoot.access$000()[k] * 9 + n11] = n14; │ │ │ │ + validity2[SudokuRoot.-$$Nest$sfgetsquareOfs()[k] * 9 + n11] = n14; │ │ │ │ } │ │ │ │ this.validity[n3] = 0; │ │ │ │ this.completion[i] = (n != 0); │ │ │ │ this.completionAmount = sudokuRoot$State.completionAmount + n; │ │ │ │ return; │ │ │ │ } │ │ │ │ throw new RuntimeException("invalid choice"); │ │ │ │ @@ -89,15 +89,15 @@ │ │ │ │ int j = 0; │ │ │ │ boolean b = false; │ │ │ │ boolean b2 = false; │ │ │ │ boolean b3 = false; │ │ │ │ while (j < n2) { │ │ │ │ final int n3 = n * 9 + j; │ │ │ │ final int n4 = j * 9 + n; │ │ │ │ - final int n5 = SudokuRoot.access$000()[j] + SudokuRoot.access$000()[n] * 3; │ │ │ │ + final int n5 = SudokuRoot.-$$Nest$sfgetsquareOfs()[j] + SudokuRoot.-$$Nest$sfgetsquareOfs()[n] * 3; │ │ │ │ if (this.wouldBeValid(n3, i)) { │ │ │ │ b = true; │ │ │ │ } │ │ │ │ if (this.wouldBeValid(n4, i)) { │ │ │ │ b2 = true; │ │ │ │ } │ │ │ │ if (this.wouldBeValid(n5, i)) { │ │ │ │ @@ -112,15 +112,15 @@ │ │ │ │ } │ │ │ │ if (!b2) { │ │ │ │ n6 = 83886080; │ │ │ │ break Label_0168; │ │ │ │ } │ │ │ │ if (!b3) { │ │ │ │ n6 = 100663296; │ │ │ │ - n = SudokuRoot.access$000()[n] * 3; │ │ │ │ + n = SudokuRoot.-$$Nest$sfgetsquareOfs()[n] * 3; │ │ │ │ break Label_0168; │ │ │ │ } │ │ │ │ } │ │ │ │ ++n; │ │ │ │ } │ │ │ │ return n6 | n | i << 16; │ │ │ │ } │ │ ├── t20kdc/offlinepuzzlesolver/Streamline$1.class │ │ │ ├── procyon -ec {} │ │ │ │ @@ -1,15 +1,15 @@ │ │ │ │ │ │ │ │ package t20kdc.offlinepuzzlesolver; │ │ │ │ │ │ │ │ import android.widget.TextView; │ │ │ │ import android.widget.SeekBar; │ │ │ │ import android.widget.SeekBar$OnSeekBarChangeListener; │ │ │ │ │ │ │ │ -final class Streamline$1 implements SeekBar$OnSeekBarChangeListener │ │ │ │ +class Streamline$1 implements SeekBar$OnSeekBarChangeListener │ │ │ │ { │ │ │ │ final /* synthetic */ int val$base; │ │ │ │ final /* synthetic */ SeekBar val$sb1; │ │ │ │ final /* synthetic */ TextView val$sb2; │ │ │ │ final /* synthetic */ Runnable val$update; │ │ │ │ │ │ │ │ Streamline$1(final TextView val$sb2, final SeekBar val$sb3, final int val$base, final Runnable val$update) { │ │ ├── t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads.class │ │ │ ├── procyon -ec {} │ │ │ │ @@ -138,17 +138,18 @@ │ │ │ │ } │ │ │ │ catch (Exception ex2) { │ │ │ │ tryAcquire = false; │ │ │ │ } │ │ │ │ if (tryAcquire) { │ │ │ │ break; │ │ │ │ } │ │ │ │ + final int value = this.nodesInPlay.get(); │ │ │ │ final StringBuilder sb2 = new StringBuilder(); │ │ │ │ sb2.append("MT/in play: "); │ │ │ │ - sb2.append(this.nodesInPlay.get()); │ │ │ │ + sb2.append(value); │ │ │ │ GML.log(sb2.toString()); │ │ │ │ } │ │ │ │ GML.log("MT/Shutting down..."); │ │ │ │ this.waker.release(); │ │ │ │ this.confirmer.acquireUninterruptibly(); │ │ │ │ this.confirmer.release(); │ │ │ │ while (i < availableProcessors) { │ │ ├── t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot.class │ │ │ ├── javap -verbose -constants -s -l -private {} │ │ │ │ @@ -14,17 +14,17 @@ │ │ │ │ #6 = Class #5 // t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot │ │ │ │ #7 = Utf8 fudgeEnabledGlobally │ │ │ │ #8 = Utf8 Z │ │ │ │ #9 = Utf8 ConstantValue │ │ │ │ #10 = Integer 1 │ │ │ │ #11 = Utf8 squareOfs │ │ │ │ #12 = Utf8 [I │ │ │ │ - #13 = Float 1.3E-44f │ │ │ │ - #14 = NameAndType #11:#12 // squareOfs:[I │ │ │ │ - #15 = Fieldref #2.#14 // t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot.squareOfs:[I │ │ │ │ + #13 = NameAndType #11:#12 // squareOfs:[I │ │ │ │ + #14 = Fieldref #2.#13 // t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot.squareOfs:[I │ │ │ │ + #15 = Float 1.3E-44f │ │ │ │ #16 = Utf8 │ │ │ │ #17 = Utf8 ()V │ │ │ │ #18 = NameAndType #16:#17 // "":()V │ │ │ │ #19 = Methodref #4.#18 // java/lang/Object."":()V │ │ │ │ #20 = NameAndType #7:#8 // fudgeEnabledGlobally:Z │ │ │ │ #21 = Fieldref #2.#20 // t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot.fudgeEnabledGlobally:Z │ │ │ │ #22 = Utf8 java/lang/System │ │ │ │ @@ -91,30 +91,38 @@ │ │ │ │ #84 = Utf8 java/util/Collection │ │ │ │ #85 = Class #84 // java/util/Collection │ │ │ │ #86 = Utf8 add │ │ │ │ #87 = Utf8 (Ljava/lang/Object;)Z │ │ │ │ #88 = NameAndType #86:#87 // add:(Ljava/lang/Object;)Z │ │ │ │ #89 = InterfaceMethodref #85.#88 // java/util/Collection.add:(Ljava/lang/Object;)Z │ │ │ │ #90 = Utf8 Code │ │ │ │ - #91 = Utf8 │ │ │ │ - #92 = Utf8 access$000 │ │ │ │ - #93 = Utf8 ()[I │ │ │ │ + #91 = Utf8 -$$Nest$sfgetsquareOfs │ │ │ │ + #92 = Utf8 ()[I │ │ │ │ + #93 = Utf8 │ │ │ │ #94 = Utf8 (Ljava/lang/Object;)I │ │ │ │ #95 = Utf8 (Ljava/lang/Object;)V │ │ │ │ #96 = Utf8 (Ljava/lang/Object;Ljava/util/Collection;)V │ │ │ │ { │ │ │ │ public static boolean fudgeEnabledGlobally = true; │ │ │ │ descriptor: Z │ │ │ │ flags: (0x0009) ACC_PUBLIC, ACC_STATIC │ │ │ │ ConstantValue: int 1 │ │ │ │ │ │ │ │ private static final int[] squareOfs; │ │ │ │ descriptor: [I │ │ │ │ flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL │ │ │ │ │ │ │ │ + static int[] -$$Nest$sfgetsquareOfs(); │ │ │ │ + descriptor: ()[I │ │ │ │ + flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC │ │ │ │ + Code: │ │ │ │ + stack=300, locals=0, args_size=0 │ │ │ │ + 0: getstatic #14 // Field squareOfs:[I │ │ │ │ + 3: areturn │ │ │ │ + │ │ │ │ static {}; │ │ │ │ descriptor: ()V │ │ │ │ flags: (0x0008) ACC_STATIC │ │ │ │ Code: │ │ │ │ stack=300, locals=1, args_size=0 │ │ │ │ 0: bipush 9 │ │ │ │ 2: newarray int │ │ │ │ @@ -149,34 +157,26 @@ │ │ │ │ 37: bipush 7 │ │ │ │ 39: bipush 19 │ │ │ │ 41: iastore │ │ │ │ 42: bipush 8 │ │ │ │ 44: bipush 20 │ │ │ │ 46: iastore │ │ │ │ 47: aload_0 │ │ │ │ - 48: putstatic #15 // Field squareOfs:[I │ │ │ │ + 48: putstatic #14 // Field squareOfs:[I │ │ │ │ 51: return │ │ │ │ │ │ │ │ public t20kdc.libofflinepuzzlesolver.sudoku.SudokuRoot(); │ │ │ │ descriptor: ()V │ │ │ │ flags: (0x0001) ACC_PUBLIC │ │ │ │ Code: │ │ │ │ stack=300, locals=1, args_size=1 │ │ │ │ 0: aload_0 │ │ │ │ 1: invokespecial #19 // Method java/lang/Object."":()V │ │ │ │ 4: return │ │ │ │ │ │ │ │ - static int[] access$000(); │ │ │ │ - descriptor: ()[I │ │ │ │ - flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC │ │ │ │ - Code: │ │ │ │ - stack=300, locals=0, args_size=0 │ │ │ │ - 0: getstatic #15 // Field squareOfs:[I │ │ │ │ - 3: areturn │ │ │ │ - │ │ │ │ private boolean fudge(int); │ │ │ │ descriptor: (I)Z │ │ │ │ flags: (0x0002) ACC_PRIVATE │ │ │ │ Code: │ │ │ │ stack=300, locals=9, args_size=2 │ │ │ │ 0: getstatic #21 // Field fudgeEnabledGlobally:Z │ │ │ │ 3: istore_2 ├── smali/t20kdc/offlinepuzzlesolver/Streamline$1.smali │ @@ -1,22 +1,22 @@ │ -.class final Lt20kdc/offlinepuzzlesolver/Streamline$1; │ +.class Lt20kdc/offlinepuzzlesolver/Streamline$1; │ .super Ljava/lang/Object; │ .source "Streamline.java" │ │ # interfaces │ .implements Landroid/widget/SeekBar$OnSeekBarChangeListener; │ │ │ # annotations │ .annotation system Ldalvik/annotation/EnclosingMethod; │ value = Lt20kdc/offlinepuzzlesolver/Streamline;->bindSeekWdg(Landroid/app/Activity;IIILjava/lang/Runnable;)V │ .end annotation │ │ .annotation system Ldalvik/annotation/InnerClass; │ - accessFlags = 0x8 │ + accessFlags = 0x0 │ name = null │ .end annotation │ │ │ # instance fields │ .field final synthetic val$base:I ├── smali/t20kdc/libofflinepuzzlesolver/genlog/GA.smali │ @@ -24,16 +24,14 @@ │ ")[TT;" │ } │ .end annotation │ │ .line 13 │ check-cast p0, [Ljava/lang/Object; │ │ - check-cast p0, [Ljava/lang/Object; │ - │ return-object p0 │ .end method │ │ .method public static ofLL(Ljava/util/LinkedList;Ljava/lang/Class;)[Ljava/lang/Object; │ .locals 1 │ .annotation system Ldalvik/annotation/Signature; │ value = { │ @@ -54,15 +52,13 @@ │ │ invoke-static {p1, v0}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;I)Ljava/lang/Object; │ │ move-result-object p1 │ │ check-cast p1, [Ljava/lang/Object; │ │ - check-cast p1, [Ljava/lang/Object; │ - │ invoke-virtual {p0, p1}, Ljava/util/LinkedList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; │ │ move-result-object p0 │ │ return-object p0 │ .end method ├── smali/t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads.smali │ @@ -64,14 +64,22 @@ │ │ .field private final threadsInPlay:Ljava/util/concurrent/atomic/AtomicInteger; │ │ .field private final waker:Ljava/util/concurrent/Semaphore; │ │ │ # direct methods │ +.method static synthetic -$$Nest$mthreadContent(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V │ + .locals 0 │ + │ + invoke-direct {p0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;->threadContent()V │ + │ + return-void │ +.end method │ + │ .method public constructor (Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot;Ljava/util/concurrent/atomic/AtomicBoolean;)V │ .locals 2 │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerRoot<", │ "TN;>;", │ @@ -137,23 +145,14 @@ │ │ .line 40 │ iput-object p2, p0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;->canceller:Ljava/util/concurrent/atomic/AtomicBoolean; │ │ return-void │ .end method │ │ -.method static synthetic access$000(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V │ - .locals 0 │ - │ - .line 20 │ - invoke-direct {p0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;->threadContent()V │ - │ - return-void │ -.end method │ - │ .method private threadContent()V │ .locals 5 │ │ .line 45 │ new-instance v0, Ljava/util/ArrayList; │ │ const/16 v1, 0x400 │ @@ -656,31 +655,31 @@ │ .line 187 │ iget-object p1, p0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;->endpoint:Ljava/lang/Object; │ │ return-object p1 │ │ .line 170 │ :cond_2 │ - new-instance v2, Ljava/lang/StringBuilder; │ + iget-object v2, p0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;->nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; │ │ - invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ + invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I │ │ - const-string v3, "MT/in play: " │ + move-result v2 │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + new-instance v3, Ljava/lang/StringBuilder; │ │ - iget-object v3, p0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;->nodesInPlay:Ljava/util/concurrent/atomic/AtomicInteger; │ + invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I │ + const-string v4, "MT/in play: " │ │ - move-result v3 │ + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v2 │ │ invoke-static {v2}, Lt20kdc/libofflinepuzzlesolver/genlog/GML;->log(Ljava/lang/String;)V │ │ goto :goto_1 │ .end method ├── smali/t20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1.smali │ @@ -34,11 +34,11 @@ │ # virtual methods │ .method public run()V │ .locals 1 │ │ .line 154 │ iget-object v0, p0, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads$1;->this$0:Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads; │ │ - invoke-static {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;->access$000(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V │ + invoke-static {v0}, Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;->-$$Nest$mthreadContent(Lt20kdc/libofflinepuzzlesolver/genlog/TreeWalkerThreads;)V │ │ return-void │ .end method ├── smali/t20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder.smali │ @@ -138,29 +138,35 @@ │ if-eqz v0, :cond_1 │ │ .line 55 │ iget-object v0, p0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;->knownEndpoints:Ljava/util/HashSet; │ │ iget-object v1, p1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;->to:Ljava/lang/Object; │ │ + check-cast v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; │ + │ invoke-virtual {v0, v1}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z │ │ .line 56 │ :cond_1 │ iget-object v0, p0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;->backlinks:Ljava/util/HashMap; │ │ iget-object v1, p1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;->to:Ljava/lang/Object; │ │ + check-cast v1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; │ + │ invoke-virtual {v0, v1, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 57 │ iget-object v0, p0, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder;->needsUpdate:Ljava/util/HashSet; │ │ iget-object p1, p1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$CostFT;->to:Ljava/lang/Object; │ │ + check-cast p1, Lt20kdc/libofflinepuzzlesolver/genlog/ComplexPathfinder$Node; │ + │ invoke-virtual {v0, p1}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z │ │ const/4 p1, 0x1 │ │ return p1 │ .end method ├── smali/t20kdc/libofflinepuzzlesolver/sudoku/STMain.smali │ @@ -374,30 +374,30 @@ │ move-result-object v2 │ │ invoke-virtual {p0, v2}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V │ │ .line 131 │ sget-object p0, Ljava/lang/System;->out:Ljava/io/PrintStream; │ │ - new-instance v2, Ljava/lang/StringBuilder; │ - │ - invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ - │ - const-string v4, "RC " │ - │ - invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ - │ invoke-virtual {v0, v3, v7}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State;->reasonFor(II)I │ │ move-result v0 │ │ invoke-static {v0}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String; │ │ move-result-object v0 │ │ + new-instance v2, Ljava/lang/StringBuilder; │ + │ + invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ + │ + const-string v3, "RC " │ + │ + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + │ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v0 │ │ invoke-virtual {p0, v0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V ├── smali/t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot$State.smali │ @@ -222,15 +222,15 @@ │ │ add-int/2addr v15, v11 │ │ .line 113 │ aput v7, v14, v15 │ │ .line 114 │ - invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->access$000()[I │ + invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->-$$Nest$sfgetsquareOfs()[I │ │ move-result-object v15 │ │ aget v15, v15, v13 │ │ mul-int/lit8 v15, v15, 0x9 │ │ @@ -352,21 +352,21 @@ │ add-int/2addr v8, v4 │ │ mul-int/lit8 v9, v4, 0x9 │ │ add-int/2addr v9, v1 │ │ .line 164 │ - invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->access$000()[I │ + invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->-$$Nest$sfgetsquareOfs()[I │ │ move-result-object v10 │ │ aget v10, v10, v4 │ │ - invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->access$000()[I │ + invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->-$$Nest$sfgetsquareOfs()[I │ │ move-result-object v11 │ │ aget v11, v11, v1 │ │ mul-int/lit8 v11, v11, 0x3 │ │ @@ -433,15 +433,15 @@ │ │ :cond_5 │ if-nez v7, :cond_6 │ │ const/high16 v0, 0x6000000 │ │ .line 177 │ - invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->access$000()[I │ + invoke-static {}, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->-$$Nest$sfgetsquareOfs()[I │ │ move-result-object v2 │ │ aget v1, v2, v1 │ │ mul-int/lit8 v1, v1, 0x3 ├── smali/t20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot.smali │ @@ -27,14 +27,22 @@ │ # static fields │ .field public static fudgeEnabledGlobally:Z = true │ │ .field private static final squareOfs:[I │ │ │ # direct methods │ +.method static synthetic -$$Nest$sfgetsquareOfs()[I │ + .locals 1 │ + │ + sget-object v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->squareOfs:[I │ + │ + return-object v0 │ +.end method │ + │ .method static constructor ()V │ .locals 1 │ │ const/16 v0, 0x9 │ │ new-array v0, v0, [I │ │ @@ -64,23 +72,14 @@ │ │ .line 8 │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ return-void │ .end method │ │ -.method static synthetic access$000()[I │ - .locals 1 │ - │ - .line 8 │ - sget-object v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->squareOfs:[I │ - │ - return-object v0 │ -.end method │ - │ .method private fudge(I)Z │ .locals 6 │ │ .line 59 │ sget-boolean v0, Lt20kdc/libofflinepuzzlesolver/sudoku/SudokuRoot;->fudgeEnabledGlobally:Z │ │ if-eqz v0, :cond_0