Samourai Wallet

509 minute read

Published:

Wallet Logo

This relatively new app currently has more than 50000 downloads and the latest APK (version Varies with device) was from 18th October 2019.

Our analysis was done on 23rd November 2019 based on data found in their Playstore description and their website and their source repository. We discuss the issue with verification with the provider here. In our GitLab this app is discussed in Issue #36.

We found these ways of contacting the developers:

Help spread awareness for build verifiability

Please help us spread the word, asking Samourai Wallet to support verifiable builds via their Twitter!

Disclaimer

The following Analysis is not a full code review! We plan to make code reviews available in the future but even then it will never be a stamp of approval but rather a list of incidents and bad coding practice. We cannot find and tell you all the dark secrets the wallet providers might have.

Do your own research!

Try out searching for "lost bitcoins", "stole my money" or "scammers" together with the wallet's name, even if you think the wallet is generally trustworthy. For all the bigger wallets you will find accusations. Make sure you understand why they were made and if you are comfortable with the provider's reaction.

The Analysis

Update: Samourai tweeted in response to us:

@SamouraiWallet Replying to @BashCo_ deterministic builds have not been a priority or goal at this stage of dev using the resources we have. The goals we have focused on (privacy, dojo, whirlpool, etc) we have continued to deliver on. There is limited value in this investment without expert audits for each release

Also the provider closed the issue we had opened on their repository.

The original review:

Samourai is still “early access” which means that there are no Google ratings or comments.

Their website claims the wallet is non-custodial:

Be your own Swiss Bank Fully non custodial software ensures you are always in control of your private keys. No email address, no ID checks, and no hassle. Just install and go.

Given claims like:

We are privacy activists who have dedicated our lives to creating the software that Silicon Valley will never build, the regulators will never allow, and the VC’s will never invest in. We build the software that Bitcoin deserves.

we are not surprised to not find who is behind this wallet.

But the build instructions on their GitHub are fairly simple:

Import as Android Studio project. Should build “as is”.

so lets see what we get when we do this:

/tmp/$ git clone git@github.com:Samourai-Wallet/samourai-wallet-android.git
/tmp/$ cd samourai-wallet-android
/tmp/samourai-wallet-android$ git tag
0.81
0.99.27-gb
0.99.87
0.99.88
/tmp/samourai-wallet-android$ git checkout 0.99.88

We open the folder in Android Studio, set the Build Variants as follows:

Samourai Build Variants

and build the APK.

The following is the full output of diffoscope. Red lines are what the playstore version misses compared to the self compiled version and green lines are additions. Right in the beginning we see the expected lines: META-INF/MANIFEST.MF is different, META-INF/CERT.RSA and META-INF/CERT.SF are exclusive to the playstore version as should be.

The rest of the diff is what makes the build not verifiable.

We left all the diff here for the more curious to investigate but it’s obviously too much to consider acceptable like we might conclude if it was only the .png files that were different.

/tmp/samourai-wallet-android/app/build/outputs/apk/production/release$ diffoscope app-production-release-unsigned.apk "Samourai 0.99.88 (com.samourai.wallet).apk"
--- app-production-release-unsigned.apk
+++ Samourai 0.99.88 (com.samourai.wallet).apk
├── zipinfo /dev/stdin
│ @@ -1,11 +1,13 @@-Zip file size: 39242823 bytes, number of entries: 1033+Zip file size: 39330072 bytes, number of entries: 1035
│  -rw----     0.0 fat    16108 b- defN 80-000-00 00:00 AndroidManifest.xml
│  -rw----     2.4 fat    13115 b- defN 80-000-00 00:00 BIP39/en.txt
│ --rw----     2.4 fat       87 b- defN 80-000-00 00:00 META-INF/MANIFEST.MF+-rw----     2.4 fat     1211 b- defN 80-000-00 00:00 META-INF/CERT.RSA+-rw----     2.4 fat   121611 b- defN 80-000-00 00:00 META-INF/CERT.SF+-rw----     2.4 fat   121574 b- defN 80-000-00 00:00 META-INF/MANIFEST.MF
│  -rw----     2.4 fat        6 b- stor 80-000-00 00:00 META-INF/android.arch.core_runtime.version
│  -rw----     2.4 fat        6 b- stor 80-000-00 00:00 META-INF/android.arch.lifecycle_extensions.version
│  -rw----     2.4 fat        6 b- stor 80-000-00 00:00 META-INF/android.arch.lifecycle_livedata-core.version
│  -rw----     2.4 fat        6 b- stor 80-000-00 00:00 META-INF/android.arch.lifecycle_livedata.version
│  -rw----     2.4 fat        6 b- stor 80-000-00 00:00 META-INF/android.arch.lifecycle_runtime.version
│  -rw----     2.4 fat        6 b- stor 80-000-00 00:00 META-INF/android.arch.lifecycle_viewmodel.version
│  -rw----     2.4 fat        6 b- stor 80-000-00 00:00 META-INF/androidx.arch.core_core-runtime.version
│ @@ -39,16 +41,16 @@
│  -rw----     2.4 fat     1434 b- defN 80-000-00 00:00 ch/qos/logback/classic/gaffer/AppenderDelegate.groovy
│  -rw----     2.4 fat     4606 b- defN 80-000-00 00:00 ch/qos/logback/classic/gaffer/ComponentDelegate.groovy
│  -rw----     2.4 fat      950 b- defN 80-000-00 00:00 ch/qos/logback/classic/gaffer/ConfigurationContributor.groovy
│  -rw----     2.4 fat    10134 b- defN 80-000-00 00:00 ch/qos/logback/classic/gaffer/ConfigurationDelegate.groovy
│  -rw----     2.4 fat     3706 b- defN 80-000-00 00:00 ch/qos/logback/classic/gaffer/GafferConfigurator.groovy
│  -rw----     2.4 fat      659 b- defN 80-000-00 00:00 ch/qos/logback/classic/gaffer/NestedType.groovy
│  -rw----     2.4 fat     3511 b- defN 80-000-00 00:00 ch/qos/logback/classic/gaffer/PropertyUtil.groovy
│ --rw----     2.4 fat  7820644 b- defN 80-000-00 00:00 classes.dex--rw----     2.4 fat  7088656 b- defN 80-000-00 00:00 classes2.dex+-rw----     2.4 fat  7820264 b- defN 80-000-00 00:00 classes.dex+-rw----     2.4 fat  7085304 b- defN 80-000-00 00:00 classes2.dex
│  -rw----     2.4 fat  6694856 b- defN 80-000-00 00:00 classes3.dex
│  -rw----     2.4 fat  3770392 b- defN 80-000-00 00:00 classes4.dex
│  -rw----     2.4 fat  4842944 b- defN 80-000-00 00:00 classes5.dex
│  -rw----     2.4 fat  6713184 b- defN 80-000-00 00:00 classes6.dex
│  -rw----     2.4 fat      375 b- defN 80-000-00 00:00 javax/annotation/CheckForNull.java
│  -rw----     2.4 fat      698 b- defN 80-000-00 00:00 javax/annotation/CheckForSigned.java
│  -rw----     2.4 fat      494 b- defN 80-000-00 00:00 javax/annotation/CheckReturnValue.java
│ @@ -375,27 +377,27 @@
│  -rw----     2.4 fat     2044 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_launcher.png
│  -rw----     2.4 fat     2001 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_launcher_foreground.png
│  -rw----     2.4 fat     3761 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_launcher_round.png
│  -rw----     2.4 fat      334 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_link_white_24dp.png
│  -rw----     2.4 fat      309 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_lock_white_24dp.png
│  -rw----     2.4 fat      940 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_paynym_white_24dp.png
│  -rw----     2.4 fat     1071 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_receive_qr.png
│ --rw----     2.4 fat    13003 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_samourai_and_tor_notif_icon.png+-rw----     2.4 fat    13336 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_samourai_and_tor_notif_icon.png
│  -rw----     2.4 fat      678 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_samourai_deposit_24dp.png
│  -rw----     2.4 fat     4601 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_samourai_logo_trans2x.png
│  -rw----     2.4 fat      653 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_samourai_send_24dp.png
│  -rw----     2.4 fat     1488 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_send_final.png
│  -rw----     2.4 fat      397 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_share_white_24dp.png
│  -rw----     2.4 fat      577 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/ic_standard.png
│  -rw----     2.4 fat      212 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/notification_bg_low_normal.9.png
│  -rw----     2.4 fat      225 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/notification_bg_low_pressed.9.png
│  -rw----     2.4 fat      212 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/notification_bg_normal.9.png
│  -rw----     2.4 fat      225 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/notification_bg_normal_pressed.9.png
│  -rw----     2.4 fat      107 b- stor 80-000-00 00:00 res/drawable-hdpi-v4/notify_panel_notification_icon_bg.png
│ --rw----     2.4 fat     5948 b- stor 80-000-00 00:00 res/drawable-ldpi-v4/ic_samourai_and_tor_notif_icon.png+-rw----     2.4 fat     6083 b- stor 80-000-00 00:00 res/drawable-ldpi-v4/ic_samourai_and_tor_notif_icon.png
│  -rw----     2.4 fat      199 b- stor 80-000-00 00:00 res/drawable-ldrtl-hdpi-v17/abc_ic_menu_copy_mtrl_am_alpha.png
│  -rw----     2.4 fat      400 b- stor 80-000-00 00:00 res/drawable-ldrtl-hdpi-v17/abc_ic_menu_cut_mtrl_alpha.png
│  -rw----     2.4 fat      345 b- stor 80-000-00 00:00 res/drawable-ldrtl-hdpi-v17/abc_spinner_mtrl_am_alpha.9.png
│  -rw----     2.4 fat      127 b- stor 80-000-00 00:00 res/drawable-ldrtl-mdpi-v17/abc_ic_menu_copy_mtrl_am_alpha.png
│  -rw----     2.4 fat      253 b- stor 80-000-00 00:00 res/drawable-ldrtl-mdpi-v17/abc_ic_menu_cut_mtrl_alpha.png
│  -rw----     2.4 fat      318 b- stor 80-000-00 00:00 res/drawable-ldrtl-mdpi-v17/abc_spinner_mtrl_am_alpha.9.png
│  -rw----     2.4 fat      178 b- stor 80-000-00 00:00 res/drawable-ldrtl-xhdpi-v17/abc_ic_menu_copy_mtrl_am_alpha.png
│ @@ -471,15 +473,15 @@
│  -rw----     2.4 fat     1394 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_launcher.png
│  -rw----     2.4 fat     1481 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_launcher_foreground.png
│  -rw----     2.4 fat     2394 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_launcher_round.png
│  -rw----     2.4 fat      206 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_link_white_24dp.png
│  -rw----     2.4 fat      208 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_lock_white_24dp.png
│  -rw----     2.4 fat      509 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_paynym_white_24dp.png
│  -rw----     2.4 fat      722 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_receive_qr.png
│ --rw----     2.4 fat     8261 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_samourai_and_tor_notif_icon.png+-rw----     2.4 fat     8436 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_samourai_and_tor_notif_icon.png
│  -rw----     2.4 fat      406 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_samourai_deposit_24dp.png
│  -rw----     2.4 fat     2209 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_samourai_logo_trans2x.png
│  -rw----     2.4 fat      421 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_samourai_send_24dp.png
│  -rw----     2.4 fat     1101 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_send_final.png
│  -rw----     2.4 fat      268 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_share_white_24dp.png
│  -rw----     2.4 fat      417 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/ic_standard.png
│  -rw----     2.4 fat      215 b- stor 80-000-00 00:00 res/drawable-mdpi-v4/notification_bg_low_normal.9.png
│ @@ -569,15 +571,15 @@
│  -rw----     2.4 fat     2612 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_launcher_foreground.png
│  -rw----     2.4 fat     5407 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_launcher_round.png
│  -rw----     2.4 fat      371 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_link_white_24dp.png
│  -rw----     2.4 fat      372 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_lock_white_24dp.png
│  -rw----     2.4 fat     1380 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_paynym_white_24dp.png
│  -rw----     2.4 fat     1158 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_query_builder_white.png
│  -rw----     2.4 fat     1342 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_receive_qr.png
│ --rw----     2.4 fat    18051 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_samourai_and_tor_notif_icon.png+-rw----     2.4 fat    18614 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_samourai_and_tor_notif_icon.png
│  -rw----     2.4 fat      826 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_samourai_deposit_24dp.png
│  -rw----     2.4 fat     5536 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_samourai_logo_trans2x.png
│  -rw----     2.4 fat      852 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_samourai_send_24dp.png
│  -rw----     2.4 fat     2386 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_send_final.png
│  -rw----     2.4 fat      496 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_share_white_24dp.png
│  -rw----     2.4 fat      851 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/ic_standard.png
│  -rw----     2.4 fat      221 b- stor 80-000-00 00:00 res/drawable-xhdpi-v4/notification_bg_low_normal.9.png
│ @@ -649,15 +651,15 @@
│  -rw----     2.4 fat     4383 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_launcher.png
│  -rw----     2.4 fat     6479 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_launcher_foreground.png
│  -rw----     2.4 fat     8544 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_launcher_round.png
│  -rw----     2.4 fat      537 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_link_white_24dp.png
│  -rw----     2.4 fat      540 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_lock_white_24dp.png
│  -rw----     2.4 fat     2772 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_paynym_white_24dp.png
│  -rw----     2.4 fat     2074 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_receive_qr.png
│ --rw----     2.4 fat    28996 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_samourai_and_tor_notif_icon.png+-rw----     2.4 fat    29790 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_samourai_and_tor_notif_icon.png
│  -rw----     2.4 fat     1504 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_samourai_deposit_24dp.png
│  -rw----     2.4 fat    10672 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_samourai_logo_trans2x.png
│  -rw----     2.4 fat     1492 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_samourai_send_24dp.png
│  -rw----     2.4 fat     3015 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_send_final.png
│  -rw----     2.4 fat      698 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_share_white_24dp.png
│  -rw----     2.4 fat     1086 b- stor 80-000-00 00:00 res/drawable-xxhdpi-v4/ic_standard.png
│  -rw----     2.4 fat      275 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/abc_btn_check_to_on_mtrl_000.png
│ @@ -702,15 +704,15 @@
│  -rw----     2.4 fat     6204 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_launcher.png
│  -rw----     2.4 fat     9766 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_launcher_foreground.png
│  -rw----     2.4 fat    12354 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_launcher_round.png
│  -rw----     2.4 fat      704 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_link_white_24dp.png
│  -rw----     2.4 fat      702 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_lock_white_24dp.png
│  -rw----     2.4 fat     3924 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_paynym_white_24dp.png
│  -rw----     2.4 fat      478 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_receive_qr.png
│ --rw----     2.4 fat    40599 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_samourai_and_tor_notif_icon.png+-rw----     2.4 fat    41928 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_samourai_and_tor_notif_icon.png
│  -rw----     2.4 fat     1568 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_samourai_deposit_24dp.png
│  -rw----     2.4 fat    17031 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_samourai_logo_trans2x.png
│  -rw----     2.4 fat     1546 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_samourai_send_24dp.png
│  -rw----     2.4 fat     4486 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_send_final.png
│  -rw----     2.4 fat      938 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_share_white_24dp.png
│  -rw----     2.4 fat     2033 b- stor 80-000-00 00:00 res/drawable-xxxhdpi-v4/ic_standard.png
│  -rw----     0.0 fat      588 b- defN 80-000-00 00:00 res/drawable/abc_btn_borderless_material.xml
│ @@ -1028,8 +1030,8 @@
│  -rw----     0.0 fat      972 b- defN 80-000-00 00:00 res/xml/settings_remote.xml
│  -rw----     0.0 fat      856 b- defN 80-000-00 00:00 res/xml/settings_root.xml
│  -rw----     0.0 fat      652 b- defN 80-000-00 00:00 res/xml/settings_stealth.xml
│  -rw----     0.0 fat     1116 b- defN 80-000-00 00:00 res/xml/settings_troubleshoot.xml
│  -rw----     0.0 fat     1980 b- defN 80-000-00 00:00 res/xml/settings_txs.xml
│  -rw----     0.0 fat     1888 b- defN 80-000-00 00:00 res/xml/settings_wallet.xml
│  -rw----     0.0 fat  1132060 b- stor 80-000-00 00:00 resources.arsc
│ -1033 files, 103130171 bytes uncompressed, 39067745 bytes compressed:  62.1%+1035 files, 103374077 bytes uncompressed, 39154517 bytes compressed:  62.1%
├── classes.dex
│ ├── classes.jar
│ │ ├── zipinfo /dev/stdin
│ │ │ @@ -1,8 +1,8 @@
│ │ │ -Zip file size: 13858266 bytes, number of entries: 6980
│ │ │ +Zip file size: 13857934 bytes, number of entries: 6980
│ │ │  ?rwxrwxr-x  2.0 unx      134 b- stor 80-Jan-01 00:00 android/arch/core/R.class
│ │ │  ?rwxrwxr-x  2.0 unx      419 b- stor 80-Jan-01 00:00 android/arch/core/executor/ArchTaskExecutor$1.class
│ │ │  ?rwxrwxr-x  2.0 unx      418 b- stor 80-Jan-01 00:00 android/arch/core/executor/ArchTaskExecutor$2.class
│ │ │  ?rwxrwxr-x  2.0 unx      394 b- stor 80-Jan-01 00:00 android/arch/core/executor/TaskExecutor.class
│ │ │  ?rwxrwxr-x  2.0 unx       96 b- stor 80-Jan-01 00:00 android/arch/core/internal/SafeIterableMap$1.class
│ │ │  ?rwxrwxr-x  2.0 unx     1154 b- stor 80-Jan-01 00:00 android/arch/core/internal/SafeIterableMap$Entry.class
│ │ │  ?rwxrwxr-x  2.0 unx      188 b- stor 80-Jan-01 00:00 android/arch/core/internal/SafeIterableMap$SupportRemove.class
│ │ │ @@ -2548,15 +2548,15 @@
│ │ │  ?rwxrwxr-x  2.0 unx      893 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/jsontype/TypeDeserializer$1.class
│ │ │  ?rwxrwxr-x  2.0 unx     2147 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/jsontype/TypeDeserializer.class
│ │ │  ?rwxrwxr-x  2.0 unx      610 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/jsontype/TypeIdResolver.class
│ │ │  ?rwxrwxr-x  2.0 unx     1205 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/jsontype/TypeResolverBuilder.class
│ │ │  ?rwxrwxr-x  2.0 unx      941 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/jsontype/TypeSerializer$1.class
│ │ │  ?rwxrwxr-x  2.0 unx     3973 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/jsontype/TypeSerializer.class
│ │ │  ?rwxrwxr-x  2.0 unx     1631 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/jsontype/impl/StdTypeResolverBuilder$1.class
│ │ │ -?rwxrwxr-x  2.0 unx     4867 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator.class
│ │ │ +?rwxrwxr-x  2.0 unx     4537 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator.class
│ │ │  ?rwxrwxr-x  2.0 unx     1900 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/node/JsonNodeCreator.class
│ │ │  ?rwxrwxr-x  2.0 unx     1277 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/node/JsonNodeType.class
│ │ │  ?rwxrwxr-x  2.0 unx      903 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/node/TreeTraversingParser$1.class
│ │ │  ?rwxrwxr-x  2.0 unx     3489 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/ser/AnyGetterWriter.class
│ │ │  ?rwxrwxr-x  2.0 unx     1557 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/ser/BasicSerializerFactory$1.class
│ │ │  ?rwxrwxr-x  2.0 unx      691 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/ser/BeanPropertyFilter.class
│ │ │  ?rwxrwxr-x  2.0 unx     5389 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/ser/BeanSerializerBuilder.class
│ │ │ @@ -4538,15 +4538,15 @@
│ │ │  ?rwxrwxr-x  2.0 unx     6529 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/SequenceWriter.class
│ │ │  ?rwxrwxr-x  2.0 unx     2990 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/SerializationFeature.class
│ │ │  ?rwxrwxr-x  2.0 unx    17936 b- defN 80-Jan-01 00:00 com/fasterxml/jackson/databind/SerializerProvider.class
│ │ │  ?rwxrwxr-x  2.0 unx      347 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/cfg/ConfigOverride$Empty.class
│ │ │  ?rwxrwxr-x  2.0 unx     2222 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/cfg/ContextAttributes$Impl.class
│ │ │  ?rwxrwxr-x  2.0 unx     9142 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/cfg/MapperConfig.class
│ │ │  ?rwxrwxr-x  2.0 unx     2134 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/cfg/MutableConfigOverride.class
│ │ │ -?rwxrwxr-x  2.0 unx      643 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/cfg/PackageVersion.class
│ │ │ +?rwxrwxr-x  2.0 unx      641 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/cfg/PackageVersion.class
│ │ │  ?rwxrwxr-x  2.0 unx    54332 b- defN 80-Jan-01 00:00 com/fasterxml/jackson/databind/deser/BasicDeserializerFactory.class
│ │ │  ?rwxrwxr-x  2.0 unx     1659 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/deser/BeanDeserializer$BeanReferring.class
│ │ │  ?rwxrwxr-x  2.0 unx     3075 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/deser/Deserializers$Base.class
│ │ │  ?rwxrwxr-x  2.0 unx     1437 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/deser/SettableAnyProperty$AnySetterReferring.class
│ │ │  ?rwxrwxr-x  2.0 unx      634 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/deser/ValueInstantiator$Base.class
│ │ │  ?rwxrwxr-x  2.0 unx      509 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/deser/ValueInstantiators$Base.class
│ │ │  ?rwxrwxr-x  2.0 unx     2286 b- stor 80-Jan-01 00:00 com/fasterxml/jackson/databind/deser/impl/JavaUtilCollectionsDeserializers$JavaUtilCollectionsConverter.class
│ │ │ @@ -6975,8 +6975,8 @@
│ │ │  ?rwxrwxr-x  2.0 unx     3486 b- stor 80-Jan-01 00:00 android/support/v4/app/NotificationCompat$NotificationCompatApi26Impl.class
│ │ │  ?rwxrwxr-x  2.0 unx      625 b- stor 80-Jan-01 00:00 android/support/v4/view/ViewCompat$ViewCompatApi23Impl.class
│ │ │  ?rwxrwxr-x  2.0 unx     1368 b- stor 80-Jan-01 00:00 android/support/v4/view/accessibility/AccessibilityNodeInfoCompat$AccessibilityNodeInfoApi23Impl.class
│ │ │  ?rwxrwxr-x  2.0 unx     1468 b- stor 80-Jan-01 00:00 ch/qos/logback/classic/pattern/RootCauseFirstThrowableProxyConverter.class
│ │ │  ?rwxrwxr-x  2.0 unx     1193 b- stor 80-Jan-01 00:00 android/support/v4/view/ViewCompat$ViewCompatApi24Impl.class
│ │ │  ?rwxrwxr-x  2.0 unx     1115 b- stor 80-Jan-01 00:00 android/support/v4/view/accessibility/AccessibilityNodeInfoCompat$AccessibilityNodeInfoApi24Impl.class
│ │ │  ?rwxrwxr-x  2.0 unx     1364 b- stor 80-Jan-01 00:00 android/support/v4/view/ViewCompat$ViewCompatApi26Impl.class
│ │ │ -6980 files, 14641375 bytes uncompressed, 12523538 bytes compressed:  14.5%
│ │ │ +6980 files, 14641043 bytes uncompressed, 12523206 bytes compressed:  14.5%
│ │ ├── com/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator.class
│ │ │ ├── procyon -ec {}
│ │ │ │ @@ -56,19 +56,14 @@
│ │ │ │          set.add("ch.qos.logback.core.db.JNDIConnectionSource");
│ │ │ │          set.add("com.zaxxer.hikari.HikariConfig");
│ │ │ │          set.add("com.zaxxer.hikari.HikariDataSource");
│ │ │ │          set.add("org.apache.cxf.jaxrs.provider.XSLTJaxbProvider");
│ │ │ │          set.add("org.apache.commons.configuration.JNDIConfiguration");
│ │ │ │          set.add("org.apache.commons.configuration2.JNDIConfiguration");
│ │ │ │          set.add("org.apache.xalan.lib.sql.JNDIConnectionPool");
│ │ │ │ -        set.add("org.apache.commons.dbcp.datasources.PerUserPoolDataSource");
│ │ │ │ -        set.add("org.apache.commons.dbcp.datasources.SharedPoolDataSource");
│ │ │ │ -        set.add("com.p6spy.engine.spy.P6DataSource");
│ │ │ │ -        set.add("org.apache.log4j.receivers.db.DriverManagerConnectionSource");
│ │ │ │ -        set.add("org.apache.log4j.receivers.db.JNDIConnectionSource");
│ │ │ │          DEFAULT_NO_DESER_CLASS_NAMES = Collections.unmodifiableSet((Set<?>)set);
│ │ │ │          instance = new SubTypeValidator();
│ │ │ │      }
│ │ │ │      
│ │ │ │      protected SubTypeValidator() {
│ │ │ │          this._cfgIllegalClassNames = SubTypeValidator.DEFAULT_NO_DESER_CLASS_NAMES;
│ │ │ │      }
│ │ ├── com/fasterxml/jackson/databind/cfg/PackageVersion.class
│ │ │ ├── procyon -ec {}
│ │ │ │ @@ -6,14 +6,14 @@
│ │ │ │  import com.fasterxml.jackson.core.Versioned;
│ │ │ │  
│ │ │ │  public final class PackageVersion implements Versioned
│ │ │ │  {
│ │ │ │      public static final Version VERSION;
│ │ │ │      
│ │ │ │      static {
│ │ │ │ -        VERSION = VersionUtil.parseVersion("2.9.10.1", "com.fasterxml.jackson.core", "jackson-databind");
│ │ │ │ +        VERSION = VersionUtil.parseVersion("2.9.10", "com.fasterxml.jackson.core", "jackson-databind");
│ │ │ │      }
│ │ │ │      
│ │ │ │      public Version version() {
│ │ │ │          return PackageVersion.VERSION;
│ │ │ │      }
│ │ │ │  }
├── res/drawable-xhdpi/ic_samourai_and_tor_notif_icon.png
│ ├── sng
│ │ @@ -41,14 +41,19 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │ +    (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ @@ -63,611 +68,610 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ -    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │  }
│ │  tRNS {
│ │ - 199 103 87 179 135 24 215 163 147 151 187 67 12 155 20 115 56 123 203 127 71 79 32 44 91 175 247 219 40 4 239 211 131 64 111 227 183 60 107 95 48 207 223 143 235 191 171 16 251 159 231 139 99 52 28 75 119 195 243 8 36 83 167 0}
│ │ + 103 72 207 68 88 60 179 147 227 135 131 175 117 20 167 108 16 143 247 211 203 133 36 28 24 235 183 100 12 112 159 40 64 56 32 251 52 128 102 199 44 0 124 171 84 80 195 219 104 151 139 92 243 8 215 163 116 231 187 48 120 191 76 223 4 239 96 155}
│ │  IMAGE {
│ │      pixels hex

... some huge but probably boring diff here ...

│ │  }
├── res/drawable-xxhdpi/ic_samourai_and_tor_notif_icon.png
│ ├── sng
│ │ @@ -32,14 +32,16 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │ +    (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ @@ -63,909 +65,908 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ -    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │  }
│ │  tRNS {
│ │ - 99 44 103 67 115 155 131 111 235 151 179 56 107 203 163 139 20 175 227 91 8 243 219 75 28 187 211 87 40 231 199 183 64 251 16 207 135 83 36 195 147 4 239 223 123 215 191 143 32 79 171 247 12 127 119 159 24 71 52 48 95 60 167 0}
│ │ + 112 68 1 195 108 36 139 171 155 88 56 60 32 52 8 187 199 163 20 48 16 251 219 40 231 235 28 72 207 183 104 151 0 124 76 211 131 84 247 12 80 120 167 135 227 215 223 203 44 159 243 175 128 191 4 239 100 147 92 179 64 116 24 96 143}
│ │  IMAGE {
│ │      pixels hex

... some huge but probably boring diff here ...

│ │  }
├── res/drawable-ldpi/ic_samourai_and_tor_notif_icon.png
│ ├── sng
│ │ @@ -42,21 +42,21 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ -    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ @@ -67,234 +67,234 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │  }
│ │  tRNS {
│ │ - 75 199 183 95 56 131 67 143 223 16 135 179 87 159 99 247 40 155 12 163 219 103 211 147 83 36 231 195 20 123 207 151 71 24 243 8 171 227 127 191 215 52 0 167 115 119 239 4 139 203 175 107 60 48 91 44 251 111 64 187 79 32 235 28}
│ │ + 167 80 68 235 151 44 147 36 195 28 163 219 76 112 231 139 72 40 92 179 227 84 131 60 155 108 199 223 100 52 20 203 116 247 12 48 187 8 243 175 128 104 88 135 183 215 191 124 0 120 96 143 211 239 4 16 251 159 171 56 32 207 64 24}
│ │  IMAGE {
│ │      pixels hex

... some huge but probably boring diff here ...

│ │  }
├── res/drawable-mdpi/ic_samourai_and_tor_notif_icon.png
│ ├── sng
│ │ @@ -19,14 +19,16 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │ +    (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ @@ -63,313 +65,312 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ -    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │  }
│ │  tRNS {
│ │ - 95 135 203 48 239 171 115 16 64 179 103 211 163 147 12 91 167 111 56 155 119 195 131 44 143 175 99 52 4 243 8 24 71 60 107 151 215 40 87 235 75 28 183 207 227 159 251 20 67 191 247 83 36 223 199 231 139 123 32 79 187 127 219 0}
│ │ + 112 191 108 76 187 72 163 116 179 60 151 147 96 36 171 28 231 211 195 0 124 68 159 183 143 104 117 20 44 52 100 215 219 48 24 80 203 175 128 64 56 243 8 167 120 235 199 155 40 12 247 207 139 92 16 251 4 239 32 84 131 223 88 135 227}
│ │  IMAGE {
│ │      pixels hex

... some huge but probably boring diff here ...

│ │  }
├── res/drawable-hdpi/ic_samourai_and_tor_notif_icon.png
│ ├── sng
│ │ @@ -32,14 +32,15 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ @@ -61,464 +62,463 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ -    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │  }
│ │  tRNS {
│ │ - 215 207 75 28 151 107 123 195 83 239 199 139 155 227 163 67 4 135 179 191 187 159 99 52 119 175 223 183 36 235 147 115 219 231 71 24 211 131 103 56 32 79 171 203 143 16 251 91 44 247 12 127 48 95 20 40 87 111 64 60 167 0 243 8}
│ │ + 139 36 108 131 143 92 68 135 227 179 56 52 207 235 28 48 76 84 199 191 187 183 215 32 223 239 4 155 219 231 159 112 0 124 171 12 247 40 147 100 72 151 104 128 175 120 167 60 163 116 24 8 243 211 96 20 64 203 88 16 251 44 195 80}
│ │  IMAGE {
│ │      pixels hex

... some huge but probably boring diff here ...

│ │  }
├── res/drawable-xxxhdpi/ic_samourai_and_tor_notif_icon.png
│ ├── sng
│ │ @@ -30,14 +30,17 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │ +    (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ +    (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ @@ -55,1215 +58,1214 @@
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │ -    (  0,  0,  0)     # rgb = (0x00,0x00,0x00) grey0
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │      (255,255,255)     # rgb = (0xff,0xff,0xff) grey100
│ │  }
│ │  tRNS {
│ │ - 79 147 99 195 20 119 71 103 40 207 139 48 24 75 211 16 52 251 187 155 87 171 227 231 215 183 131 107 60 235 175 91 44 219 143 123 28 199 135 12 247 223 203 191 127 67 159 115 95 163 179 111 64 56 167 0 4 239 32 83 36 151 243 8}
│ │ + 171 215 52 155 207 116 104 68 92 167 199 133 36 8 60 247 143 20 12 48 72 151 163 80 231 227 139 219 195 179 0 124 40 135 88 243 32 108 56 159 112 183 203 84 131 223 76 191 16 251 44 4 239 100 147 211 96 175 128 64 187 24 235 222 28 120}
│ │  IMAGE {
│ │      pixels hex

... some huge but probably boring diff here ...

│ │  }
├── smali/com/fasterxml/jackson/databind/cfg/PackageVersion.smali
│ @@ -10,15 +10,15 @@
│  .field public static final VERSION:Lcom/fasterxml/jackson/core/Version;
│  
│  
│  # direct methods
│  .method static constructor <clinit>()V
│      .locals 3
│  
│ -    const-string v0, "2.9.10.1"+    const-string v0, "2.9.10"
│  
│      const-string v1, "com.fasterxml.jackson.core"
│  
│      const-string v2, "jackson-databind"
│  
│      .line 13
│      invoke-static {v0, v1, v2}, Lcom/fasterxml/jackson/core/util/VersionUtil;->parseVersion(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/fasterxml/jackson/core/Version;
├── smali/com/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator.smali
│ @@ -248,74 +248,49 @@
│      invoke-interface {v0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
│  
│      const-string v1, "org.apache.xalan.lib.sql.JNDIConnectionPool"
│  
│      .line 113
│      invoke-interface {v0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
│  
│ -    const-string v1, "org.apache.commons.dbcp.datasources.PerUserPoolDataSource"--    .line 116-    invoke-interface {v0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z--    const-string v1, "org.apache.commons.dbcp.datasources.SharedPoolDataSource"--    .line 117-    invoke-interface {v0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z--    const-string v1, "com.p6spy.engine.spy.P6DataSource"--    .line 118-    invoke-interface {v0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z--    const-string v1, "org.apache.log4j.receivers.db.DriverManagerConnectionSource"--    .line 121-    invoke-interface {v0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z--    const-string v1, "org.apache.log4j.receivers.db.JNDIConnectionSource"--    .line 122-    invoke-interface {v0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z--    .line 124+    .line 115
│      invoke-static {v0}, Ljava/util/Collections;->unmodifiableSet(Ljava/util/Set;)Ljava/util/Set;
│  
│      move-result-object v0
│  
│      sput-object v0, Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;->DEFAULT_NO_DESER_CLASS_NAMES:Ljava/util/Set;
│  
│ -    .line 132+    .line 123
│      new-instance v0, Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;
│  
│      invoke-direct {v0}, Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;-><init>()V
│  
│      sput-object v0, Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;->instance:Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;
│  
│      return-void
│  .end method
│  
│  .method protected constructor <init>()V
│      .locals 1
│  
│ -    .line 134+    .line 125
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│ -    .line 130+    .line 121
│      sget-object v0, Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;->DEFAULT_NO_DESER_CLASS_NAMES:Ljava/util/Set;
│  
│      iput-object v0, p0, Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;->_cfgIllegalClassNames:Ljava/util/Set;
│  
│      return-void
│  .end method
│  
│  .method public static instance()Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;
│      .locals 1
│  
│ -    .line 136+    .line 127
│      sget-object v0, Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;->instance:Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;
│  
│      return-object v0
│  .end method
│  
│  
│  # virtual methods
│ @@ -323,122 +298,122 @@
│      .locals 3
│      .annotation system Ldalvik/annotation/Throws;
│          value = {
│              Lcom/fasterxml/jackson/databind/JsonMappingException;
│          }
│      .end annotation
│  
│ -    .line 143+    .line 134
│      invoke-virtual {p2}, Lcom/fasterxml/jackson/databind/JavaType;->getRawClass()Ljava/lang/Class;
│  
│      move-result-object p2
│  
│ -    .line 144+    .line 135
│      invoke-virtual {p2}, Ljava/lang/Class;->getName()Ljava/lang/String;
│  
│      move-result-object v0
│  
│ -    .line 148+    .line 139
│      iget-object v1, p0, Lcom/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator;->_cfgIllegalClassNames:Ljava/util/Set;
│  
│      invoke-interface {v1, v0}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z
│  
│      move-result v1
│  
│      if-eqz v1, :cond_0
│  
│      goto :goto_1
│  
│ -    .line 155+    .line 146
│      :cond_0
│      invoke-virtual {p2}, Ljava/lang/Class;->isInterface()Z
│  
│      move-result v1
│  
│      if-eqz v1, :cond_1
│  
│      goto :goto_2
│  
│      :cond_1
│      const-string v1, "org.springframework."
│  
│ -    .line 157+    .line 148
│      invoke-virtual {v0, v1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
│  
│      move-result v1
│  
│      if-eqz v1, :cond_3
│  
│      :goto_0
│      if-eqz p2, :cond_5
│  
│ -    .line 158+    .line 149
│      const-class v1, Ljava/lang/Object;
│  
│      if-eq p2, v1, :cond_5
│  
│ -    .line 159+    .line 150
│      invoke-virtual {p2}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
│  
│      move-result-object v1
│  
│      const-string v2, "AbstractPointcutAdvisor"
│  
│ -    .line 161+    .line 152
│      invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
│  
│      move-result v2
│  
│      if-nez v2, :cond_4
│  
│      const-string v2, "AbstractApplicationContext"
│  
│ -    .line 163+    .line 154
│      invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
│  
│      move-result v1
│  
│      if-eqz v1, :cond_2
│  
│      goto :goto_1
│  
│ -    .line 158+    .line 149
│      :cond_2
│      invoke-virtual {p2}, Ljava/lang/Class;->getSuperclass()Ljava/lang/Class;
│  
│      move-result-object p2
│  
│      goto :goto_0
│  
│      :cond_3
│      const-string p2, "com.mchange.v2.c3p0."
│  
│ -    .line 167+    .line 158
│      invoke-virtual {v0, p2}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
│  
│      move-result p2
│  
│      if-eqz p2, :cond_5
│  
│      const-string p2, "DataSource"
│  
│ -    .line 174+    .line 165
│      invoke-virtual {v0, p2}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
│  
│      move-result p2
│  
│      if-eqz p2, :cond_5
│  
│      :cond_4
│      :goto_1
│      const-string p2, "Illegal type (%s) to deserialize: prevented for security reasons"
│  
│      const/4 v1, 0x1
│  
│ -    .line 181+    .line 172
│      new-array v1, v1, [Ljava/lang/Object;
│  
│      const/4 v2, 0x0
│  
│      aput-object v0, v1, v2
│  
│      invoke-virtual {p1, p3, p2, v1}, Lcom/fasterxml/jackson/databind/DeserializationContext;->reportBadTypeDefinition(Lcom/fasterxml/jackson/databind/BeanDescription;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
├── smali/com/msopentech/thali/android/toronionproxy/AndroidOnionProxyManager.smali
│ @@ -256,12 +256,12 @@
│      .line 96
│      sget-object v2, Lcom/msopentech/thali/android/toronionproxy/AndroidOnionProxyManager;->LOG:Lorg/slf4j/Logger;
│  
│      const-string v3, "Someone tried to call stop before we had finished registering the receiver"
│  
│      invoke-interface {v2, v3, v1}, Lorg/slf4j/Logger;->info(Ljava/lang/String;Ljava/lang/Throwable;)V
│  
│ -    .line 99+    .line 97
│      :cond_1
│      :goto_1
│      throw v0
│  .end method
├── smali/com/msopentech/thali/android/toronionproxy/torinstaller/NativeLoader.smali
│ @@ -408,12 +408,12 @@
│  
│      move-result-object p0
│  
│      const-string p2, "TorNativeLoader"
│  
│      invoke-static {p2, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
│  
│ -    .line 69+    .line 67
│      :cond_6
│      :goto_8
│      throw p1
│  .end method
├── smali/com/msopentech/thali/toronionproxy/OnionProxyManager$1.smali
│ @@ -190,11 +190,11 @@
│  
│      move-result-object v2
│  
│      const-string v3, "Couldn\'t close input stream in eatStream"
│  
│      invoke-interface {v2, v3, v1}, Lorg/slf4j/Logger;->error(Ljava/lang/String;Ljava/lang/Throwable;)V
│  
│ -    .line 480+    .line 479
│      :goto_2
│      throw v0
│  .end method
├── smali/com/msopentech/thali/toronionproxy/FileUtilities.smali
│ @@ -86,15 +86,14 @@
│      return-void
│  
│      :catchall_0
│      move-exception p1
│  
│      invoke-virtual {p0}, Ljava/io/InputStream;->close()V
│  
│ -    .line 95
│      throw p1
│  .end method
│  
│  .method public static copyDoNotCloseInput(Ljava/io/InputStream;Ljava/io/OutputStream;)V
│      .locals 3
│      .annotation system Ldalvik/annotation/Throws;
│          value = {
│ @@ -138,15 +137,14 @@
│  
│      :catchall_0
│      move-exception p0
│  
│      .line 113
│      invoke-virtual {p1}, Ljava/io/OutputStream;->close()V
│  
│ -    .line 114
│      throw p0
│  .end method
│  
│  .method public static extractContentFromZip(Ljava/io/File;Ljava/io/InputStream;)V
│      .locals 4
│      .annotation system Ldalvik/annotation/Throws;
│          value = {
│ @@ -320,15 +318,14 @@
│      :catchall_0
│      move-exception p0
│  
│      if-eqz p1, :cond_8
│  
│      invoke-virtual {p1}, Ljava/io/InputStream;->close()V
│  
│ -    .line 208
│      :cond_8
│      throw p0
│  .end method
│  
│  .method public static listFilesToLog(Ljava/io/File;)V
│      .locals 3
│  
│ @@ -439,15 +436,14 @@
│      return-object v0
│  
│      :catchall_0
│      move-exception p0
│  
│      invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
│  
│ -    .line 140
│      throw p0
│  .end method
│  
│  .method public static recursiveFileDelete(Ljava/io/File;)V
│      .locals 4
│  
│      .line 160
├── smali/com/msopentech/thali/toronionproxy/OnionProxyManager.smali
│ @@ -592,15 +592,14 @@
│      :goto_0
│      if-eqz v1, :cond_0
│  
│      .line 508
│      :try_start_4
│      invoke-virtual {v1}, Ljava/io/PrintWriter;->close()V
│  
│ -    .line 510
│      :cond_0
│      throw v0
│  
│      .line 489
│      :cond_1
│      new-instance v0, Ljava/lang/RuntimeException;
│  
│ @@ -908,15 +907,15 @@
│  
│      .line 421
│      :try_start_5
│      iget-object v0, p0, Lcom/msopentech/thali/toronionproxy/OnionProxyManager;->controlConnection:Lnet/freehaven/tor/control/TorControlConnection;
│      :try_end_5
│      .catchall {:try_start_5 .. :try_end_5} :catchall_2
│  
│ -    .line 385+    .line 425
│      monitor-exit p0
│  
│      return v8
│  
│      :cond_5
│      move-object v5, v4
│  
│ @@ -956,15 +955,14 @@
│      if-eqz v5, :cond_7
│  
│      .line 425
│      invoke-virtual {v5}, Ljava/lang/Process;->destroy()V
│      :try_end_7
│      .catchall {:try_start_7 .. :try_end_7} :catchall_2
│  
│ -    .line 393
│      :cond_7
│      monitor-exit p0
│  
│      return v8
│  
│      .line 397
│      :cond_8
│ @@ -1040,15 +1038,14 @@
│      if-eqz v5, :cond_9
│  
│      .line 425
│      invoke-virtual {v5}, Ljava/lang/Process;->destroy()V
│      :try_end_9
│      .catchall {:try_start_9 .. :try_end_9} :catchall_2
│  
│ -    .line 412
│      :cond_9
│      monitor-exit p0
│  
│      return v1
│  
│      :catchall_0
│      move-exception v0
│ @@ -1106,15 +1103,14 @@
│      if-eqz v5, :cond_a
│  
│      .line 425
│      invoke-virtual {v5}, Ljava/lang/Process;->destroy()V
│      :try_end_b
│      .catchall {:try_start_b .. :try_end_b} :catchall_2
│  
│ -    .line 419
│      :cond_a
│      monitor-exit p0
│  
│      return v8
│  
│      :catch_3
│      move-exception v0
│ @@ -1141,15 +1137,14 @@
│      if-eqz v5, :cond_b
│  
│      .line 425
│      invoke-virtual {v5}, Ljava/lang/Process;->destroy()V
│      :try_end_d
│      .catchall {:try_start_d .. :try_end_d} :catchall_2
│  
│ -    .line 415
│      :cond_b
│      monitor-exit p0
│  
│      return v8
│  
│      .line 421
│      :goto_4
│ @@ -1159,15 +1154,14 @@
│      if-nez v1, :cond_c
│  
│      if-eqz v5, :cond_c
│  
│      .line 425
│      invoke-virtual {v5}, Ljava/lang/Process;->destroy()V
│  
│ -    .line 427
│      :cond_c
│      throw v0
│      :try_end_e
│      .catchall {:try_start_e .. :try_end_e} :catchall_2
│  
│      :catchall_2
│      move-exception v0
│ @@ -1798,15 +1792,14 @@
│      if-nez p1, :cond_0
│  
│      .line 137
│      invoke-virtual {p0}, Lcom/msopentech/thali/toronionproxy/OnionProxyManager;->stop()V
│      :try_end_1
│      .catchall {:try_start_1 .. :try_end_1} :catchall_1
│  
│ -    .line 109
│      :cond_0
│      monitor-exit p0
│  
│      return v0
│  
│      :cond_1
│      const/4 v2, 0x1
│ @@ -1848,15 +1841,14 @@
│      if-nez p1, :cond_3
│  
│      .line 137
│      invoke-virtual {p0}, Lcom/msopentech/thali/toronionproxy/OnionProxyManager;->stop()V
│      :try_end_3
│      .catchall {:try_start_3 .. :try_end_3} :catchall_1
│  
│ -    .line 118
│      :cond_3
│      monitor-exit p0
│  
│      return v2
│  
│      .line 123
│      :cond_4
│ @@ -1884,15 +1876,14 @@
│      move-result p2
│  
│      if-nez p2, :cond_5
│  
│      .line 137
│      invoke-virtual {p0}, Lcom/msopentech/thali/toronionproxy/OnionProxyManager;->stop()V
│  
│ -    .line 139
│      :cond_5
│      throw p1
│  
│      .line 136
│      :cond_6
│      invoke-virtual {p0}, Lcom/msopentech/thali/toronionproxy/OnionProxyManager;->isRunning()Z
│  
│ @@ -1901,15 +1892,14 @@
│      if-nez p1, :cond_7
│  
│      .line 137
│      invoke-virtual {p0}, Lcom/msopentech/thali/toronionproxy/OnionProxyManager;->stop()V
│      :try_end_5
│      .catchall {:try_start_5 .. :try_end_5} :catchall_1
│  
│ -    .line 133
│      :cond_7
│      monitor-exit p0
│  
│      return v0
│  
│      .line 103
│      :cond_8
│ @@ -2047,15 +2037,14 @@
│      .line 235
│      :cond_3
│      iput-object v0, p0, Lcom/msopentech/thali/toronionproxy/OnionProxyManager;->controlConnection:Lnet/freehaven/tor/control/TorControlConnection;
│  
│      .line 236
│      iput-object v0, p0, Lcom/msopentech/thali/toronionproxy/OnionProxyManager;->controlSocket:Ljava/net/Socket;
│  
│ -    .line 237
│      throw v1
│      :try_end_4
│      .catchall {:try_start_4 .. :try_end_4} :catchall_1
│  
│      :catchall_1
│      move-exception v0
├── smali/com/msopentech/thali/toronionproxy/OsData.smali
│ @@ -340,15 +340,14 @@
│  
│      :goto_2
│      if-eqz v0, :cond_6
│  
│      .line 100
│      invoke-virtual {v0}, Ljava/lang/Process;->destroy()V
│  
│ -    .line 102
│      :cond_6
│      throw v1
│  .end method
│  
│  .method public static getOsType()Lcom/msopentech/thali/toronionproxy/OsData$OsType;
│      .locals 1
├── lib/arm64-v8a/libiconv.so
│ ├── readelf --wide --sections {}
│ │ @@ -6,22 +6,22 @@
│ │    [ 1] .note.gnu.build-id NOTE            00000000000001c8 0001c8 000024 00   A  0   0  4
│ │    [ 2] .hash             HASH            00000000000001f0 0001f0 000150 04   A  3   0  8
│ │    [ 3] .dynsym           DYNSYM          0000000000000340 000340 000438 18   A  4   3  8
│ │    [ 4] .dynstr           STRTAB          0000000000000778 000778 0001c9 00   A  0   0  1
│ │    [ 5] .gnu.version      VERSYM          0000000000000942 000942 00005a 02   A  3   0  2
│ │    [ 6] .gnu.version_r    VERNEED         00000000000009a0 0009a0 000020 00   A  4   1  8
│ │    [ 7] .rela.dyn         RELA            00000000000009c0 0009c0 0016c8 18   A  3   0  8
│ │ -  [ 8] .rela.plt         RELA            0000000000002088 002088 000288 18  AI  3  18  8
│ │ +  [ 8] .rela.plt         RELA            0000000000002088 002088 000288 18  AI  3   9  8
│ │    [ 9] .plt              PROGBITS        0000000000002310 002310 0001d0 10  AX  0   0 16
│ │    [10] .text             PROGBITS        00000000000024e0 0024e0 015400 00  AX  0   0  4
│ │    [11] .rodata           PROGBITS        00000000000178e0 0178e0 0c85dd 00   A  0   0 16
│ │    [12] .eh_frame_hdr     PROGBITS        00000000000dfec0 0dfec0 000874 00   A  0   0  4
│ │    [13] .eh_frame         PROGBITS        00000000000e0738 0e0738 001ca8 00   A  0   0  8
│ │ -  [14] .init_array       INIT_ARRAY      00000000000f2b48 0e2b48 000008 08  WA  0   0  1
│ │ -  [15] .fini_array       FINI_ARRAY      00000000000f2b50 0e2b50 000010 08  WA  0   0  8
│ │ +  [14] .init_array       INIT_ARRAY      00000000000f2b48 0e2b48 000008 00  WA  0   0  1
│ │ +  [15] .fini_array       FINI_ARRAY      00000000000f2b50 0e2b50 000010 00  WA  0   0  8
│ │    [16] .data.rel.ro      PROGBITS        00000000000f2b60 0e2b60 0011a8 00  WA  0   0  8
│ │    [17] .dynamic          DYNAMIC         00000000000f3d08 0e3d08 000200 10  WA  4   0  8
│ │    [18] .got              PROGBITS        00000000000f3f08 0e3f08 0000f8 08  WA  0   0  8
│ │    [19] .data             PROGBITS        00000000000f4000 0e4000 00000c 00  WA  0   0  8
│ │    [20] .bss              NOBITS          00000000000f4010 0e400c 000008 00  WA  0   0  8
│ │    [21] .comment          PROGBITS        0000000000000000 0e400c 000064 01  MS  0   0  1
│ │    [22] .shstrtab         STRTAB          0000000000000000 0e4070 0000d1 00      0   0  1
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00002310 f07bbfa9 900700b0 118e47f9 10623c91 .{........G..b<.
│ │    0x00002320 20021fd6 1f2003d5 1f2003d5 1f2003d5  .... ... ... ..
│ │    0x00002330 900700b0 119247f9 10823c91 20021fd6 ......G...<. ...
│ │    0x00002340 900700b0 119647f9 10a23c91 20021fd6 ......G...<. ...
│ │    0x00002350 900700b0 119a47f9 10c23c91 20021fd6 ......G...<. ...
│ │    0x00002360 900700b0 119e47f9 10e23c91 20021fd6 ......G...<. ...
│ │    0x00002370 900700b0 11a247f9 10023d91 20021fd6 ......G...=. ...
│ ├── readelf --wide --decompress --hex-dump=.got {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x000f3f08 00000000 00000000 00000000 00000000 ................
│ │    0x000f3f18 00000000 00000000 10230000 00000000 .........#......
│ │    0x000f3f28 10230000 00000000 10230000 00000000 .#.......#......
│ │    0x000f3f38 10230000 00000000 10230000 00000000 .#.......#......
│ │    0x000f3f48 10230000 00000000 10230000 00000000 .#.......#......
│ │    0x000f3f58 10230000 00000000 10230000 00000000 .#.......#......
│ │    0x000f3f68 10230000 00000000 10230000 00000000 .#.......#......
├── lib/arm64-v8a/libzbar.so
│ ├── readelf --wide --sections {}
│ │ @@ -6,22 +6,22 @@
│ │    [ 1] .note.gnu.build-id NOTE            00000000000001c8 0001c8 000024 00   A  0   0  4
│ │    [ 2] .hash             HASH            00000000000001f0 0001f0 0006f8 04   A  3   0  8
│ │    [ 3] .dynsym           DYNSYM          00000000000008e8 0008e8 001728 18   A  4   3  8
│ │    [ 4] .dynstr           STRTAB          0000000000002010 002010 001640 00   A  0   0  1
│ │    [ 5] .gnu.version      VERSYM          0000000000003650 003650 0001ee 02   A  3   0  2
│ │    [ 6] .gnu.version_r    VERNEED         0000000000003840 003840 000020 00   A  4   1  8
│ │    [ 7] .rela.dyn         RELA            0000000000003860 003860 000570 18   A  3   0  8
│ │ -  [ 8] .rela.plt         RELA            0000000000003dd0 003dd0 000d68 18  AI  3  18  8
│ │ +  [ 8] .rela.plt         RELA            0000000000003dd0 003dd0 000d68 18  AI  3   9  8
│ │    [ 9] .plt              PROGBITS        0000000000004b40 004b40 000910 10  AX  0   0 16
│ │    [10] .text             PROGBITS        0000000000005450 005450 01a958 00  AX  0   0  4
│ │    [11] .rodata           PROGBITS        000000000001fdb0 01fdb0 001ead 00   A  0   0 16
│ │    [12] .eh_frame_hdr     PROGBITS        0000000000021c60 021c60 0007d4 00   A  0   0  4
│ │    [13] .eh_frame         PROGBITS        0000000000022438 022438 001f38 00   A  0   0  8
│ │ -  [14] .init_array       INIT_ARRAY      00000000000345f8 0245f8 000008 08  WA  0   0  1
│ │ -  [15] .fini_array       FINI_ARRAY      0000000000034600 024600 000010 08  WA  0   0  8
│ │ +  [14] .init_array       INIT_ARRAY      00000000000345f8 0245f8 000008 00  WA  0   0  1
│ │ +  [15] .fini_array       FINI_ARRAY      0000000000034600 024600 000010 00  WA  0   0  8
│ │    [16] .data.rel.ro      PROGBITS        0000000000034610 024610 000318 00  WA  0   0 16
│ │    [17] .dynamic          DYNAMIC         0000000000034928 024928 000210 10  WA  4   0  8
│ │    [18] .got              PROGBITS        0000000000034b38 024b38 0004c0 08  WA  0   0  8
│ │    [19] .data             PROGBITS        0000000000035000 025000 00005c 00  WA  0   0  8
│ │    [20] .bss              NOBITS          0000000000035060 02505c 000060 00  WA  0   0  8
│ │    [21] .comment          PROGBITS        0000000000000000 02505c 000064 01  MS  0   0  1
│ │    [22] .shstrtab         STRTAB          0000000000000000 0250c0 0000d1 00      0   0  1
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00004b40 f07bbfa9 90010090 11a645f9 10222d91 .{........E.."-.
│ │    0x00004b50 20021fd6 1f2003d5 1f2003d5 1f2003d5  .... ... ... ..
│ │    0x00004b60 90010090 11aa45f9 10422d91 20021fd6 ......E..B-. ...
│ │    0x00004b70 90010090 11ae45f9 10622d91 20021fd6 ......E..b-. ...
│ │    0x00004b80 90010090 11b245f9 10822d91 20021fd6 ......E...-. ...
│ │    0x00004b90 90010090 11b645f9 10a22d91 20021fd6 ......E...-. ...
│ │    0x00004ba0 90010090 11ba45f9 10c22d91 20021fd6 ......E...-. ...
│ ├── readelf --wide --decompress --hex-dump=.got {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00034b38 00000000 00000000 00000000 00000000 ................
│ │    0x00034b48 00000000 00000000 404b0000 00000000 ........@K......
│ │    0x00034b58 404b0000 00000000 404b0000 00000000 @K......@K......
│ │    0x00034b68 404b0000 00000000 404b0000 00000000 @K......@K......
│ │    0x00034b78 404b0000 00000000 404b0000 00000000 @K......@K......
│ │    0x00034b88 404b0000 00000000 404b0000 00000000 @K......@K......
│ │    0x00034b98 404b0000 00000000 404b0000 00000000 @K......@K......
├── lib/arm64-v8a/tor.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,24 +7,24 @@
│ │    [ 2] .note.android.ident NOTE            00000168 000168 000098 00   A  0   0  4
│ │    [ 3] .dynsym           DYNSYM          00000200 000200 024760 10   A  4   1  4
│ │    [ 4] .dynstr           STRTAB          00024960 024960 033f8f 00   A  0   0  1
│ │    [ 5] .hash             HASH            000588f0 0588f0 011224 04   A  3   0  4
│ │    [ 6] .gnu.version      VERSYM          00069b14 069b14 0048ec 02   A  3   0  2
│ │    [ 7] .gnu.version_r    VERNEED         0006e400 06e400 000060 00   A  4   3  4
│ │    [ 8] .rel.dyn          REL             0006e460 06e460 017b88 08   A  3   0  4
│ │ -  [ 9] .rel.plt          REL             00085fe8 085fe8 000698 08  AI  3  21  4
│ │ +  [ 9] .rel.plt          REL             00085fe8 085fe8 000698 08  AI  3  10  4
│ │    [10] .plt              PROGBITS        00086680 086680 0009f8 00  AX  0   0  4
│ │    [11] .text             PROGBITS        00087078 087078 4e38d4 00  AX  0   0  4
│ │    [12] .ARM.extab        PROGBITS        0056a94c 56a94c 010824 00   A  0   0  4
│ │    [13] .ARM.exidx        ARM_EXIDX       0057b170 57b170 00c5b8 08  AL 11   0  4
│ │    [14] .rodata           PROGBITS        00587728 587728 0c6c30 00   A  0   0  8
│ │    [15] .data.rel.ro.local PROGBITS        00650240 64f240 00b394 00  WA  0   0  4
│ │ -  [16] .fini_array       FINI_ARRAY      0065b5d4 65a5d4 000008 04  WA  0   0  4
│ │ -  [17] .init_array       INIT_ARRAY      0065b5dc 65a5dc 000010 04  WA  0   0  4
│ │ -  [18] .preinit_array    PREINIT_ARRAY   0065b5ec 65a5ec 000008 04  WA  0   0  4
│ │ +  [16] .fini_array       FINI_ARRAY      0065b5d4 65a5d4 000008 00  WA  0   0  4
│ │ +  [17] .init_array       INIT_ARRAY      0065b5dc 65a5dc 000010 00  WA  0   0  4
│ │ +  [18] .preinit_array    PREINIT_ARRAY   0065b5ec 65a5ec 000008 00  WA  0   0  4
│ │    [19] .data.rel.ro      PROGBITS        0065b5f8 65a5f8 004f28 00  WA  0   0  8
│ │    [20] .dynamic          DYNAMIC         00660520 65f520 000120 08  WA  4   0  4
│ │    [21] .got              PROGBITS        00660644 65f644 0009bc 00  WA  0   0  4
│ │    [22] .data             PROGBITS        00661000 660000 016e78 00  WA  0   0  8
│ │    [23] .bss              NOBITS          00677e78 676e78 0064c0 00  WA  0   0  8
│ │    [24] .note.gnu.gold-version NOTE            00000000 676e78 00001c 00      0   0  4
│ │    [25] .ARM.attributes   ARM_ATTRIBUTES  00000000 676e94 000034 00      0   0  1
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00086680 04e02de5 04e09fe5 0ee08fe0 08f0bee5 ..-.............
│ │    0x00086690 18a65d00 05c68fe2 daca8ce2 18f6bce5 ..].............
│ │    0x000866a0 05c68fe2 daca8ce2 10f6bce5 05c68fe2 ................
│ │    0x000866b0 daca8ce2 08f6bce5 05c68fe2 daca8ce2 ................
│ │    0x000866c0 00f6bce5 05c68fe2 daca8ce2 f8f5bce5 ................
│ │    0x000866d0 05c68fe2 daca8ce2 f0f5bce5 05c68fe2 ................
│ │    0x000866e0 daca8ce2 e8f5bce5 05c68fe2 daca8ce2 ................
│ ├── readelf --wide --decompress --hex-dump=.got {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00660644 ecb56500 dcb56500 d4b56500 e4b56500 ..e...e...e...e.
│ │    0x00660654 20710800 a8e16600 f0ab6700 f8ab6700  q....f...g...g.
│ │    0x00660664 d8806700 48926700 50926700 58926700 ..g.H.g.P.g.X.g.
│ │    0x00660674 30936700 38936700 60926700 48936700 0.g.8.g.`.g.H.g.
│ │    0x00660684 50936700 58936700 60936700 d07f6700 P.g.X.g.`.g...g.
│ │    0x00660694 7c7e6700 00000000 bc453600 c4473600 |~g......E6..G6.
│ │    0x006606a4 544c3600 bcc93500 08e36700 1ce36700 TL6...5...g...g.
├── lib/arm64-v8a/liberrno-lib.so
│ ├── readelf --wide --sections {}
│ │ @@ -6,21 +6,21 @@
│ │    [ 1] .note.gnu.build-id NOTE            00000000000001c8 0001c8 000024 00   A  0   0  4
│ │    [ 2] .hash             HASH            00000000000001f0 0001f0 000054 04   A  3   0  8
│ │    [ 3] .dynsym           DYNSYM          0000000000000248 000248 000180 18   A  4   3  8
│ │    [ 4] .dynstr           STRTAB          00000000000003c8 0003c8 0000fd 00   A  0   0  1
│ │    [ 5] .gnu.version      VERSYM          00000000000004c6 0004c6 000020 02   A  3   0  2
│ │    [ 6] .gnu.version_r    VERNEED         00000000000004e8 0004e8 000020 00   A  4   1  8
│ │    [ 7] .rela.dyn         RELA            0000000000000508 000508 000018 18   A  3   0  8
│ │ -  [ 8] .rela.plt         RELA            0000000000000520 000520 000060 18  AI  3  16  8
│ │ +  [ 8] .rela.plt         RELA            0000000000000520 000520 000060 18  AI  3   9  8
│ │    [ 9] .plt              PROGBITS        0000000000000580 000580 000060 10  AX  0   0 16
│ │    [10] .text             PROGBITS        00000000000005e0 0005e0 00008c 00  AX  0   0  4
│ │    [11] .eh_frame_hdr     PROGBITS        000000000000066c 00066c 00001c 00   A  0   0  4
│ │    [12] .eh_frame         PROGBITS        0000000000000688 000688 000058 00   A  0   0  8
│ │ -  [13] .init_array       INIT_ARRAY      0000000000010db8 000db8 000008 08  WA  0   0  1
│ │ -  [14] .fini_array       FINI_ARRAY      0000000000010dc0 000dc0 000010 08  WA  0   0  8
│ │ +  [13] .init_array       INIT_ARRAY      0000000000010db8 000db8 000008 00  WA  0   0  1
│ │ +  [14] .fini_array       FINI_ARRAY      0000000000010dc0 000dc0 000010 00  WA  0   0  8
│ │    [15] .dynamic          DYNAMIC         0000000000010dd0 000dd0 0001f0 10  WA  4   0  8
│ │    [16] .got              PROGBITS        0000000000010fc0 000fc0 000040 08  WA  0   0  8
│ │    [17] .data             PROGBITS        0000000000011000 001000 000008 00  WA  0   0  8
│ │    [18] .bss              NOBITS          0000000000011008 001008 000000 00  WA  0   0  1
│ │    [19] .comment          PROGBITS        0000000000000000 001008 000064 01  MS  0   0  1
│ │    [20] .shstrtab         STRTAB          0000000000000000 00106c 0000bc 00      0   0  1
│ │  Key to Flags:
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00000580 f07bbfa9 90000090 11ea47f9 10423f91 .{........G..B?.
│ │    0x00000590 20021fd6 1f2003d5 1f2003d5 1f2003d5  .... ... ... ..
│ │    0x000005a0 90000090 11ee47f9 10623f91 20021fd6 ......G..b?. ...
│ │    0x000005b0 90000090 11f247f9 10823f91 20021fd6 ......G...?. ...
│ │    0x000005c0 90000090 11f647f9 10a23f91 20021fd6 ......G...?. ...
│ │    0x000005d0 90000090 11fa47f9 10c23f91 20021fd6 ......G...?. ...
│ ├── readelf --wide --decompress --hex-dump=.got {}
│ │ @@ -1,8 +1,7 @@
│ │  
│ │  Hex dump of section '.got':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00010fc0 00000000 00000000 00000000 00000000 ................
│ │    0x00010fd0 00000000 00000000 80050000 00000000 ................
│ │    0x00010fe0 80050000 00000000 80050000 00000000 ................
│ │    0x00010ff0 80050000 00000000 d00d0100 00000000 ................
├── lib/x86_64/libiconv.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,23 +7,23 @@
│ │    [ 2] .dynsym           DYNSYM          0000000000000228 000228 0003a8 18   A  3   1  8
│ │    [ 3] .dynstr           STRTAB          00000000000005d0 0005d0 0001b7 00   A  0   0  1
│ │    [ 4] .hash             HASH            0000000000000788 000788 000138 04   A  2   0  8
│ │    [ 5] .gnu.version      VERSYM          00000000000008c0 0008c0 00004e 02   A  2   0  2
│ │    [ 6] .gnu.version_d    VERDEF          0000000000000910 000910 00001c 00   A  3   1  4
│ │    [ 7] .gnu.version_r    VERNEED         000000000000092c 00092c 000020 00   A  3   1  4
│ │    [ 8] .rela.dyn         RELA            0000000000000950 000950 0016e0 18   A  2   0  8
│ │ -  [ 9] .rela.plt         RELA            0000000000002030 002030 000288 18  AI  2  20  8
│ │ +  [ 9] .rela.plt         RELA            0000000000002030 002030 000288 18  AI  2  10  8
│ │    [10] .plt              PROGBITS        00000000000022c0 0022c0 0001c0 10  AX  0   0 16
│ │    [11] .text             PROGBITS        0000000000002480 002480 013bd8 00  AX  0   0 16
│ │    [12] .rodata           PROGBITS        0000000000016060 016060 0c8fa4 00   A  0   0 16
│ │    [13] .eh_frame         PROGBITS        00000000000df008 0df008 001e5c 00   A  0   0  8
│ │    [14] .eh_frame_hdr     PROGBITS        00000000000e0e64 0e0e64 000894 00   A  0   0  4
│ │ -  [15] .fini_array       FINI_ARRAY      00000000000e2b20 0e1b20 000010 08  WA  0   0  8
│ │ +  [15] .fini_array       FINI_ARRAY      00000000000e2b20 0e1b20 000010 00  WA  0   0  8
│ │    [16] .data.rel.ro      PROGBITS        00000000000e2b30 0e1b30 0011a8 00  WA  0   0 16
│ │ -  [17] .init_array       INIT_ARRAY      00000000000e3cd8 0e2cd8 000008 08  WA  0   0  8
│ │ +  [17] .init_array       INIT_ARRAY      00000000000e3cd8 0e2cd8 000008 00  WA  0   0  8
│ │    [18] .dynamic          DYNAMIC         00000000000e3ce0 0e2ce0 000230 10  WA  3   0  8
│ │    [19] .got              PROGBITS        00000000000e3f10 0e2f10 000000 00  WA  0   0  8
│ │    [20] .got.plt          PROGBITS        00000000000e3f10 0e2f10 0000f0 00  WA  0   0  8
│ │    [21] .data             PROGBITS        00000000000e4000 0e3000 00000c 00  WA  0   0  8
│ │    [22] .bss              NOBITS          00000000000e4010 0e300c 000008 00  WA  0   0  8
│ │    [23] .comment          PROGBITS        0000000000000000 0e300c 000065 01  MS  0   0  1
│ │    [24] .note.gnu.gold-version NOTE            0000000000000000 0e3074 00001c 00      0   0  4
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x000022c0 ff35521c 0e00ff25 541c0e00 90909090 .5R....%T.......
│ │    0x000022d0 ff25521c 0e006800 000000e9 e0ffffff .%R...h.........
│ │    0x000022e0 ff254a1c 0e006801 000000e9 d0ffffff .%J...h.........
│ │    0x000022f0 ff25421c 0e006802 000000e9 c0ffffff .%B...h.........
│ │    0x00002300 ff253a1c 0e006803 000000e9 b0ffffff .%:...h.........
│ │    0x00002310 ff25321c 0e006804 000000e9 a0ffffff .%2...h.........
│ │    0x00002320 ff252a1c 0e006805 000000e9 90ffffff .%*...h.........
│ ├── readelf --wide --decompress --hex-dump=.got.plt {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got.plt':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x000e3f10 e03c0e00 00000000 00000000 00000000 .<..............
│ │    0x000e3f20 00000000 00000000 d6220000 00000000 ........."......
│ │    0x000e3f30 e6220000 00000000 f6220000 00000000 ."......."......
│ │    0x000e3f40 06230000 00000000 16230000 00000000 .#.......#......
│ │    0x000e3f50 26230000 00000000 36230000 00000000 &#......6#......
│ │    0x000e3f60 46230000 00000000 56230000 00000000 F#......V#......
│ │    0x000e3f70 66230000 00000000 76230000 00000000 f#......v#......
├── lib/x86_64/libzbar.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,23 +7,23 @@
│ │    [ 2] .dynsym           DYNSYM          0000000000000228 000228 001698 18   A  3   1  8
│ │    [ 3] .dynstr           STRTAB          00000000000018c0 0018c0 001633 00   A  0   0  1
│ │    [ 4] .hash             HASH            0000000000002ef8 002ef8 0006e0 04   A  2   0  8
│ │    [ 5] .gnu.version      VERSYM          00000000000035d8 0035d8 0001e2 02   A  2   0  2
│ │    [ 6] .gnu.version_d    VERDEF          00000000000037bc 0037bc 00001c 00   A  3   1  4
│ │    [ 7] .gnu.version_r    VERNEED         00000000000037d8 0037d8 000020 00   A  3   1  4
│ │    [ 8] .rela.dyn         RELA            00000000000037f8 0037f8 000588 18   A  2   0  8
│ │ -  [ 9] .rela.plt         RELA            0000000000003d80 003d80 000d68 18  AI  2  20  8
│ │ +  [ 9] .rela.plt         RELA            0000000000003d80 003d80 000d68 18  AI  2  10  8
│ │    [10] .plt              PROGBITS        0000000000004af0 004af0 000900 10  AX  0   0 16
│ │    [11] .text             PROGBITS        00000000000053f0 0053f0 01d5c2 00  AX  0   0 16
│ │    [12] .rodata           PROGBITS        00000000000229c0 0229c0 001ec8 00   A  0   0 16
│ │    [13] .eh_frame         PROGBITS        0000000000024888 024888 0023b4 00   A  0   0  8
│ │    [14] .eh_frame_hdr     PROGBITS        0000000000026c3c 026c3c 0007f4 00   A  0   0  4
│ │ -  [15] .fini_array       FINI_ARRAY      00000000000285c0 0275c0 000010 08  WA  0   0  8
│ │ +  [15] .fini_array       FINI_ARRAY      00000000000285c0 0275c0 000010 00  WA  0   0  8
│ │    [16] .data.rel.ro      PROGBITS        00000000000285d0 0275d0 000328 00  WA  0   0 16
│ │ -  [17] .init_array       INIT_ARRAY      00000000000288f8 0278f8 000008 08  WA  0   0  8
│ │ +  [17] .init_array       INIT_ARRAY      00000000000288f8 0278f8 000008 00  WA  0   0  8
│ │    [18] .dynamic          DYNAMIC         0000000000028900 027900 000240 10  WA  3   0  8
│ │    [19] .got              PROGBITS        0000000000028b40 027b40 000028 00  WA  0   0  8
│ │    [20] .got.plt          PROGBITS        0000000000028b68 027b68 000490 00  WA  0   0  8
│ │    [21] .data             PROGBITS        0000000000029000 028000 000064 00  WA  0   0 16
│ │    [22] .bss              NOBITS          0000000000029068 028064 000060 00  WA  0   0  8
│ │    [23] .comment          PROGBITS        0000000000000000 028064 000065 01  MS  0   0  1
│ │    [24] .note.gnu.gold-version NOTE            0000000000000000 0280cc 00001c 00      0   0  4
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00004af0 ff357a40 0200ff25 7c400200 90909090 .5z@...%|@......
│ │    0x00004b00 ff257a40 02006800 000000e9 e0ffffff .%z@..h.........
│ │    0x00004b10 ff257240 02006801 000000e9 d0ffffff .%r@..h.........
│ │    0x00004b20 ff256a40 02006802 000000e9 c0ffffff .%j@..h.........
│ │    0x00004b30 ff256240 02006803 000000e9 b0ffffff .%b@..h.........
│ │    0x00004b40 ff255a40 02006804 000000e9 a0ffffff .%Z@..h.........
│ │    0x00004b50 ff255240 02006805 000000e9 90ffffff .%R@..h.........
│ ├── readelf --wide --decompress --hex-dump=.got.plt {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got.plt':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00028b68 00890200 00000000 00000000 00000000 ................
│ │    0x00028b78 00000000 00000000 064b0000 00000000 .........K......
│ │    0x00028b88 164b0000 00000000 264b0000 00000000 .K......&K......
│ │    0x00028b98 364b0000 00000000 464b0000 00000000 6K......FK......
│ │    0x00028ba8 564b0000 00000000 664b0000 00000000 VK......fK......
│ │    0x00028bb8 764b0000 00000000 864b0000 00000000 vK.......K......
│ │    0x00028bc8 964b0000 00000000 a64b0000 00000000 .K.......K......
├── lib/x86_64/tor.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,24 +7,24 @@
│ │    [ 2] .note.android.ident NOTE            00000168 000168 000098 00   A  0   0  2
│ │    [ 3] .dynsym           DYNSYM          00000200 000200 0240d0 10   A  4   1  4
│ │    [ 4] .dynstr           STRTAB          000242d0 0242d0 033888 00   A  0   0  1
│ │    [ 5] .hash             HASH            00057b58 057b58 011080 04   A  3   0  4
│ │    [ 6] .gnu.version      VERSYM          00068bd8 068bd8 00481a 02   A  3   0  2
│ │    [ 7] .gnu.version_r    VERNEED         0006d3f4 06d3f4 000060 00   A  4   3  4
│ │    [ 8] .rel.dyn          REL             0006d454 06d454 017020 08   A  3   0  4
│ │ -  [ 9] .rel.plt          REL             00084474 084474 000680 08  AI  3  22  4
│ │ +  [ 9] .rel.plt          REL             00084474 084474 000680 08  AI  3  10  4
│ │    [10] .plt              PROGBITS        00084b00 084b00 000d10 04  AX  0   0 16
│ │    [11] .text             PROGBITS        00085820 085820 48f20c 00  AX  0   0 32
│ │    [12] .rodata           PROGBITS        00514a40 514a40 0c9d00 00   A  0   0 64
│ │    [13] .eh_frame         PROGBITS        005de740 5de740 08a1a8 00   A  0   0  4
│ │    [14] .eh_frame_hdr     PROGBITS        006688e8 6688e8 01a6cc 00   A  0   0  4
│ │    [15] .data.rel.ro.local PROGBITS        006848c0 6838c0 00bc2c 00  WA  0   0 64
│ │ -  [16] .fini_array       FINI_ARRAY      006904ec 68f4ec 000008 04  WA  0   0  4
│ │ -  [17] .init_array       INIT_ARRAY      006904f4 68f4f4 000008 04  WA  0   0  4
│ │ -  [18] .preinit_array    PREINIT_ARRAY   006904fc 68f4fc 000008 04  WA  0   0  4
│ │ +  [16] .fini_array       FINI_ARRAY      006904ec 68f4ec 000008 00  WA  0   0  4
│ │ +  [17] .init_array       INIT_ARRAY      006904f4 68f4f4 000008 00  WA  0   0  4
│ │ +  [18] .preinit_array    PREINIT_ARRAY   006904fc 68f4fc 000008 00  WA  0   0  4
│ │    [19] .data.rel.ro      PROGBITS        00690540 68f540 006608 00  WA  0   0 64
│ │    [20] .dynamic          DYNAMIC         00696b48 695b48 000120 08  WA  4   0  4
│ │    [21] .got              PROGBITS        00696c68 695c68 000018 00  WA  0   0  4
│ │    [22] .got.plt          PROGBITS        00696c80 695c80 00034c 00  WA  0   0  4
│ │    [23] .data             PROGBITS        00697000 696000 0185d8 00  WA  0   0 64
│ │    [24] .bss              NOBITS          006af600 6ae5d8 006c30 00  WA  0   0 64
│ │    [25] .note.gnu.gold-version NOTE            00000000 6ae5d8 00001c 00      0   0  4
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00084b00 ffb30400 0000ffa3 08000000 00000000 ................
│ │    0x00084b10 ffa30c00 00006800 000000e9 e0ffffff ......h.........
│ │    0x00084b20 ffa31000 00006808 000000e9 d0ffffff ......h.........
│ │    0x00084b30 ffa31400 00006810 000000e9 c0ffffff ......h.........
│ │    0x00084b40 ffa31800 00006818 000000e9 b0ffffff ......h.........
│ │    0x00084b50 ffa31c00 00006820 000000e9 a0ffffff ......h ........
│ │    0x00084b60 ffa32000 00006828 000000e9 90ffffff .. ...h(........
│ ├── readelf --wide --decompress --hex-dump=.got.plt {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got.plt':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00696c80 486b6900 00000000 00000000 164b0800 Hki..........K..
│ │    0x00696c90 264b0800 364b0800 464b0800 564b0800 &K..6K..FK..VK..
│ │    0x00696ca0 664b0800 764b0800 864b0800 964b0800 fK..vK...K...K..
│ │    0x00696cb0 a64b0800 b64b0800 c64b0800 d64b0800 .K...K...K...K..
│ │    0x00696cc0 e64b0800 f64b0800 064c0800 164c0800 .K...K...L...L..
│ │    0x00696cd0 264c0800 364c0800 464c0800 564c0800 &L..6L..FL..VL..
│ │    0x00696ce0 664c0800 764c0800 864c0800 964c0800 fL..vL...L...L..
├── lib/x86_64/liberrno-lib.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,21 +7,21 @@
│ │    [ 2] .dynsym           DYNSYM          0000000000000228 000228 0000f0 18   A  3   1  8
│ │    [ 3] .dynstr           STRTAB          0000000000000318 000318 0000db 00   A  0   0  1
│ │    [ 4] .hash             HASH            00000000000003f8 0003f8 00003c 04   A  2   0  8
│ │    [ 5] .gnu.version      VERSYM          0000000000000434 000434 000014 02   A  2   0  2
│ │    [ 6] .gnu.version_d    VERDEF          0000000000000448 000448 00001c 00   A  3   1  4
│ │    [ 7] .gnu.version_r    VERNEED         0000000000000464 000464 000020 00   A  3   1  4
│ │    [ 8] .rela.dyn         RELA            0000000000000488 000488 000030 18   A  2   0  8
│ │ -  [ 9] .rela.plt         RELA            00000000000004b8 0004b8 000060 18  AI  2  18  8
│ │ +  [ 9] .rela.plt         RELA            00000000000004b8 0004b8 000060 18  AI  2  10  8
│ │    [10] .plt              PROGBITS        0000000000000520 000520 000050 10  AX  0   0 16
│ │    [11] .text             PROGBITS        0000000000000570 000570 000083 00  AX  0   0 16
│ │    [12] .eh_frame         PROGBITS        00000000000005f8 0005f8 0000c4 00   A  0   0  8
│ │    [13] .eh_frame_hdr     PROGBITS        00000000000006bc 0006bc 00003c 00   A  0   0  4
│ │ -  [14] .fini_array       FINI_ARRAY      0000000000001d90 000d90 000010 08  WA  0   0  8
│ │ -  [15] .init_array       INIT_ARRAY      0000000000001da0 000da0 000008 08  WA  0   0  8
│ │ +  [14] .fini_array       FINI_ARRAY      0000000000001d90 000d90 000010 00  WA  0   0  8
│ │ +  [15] .init_array       INIT_ARRAY      0000000000001da0 000da0 000008 00  WA  0   0  8
│ │    [16] .dynamic          DYNAMIC         0000000000001da8 000da8 000220 10  WA  3   0  8
│ │    [17] .got              PROGBITS        0000000000001fc8 000fc8 000000 00  WA  0   0  8
│ │    [18] .got.plt          PROGBITS        0000000000001fc8 000fc8 000038 00  WA  0   0  8
│ │    [19] .data             PROGBITS        0000000000002000 001000 000008 00  WA  0   0  8
│ │    [20] .bss              NOBITS          0000000000002008 001008 000000 00  WA  0   0  1
│ │    [21] .comment          PROGBITS        0000000000000000 001008 000065 01  MS  0   0  1
│ │    [22] .note.gnu.gold-version NOTE            0000000000000000 001070 00001c 00      0   0  4
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,8 +1,9 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00000520 ff35aa1a 0000ff25 ac1a0000 90909090 .5.....%........
│ │    0x00000530 ff25aa1a 00006800 000000e9 e0ffffff .%....h.........
│ │    0x00000540 ff25a21a 00006801 000000e9 d0ffffff .%....h.........
│ │    0x00000550 ff259a1a 00006802 000000e9 c0ffffff .%....h.........
│ │    0x00000560 ff25921a 00006803 000000e9 b0ffffff .%....h.........
│ ├── readelf --wide --decompress --hex-dump=.got.plt {}
│ │ @@ -1,8 +1,7 @@
│ │  
│ │  Hex dump of section '.got.plt':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00001fc8 a81d0000 00000000 00000000 00000000 ................
│ │    0x00001fd8 00000000 00000000 36050000 00000000 ........6.......
│ │    0x00001fe8 46050000 00000000 56050000 00000000 F.......V.......
│ │    0x00001ff8 66050000 00000000                   f.......
├── lib/x86/libiconv.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,23 +7,23 @@
│ │    [ 2] .dynsym           DYNSYM          00000158 000158 000260 10   A  3   1  4
│ │    [ 3] .dynstr           STRTAB          000003b8 0003b8 0001a0 00   A  0   0  1
│ │    [ 4] .hash             HASH            00000558 000558 000134 04   A  2   0  4
│ │    [ 5] .gnu.version      VERSYM          0000068c 00068c 00004c 02   A  2   0  2
│ │    [ 6] .gnu.version_d    VERDEF          000006d8 0006d8 00001c 00   A  3   1  4
│ │    [ 7] .gnu.version_r    VERNEED         000006f4 0006f4 000020 00   A  3   1  4
│ │    [ 8] .rel.dyn          REL             00000714 000714 0007a0 08   A  2   0  4
│ │ -  [ 9] .rel.plt          REL             00000eb4 000eb4 0000d0 08  AI  2  20  4
│ │ +  [ 9] .rel.plt          REL             00000eb4 000eb4 0000d0 08  AI  2  10  4
│ │    [10] .plt              PROGBITS        00000f90 000f90 0001b0 04  AX  0   0 16
│ │    [11] .text             PROGBITS        00001140 001140 014790 00  AX  0   0 16
│ │    [12] .rodata           PROGBITS        000158d0 0158d0 0c8610 00   A  0   0 16
│ │    [13] .eh_frame         PROGBITS        000ddee0 0ddee0 002074 00   A  0   0  4
│ │    [14] .eh_frame_hdr     PROGBITS        000dff54 0dff54 0008a4 00   A  0   0  4
│ │ -  [15] .fini_array       FINI_ARRAY      000e2594 0e1594 000008 04  WA  0   0  4
│ │ +  [15] .fini_array       FINI_ARRAY      000e2594 0e1594 000008 00  WA  0   0  4
│ │    [16] .data.rel.ro      PROGBITS        000e259c 0e159c 0008d4 00  WA  0   0  4
│ │ -  [17] .init_array       INIT_ARRAY      000e2e70 0e1e70 000004 04  WA  0   0  4
│ │ +  [17] .init_array       INIT_ARRAY      000e2e70 0e1e70 000004 00  WA  0   0  4
│ │    [18] .dynamic          DYNAMIC         000e2e74 0e1e74 000118 08  WA  3   0  4
│ │    [19] .got              PROGBITS        000e2f8c 0e1f8c 000000 00  WA  0   0  4
│ │    [20] .got.plt          PROGBITS        000e2f8c 0e1f8c 000074 00  WA  0   0  4
│ │    [21] .data             PROGBITS        000e3000 0e2000 000008 00  WA  0   0  4
│ │    [22] .bss              NOBITS          000e3008 0e2008 000004 00  WA  0   0  4
│ │    [23] .comment          PROGBITS        00000000 0e2008 000065 01  MS  0   0  1
│ │    [24] .note.gnu.gold-version NOTE            00000000 0e2070 00001c 00      0   0  4
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00000f90 ffb30400 0000ffa3 08000000 00000000 ................
│ │    0x00000fa0 ffa30c00 00006800 000000e9 e0ffffff ......h.........
│ │    0x00000fb0 ffa31000 00006808 000000e9 d0ffffff ......h.........
│ │    0x00000fc0 ffa31400 00006810 000000e9 c0ffffff ......h.........
│ │    0x00000fd0 ffa31800 00006818 000000e9 b0ffffff ......h.........
│ │    0x00000fe0 ffa31c00 00006820 000000e9 a0ffffff ......h ........
│ │    0x00000ff0 ffa32000 00006828 000000e9 90ffffff .. ...h(........
│ ├── readelf --wide --decompress --hex-dump=.got.plt {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got.plt':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x000e2f8c 742e0e00 00000000 00000000 a60f0000 t...............
│ │    0x000e2f9c b60f0000 c60f0000 d60f0000 e60f0000 ................
│ │    0x000e2fac f60f0000 06100000 16100000 26100000 ............&...
│ │    0x000e2fbc 36100000 46100000 56100000 66100000 6...F...V...f...
│ │    0x000e2fcc 76100000 86100000 96100000 a6100000 v...............
│ │    0x000e2fdc b6100000 c6100000 d6100000 e6100000 ................
│ │    0x000e2fec f6100000 06110000 16110000 26110000 ............&...
├── lib/x86/libzbar.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,23 +7,23 @@
│ │    [ 2] .dynsym           DYNSYM          00000158 000158 000f20 10   A  3   1  4
│ │    [ 3] .dynstr           STRTAB          00001078 001078 00163c 00   A  0   0  1
│ │    [ 4] .hash             HASH            000026b4 0026b4 0006e4 04   A  2   0  4
│ │    [ 5] .gnu.version      VERSYM          00002d98 002d98 0001e4 02   A  2   0  2
│ │    [ 6] .gnu.version_d    VERDEF          00002f7c 002f7c 00001c 00   A  3   1  4
│ │    [ 7] .gnu.version_r    VERNEED         00002f98 002f98 000020 00   A  3   1  4
│ │    [ 8] .rel.dyn          REL             00002fb8 002fb8 0001d8 08   A  2   0  4
│ │ -  [ 9] .rel.plt          REL             00003190 003190 000480 08  AI  2  20  4
│ │ +  [ 9] .rel.plt          REL             00003190 003190 000480 08  AI  2  10  4
│ │    [10] .plt              PROGBITS        00003610 003610 000910 04  AX  0   0 16
│ │    [11] .text             PROGBITS        00003f20 003f20 01e2f8 00  AX  0   0 16
│ │    [12] .rodata           PROGBITS        00022220 022220 001e60 00   A  0   0 16
│ │    [13] .eh_frame         PROGBITS        00024080 024080 001e8c 00   A  0   0  4
│ │    [14] .eh_frame_hdr     PROGBITS        00025f0c 025f0c 000804 00   A  0   0  4
│ │ -  [15] .fini_array       FINI_ARRAY      00027ae8 026ae8 000008 04  WA  0   0  4
│ │ +  [15] .fini_array       FINI_ARRAY      00027ae8 026ae8 000008 00  WA  0   0  4
│ │    [16] .data.rel.ro      PROGBITS        00027af0 026af0 00018c 00  WA  0   0  4
│ │ -  [17] .init_array       INIT_ARRAY      00027c7c 026c7c 000004 04  WA  0   0  4
│ │ +  [17] .init_array       INIT_ARRAY      00027c7c 026c7c 000004 00  WA  0   0  4
│ │    [18] .dynamic          DYNAMIC         00027c80 026c80 000120 08  WA  3   0  4
│ │    [19] .got              PROGBITS        00027da0 026da0 000014 00  WA  0   0  4
│ │    [20] .got.plt          PROGBITS        00027db4 026db4 00024c 00  WA  0   0  4
│ │    [21] .data             PROGBITS        00028000 027000 000058 00  WA  0   0  4
│ │    [22] .bss              NOBITS          00028058 027058 000044 00  WA  0   0  4
│ │    [23] .comment          PROGBITS        00000000 027058 000065 01  MS  0   0  1
│ │    [24] .note.gnu.gold-version NOTE            00000000 0270c0 00001c 00      0   0  4
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00003610 ffb30400 0000ffa3 08000000 00000000 ................
│ │    0x00003620 ffa30c00 00006800 000000e9 e0ffffff ......h.........
│ │    0x00003630 ffa31000 00006808 000000e9 d0ffffff ......h.........
│ │    0x00003640 ffa31400 00006810 000000e9 c0ffffff ......h.........
│ │    0x00003650 ffa31800 00006818 000000e9 b0ffffff ......h.........
│ │    0x00003660 ffa31c00 00006820 000000e9 a0ffffff ......h ........
│ │    0x00003670 ffa32000 00006828 000000e9 90ffffff .. ...h(........
│ ├── readelf --wide --decompress --hex-dump=.got.plt {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got.plt':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00027db4 807c0200 00000000 00000000 26360000 .|..........&6..
│ │    0x00027dc4 36360000 46360000 56360000 66360000 66..F6..V6..f6..
│ │    0x00027dd4 76360000 86360000 96360000 a6360000 v6...6...6...6..
│ │    0x00027de4 b6360000 c6360000 d6360000 e6360000 .6...6...6...6..
│ │    0x00027df4 f6360000 06370000 16370000 26370000 .6...7...7..&7..
│ │    0x00027e04 36370000 46370000 56370000 66370000 67..F7..V7..f7..
│ │    0x00027e14 76370000 86370000 96370000 a6370000 v7...7...7...7..
├── lib/x86/tor.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,24 +7,24 @@
│ │    [ 2] .note.android.ident NOTE            00000168 000168 000098 00   A  0   0  2
│ │    [ 3] .dynsym           DYNSYM          00000200 000200 0240d0 10   A  4   1  4
│ │    [ 4] .dynstr           STRTAB          000242d0 0242d0 033888 00   A  0   0  1
│ │    [ 5] .hash             HASH            00057b58 057b58 011080 04   A  3   0  4
│ │    [ 6] .gnu.version      VERSYM          00068bd8 068bd8 00481a 02   A  3   0  2
│ │    [ 7] .gnu.version_r    VERNEED         0006d3f4 06d3f4 000060 00   A  4   3  4
│ │    [ 8] .rel.dyn          REL             0006d454 06d454 017020 08   A  3   0  4
│ │ -  [ 9] .rel.plt          REL             00084474 084474 000680 08  AI  3  22  4
│ │ +  [ 9] .rel.plt          REL             00084474 084474 000680 08  AI  3  10  4
│ │    [10] .plt              PROGBITS        00084b00 084b00 000d10 04  AX  0   0 16
│ │    [11] .text             PROGBITS        00085820 085820 48f20c 00  AX  0   0 32
│ │    [12] .rodata           PROGBITS        00514a40 514a40 0c9d00 00   A  0   0 64
│ │    [13] .eh_frame         PROGBITS        005de740 5de740 08a1a8 00   A  0   0  4
│ │    [14] .eh_frame_hdr     PROGBITS        006688e8 6688e8 01a6cc 00   A  0   0  4
│ │    [15] .data.rel.ro.local PROGBITS        006848c0 6838c0 00bc2c 00  WA  0   0 64
│ │ -  [16] .fini_array       FINI_ARRAY      006904ec 68f4ec 000008 04  WA  0   0  4
│ │ -  [17] .init_array       INIT_ARRAY      006904f4 68f4f4 000008 04  WA  0   0  4
│ │ -  [18] .preinit_array    PREINIT_ARRAY   006904fc 68f4fc 000008 04  WA  0   0  4
│ │ +  [16] .fini_array       FINI_ARRAY      006904ec 68f4ec 000008 00  WA  0   0  4
│ │ +  [17] .init_array       INIT_ARRAY      006904f4 68f4f4 000008 00  WA  0   0  4
│ │ +  [18] .preinit_array    PREINIT_ARRAY   006904fc 68f4fc 000008 00  WA  0   0  4
│ │    [19] .data.rel.ro      PROGBITS        00690540 68f540 006608 00  WA  0   0 64
│ │    [20] .dynamic          DYNAMIC         00696b48 695b48 000120 08  WA  4   0  4
│ │    [21] .got              PROGBITS        00696c68 695c68 000018 00  WA  0   0  4
│ │    [22] .got.plt          PROGBITS        00696c80 695c80 00034c 00  WA  0   0  4
│ │    [23] .data             PROGBITS        00697000 696000 0185d8 00  WA  0   0 64
│ │    [24] .bss              NOBITS          006af600 6ae5d8 006c30 00  WA  0   0 64
│ │    [25] .note.gnu.gold-version NOTE            00000000 6ae5d8 00001c 00      0   0  4
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00084b00 ffb30400 0000ffa3 08000000 00000000 ................
│ │    0x00084b10 ffa30c00 00006800 000000e9 e0ffffff ......h.........
│ │    0x00084b20 ffa31000 00006808 000000e9 d0ffffff ......h.........
│ │    0x00084b30 ffa31400 00006810 000000e9 c0ffffff ......h.........
│ │    0x00084b40 ffa31800 00006818 000000e9 b0ffffff ......h.........
│ │    0x00084b50 ffa31c00 00006820 000000e9 a0ffffff ......h ........
│ │    0x00084b60 ffa32000 00006828 000000e9 90ffffff .. ...h(........
│ ├── readelf --wide --decompress --hex-dump=.got.plt {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got.plt':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00696c80 486b6900 00000000 00000000 164b0800 Hki..........K..
│ │    0x00696c90 264b0800 364b0800 464b0800 564b0800 &K..6K..FK..VK..
│ │    0x00696ca0 664b0800 764b0800 864b0800 964b0800 fK..vK...K...K..
│ │    0x00696cb0 a64b0800 b64b0800 c64b0800 d64b0800 .K...K...K...K..
│ │    0x00696cc0 e64b0800 f64b0800 064c0800 164c0800 .K...K...L...L..
│ │    0x00696cd0 264c0800 364c0800 464c0800 564c0800 &L..6L..FL..VL..
│ │    0x00696ce0 664c0800 764c0800 864c0800 964c0800 fL..vL...L...L..
├── lib/x86/liberrno-lib.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,21 +7,21 @@
│ │    [ 2] .dynsym           DYNSYM          00000158 000158 0000b0 10   A  3   1  4
│ │    [ 3] .dynstr           STRTAB          00000208 000208 0000ec 00   A  0   0  1
│ │    [ 4] .hash             HASH            000002f4 0002f4 000040 04   A  2   0  4
│ │    [ 5] .gnu.version      VERSYM          00000334 000334 000016 02   A  2   0  2
│ │    [ 6] .gnu.version_d    VERDEF          0000034c 00034c 00001c 00   A  3   1  4
│ │    [ 7] .gnu.version_r    VERNEED         00000368 000368 000020 00   A  3   1  4
│ │    [ 8] .rel.dyn          REL             00000388 000388 000010 08   A  2   0  4
│ │ -  [ 9] .rel.plt          REL             00000398 000398 000028 08  AI  2  18  4
│ │ +  [ 9] .rel.plt          REL             00000398 000398 000028 08  AI  2  10  4
│ │    [10] .plt              PROGBITS        000003c0 0003c0 000060 04  AX  0   0 16
│ │    [11] .text             PROGBITS        00000420 000420 00012f 00  AX  0   0 16
│ │    [12] .eh_frame         PROGBITS        00000550 000550 00010c 00   A  0   0  4
│ │    [13] .eh_frame_hdr     PROGBITS        0000065c 00065c 00004c 00   A  0   0  4
│ │ -  [14] .fini_array       FINI_ARRAY      00001ec4 000ec4 000008 04  WA  0   0  4
│ │ -  [15] .init_array       INIT_ARRAY      00001ecc 000ecc 000004 04  WA  0   0  4
│ │ +  [14] .fini_array       FINI_ARRAY      00001ec4 000ec4 000008 00  WA  0   0  4
│ │ +  [15] .init_array       INIT_ARRAY      00001ecc 000ecc 000004 00  WA  0   0  4
│ │    [16] .dynamic          DYNAMIC         00001ed0 000ed0 000110 08  WA  3   0  4
│ │    [17] .got              PROGBITS        00001fe0 000fe0 000000 00  WA  0   0  4
│ │    [18] .got.plt          PROGBITS        00001fe0 000fe0 000020 00  WA  0   0  4
│ │    [19] .data             PROGBITS        00002000 001000 000004 00  WA  0   0  4
│ │    [20] .bss              NOBITS          00002004 001004 000000 00  WA  0   0  1
│ │    [21] .comment          PROGBITS        00000000 001004 000065 01  MS  0   0  1
│ │    [22] .note.gnu.gold-version NOTE            00000000 00106c 00001c 00      0   0  4
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x000003c0 ffb30400 0000ffa3 08000000 00000000 ................
│ │    0x000003d0 ffa30c00 00006800 000000e9 e0ffffff ......h.........
│ │    0x000003e0 ffa31000 00006808 000000e9 d0ffffff ......h.........
│ │    0x000003f0 ffa31400 00006810 000000e9 c0ffffff ......h.........
│ │    0x00000400 ffa31800 00006818 000000e9 b0ffffff ......h.........
│ │    0x00000410 ffa31c00 00006820 000000e9 a0ffffff ......h ........
│ ├── readelf --wide --decompress --hex-dump=.got.plt {}
│ │ @@ -1,6 +1,5 @@
│ │  
│ │  Hex dump of section '.got.plt':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00001fe0 d01e0000 00000000 00000000 d6030000 ................
│ │    0x00001ff0 e6030000 f6030000 06040000 16040000 ................
├── lib/armeabi-v7a/libiconv.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,23 +7,23 @@
│ │    [ 2] .dynsym           DYNSYM          00000158 000158 000570 10   A  3   1  4
│ │    [ 3] .dynstr           STRTAB          000006c8 0006c8 0005e9 00   A  0   0  1
│ │    [ 4] .hash             HASH            00000cb4 000cb4 000270 04   A  2   0  4
│ │    [ 5] .gnu.version      VERSYM          00000f24 000f24 0000ae 02   A  2   0  2
│ │    [ 6] .gnu.version_d    VERDEF          00000fd4 000fd4 00001c 00   A  3   1  4
│ │    [ 7] .gnu.version_r    VERNEED         00000ff0 000ff0 000020 00   A  3   1  4
│ │    [ 8] .rel.dyn          REL             00001010 001010 0007d8 08   A  2   0  4
│ │ -  [ 9] .rel.plt          REL             000017e8 0017e8 000198 08  AI  2  19  4
│ │ +  [ 9] .rel.plt          REL             000017e8 0017e8 000198 08  AI  2  10  4
│ │    [10] .plt              PROGBITS        00001980 001980 000278 00  AX  0   0  4
│ │    [11] .text             PROGBITS        00001bf8 001bf8 00f7e8 00  AX  0   0  4
│ │    [12] .ARM.extab        PROGBITS        000113e0 0113e0 0000e4 00   A  0   0  4
│ │    [13] .ARM.exidx        ARM_EXIDX       000114c4 0114c4 000520 08  AL 11   0  4
│ │    [14] .rodata           PROGBITS        000119f0 0119f0 0c7c87 00   A  0   0 16
│ │ -  [15] .fini_array       FINI_ARRAY      000db510 0da510 000008 04  WA  0   0  4
│ │ +  [15] .fini_array       FINI_ARRAY      000db510 0da510 000008 00  WA  0   0  4
│ │    [16] .data.rel.ro      PROGBITS        000db518 0da518 0008d4 00  WA  0   0  4
│ │ -  [17] .init_array       INIT_ARRAY      000dbdec 0dadec 000004 04  WA  0   0  1
│ │ +  [17] .init_array       INIT_ARRAY      000dbdec 0dadec 000004 00  WA  0   0  1
│ │    [18] .dynamic          DYNAMIC         000dbdf0 0dadf0 000118 08  WA  3   0  4
│ │    [19] .got              PROGBITS        000dbf08 0daf08 0000f8 00  WA  0   0  4
│ │    [20] .data             PROGBITS        000dc000 0db000 000008 00  WA  0   0  4
│ │    [21] .bss              NOBITS          000dc008 0db008 000004 00  WA  0   0  4
│ │    [22] .comment          PROGBITS        00000000 0db008 000065 01  MS  0   0  1
│ │    [23] .note.gnu.gold-version NOTE            00000000 0db070 00001c 00      0   0  4
│ │    [24] .ARM.attributes   ARM_ATTRIBUTES  00000000 0db08c 000038 00      0   0  1
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00001980 04e02de5 04e09fe5 0ee08fe0 08f0bee5 ..-.............
│ │    0x00001990 98a50d00 00c68fe2 daca8ce2 98f5bce5 ................
│ │    0x000019a0 00c68fe2 daca8ce2 90f5bce5 00c68fe2 ................
│ │    0x000019b0 daca8ce2 88f5bce5 00c68fe2 daca8ce2 ................
│ │    0x000019c0 80f5bce5 00c68fe2 daca8ce2 78f5bce5 ............x...
│ │    0x000019d0 00c68fe2 daca8ce2 70f5bce5 00c68fe2 ........p.......
│ │    0x000019e0 daca8ce2 68f5bce5 00c68fe2 daca8ce2 ....h...........
│ ├── readelf --wide --decompress --hex-dump=.got {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x000dbf08 00000000 00000000 00000000 00000000 ................
│ │    0x000dbf18 00000000 e4190100 c4140100 00000000 ................
│ │    0x000dbf28 00000000 00000000 00000000 80190000 ................
│ │    0x000dbf38 80190000 80190000 80190000 80190000 ................
│ │    0x000dbf48 80190000 80190000 80190000 80190000 ................
│ │    0x000dbf58 80190000 80190000 80190000 80190000 ................
│ │    0x000dbf68 80190000 80190000 80190000 80190000 ................
├── lib/armeabi-v7a/libzbar.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,23 +7,23 @@
│ │    [ 2] .dynsym           DYNSYM          00000158 000158 0013b0 10   A  3   1  4
│ │    [ 3] .dynstr           STRTAB          00001508 001508 001bde 00   A  0   0  1
│ │    [ 4] .hash             HASH            000030e8 0030e8 000910 04   A  2   0  4
│ │    [ 5] .gnu.version      VERSYM          000039f8 0039f8 000276 02   A  2   0  2
│ │    [ 6] .gnu.version_d    VERDEF          00003c70 003c70 00001c 00   A  3   1  4
│ │    [ 7] .gnu.version_r    VERNEED         00003c8c 003c8c 000020 00   A  3   1  4
│ │    [ 8] .rel.dyn          REL             00003cac 003cac 000210 08   A  2   0  4
│ │ -  [ 9] .rel.plt          REL             00003ebc 003ebc 0005f0 08  AI  2  19  4
│ │ +  [ 9] .rel.plt          REL             00003ebc 003ebc 0005f0 08  AI  2  10  4
│ │    [10] .plt              PROGBITS        000044ac 0044ac 0008fc 00  AX  0   0  4
│ │    [11] .text             PROGBITS        00004da8 004da8 013e44 00  AX  0   0  4
│ │    [12] .ARM.extab        PROGBITS        00018bec 018bec 0001f8 00   A  0   0  4
│ │    [13] .ARM.exidx        ARM_EXIDX       00018de4 018de4 000748 08  AL 11   0  4
│ │    [14] .rodata           PROGBITS        00019530 019530 001454 00   A  0   0  8
│ │ -  [15] .fini_array       FINI_ARRAY      0001ba10 01aa10 000008 04  WA  0   0  4
│ │ +  [15] .fini_array       FINI_ARRAY      0001ba10 01aa10 000008 00  WA  0   0  4
│ │    [16] .data.rel.ro      PROGBITS        0001ba18 01aa18 00018c 00  WA  0   0  4
│ │ -  [17] .init_array       INIT_ARRAY      0001bba4 01aba4 000004 04  WA  0   0  1
│ │ +  [17] .init_array       INIT_ARRAY      0001bba4 01aba4 000004 00  WA  0   0  1
│ │    [18] .dynamic          DYNAMIC         0001bba8 01aba8 000120 08  WA  3   0  4
│ │    [19] .got              PROGBITS        0001bcc8 01acc8 000338 00  WA  0   0  4
│ │    [20] .data             PROGBITS        0001c000 01b000 000058 00  WA  0   0  4
│ │    [21] .bss              NOBITS          0001c058 01b058 000044 00  WA  0   0  4
│ │    [22] .comment          PROGBITS        00000000 01b058 000065 01  MS  0   0  1
│ │    [23] .note.gnu.gold-version NOTE            00000000 01b0c0 00001c 00      0   0  4
│ │    [24] .ARM.attributes   ARM_ATTRIBUTES  00000000 01b0dc 000038 00      0   0  1
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x000044ac 04e02de5 04e09fe5 0ee08fe0 08f0bee5 ..-.............
│ │    0x000044bc 40780100 00c68fe2 17ca8ce2 40f8bce5 @x..........@...
│ │    0x000044cc 00c68fe2 17ca8ce2 38f8bce5 00c68fe2 ........8.......
│ │    0x000044dc 17ca8ce2 30f8bce5 00c68fe2 17ca8ce2 ....0...........
│ │    0x000044ec 28f8bce5 00c68fe2 17ca8ce2 20f8bce5 (........... ...
│ │    0x000044fc 00c68fe2 17ca8ce2 18f8bce5 00c68fe2 ................
│ │    0x0000450c 17ca8ce2 10f8bce5 00c68fe2 17ca8ce2 ................
│ ├── readelf --wide --decompress --hex-dump=.got {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x0001bcc8 00000000 00000000 00000000 00000000 ................
│ │    0x0001bcd8 00000000 00000000 00000000 00000000 ................
│ │    0x0001bce8 00000000 00000000 2c950100 e48d0100 ........,.......
│ │    0x0001bcf8 00000000 00000000 00000000 00000000 ................
│ │    0x0001bd08 ac440000 ac440000 ac440000 ac440000 .D...D...D...D..
│ │    0x0001bd18 ac440000 ac440000 ac440000 ac440000 .D...D...D...D..
│ │    0x0001bd28 ac440000 ac440000 ac440000 ac440000 .D...D...D...D..
├── lib/armeabi-v7a/tor.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,24 +7,24 @@
│ │    [ 2] .note.android.ident NOTE            00000168 000168 000098 00   A  0   0  4
│ │    [ 3] .dynsym           DYNSYM          00000200 000200 024760 10   A  4   1  4
│ │    [ 4] .dynstr           STRTAB          00024960 024960 033f8f 00   A  0   0  1
│ │    [ 5] .hash             HASH            000588f0 0588f0 011224 04   A  3   0  4
│ │    [ 6] .gnu.version      VERSYM          00069b14 069b14 0048ec 02   A  3   0  2
│ │    [ 7] .gnu.version_r    VERNEED         0006e400 06e400 000060 00   A  4   3  4
│ │    [ 8] .rel.dyn          REL             0006e460 06e460 017b88 08   A  3   0  4
│ │ -  [ 9] .rel.plt          REL             00085fe8 085fe8 000698 08  AI  3  21  4
│ │ +  [ 9] .rel.plt          REL             00085fe8 085fe8 000698 08  AI  3  10  4
│ │    [10] .plt              PROGBITS        00086680 086680 0009f8 00  AX  0   0  4
│ │    [11] .text             PROGBITS        00087078 087078 4e38d4 00  AX  0   0  4
│ │    [12] .ARM.extab        PROGBITS        0056a94c 56a94c 010824 00   A  0   0  4
│ │    [13] .ARM.exidx        ARM_EXIDX       0057b170 57b170 00c5b8 08  AL 11   0  4
│ │    [14] .rodata           PROGBITS        00587728 587728 0c6c30 00   A  0   0  8
│ │    [15] .data.rel.ro.local PROGBITS        00650240 64f240 00b394 00  WA  0   0  4
│ │ -  [16] .fini_array       FINI_ARRAY      0065b5d4 65a5d4 000008 04  WA  0   0  4
│ │ -  [17] .init_array       INIT_ARRAY      0065b5dc 65a5dc 000010 04  WA  0   0  4
│ │ -  [18] .preinit_array    PREINIT_ARRAY   0065b5ec 65a5ec 000008 04  WA  0   0  4
│ │ +  [16] .fini_array       FINI_ARRAY      0065b5d4 65a5d4 000008 00  WA  0   0  4
│ │ +  [17] .init_array       INIT_ARRAY      0065b5dc 65a5dc 000010 00  WA  0   0  4
│ │ +  [18] .preinit_array    PREINIT_ARRAY   0065b5ec 65a5ec 000008 00  WA  0   0  4
│ │    [19] .data.rel.ro      PROGBITS        0065b5f8 65a5f8 004f28 00  WA  0   0  8
│ │    [20] .dynamic          DYNAMIC         00660520 65f520 000120 08  WA  4   0  4
│ │    [21] .got              PROGBITS        00660644 65f644 0009bc 00  WA  0   0  4
│ │    [22] .data             PROGBITS        00661000 660000 016e78 00  WA  0   0  8
│ │    [23] .bss              NOBITS          00677e78 676e78 0064c0 00  WA  0   0  8
│ │    [24] .note.gnu.gold-version NOTE            00000000 676e78 00001c 00      0   0  4
│ │    [25] .ARM.attributes   ARM_ATTRIBUTES  00000000 676e94 000034 00      0   0  1
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00086680 04e02de5 04e09fe5 0ee08fe0 08f0bee5 ..-.............
│ │    0x00086690 18a65d00 05c68fe2 daca8ce2 18f6bce5 ..].............
│ │    0x000866a0 05c68fe2 daca8ce2 10f6bce5 05c68fe2 ................
│ │    0x000866b0 daca8ce2 08f6bce5 05c68fe2 daca8ce2 ................
│ │    0x000866c0 00f6bce5 05c68fe2 daca8ce2 f8f5bce5 ................
│ │    0x000866d0 05c68fe2 daca8ce2 f0f5bce5 05c68fe2 ................
│ │    0x000866e0 daca8ce2 e8f5bce5 05c68fe2 daca8ce2 ................
│ ├── readelf --wide --decompress --hex-dump=.got {}
│ │ @@ -1,10 +1,9 @@
│ │  
│ │  Hex dump of section '.got':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00660644 ecb56500 dcb56500 d4b56500 e4b56500 ..e...e...e...e.
│ │    0x00660654 20710800 a8e16600 f0ab6700 f8ab6700  q....f...g...g.
│ │    0x00660664 d8806700 48926700 50926700 58926700 ..g.H.g.P.g.X.g.
│ │    0x00660674 30936700 38936700 60926700 48936700 0.g.8.g.`.g.H.g.
│ │    0x00660684 50936700 58936700 60936700 d07f6700 P.g.X.g.`.g...g.
│ │    0x00660694 7c7e6700 00000000 bc453600 c4473600 |~g......E6..G6.
│ │    0x006606a4 544c3600 bcc93500 08e36700 1ce36700 TL6...5...g...g.
├── lib/armeabi-v7a/liberrno-lib.so
│ ├── readelf --wide --sections {}
│ │ @@ -7,21 +7,21 @@
│ │    [ 2] .dynsym           DYNSYM          00000158 000158 000100 10   A  3   1  4
│ │    [ 3] .dynstr           STRTAB          00000258 000258 00013b 00   A  0   0  1
│ │    [ 4] .hash             HASH            00000394 000394 000054 04   A  2   0  4
│ │    [ 5] .gnu.version      VERSYM          000003e8 0003e8 000020 02   A  2   0  2
│ │    [ 6] .gnu.version_d    VERDEF          00000408 000408 00001c 00   A  3   1  4
│ │    [ 7] .gnu.version_r    VERNEED         00000424 000424 000020 00   A  3   1  4
│ │    [ 8] .rel.dyn          REL             00000444 000444 000040 08   A  2   0  4
│ │ -  [ 9] .rel.plt          REL             00000484 000484 000048 08  AI  2  17  4
│ │ +  [ 9] .rel.plt          REL             00000484 000484 000048 08  AI  2  10  4
│ │    [10] .plt              PROGBITS        000004cc 0004cc 000080 00  AX  0   0  4
│ │    [11] .text             PROGBITS        0000054c 00054c 000e4e 00  AX  0   0  4
│ │    [12] .ARM.extab        PROGBITS        0000139c 00139c 00003c 00   A  0   0  4
│ │    [13] .ARM.exidx        ARM_EXIDX       000013d8 0013d8 000110 08  AL 11   0  4
│ │ -  [14] .fini_array       FINI_ARRAY      00002e98 001e98 000008 04  WA  0   0  4
│ │ -  [15] .init_array       INIT_ARRAY      00002ea0 001ea0 000004 04  WA  0   0  1
│ │ +  [14] .fini_array       FINI_ARRAY      00002e98 001e98 000008 00  WA  0   0  4
│ │ +  [15] .init_array       INIT_ARRAY      00002ea0 001ea0 000004 00  WA  0   0  1
│ │    [16] .dynamic          DYNAMIC         00002ea4 001ea4 000110 08  WA  3   0  4
│ │    [17] .got              PROGBITS        00002fb4 001fb4 00004c 00  WA  0   0  4
│ │    [18] .data             PROGBITS        00003000 002000 000004 00  WA  0   0  4
│ │    [19] .bss              NOBITS          00003004 002004 000000 00  WA  0   0  1
│ │    [20] .comment          PROGBITS        00000000 002004 000065 01  MS  0   0  1
│ │    [21] .note.gnu.gold-version NOTE            00000000 00206c 00001c 00      0   0  4
│ │    [22] .ARM.attributes   ARM_ATTRIBUTES  00000000 002088 000038 00      0   0  1
│ ├── readelf --wide --decompress --hex-dump=.plt {}
│ │ @@ -1,9 +1,10 @@
│ │  
│ │  Hex dump of section '.plt':
│ │ + NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x000004cc 04e02de5 04e09fe5 0ee08fe0 08f0bee5 ..-.............
│ │    0x000004dc f42a0000 00c68fe2 02ca8ce2 f4fabce5 .*..............
│ │    0x000004ec 00c68fe2 02ca8ce2 ecfabce5 00c68fe2 ................
│ │    0x000004fc 02ca8ce2 e4fabce5 00c68fe2 02ca8ce2 ................
│ │    0x0000050c dcfabce5 00c68fe2 02ca8ce2 d4fabce5 ................
│ │    0x0000051c 00c68fe2 02ca8ce2 ccfabce5 00c68fe2 ................
│ │    0x0000052c 02ca8ce2 c4fabce5 00c68fe2 02ca8ce2 ................
│ ├── readelf --wide --decompress --hex-dump=.got {}
│ │ @@ -1,9 +1,8 @@
│ │  
│ │  Hex dump of section '.got':
│ │ - NOTE: This section has relocations against it, but these have NOT been applied to this dump.
│ │    0x00002fb4 a50c0000 a90c0000 ad0c0000 00000000 ................
│ │    0x00002fc4 e8140000 d8130000 00000000 00000000 ................
│ │    0x00002fd4 00000000 00000000 cc040000 cc040000 ................
│ │    0x00002fe4 cc040000 cc040000 cc040000 cc040000 ................
│ │    0x00002ff4 cc040000 cc040000 cc040000          ............
├── original/META-INF/MANIFEST.MF
│ @@ -1,4 +1,3140 @@
│  Manifest-Version: 1.0
│  Built-By: Generated-by-ADT
│  Created-By: Android Gradle 3.2.1
│  
│ +Name: AndroidManifest.xml+SHA-256-Digest: 4r8uqlA1/asLSNm0WakLOJJr83CwTG593osXg9eeyLM=++Name: BIP39/en.txt+SHA-256-Digest: GH2wSoad2bx76A0hqGSX1pLA22q9OqjLa+XWGP91f64=++Name: META-INF/android.arch.core_runtime.version+SHA-256-Digest: zFL2eISLgUNzdXtGA4O/YZYOSUPCA3Na3eCjULPlCYk=++Name: META-INF/android.arch.lifecycle_extensions.version+SHA-256-Digest: zFL2eISLgUNzdXtGA4O/YZYOSUPCA3Na3eCjULPlCYk=++Name: META-INF/android.arch.lifecycle_livedata-core.version+SHA-256-Digest: zFL2eISLgUNzdXtGA4O/YZYOSUPCA3Na3eCjULPlCYk=++Name: META-INF/android.arch.lifecycle_livedata.version+SHA-256-Digest: zFL2eISLgUNzdXtGA4O/YZYOSUPCA3Na3eCjULPlCYk=++Name: META-INF/android.arch.lifecycle_runtime.version+SHA-256-Digest: zFL2eISLgUNzdXtGA4O/YZYOSUPCA3Na3eCjULPlCYk=++Name: META-INF/android.arch.lifecycle_viewmodel.version+SHA-256-Digest: zFL2eISLgUNzdXtGA4O/YZYOSUPCA3Na3eCjULPlCYk=++Name: META-INF/androidx.arch.core_core-runtime.version+SHA-256-Digest: wo/MpTY3vIjhJK8XJd8Ty5jGne3v1i+zzb4c22t2BiQ=++Name: META-INF/androidx.lifecycle_lifecycle-livedata-core.version+SHA-256-Digest: wo/MpTY3vIjhJK8XJd8Ty5jGne3v1i+zzb4c22t2BiQ=++Name: META-INF/androidx.lifecycle_lifecycle-livedata.version+SHA-256-Digest: wo/MpTY3vIjhJK8XJd8Ty5jGne3v1i+zzb4c22t2BiQ=++Name: META-INF/androidx.lifecycle_lifecycle-viewmodel.version+SHA-256-Digest: wo/MpTY3vIjhJK8XJd8Ty5jGne3v1i+zzb4c22t2BiQ=++Name: META-INF/proguard/androidx-annotations.pro+SHA-256-Digest: jwlksyF/nd1D8WLP//uDEYbfGodEKlJ93FKlRXNNrQ4=++Name: META-INF/proguard/okhttp3.pro+SHA-256-Digest: xtLaBB4+VZ6tJ5clxmCZRdjCG3LgSr4tY8MvPWVfQVg=++Name: META-INF/services/com.fasterxml.jackson.core.JsonFactory+SHA-256-Digest: i/cV+/TDNDbM5V+SafwzHrJVwyIjPN7a5EVil7M4qvA=++Name: META-INF/services/com.fasterxml.jackson.core.ObjectCodec+SHA-256-Digest: pklDsKPn5XNOlP5tcRc6krjA+D72UDBbRKxDiwe4jME=++Name: META-INF/services/javax.servlet.ServletContainerInitializer+SHA-256-Digest: wxA9BaP/QLfcKB37lBx75dpHWBGWCh8Uq+LagnvYvtw=++Name: assets/BIP39/en.txt+SHA-256-Digest: GH2wSoad2bx76A0hqGSX1pLA22q9OqjLa+XWGP91f64=++Name: assets/common/bridges.txt+SHA-256-Digest: 2o/dF25ukmGh/mWa0moKVaKMWk9KFYz1mqz2UdnuK1c=++Name: assets/common/geoip+SHA-256-Digest: 15oU4baF7Jz7PppIm5ZQ5AkuzMRoye70IidlhX6D2W4=++Name: assets/common/geoip6+SHA-256-Digest: JuK4jJkocxMbpkItbrj2ztlK3S9av9vj3MpMvXmGHWc=++Name: assets/common/torrc+SHA-256-Digest: yqJNpHyQ7UomDuJg7NHas/iTdojoKuCjcFcDs42kMng=++Name: assets/fontawesome-webfont.ttf+SHA-256-Digest: TW656dhSoqb3TnxChFai8H/GOhYT0QGS2O00AdnaX/o=++Name: assets/geoip+SHA-256-Digest: n2XquGUIIktBy/MZMUwHDzP97LJQ0XJH2oOre01DYVk=++Name: assets/geoip6+SHA-256-Digest: KWkRwPaaJrX9ZfRVL2oUHWzbtZefYri32yjnuX4GmPU=++Name: assets/torrc+SHA-256-Digest: wPva3zaise8LQoe2bTqUMSkV+vXxCwhh5JTqbEC2LC4=++Name: ch/qos/logback/classic/boolex/EvaluatorTemplate.groovy+SHA-256-Digest: +lNsvIJ0oSnQLa9xdRsOXPx3ifby6AlppXLNiQli/SQ=++Name: ch/qos/logback/classic/db/script/db2.sql+SHA-256-Digest: +YQZiTOrN18pScD3r3sc2U95iFcLOzt2+mSKKfKnJEQ=++Name: ch/qos/logback/classic/db/script/h2.sql+SHA-256-Digest: XQLfg298OTeWRG/wea6SkKKEub40PSsTi9RJG3IXxO0=++Name: ch/qos/logback/classic/db/script/hsqldb.sql+SHA-256-Digest: GVsDFksN6/S4UYFSPvR4T/bskKmBeKD2HJK2s8bj9Fs=++Name: ch/qos/logback/classic/db/script/mssql.sql+SHA-256-Digest: paWZN2rIXoFagADfBKUglY532BioTpOk69YNpUmy5AE=++Name: ch/qos/logback/classic/db/script/mysql.sql+SHA-256-Digest: ETSxBF8gRYfLY3bmgpY8WYzVwXLmQ5Lbw2qVY4kWtRM=++Name: ch/qos/logback/classic/db/script/oracle.sql+SHA-256-Digest: ugcKyb27gSksRrwvQ2ODdCdxbTEWTV0+kIlnfoQSxHY=++Name: ch/qos/logback/classic/db/script/postgresql.sql+SHA-256-Digest: bPybfeIOoRQGvjuqVkFVQgz0yHn4/OTURMAmNFbUxxM=++Name: ch/qos/logback/classic/db/script/sqllite.sql+SHA-256-Digest: dB0+iyn+BkFxWAHqCalcGU/eWOsRbFoocNvTXXQQE2A=++Name: ch/qos/logback/classic/db/script/sybaseSqlAnywhere.sql+SHA-256-Digest: 8Ip1QqbgYBU/D6lLKUW0mUtThGEC/xk7AES86pdMk6Y=++Name: ch/qos/logback/classic/gaffer/AppenderDelegate.groovy+SHA-256-Digest: c0b+dZ+ArMyZnzsdVmIaeTCeI0NX35wfPKFBknjPVTI=++Name: ch/qos/logback/classic/gaffer/ComponentDelegate.groovy+SHA-256-Digest: 96o0q8qAAVN+4Gw4KQcBQKBJMXSOJURzl5rPAoT2vec=++Name: ch/qos/logback/classic/gaffer/ConfigurationContributor.groovy+SHA-256-Digest: X8NdEUjO4txp1yYFTSh3AVZSm+o2Mxr9j3mR3mSrEAI=++Name: ch/qos/logback/classic/gaffer/ConfigurationDelegate.groovy+SHA-256-Digest: eCp6Np2Tb2kIZ41oaKRS8veMMboZO0yCFfv0uSGODEE=++Name: ch/qos/logback/classic/gaffer/GafferConfigurator.groovy+SHA-256-Digest: nxJnU/bYAMAWLtxAbCCosOtHqZdZaElVi346Apqldw8=++Name: ch/qos/logback/classic/gaffer/NestedType.groovy+SHA-256-Digest: ie3J3BbQZaF0b0A8ACiyNoa+R0YsMk8i/pZYVktN7A0=++Name: ch/qos/logback/classic/gaffer/PropertyUtil.groovy+SHA-256-Digest: 7ENAQML6zAdoKSdp6hfpf4MosMNNWT45bcwJ4BXcaRc=++Name: classes.dex+SHA-256-Digest: hYMKVZaSEgc412qzVpKIUYiRgxG3nKopEdc/rRFVjk0=++Name: classes2.dex+SHA-256-Digest: L8skTFGa2ul2scmzwei0q5azoLcz2V77JrAJNriKiFQ=++Name: classes3.dex+SHA-256-Digest: 9HkRFdGh0GRSyzslEWf0ujYrmUFQWExZgAXqF4z+TKI=++Name: classes4.dex+SHA-256-Digest: XxSPdIoCzMoXl3IkkSkPKjZ0gMKRxXh0fF9z5tgsdeg=++Name: classes5.dex+SHA-256-Digest: cHOqGgKNAUkH3VMcUPn9c2dXuztSb2DwDl//T3AmEog=++Name: classes6.dex+SHA-256-Digest: tedW5+NI5C0uSe/OXUylnynMN3wejiuog9TeqpCRLgg=++Name: javax/annotation/CheckForNull.java+SHA-256-Digest: SAeUIENgWzJfD++iQzRNsNEeMs69jxM98rfF2EhvIxI=++Name: javax/annotation/CheckForSigned.java+SHA-256-Digest: nD10L+mrjl+wjVViqwywJV4pYPrPlPgzSb5UK2VX88E=++Name: javax/annotation/CheckReturnValue.java+SHA-256-Digest: /DKMLbx5+zvCXUen8EhkEP6KBObWzq35f37UT6bcDrs=++Name: javax/annotation/Detainted.java+SHA-256-Digest: fScs+BTUfIz4ndDS8oPd/IiiZAUSL9mPKELbyweJ7Q4=++Name: javax/annotation/MatchesPattern.java+SHA-256-Digest: /y/7yjgjwaP1MzYwh4BoxyT2cFgmTMpzltmr74IYl90=++Name: javax/annotation/Nonnegative.java+SHA-256-Digest: c7g9eDvHzfe1yfQzGpKBVMbcTpe6NJpeUSTgJrpCIbA=++Name: javax/annotation/Nonnull.java+SHA-256-Digest: 6y1ax81ijdPFnl97FDeP6lMdXHaFffg3z+j5ouzh3dw=++Name: javax/annotation/Nullable.java+SHA-256-Digest: URyeiIi73BPgOI61w6iC9D/yEWAJO0BMhwzpToOh9Qk=++Name: javax/annotation/OverridingMethodsMustInvokeSuper.java+SHA-256-Digest: XXhsT/8/OBurq590UlLdgLoQIQxAK9TBUWHOm2PezKY=++Name: javax/annotation/ParametersAreNonnullByDefault.java+SHA-256-Digest: lCM8ocpPttRXvtiD+DaQGdTwAWvoHU5cz8AfXVC/lG4=++Name: javax/annotation/ParametersAreNullableByDefault.java+SHA-256-Digest: TTBxyQ10lxPQhomq8oy9YWjQHYSaVMbPe4+vFfiADls=++Name: javax/annotation/PropertyKey.java+SHA-256-Digest: VVkAHQ9p5JSH8cwM+oLTfgZLBENszHAmo9ilqjAhXX0=++Name: javax/annotation/RegEx.java+SHA-256-Digest: ewjQkXNGcvj48yD9qnzea6SMeGov3KlMniQH4eKvKro=++Name: javax/annotation/Signed.java+SHA-256-Digest: dmM63OWQ58dx739ye1dfmuVDiVOdZmZ3qcoankJW43Q=++Name: javax/annotation/Syntax.java+SHA-256-Digest: Y8Bb04x8J50UcFjW4VSkTuHaYsksxoSaVzvcbDRYaeA=++Name: javax/annotation/Tainted.java+SHA-256-Digest: m3VdCVzyxKQajgZLW9CrPlVoRQSLcF0syY6GNbi9pvI=++Name: javax/annotation/Untainted.java+SHA-256-Digest: 5ECWplT4Jcn48/uboJn4BRVbPa9BkYwXfXGTVYuxGYE=++Name: javax/annotation/WillClose.java+SHA-256-Digest: HIHqHHKEw3xdZrQ2/GMmeHdmfaA7K2RvxsEeoqjfrAg=++Name: javax/annotation/WillCloseWhenClosed.java+SHA-256-Digest: s8bjQrTfxMYtM4V/iSDP4Hfp8sMTedj2J0leDEoGyxM=++Name: javax/annotation/WillNotClose.java+SHA-256-Digest: bCWHWPz1TJZXBS3J6G0KvHgPikWAgE46CouLN2Up5FM=++Name: javax/annotation/concurrent/GuardedBy.java+SHA-256-Digest: 8mUJcQAcv9TBJ0h+ARXnqVOdZP1qmN2N0GdTMK47eQ0=++Name: javax/annotation/concurrent/Immutable.java+SHA-256-Digest: R/mgdqQ5bEkqNz7sliKhVJe1a2M6Z6+XylG9OxFCoI0=++Name: javax/annotation/concurrent/NotThreadSafe.java+SHA-256-Digest: cwYKiQfAHuenK/vZx0oDf/GVO9ekUQuJl/3OwKV0Ghk=++Name: javax/annotation/concurrent/ThreadSafe.java+SHA-256-Digest: vP2feievSaZQVzSrAyWfAqciLTvQUoIcqm2U2TC9/Jo=++Name: javax/annotation/meta/Exclusive.java+SHA-256-Digest: CwQF8dwUCsLr20zdO7v9zxniLXJLxXqJ1TCzPoybf/U=++Name: javax/annotation/meta/Exhaustive.java+SHA-256-Digest: ybQIUEGs0WAmke5JU1pqka/Ctn1r2dn7ThqyFp1iem8=++Name: javax/annotation/meta/TypeQualifier.java+SHA-256-Digest: go//phisHNovwH/MDl5YeFqt/kvEgcDk6Nxfwj1mLOU=++Name: javax/annotation/meta/TypeQualifierDefault.java+SHA-256-Digest: J/qgSNfCO9bXnTUVgW7B81Z1iuFAwO3HAqdLkfkhU5U=++Name: javax/annotation/meta/TypeQualifierNickname.java+SHA-256-Digest: MJz1joN/G8Yxg/yUQ7IxkEFX8awlv+4OXOvK5S9E61E=++Name: javax/annotation/meta/TypeQualifierValidator.java+SHA-256-Digest: TR4spvRlzhMKgjMIYFOsyZHl/TiffjHIigzRnvMsZmo=++Name: javax/annotation/meta/When.java+SHA-256-Digest: 1536meA/oettDm8CSDPvFsECm5iXXi52f3YLLb9Nh5A=++Name: lib/arm64-v8a/liberrno-lib.so+SHA-256-Digest: PSO6A13gv88TtGH7C+xiR+l9P1dCOuAd/EJihgtriG8=++Name: lib/arm64-v8a/libiconv.so+SHA-256-Digest: VQuWUGbiDHBng9gLo1oDwViwTpe8Mkib6QxSm28FJgA=++Name: lib/arm64-v8a/libzbar.so+SHA-256-Digest: rVGmLzYOrNyj/jDMfNujp+paAQdwEunldspUVWS07LY=++Name: lib/arm64-v8a/tor.so+SHA-256-Digest: gD6W7V/CQoUCV5rpePMEsjEtsPP6YuprbwhGKL1wiZ0=++Name: lib/arm64/tor.so+SHA-256-Digest: 0I5bkk0pOodcRiUlGUWOMr47ef+main0tDf3qg5mZVU=++Name: lib/armeabi-v7a/liberrno-lib.so+SHA-256-Digest: Ytba8tLWlTWau1j1qp9X6l+l4UYE1wJ3H/m84gt1XE0=++Name: lib/armeabi-v7a/libiconv.so+SHA-256-Digest: /FBU6cDeAbrrcSok1dWsU5ill8RF/QZcEfq6AsUYJLQ=++Name: lib/armeabi-v7a/libzbar.so+SHA-256-Digest: KH/YpxSGoRcYHw6ZpTxpGFDaudkOt2wr/2wQ8/bN6IE=++Name: lib/armeabi-v7a/tor.so+SHA-256-Digest: gD6W7V/CQoUCV5rpePMEsjEtsPP6YuprbwhGKL1wiZ0=++Name: lib/armeabi/liberrno-lib.so+SHA-256-Digest: ahhqF2DNDlVU5Nvrxr1k1cSkYDiK94RwY8ahqS7K2pE=++Name: lib/armeabi/libiconv.so+SHA-256-Digest: UtebRNGIT+OVhKFz177sX8/k94SBQZurYxYXXU+Xt88=++Name: lib/armeabi/libzbar.so+SHA-256-Digest: PUw6glsPoRG9ZIctCHUKOrX0kQdMH75G6R77XPUtl1Y=++Name: lib/armeabi/tor.so+SHA-256-Digest: gD6W7V/CQoUCV5rpePMEsjEtsPP6YuprbwhGKL1wiZ0=++Name: lib/mips/liberrno-lib.so+SHA-256-Digest: CVOPZO0JQtaeTJgLo/NZDKOO/o8YgOnejRCe0Sw8jgU=++Name: lib/mips/libiconv.so+SHA-256-Digest: rj6XMczVCl556cRsZbGfkkgWodzwfwxZ5psEwyWD3Dg=++Name: lib/mips/libzbar.so+SHA-256-Digest: OlXt+qetoiD1mC8z+VH+GQ7jCZF+GvT0aLoCq8EwBww=++Name: lib/mips64/liberrno-lib.so+SHA-256-Digest: G98z/mjQdiDdSU0crh5jhUe0NkremLDsSnfRzV9uI/o=++Name: lib/mips64/libiconv.so+SHA-256-Digest: 3ZpOpLIUVxm+rYtFS624O5OZHHzmuL7ofC3cFqNJr7I=++Name: lib/mips64/libzbar.so+SHA-256-Digest: phP7Y/vRYT1Sn7WaRnYcWFufMNc4MKkstOKrhEvGqcU=++Name: lib/x86/liberrno-lib.so+SHA-256-Digest: 6JKv/XhWOOWykBTT0DxPB1u8gNgMNRyLe2aQ+wl4Rjw=++Name: lib/x86/libiconv.so+SHA-256-Digest: 4U6ydko3k/7R9254t5OZqXv9XD2GQa/m3NxtgH9TgKM=++Name: lib/x86/libzbar.so+SHA-256-Digest: gnDFrR1xWbLmhP5SPau5rdZn59PMlO8/W4zf51k0HWA=++Name: lib/x86/tor.so+SHA-256-Digest: o/yjyq92GyzWqiGuciylgspgkHMXhatfjqcMa3zUevI=++Name: lib/x86_64/darwin/libscrypt.dylib+SHA-256-Digest: gyfs7hxuX+tBdmdmuE4dH/EcO/7h1WzBHbbbBJGeWlg=++Name: lib/x86_64/liberrno-lib.so+SHA-256-Digest: suJn6p4e1mY4G8TDNLUx9pzl4PKBXqGWfw8Tbk+BsMQ=++Name: lib/x86_64/libiconv.so+SHA-256-Digest: B9Zx8HxXyIfnIVaaRa2a+ePI4kxhEL3RCnb8q5Ltoso=++Name: lib/x86_64/libzbar.so+SHA-256-Digest: b60ZdHejiiz+kFkqLE2Zi+8StNG7jbe6nhsjchSqd+s=++Name: lib/x86_64/tor.so+SHA-256-Digest: o/yjyq92GyzWqiGuciylgspgkHMXhatfjqcMa3zUevI=++Name: okhttp3/internal/publicsuffix/publicsuffixes.gz+SHA-256-Digest: vo2mhtIIs05LPwv5CqLgt2OClWQRMsPwyqgbA0mQMv8=++Name: org.bitcoin.production.checkpoints.txt+SHA-256-Digest: wE70VezgxhVBf+q8O1RwOYDYgI+BfU4T6LYcqeO3z7k=++Name: org.bitcoin.test.checkpoints.txt+SHA-256-Digest: qkgrpznOp5Yur9xEq/KG35JFOi78DwtnqYLFcGr2Z3A=++Name: org/apache/commons/codec/language/bm/ash_approx_any.txt+SHA-256-Digest: rWx14OULUfgH1zo9PvRqb2ZqiRy0lTzDV6XTBeYeMKs=++Name: org/apache/commons/codec/language/bm/ash_approx_common.txt+SHA-256-Digest: 2lt/68cPhg+RvMzKN8KaYZojRCzIC5zZitiE4W1smFQ=++Name: org/apache/commons/codec/language/bm/ash_approx_cyrillic.txt+SHA-256-Digest: opkX6kwAvdIW2zHTYgXvOCnQ+3aSbRifzYJg03ANTFc=++Name: org/apache/commons/codec/language/bm/ash_approx_english.txt+SHA-256-Digest: U3Ob0nhoKSM4YG73of0gm2JT016U16SvsDF2lJjWDWQ=++Name: org/apache/commons/codec/language/bm/ash_approx_french.txt+SHA-256-Digest: GWUOSraWeLuEkCiQDkwuhn91IpxER6D8v1pb1rO9acM=++Name: org/apache/commons/codec/language/bm/ash_approx_german.txt+SHA-256-Digest: z8fB70EgmvibZ2ukahgwYLk97cqx59cw9iU/SPWvDqk=++Name: org/apache/commons/codec/language/bm/ash_approx_hebrew.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/ash_approx_hungarian.txt+SHA-256-Digest: a9JJkQcmlJr6TlqWI+w5mRUcPvQ4Q3FKkAA8+xE1Awk=++Name: org/apache/commons/codec/language/bm/ash_approx_polish.txt+SHA-256-Digest: X1ZifVDU7w48jHYiXT5y/ZXIyQrmKdZdMvIC95LVkSo=++Name: org/apache/commons/codec/language/bm/ash_approx_romanian.txt+SHA-256-Digest: kAvLi4Us6XOPhe+s2pG7yvAZLWYvL6mW67404RWAFzY=++Name: org/apache/commons/codec/language/bm/ash_approx_russian.txt+SHA-256-Digest: uQi4EyUJkJEGfsuqsjLbAhW2Hr1omdD32YmgEzY6fLM=++Name: org/apache/commons/codec/language/bm/ash_approx_spanish.txt+SHA-256-Digest: a9JJkQcmlJr6TlqWI+w5mRUcPvQ4Q3FKkAA8+xE1Awk=++Name: org/apache/commons/codec/language/bm/ash_exact_any.txt+SHA-256-Digest: vGtrQj5q+ZfORTSOF/Og1qGGF8/me1C9tQHMlyWMPTU=++Name: org/apache/commons/codec/language/bm/ash_exact_approx_common.txt+SHA-256-Digest: oflH4HFCOqXCQ2BIT4W3E596P/530gieNnyhUnQ9Ghk=++Name: org/apache/commons/codec/language/bm/ash_exact_common.txt+SHA-256-Digest: /DVYN3g5oQN1u0AUbZ0S7Js3SHIjAjzAdplGrtJPNS8=++Name: org/apache/commons/codec/language/bm/ash_exact_cyrillic.txt+SHA-256-Digest: Jl2TtTDy8LOytgKv2m6RI3DAsBwG30ophxGfYyC/+0Q=++Name: org/apache/commons/codec/language/bm/ash_exact_english.txt+SHA-256-Digest: Jl2TtTDy8LOytgKv2m6RI3DAsBwG30ophxGfYyC/+0Q=++Name: org/apache/commons/codec/language/bm/ash_exact_french.txt+SHA-256-Digest: Jl2TtTDy8LOytgKv2m6RI3DAsBwG30ophxGfYyC/+0Q=++Name: org/apache/commons/codec/language/bm/ash_exact_german.txt+SHA-256-Digest: MmdPNC98i3P+gx9GsFN98KK51DxF/N7XYX3fKElcDio=++Name: org/apache/commons/codec/language/bm/ash_exact_hebrew.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/ash_exact_hungarian.txt+SHA-256-Digest: Jl2TtTDy8LOytgKv2m6RI3DAsBwG30ophxGfYyC/+0Q=++Name: org/apache/commons/codec/language/bm/ash_exact_polish.txt+SHA-256-Digest: 0E1ujqTtWT9Hj+H/FQofV6wwVXwT+fAZ/PKxZYtv9J4=++Name: org/apache/commons/codec/language/bm/ash_exact_romanian.txt+SHA-256-Digest: Jl2TtTDy8LOytgKv2m6RI3DAsBwG30ophxGfYyC/+0Q=++Name: org/apache/commons/codec/language/bm/ash_exact_russian.txt+SHA-256-Digest: NL+lCVEfdRemKDMMynxeUUZKtO75U4NAVPaE0C4R/8c=++Name: org/apache/commons/codec/language/bm/ash_exact_spanish.txt+SHA-256-Digest: Jl2TtTDy8LOytgKv2m6RI3DAsBwG30ophxGfYyC/+0Q=++Name: org/apache/commons/codec/language/bm/ash_hebrew_common.txt+SHA-256-Digest: rRGg9TfpCwiT6GJODJl92OLs4T3+i5CzZtOnc/gpvuU=++Name: org/apache/commons/codec/language/bm/ash_lang.txt+SHA-256-Digest: dJUMHaAgEr/87RcHNC/FUF/dqeYrVVxnmBYiQMQqToE=++Name: org/apache/commons/codec/language/bm/ash_languages.txt+SHA-256-Digest: 7nNoiKByVJehHHTMownuIdUg1a1ktVQSUOjx2pE4/pc=++Name: org/apache/commons/codec/language/bm/ash_rules_any.txt+SHA-256-Digest: vbYMOQGrBX9MlLOEswKgvdemASrAfPTtuHvTe5KD0Xs=++Name: org/apache/commons/codec/language/bm/ash_rules_cyrillic.txt+SHA-256-Digest: NhvIdpHaa/2ln/QWzmHJIqroEZRGaf0F9TesYp7v7YQ=++Name: org/apache/commons/codec/language/bm/ash_rules_english.txt+SHA-256-Digest: fCiYbn3JEdh5jr6fJrk9BIfmMkgvxTSDY82O+U2sGl4=++Name: org/apache/commons/codec/language/bm/ash_rules_french.txt+SHA-256-Digest: I09LHurOpsgUr0SUwVV5nCE4fys85hxH8PXpDpWSgCo=++Name: org/apache/commons/codec/language/bm/ash_rules_german.txt+SHA-256-Digest: ALCkuvJ/90+ZLzn/h133tpTv5yGPIoc0aVtLCBdXV1g=++Name: org/apache/commons/codec/language/bm/ash_rules_hebrew.txt+SHA-256-Digest: HjaCi9kKByG2UT9vaH6sUD3IwaN4JK5ubY1JY0RiAZQ=++Name: org/apache/commons/codec/language/bm/ash_rules_hungarian.txt+SHA-256-Digest: okevMKxHy6qHzJRY/jOp+hAUJNd1ZcfKAStOi5I6Np0=++Name: org/apache/commons/codec/language/bm/ash_rules_polish.txt+SHA-256-Digest: BHv3YwsDjhgKxAfca+20XrvELAGnyb57F4RcTpsV8lA=++Name: org/apache/commons/codec/language/bm/ash_rules_romanian.txt+SHA-256-Digest: IS8DwqHFOaCNRmQQexB73c7TpGG21TYjNcDBA53YjXw=++Name: org/apache/commons/codec/language/bm/ash_rules_russian.txt+SHA-256-Digest: nZkE0j7GAx/2IJZ3Zs9yoG9aqayVjryatsSVahnCx2s=++Name: org/apache/commons/codec/language/bm/ash_rules_spanish.txt+SHA-256-Digest: yeQQqKXAlls545NiqQS9EHI5u/4BdjSOADQj5eSBKqA=++Name: org/apache/commons/codec/language/bm/gen_approx_any.txt+SHA-256-Digest: pyu9Rd6KMao86qoGUTiWxKu1m8du+UWBGj7cY7VUUdQ=++Name: org/apache/commons/codec/language/bm/gen_approx_arabic.txt+SHA-256-Digest: g4pH5vloGJpKiCuCIgZUyiGUUJVtLPCuAzbTQolMWY8=++Name: org/apache/commons/codec/language/bm/gen_approx_common.txt+SHA-256-Digest: 7fA+T0nDQ9RbY+qcPUcLa6+Vo2iMVyOtHoW9+4YOMxQ=++Name: org/apache/commons/codec/language/bm/gen_approx_cyrillic.txt+SHA-256-Digest: +adQ1IFW2Ojh2UyO002/WWwk7+lFEj1ugIrwad7iWZo=++Name: org/apache/commons/codec/language/bm/gen_approx_czech.txt+SHA-256-Digest: 5SsSolD6WT+ZyooG4CsYoJFRih5rZv1Jbnin2ziIzEM=++Name: org/apache/commons/codec/language/bm/gen_approx_dutch.txt+SHA-256-Digest: 5SsSolD6WT+ZyooG4CsYoJFRih5rZv1Jbnin2ziIzEM=++Name: org/apache/commons/codec/language/bm/gen_approx_english.txt+SHA-256-Digest: U3Ob0nhoKSM4YG73of0gm2JT016U16SvsDF2lJjWDWQ=++Name: org/apache/commons/codec/language/bm/gen_approx_french.txt+SHA-256-Digest: HZ009k5djTAJdJ2dgYwFg0Y+6J8IwPfSsFRKQxasrUc=++Name: org/apache/commons/codec/language/bm/gen_approx_german.txt+SHA-256-Digest: QzD0Pgh3WdNhawLrNiB0rtlGmMtNT4SKbljyUyxbCus=++Name: org/apache/commons/codec/language/bm/gen_approx_greek.txt+SHA-256-Digest: 5SsSolD6WT+ZyooG4CsYoJFRih5rZv1Jbnin2ziIzEM=++Name: org/apache/commons/codec/language/bm/gen_approx_greeklatin.txt+SHA-256-Digest: 3/oALTl/hRNK8DUMwvp18e3f11oqGL5aV2HjyAeB8S4=++Name: org/apache/commons/codec/language/bm/gen_approx_hebrew.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_approx_hungarian.txt+SHA-256-Digest: +Cf1SvZWCkxtYVYYQzRX4cncBseMdoPe5tQYfNvNjIM=++Name: org/apache/commons/codec/language/bm/gen_approx_italian.txt+SHA-256-Digest: +Cf1SvZWCkxtYVYYQzRX4cncBseMdoPe5tQYfNvNjIM=++Name: org/apache/commons/codec/language/bm/gen_approx_polish.txt+SHA-256-Digest: 0GI0PwMw4SHGhOPmlD93dYVceOllsEOoOaTbqHM21Ng=++Name: org/apache/commons/codec/language/bm/gen_approx_portuguese.txt+SHA-256-Digest: 5SsSolD6WT+ZyooG4CsYoJFRih5rZv1Jbnin2ziIzEM=++Name: org/apache/commons/codec/language/bm/gen_approx_romanian.txt+SHA-256-Digest: TjXdhrItjQESh7GauosdSvnoxj698n0ImejZ7fTUse0=++Name: org/apache/commons/codec/language/bm/gen_approx_russian.txt+SHA-256-Digest: FeceM/r3u0VY/T9k7J44ERuwSFI0O8SomwmuEnJ5yvA=++Name: org/apache/commons/codec/language/bm/gen_approx_spanish.txt+SHA-256-Digest: ypOR+IMBG3SRl/u8eXdnd9lX3V9VdJ2aYAwdIp+AuN8=++Name: org/apache/commons/codec/language/bm/gen_approx_turkish.txt+SHA-256-Digest: 5SsSolD6WT+ZyooG4CsYoJFRih5rZv1Jbnin2ziIzEM=++Name: org/apache/commons/codec/language/bm/gen_exact_any.txt+SHA-256-Digest: z42j7lHUeNzh/2+hzO8vZUETCNR3A/kgQjzBFyJmYj4=++Name: org/apache/commons/codec/language/bm/gen_exact_approx_common.txt+SHA-256-Digest: lI9tQ1WsdAEczNe9VOw7zkop6ibF1FGPAZzcHc7ycoU=++Name: org/apache/commons/codec/language/bm/gen_exact_arabic.txt+SHA-256-Digest: iRogEQxQ/V3Ww0unHBEgfi4RlIw8yl8VVLPJNGRPWgU=++Name: org/apache/commons/codec/language/bm/gen_exact_common.txt+SHA-256-Digest: apQ8qM8/e+0f9Rbemj7PRPE8gB09yWeAOxtqla5F03I=++Name: org/apache/commons/codec/language/bm/gen_exact_cyrillic.txt+SHA-256-Digest: /VUX6Y7r++H5eewh+XSenWyv0+Z5jl8xwXOgvgjAJeU=++Name: org/apache/commons/codec/language/bm/gen_exact_czech.txt+SHA-256-Digest: /VUX6Y7r++H5eewh+XSenWyv0+Z5jl8xwXOgvgjAJeU=++Name: org/apache/commons/codec/language/bm/gen_exact_dutch.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_exact_english.txt+SHA-256-Digest: /VUX6Y7r++H5eewh+XSenWyv0+Z5jl8xwXOgvgjAJeU=++Name: org/apache/commons/codec/language/bm/gen_exact_french.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_exact_german.txt+SHA-256-Digest: q+DCspPd430FHITApgGUuMMDjzmUEbYPBwbc3frbC98=++Name: org/apache/commons/codec/language/bm/gen_exact_greek.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_exact_greeklatin.txt+SHA-256-Digest: h4TCsdi44gbj385u2k897IAKG8IT3E9NwMsJqBMqVCw=++Name: org/apache/commons/codec/language/bm/gen_exact_hebrew.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_exact_hungarian.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_exact_italian.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_exact_polish.txt+SHA-256-Digest: bYBff8MXLwLxEkC5BD/txTXQcpoQXyGCBd287jJFeBo=++Name: org/apache/commons/codec/language/bm/gen_exact_portuguese.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_exact_romanian.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_exact_russian.txt+SHA-256-Digest: NL+lCVEfdRemKDMMynxeUUZKtO75U4NAVPaE0C4R/8c=++Name: org/apache/commons/codec/language/bm/gen_exact_spanish.txt+SHA-256-Digest: sziO1amBffpxcrEGHNIAMGhiPFt5S00loiEiXIk+3fI=++Name: org/apache/commons/codec/language/bm/gen_exact_turkish.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/gen_hebrew_common.txt+SHA-256-Digest: Spibhp8ik1kMIa8jBdpliJZq7m073kMbPkkSOQSxG88=++Name: org/apache/commons/codec/language/bm/gen_lang.txt+SHA-256-Digest: y8ekz3vyimv8ShgE6q5RESX0WfKnPaTBwzscqfWKq9s=++Name: org/apache/commons/codec/language/bm/gen_languages.txt+SHA-256-Digest: sxZa2qNgJsKTONyNjzUc68dCNzFGXh1kIvJ9Z3hJTH0=++Name: org/apache/commons/codec/language/bm/gen_rules_any.txt+SHA-256-Digest: 0j1XaCmCHt194T9nNOynRqdn3W1WWkzRjjPZc23w0Kw=++Name: org/apache/commons/codec/language/bm/gen_rules_arabic.txt+SHA-256-Digest: grcHx5mYAxvaJp/XwRkuoalnDAPq0J7nenfOT+yhLDg=++Name: org/apache/commons/codec/language/bm/gen_rules_cyrillic.txt+SHA-256-Digest: DIFYEn8ZvQ5oO/iDqy+360wXOjTuUatnUvVskyqxJeg=++Name: org/apache/commons/codec/language/bm/gen_rules_czech.txt+SHA-256-Digest: hN6eFSQSzWEpNAWQNyVx/tsUh2BUtd87gqKjZWT81hk=++Name: org/apache/commons/codec/language/bm/gen_rules_dutch.txt+SHA-256-Digest: mSHnXbvJQtJXKoZgsJeTKWOehwf/qbsd5rfRp6mVXCs=++Name: org/apache/commons/codec/language/bm/gen_rules_english.txt+SHA-256-Digest: vPuHI8vzlmsJug3G89u9x4goacTnrxYPgDwvBRl4WiI=++Name: org/apache/commons/codec/language/bm/gen_rules_french.txt+SHA-256-Digest: tfErCFz7SJapECD5AbwW5vMWTwZB5oOw0gWnMFYCdLM=++Name: org/apache/commons/codec/language/bm/gen_rules_german.txt+SHA-256-Digest: RT1HSrmWUjovCaHFiX2OPhtMBFBhInwFJ5L5guHDyLc=++Name: org/apache/commons/codec/language/bm/gen_rules_greek.txt+SHA-256-Digest: a1bF2Km2Jw+Hd8zl8bCGA5CqIY9+K0PusdfL2zh3iDA=++Name: org/apache/commons/codec/language/bm/gen_rules_greeklatin.txt+SHA-256-Digest: BhIvA/6Hny73iwt2vxQS6xcMafqCj0DX57kHhWZWRG4=++Name: org/apache/commons/codec/language/bm/gen_rules_hebrew.txt+SHA-256-Digest: pXDzf0XzXy5AmxFz2VXYOtyHjagYf4mduTDV0Z+JpfE=++Name: org/apache/commons/codec/language/bm/gen_rules_hungarian.txt+SHA-256-Digest: Frp895v4UIncKf2S7/Y1jIk7xq74XmOW3SmvfEGk9hE=++Name: org/apache/commons/codec/language/bm/gen_rules_italian.txt+SHA-256-Digest: mRVd7fDK6q5CEod9C5DaUuAlKBLu5KsGqar1OTuUr7A=++Name: org/apache/commons/codec/language/bm/gen_rules_polish.txt+SHA-256-Digest: 5ODrYQqLzPcdOc0OELLFHk0fEyoFLRg8dJURRk7VH8k=++Name: org/apache/commons/codec/language/bm/gen_rules_portuguese.txt+SHA-256-Digest: DFHCzCKYhRawP2r91WmYl7fK/is+XTZ2qxAZQfv9ktw=++Name: org/apache/commons/codec/language/bm/gen_rules_romanian.txt+SHA-256-Digest: de4m88a/bK/CJYviG4IJUuLgfBkpGeNP1xfdgbCi9K0=++Name: org/apache/commons/codec/language/bm/gen_rules_russian.txt+SHA-256-Digest: 3tEFyFcWfCuoxEztfO4ADWvNeCOkhRtpj46lQBFafzc=++Name: org/apache/commons/codec/language/bm/gen_rules_spanish.txt+SHA-256-Digest: 5yU8fBq35G0pyFeSvmjBWnvbiTfDZAQ/TExljQj3ams=++Name: org/apache/commons/codec/language/bm/gen_rules_turkish.txt+SHA-256-Digest: GAC6ua7mvl9Xg4v6rwcQCYQcGvk9XdInieGnZD0ZkmE=++Name: org/apache/commons/codec/language/bm/lang.txt+SHA-256-Digest: BZh6aARCRqoZ6rtqvFptm9BmyyULf9yVrpZytzidyR4=++Name: org/apache/commons/codec/language/bm/sep_approx_any.txt+SHA-256-Digest: R2Yckre9Kj2/8LGfI0IoEHbyh3+rJZKgwHalVagTlH8=++Name: org/apache/commons/codec/language/bm/sep_approx_common.txt+SHA-256-Digest: fz6imF/UsbXg9aZUSkerYySXp4U7aRrvXmvXMg/Ko6Y=++Name: org/apache/commons/codec/language/bm/sep_approx_french.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/sep_approx_hebrew.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/sep_approx_italian.txt+SHA-256-Digest: thZdvaPZcrXFSyGRQJosBKw1/H26Cr9d3zya4T+amKA=++Name: org/apache/commons/codec/language/bm/sep_approx_portuguese.txt+SHA-256-Digest: IdYyJ5dyromDgyIgUFvPDG+1APT/reD5kIMG0BhxDxM=++Name: org/apache/commons/codec/language/bm/sep_approx_spanish.txt+SHA-256-Digest: IdYyJ5dyromDgyIgUFvPDG+1APT/reD5kIMG0BhxDxM=++Name: org/apache/commons/codec/language/bm/sep_exact_any.txt+SHA-256-Digest: 3z9js5RrjV8FxJd+5atIjagWL0rYyvp6gc2HMbSVTLg=++Name: org/apache/commons/codec/language/bm/sep_exact_approx_common.txt+SHA-256-Digest: Iy9ZdQ+d7c8Lwq8ZTRah9DSlagrOBBX+Z5JLc8fiKjI=++Name: org/apache/commons/codec/language/bm/sep_exact_common.txt+SHA-256-Digest: w2VK1Da+GFNv7z44cttyVWWcQTv8m1rURrFGe2jIuMA=++Name: org/apache/commons/codec/language/bm/sep_exact_french.txt+SHA-256-Digest: ndy3mHXDpJJZ6Y+vmEM8fYwp42je3qcVXJ/3FxAWhX0=++Name: org/apache/commons/codec/language/bm/sep_exact_hebrew.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/sep_exact_italian.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/sep_exact_portuguese.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/sep_exact_spanish.txt+SHA-256-Digest: 1U8m+Absg6NL6qAzy9EQqSBPhTBFv5BQowUBRrUuxQs=++Name: org/apache/commons/codec/language/bm/sep_hebrew_common.txt+SHA-256-Digest: 9U2KTVCsQzGzSpptZGYQjo1GL1kNg7iBMMtDn3YKdOg=++Name: org/apache/commons/codec/language/bm/sep_lang.txt+SHA-256-Digest: 5jMZFWwHb41g6UTl+ZhynweTFqvY5cL2Pme43lf7pp8=++Name: org/apache/commons/codec/language/bm/sep_languages.txt+SHA-256-Digest: nMEtQXLkFWQrQQXZZxfZybKKvKir+2G2RD9OnEetr4c=++Name: org/apache/commons/codec/language/bm/sep_rules_any.txt+SHA-256-Digest: ozQ1bez4HBgmgtjg0D4XJ6tFoGhEbtEcloCRZ6yhh38=++Name: org/apache/commons/codec/language/bm/sep_rules_french.txt+SHA-256-Digest: Kjy+NH/aDfWV4xEJWcSWVsbsa287evaaZ9VZDwcpaZs=++Name: org/apache/commons/codec/language/bm/sep_rules_hebrew.txt+SHA-256-Digest: VFkZ7uyu5zAf8Ur+aciPrwJ381aMFUAyviBNP/DZ2mg=++Name: org/apache/commons/codec/language/bm/sep_rules_italian.txt+SHA-256-Digest: O00lNxDQyd1WSVlAR8jhB2MJTBC3tRjP2EBIwSIlX5s=++Name: org/apache/commons/codec/language/bm/sep_rules_portuguese.txt+SHA-256-Digest: ih4GdV66guQN6Avuzcq8Adig6aVH8eq7NTRuUmvPkLI=++Name: org/apache/commons/codec/language/bm/sep_rules_spanish.txt+SHA-256-Digest: V2VLQ1Xke5CFVhJqjPEPmnfcSeW/Oxeel5e06bR/iO0=++Name: org/apache/commons/codec/language/dmrules.txt+SHA-256-Digest: IIHTrMHFtfxtYZ9x/YnpsAIZ8/hqlj7dKXHd7RE5PA0=++Name: org/apache/log4j/lf5/config/defaultconfig.properties+SHA-256-Digest: JuYOLDYhiUMeIiHz7kEE9i9SwWXT4uj3fLUoUg9pgSg=++Name: org/apache/log4j/lf5/viewer/images/channelexplorer_new.gif+SHA-256-Digest: +ULKIuSheUGTlqtStyDBdgj7i34MkHvf7hT4we9BdHI=++Name: org/apache/log4j/lf5/viewer/images/channelexplorer_satellite.gif+SHA-256-Digest: szUvEHpYnKgQYwyBsOQOuv/k4pmSvT5V5cvmQi0As8Y=++Name: org/apache/log4j/lf5/viewer/images/lf5_small_icon.gif+SHA-256-Digest: 0Zma3l8QxcUvWlli4VJkiJj/9r449MmutiENkl1LoBY=++Name: org/apache/log4j/xml/log4j.dtd+SHA-256-Digest: wmOR1/QYAt8wl9ZeLImMVI87hD9YT9qFBwDt3akVU9E=++Name: org/bitcoinj/crypto/cacerts+SHA-256-Digest: 3ZGWN2KPzntmN8AjwJm9/kkc/D1r+kVts1Tf/ZFuj0g=++Name: org/bitcoinj/crypto/mnemonic/wordlist/english.txt+SHA-256-Digest: L17tU6Rye0v4iA2PPxme/JDlhQNkbZ/47/Oi7Tsk29o=++Name: org/bouncycastle/x509/CertPathReviewerMessages.properties+SHA-256-Digest: ySg5To7Sxmr8lMyNGblQu7mA3nSO8M5SdevRWgO3mCo=++Name: org/bouncycastle/x509/CertPathReviewerMessages_de.properties+SHA-256-Digest: OKOeMtg1i5SYdKOMyjmvIw+4MlBXUAz0r/8p0VDdCqg=++Name: org/spongycastle/x509/CertPathReviewerMessages.properties+SHA-256-Digest: ySg5To7Sxmr8lMyNGblQu7mA3nSO8M5SdevRWgO3mCo=++Name: org/spongycastle/x509/CertPathReviewerMessages_de.properties+SHA-256-Digest: OKOeMtg1i5SYdKOMyjmvIw+4MlBXUAz0r/8p0VDdCqg=++Name: res/anim-v21/design_bottom_sheet_slide_in.xml+SHA-256-Digest: hMj/XTf3dpYI9wVpGgxlHl9N+bml6qSXR5Q1GEyP1r0=++Name: res/anim-v21/design_bottom_sheet_slide_out.xml+SHA-256-Digest: t8QZI3a230p6NVfkdMFXLjKFdrlw5j/sr2mS0enwzq0=++Name: res/anim/abc_fade_in.xml+SHA-256-Digest: HKmvv61b/dCu+BeaMa2gBq1tMidK1sG9PHbgakJAaa8=++Name: res/anim/abc_fade_out.xml+SHA-256-Digest: dyKjxQwRIZ2twlcCaD3N+XtCHcKd806BO6cxWo36qh0=++Name: res/anim/abc_grow_fade_in_from_bottom.xml+SHA-256-Digest: NsdMWQMKPetGS9Gjww3mkf20g95rnErQufKCfTg+J00=++Name: res/anim/abc_popup_enter.xml+SHA-256-Digest: jNJyF4a+7bCsXGTS7i+15S0Sd9CA0R75unfd4HjQyUg=++Name: res/anim/abc_popup_exit.xml+SHA-256-Digest: prczrlvEHKzVeHUSHxYnr6+0M2WQTuMqwNHEXTtKdCI=++Name: res/anim/abc_shrink_fade_out_from_bottom.xml+SHA-256-Digest: AEsXaAyXlRSD9TcEV8rQJZyrz/IlgY7PPMLpNbQBl3w=++Name: res/anim/abc_slide_in_bottom.xml+SHA-256-Digest: dEtNd8sFeQwn3AcZeUd9ReTrYQRJDdvO0TzMOfGeRQ8=++Name: res/anim/abc_slide_in_top.xml+SHA-256-Digest: kDHdPf1sBcrDorMBU14EB+AViNnj7YSKUEihmSPRxeo=++Name: res/anim/abc_slide_out_bottom.xml+SHA-256-Digest: d+VNYSw2LCUbmof7oV4UUbwfxma9JdGlNUkSVFJpVxo=++Name: res/anim/abc_slide_out_top.xml+SHA-256-Digest: 9oqCO1fOAYZ/CG0iUGm2Z05jiWHmjAgE7e7bvsD1hxk=++Name: res/anim/check_path_anim.xml+SHA-256-Digest: 9vecn1F6EcsvFClJBO5C9F7X7J+mtnRklUsuLCgF88c=++Name: res/anim/design_snackbar_in.xml+SHA-256-Digest: Xkmxq0Qw42Eke0k8H6Glovx12UEbzSQ7YMC/yGvEuJw=++Name: res/anim/design_snackbar_out.xml+SHA-256-Digest: Pe0XaQSeOjN3xBnKVPOFtKOUa0LbCzb8HsxlqLWBbdg=++Name: res/anim/fab_scale_down.xml+SHA-256-Digest: BymRqT81I+Bz3bKhpcS+rs4ao/gO3YT3/i7AslcqYh0=++Name: res/anim/fab_scale_up.xml+SHA-256-Digest: Yjiu2+6f+yoITpL28PLrEya4VusCnunyqFsT7aiWbTY=++Name: res/anim/fab_slide_in_from_left.xml+SHA-256-Digest: hbmsnjLLZyLzdsyKF36rKjYVU0z+HDcxBH4P289I0Ls=++Name: res/anim/fab_slide_in_from_right.xml+SHA-256-Digest: ZtMuOqaaxD1X46EZ/GcW9VGdvrpyblc/Hus5de2vNNc=++Name: res/anim/fab_slide_out_to_left.xml+SHA-256-Digest: kEZWDswpiYi4L68Up5aInSvGxZ9VAykOIk/Gi3vHhBE=++Name: res/anim/fab_slide_out_to_right.xml+SHA-256-Digest: LHMqOCfq0JY2oLY6B31d1ezW/JLgD0kglIMHvu2uems=++Name: res/anim/tooltip_enter.xml+SHA-256-Digest: Z6/DurPNBoT5oHivqUWCXqFvVIFW0C4DBRfB1zG4VUE=++Name: res/anim/tooltip_exit.xml+SHA-256-Digest: b77Fo67XqhQ4BTZviBhYUXSfnguXGXPk4LhuRFM1Wo0=++Name: res/animator-v21/design_appbar_state_list_animator.xml+SHA-256-Digest: p7uHtEpoBRW9mCHIbDo3TXpnx0sgtqGbeYRoNhdylOM=++Name: res/color-v11/abc_background_cache_hint_selector_material_dark.x+ ml+SHA-256-Digest: DDDwyqPsxyRDSJa0RMXnG7sFHSLB4q6nwpSbe0c1XV0=++Name: res/color-v11/abc_background_cache_hint_selector_material_light.+ xml+SHA-256-Digest: zwhgekVmHAEBwFo+ZrNIf3KVS746BdF3rmlcohHcyfY=++Name: res/color-v23/abc_btn_colored_borderless_text_material.xml+SHA-256-Digest: 2l137DTr9HLXIj/R/oItiDRWTsQFZmqYgbKMygZcShA=++Name: res/color-v23/abc_btn_colored_text_material.xml+SHA-256-Digest: Q4Pkxead8Q97FT75s1V1zA4bPS/jbTVEc4wD4eDDWpo=++Name: res/color-v23/abc_color_highlight_material.xml+SHA-256-Digest: eVGfHgSe50bHKFPTwug/w/Um+NEo8wX8Naud+zq2Pss=++Name: res/color-v23/abc_tint_btn_checkable.xml+SHA-256-Digest: OpSB+FgOhZAFxPAbAtraip8vyk78kVXEVMH+OcSdnKU=++Name: res/color-v23/abc_tint_default.xml+SHA-256-Digest: aFd4sruChxEr4QLfjgjFPgnAhegE47NRXlk4RF1YbmU=++Name: res/color-v23/abc_tint_edittext.xml+SHA-256-Digest: aZAfjL+wYLMDn6DleVafkKHpbHFJxVqTX97yoSYSF30=++Name: res/color-v23/abc_tint_seek_thumb.xml+SHA-256-Digest: OUXbDaLB+bfoLo5LMv7rsI7YEORkbdYpxJBXynzLcW0=++Name: res/color-v23/abc_tint_spinner.xml+SHA-256-Digest: aZAfjL+wYLMDn6DleVafkKHpbHFJxVqTX97yoSYSF30=++Name: res/color-v23/abc_tint_switch_track.xml+SHA-256-Digest: JE8CZa0LrozCUcYw+WKs+Fs94D3phDX0L0YKmbN/tco=++Name: res/color-v23/design_tint_password_toggle.xml+SHA-256-Digest: wJlsPtEeeTTT32XfaIHgBG8UwYhh+Sqfz2Gzhy21VUM=++Name: res/color/abc_btn_colored_borderless_text_material.xml+SHA-256-Digest: A5GfhZkv9H15/fXVuAtLFP+sF1ZrcaNmTCD80HerNCg=++Name: res/color/abc_btn_colored_text_material.xml+SHA-256-Digest: KeriW5WLy3IujKht37BYuN65fqVPK0f+wb400hWq2Aw=++Name: res/color/abc_hint_foreground_material_dark.xml+SHA-256-Digest: 1xjj7/4XAfvXu1WxN7RLEmc2bEXh25Sgrx//ridtSsA=++Name: res/color/abc_hint_foreground_material_light.xml+SHA-256-Digest: og5DkZJBK2yTyJWkeXie7/EQSlWZLcExrsq9bnebyKM=++Name: res/color/abc_primary_text_disable_only_material_dark.xml+SHA-256-Digest: 5L4W/Vnd6ujeI4sUmOvGjCdMwL59KL5j7altBOBpCck=++Name: res/color/abc_primary_text_disable_only_material_light.xml+SHA-256-Digest: 7QkTRJjchiBGEAYrjcLFOXglCsUJlqCl/aLw+O+fVoo=++Name: res/color/abc_primary_text_material_dark.xml+SHA-256-Digest: z/opeeIiwL5PyBeU9bN0hmTt+kHkYZ8hcfI/tuWnwkQ=++Name: res/color/abc_primary_text_material_light.xml+SHA-256-Digest: /Hvz/jjoYhHnLwV+C6fNLinTOoY3QYXb70yi7c0HIsw=++Name: res/color/abc_search_url_text.xml+SHA-256-Digest: dJ39sAz847CfpYbvy2JJr1Bn2e0fdlrZc1rmKHdzXqc=++Name: res/color/abc_secondary_text_material_dark.xml+SHA-256-Digest: BYmO8KdGPXxm4n0sIbTGOoMJfnJBGXUB3Z8Lm671x/g=++Name: res/color/abc_secondary_text_material_light.xml+SHA-256-Digest: Mkxb0q0uUVpJtHZzuAEqancegNYx5Ca1LrPlVNeWTOQ=++Name: res/color/abc_tint_btn_checkable.xml+SHA-256-Digest: j6TDMSE5bkc1Npsdpd9HeQUKY0sm8c4Mysy5gak6SWc=++Name: res/color/abc_tint_default.xml+SHA-256-Digest: Gu5w/CfG/DX/JXIHfSPGnngc/vOQwSomlMMEpZxRaBk=++Name: res/color/abc_tint_edittext.xml+SHA-256-Digest: bxOhiK0UG13acSh2zn4QI+IK2Jo88dZ93yJCJl2cDdc=++Name: res/color/abc_tint_seek_thumb.xml+SHA-256-Digest: FI2BhAFIpHBSx9LDoHWp0B/PflMVkFlgunDoj+PFJdE=++Name: res/color/abc_tint_spinner.xml+SHA-256-Digest: KS0FWeCUVLSaOcGnTD4RBGZbs78dCg/Nb49ThpHMJSc=++Name: res/color/abc_tint_switch_track.xml+SHA-256-Digest: TRxwTMtKmQFZchAxh4PNmpzbuShRgee+aTlPku/wM20=++Name: res/color/design_error.xml+SHA-256-Digest: 1Zr9aJcYhYrsClUlCeFcDbPV77XCyLZsQuz9xwAuppM=++Name: res/color/design_tint_password_toggle.xml+SHA-256-Digest: 1HxBo3FdQqcJkkJtEJIb4f23nqqKwp6sm94y8hza7GA=++Name: res/color/switch_thumb_material_dark.xml+SHA-256-Digest: EmSbeIwo0FroNZZ0RkeKHlt+kMRYjCmfrrXkKQvy4pI=++Name: res/color/switch_thumb_material_light.xml+SHA-256-Digest: iYS6bNiUEzp8wNkcYf3WWlhuLXwHKBe2w4gAWazumnw=++Name: res/drawable-anydpi-v21/design_ic_visibility.xml+SHA-256-Digest: C8itaNejehKmmkOYOvXdRSVzHTR1J/xui5erTnHHGaw=++Name: res/drawable-anydpi-v21/design_ic_visibility_off.xml+SHA-256-Digest: c9svgylRx8la6WN3DECsU0te/G0tpGvoLarFZcVS4Yc=++Name: res/drawable-anydpi-v24/ic_samourai_and_tor_notif_icon.xml+SHA-256-Digest: WozvYfpk6B32334ZtEar+rA76GDmuV5e+lPrca2mtrY=++Name: res/drawable-hdpi-v4/abc_ab_share_pack_mtrl_alpha.9.png+SHA-256-Digest: mR9zvmAK2IIaZ0PbVK9RP5sEcFjpUGbiL83R1yAyvFg=++Name: res/drawable-hdpi-v4/abc_btn_check_to_on_mtrl_000.png+SHA-256-Digest: XsoCgL04poh7bkF2XPXaVzEzh0YlAB65AVbq6zX74Ig=++Name: res/drawable-hdpi-v4/abc_btn_check_to_on_mtrl_015.png+SHA-256-Digest: XO0qt3SFMFAlXXMJ4Qt2IXgT1W8/irj7c6w/Y12QxnY=++Name: res/drawable-hdpi-v4/abc_btn_radio_to_on_mtrl_000.png+SHA-256-Digest: UICwfrSGugXt5ze1Z+sruJ17eaPttcLKgUHG66ASt10=++Name: res/drawable-hdpi-v4/abc_btn_radio_to_on_mtrl_015.png+SHA-256-Digest: dELNplOsus35rvJWqhkeXrtgcaF0cxKuxF4duCUqPPs=++Name: res/drawable-hdpi-v4/abc_btn_switch_to_on_mtrl_00001.9.png+SHA-256-Digest: n4SbzXiK3Osy9MGlqoknSb0eJEo3h7+/vTDTtvXY6ds=++Name: res/drawable-hdpi-v4/abc_btn_switch_to_on_mtrl_00012.9.png+SHA-256-Digest: q5SvyyuzJVRMDBEDv1EJuCe/Bw9EH675CfhWrilaHPA=++Name: res/drawable-hdpi-v4/abc_cab_background_top_mtrl_alpha.9.png+SHA-256-Digest: Z+cBR2knB42Jqwu7Of/xLWlwJZKnpCgjeiEWiiHsEDg=++Name: res/drawable-hdpi-v4/abc_ic_commit_search_api_mtrl_alpha.png+SHA-256-Digest: I51gLJxl8Vb+AkYTIHlVrI+905WubsPvpRvpjjpEc/Q=++Name: res/drawable-hdpi-v4/abc_ic_menu_copy_mtrl_am_alpha.png+SHA-256-Digest: OZDQBHpJq3nHQXh2/AsphzDy01JZJPbXKkGhTqhLsLU=++Name: res/drawable-hdpi-v4/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: UAQZiW1C7ggY8hDbMXQ533RYrZ9vaPizNpC9bxjH0Fo=++Name: res/drawable-hdpi-v4/abc_ic_menu_paste_mtrl_am_alpha.png+SHA-256-Digest: OaoTi3kvbB4d+Z4MG3SEBrUKpto6hkNF8Rve2zwHEKc=++Name: res/drawable-hdpi-v4/abc_ic_menu_selectall_mtrl_alpha.png+SHA-256-Digest: mtKnrnRrEpOYj1ZCvwfqCaJ8BM2K2KTy2Og2YaSJfT4=++Name: res/drawable-hdpi-v4/abc_ic_menu_share_mtrl_alpha.png+SHA-256-Digest: ZgPuwG2bikC5e85xM38aQPkS8C0x2EqBUGETdwBvnpY=++Name: res/drawable-hdpi-v4/abc_ic_star_black_16dp.png+SHA-256-Digest: 2HSD1O7u7stOCICg6wwWHwR7/OUAQTG8RrFRLBTHnMA=++Name: res/drawable-hdpi-v4/abc_ic_star_black_36dp.png+SHA-256-Digest: Qo7YJasoTJGO1Dhm+fo0wi8AVTcSkkciubMYY5ixVVE=++Name: res/drawable-hdpi-v4/abc_ic_star_black_48dp.png+SHA-256-Digest: qwfze23s+20VnJZ0U444lYkqd9mcr42EsZanfViT40E=++Name: res/drawable-hdpi-v4/abc_ic_star_half_black_16dp.png+SHA-256-Digest: ibtp1BzB4tjG6+vGKX4Iq18cLSXgFCO8Hj6KzCM7xk4=++Name: res/drawable-hdpi-v4/abc_ic_star_half_black_36dp.png+SHA-256-Digest: C6ByV53E/yPWx7EL0CpC0Mja1oAyaFtI0zoQLZ8VbLc=++Name: res/drawable-hdpi-v4/abc_ic_star_half_black_48dp.png+SHA-256-Digest: ZDQnxL1ghnrK00qhRFsRtNnq4+m7HqX1zQa5YG9o3Bk=++Name: res/drawable-hdpi-v4/abc_list_divider_mtrl_alpha.9.png+SHA-256-Digest: N4aUcG+3JW3SJI4q+FTv1x7H6IhfYdouFqK9Mvzz0Kk=++Name: res/drawable-hdpi-v4/abc_list_focused_holo.9.png+SHA-256-Digest: ovGjevjmmTIKL62+VO6qYRLVo1ItV9aC7fBP6XvjtH4=++Name: res/drawable-hdpi-v4/abc_list_longpressed_holo.9.png+SHA-256-Digest: 1cZEsA7nm9Tx/LeJ67+J55wMb+qHjfvEqMZMO+NLWwM=++Name: res/drawable-hdpi-v4/abc_list_pressed_holo_dark.9.png+SHA-256-Digest: p1I8zwN/fDHPh6GG/uy5E575LYfgcCyrsIoxkUsrUD4=++Name: res/drawable-hdpi-v4/abc_list_pressed_holo_light.9.png+SHA-256-Digest: kbg1jiKsG4VUxxpShBSs8wCI2a1WK9rDgUhEdxwUyKk=++Name: res/drawable-hdpi-v4/abc_list_selector_disabled_holo_dark.9.png+SHA-256-Digest: icKOiHsNYMAbNdzSvmVPQWv/tm6FZXFtyYPjsCBJZ+g=++Name: res/drawable-hdpi-v4/abc_list_selector_disabled_holo_light.9.png+SHA-256-Digest: R18Ds8z/BPzpGnqRIULRUKAAsdAR2gA3RdwsDj9fsJI=++Name: res/drawable-hdpi-v4/abc_menu_hardkey_panel_mtrl_mult.9.png+SHA-256-Digest: j89bnaA8aN/2Wt+ocT25zjteQjqfUEbxeFq2QMKmR/s=++Name: res/drawable-hdpi-v4/abc_popup_background_mtrl_mult.9.png+SHA-256-Digest: AKGsdNgWTLXEdJoLLnfixtpKkKvoc9hgTymEHBk1fGY=++Name: res/drawable-hdpi-v4/abc_scrubber_control_off_mtrl_alpha.png+SHA-256-Digest: DmMdv+JXXdFtP9bFlkHfpKu14WLWD1kEnkRZ8K8p+/Y=++Name: res/drawable-hdpi-v4/abc_scrubber_control_to_pressed_mtrl_000.pn+ g+SHA-256-Digest: wTGrDi65h5vQY+c2q4ExPFpPR+qi9KDsnsqToaFQ7Xk=++Name: res/drawable-hdpi-v4/abc_scrubber_control_to_pressed_mtrl_005.pn+ g+SHA-256-Digest: 3AivnRTmtnO/nzHCSCNvBFezIkZANmR0c+OjKiN3Pw4=++Name: res/drawable-hdpi-v4/abc_scrubber_primary_mtrl_alpha.9.png+SHA-256-Digest: mhpIA4qNHcBBA1tJzHMtsj4AjRJsiy5oB0ndKWFqN7M=++Name: res/drawable-hdpi-v4/abc_scrubber_track_mtrl_alpha.9.png+SHA-256-Digest: yG2TSlgJ8yWZ5CFD4wbtbgZrIk/h+j8yreFgMHTlsTY=++Name: res/drawable-hdpi-v4/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: sLLcLK54EcEkrlKNcUMYuxBDtZ2CpkDyLEes5kwoP+w=++Name: res/drawable-hdpi-v4/abc_switch_track_mtrl_alpha.9.png+SHA-256-Digest: Lj1wIwl3rzfG13OYmac+Y5N+69/m2ALxqVfEPC8qsTE=++Name: res/drawable-hdpi-v4/abc_tab_indicator_mtrl_alpha.9.png+SHA-256-Digest: qmEinNcCOSeBCcXr5yXnJITQJS76SQKhcZI2aUJ0kok=++Name: res/drawable-hdpi-v4/abc_text_select_handle_left_mtrl_dark.png+SHA-256-Digest: z34NERGB243CwWtdXgJ+iDmU8SPtlAkIpfQL36jodXg=++Name: res/drawable-hdpi-v4/abc_text_select_handle_left_mtrl_light.png+SHA-256-Digest: SYsMvQm2tP7tisqe130jX1uycsU9IbMyZJoA6ULZido=++Name: res/drawable-hdpi-v4/abc_text_select_handle_middle_mtrl_dark.png+SHA-256-Digest: zURZ0d+D1xN8rSyxYIieRXbm3R84V0WpMwCO6IKjSgw=++Name: res/drawable-hdpi-v4/abc_text_select_handle_middle_mtrl_light.pn+ g+SHA-256-Digest: pHVZSufHcQkqOicYmB4nEMc3hE9EpEAfctOVN1Nkmno=++Name: res/drawable-hdpi-v4/abc_text_select_handle_right_mtrl_dark.png+SHA-256-Digest: TeAWG0R86ptGnVO8GmrBLQKHuS2kwQ2DuqBPkIAmbO8=++Name: res/drawable-hdpi-v4/abc_text_select_handle_right_mtrl_light.png+SHA-256-Digest: ZGAhzHfn9L1oq1n7MtMG+BogQhJebNqhYYSgYqgYP3k=++Name: res/drawable-hdpi-v4/abc_textfield_activated_mtrl_alpha.9.png+SHA-256-Digest: qTOq676uSJ3qhOeOf7xAef39pXb73rM5QB/abNwD52Q=++Name: res/drawable-hdpi-v4/abc_textfield_default_mtrl_alpha.9.png+SHA-256-Digest: lP6YJHFK2UwAL+YhnnI8DYDHy+OmEw16pJNzC2filNE=++Name: res/drawable-hdpi-v4/abc_textfield_search_activated_mtrl_alpha.9+ .png+SHA-256-Digest: JfJREsxGsoV2fee1sFjPwKnv1fIc/nJK8DFQXWap7Os=++Name: res/drawable-hdpi-v4/abc_textfield_search_default_mtrl_alpha.9.p+ ng+SHA-256-Digest: FBGuZdgWBXPBZtKlchBv0RA8EvJC9n/uxf6qVQGX5fU=++Name: res/drawable-hdpi-v4/design_ic_visibility.png+SHA-256-Digest: C3WvFiu1UK5eiptkMY22ao/ZV3stWaTAo3LR8gOkj0c=++Name: res/drawable-hdpi-v4/design_ic_visibility_off.png+SHA-256-Digest: b6TCZL+NFgIB5N62U3oA8ss2Pni6eCR9UX2H7KYXZp0=++Name: res/drawable-hdpi-v4/fab_add.png+SHA-256-Digest: i1j9rF8LyVcvRzbqwR0h69eGspGT5TCjVAnKgOdqR0s=++Name: res/drawable-hdpi-v4/fab_bg_mini.png+SHA-256-Digest: 9+ya88VjjFcYfWEdxugn8/GstiOwM9mt5JEJ0528zIQ=++Name: res/drawable-hdpi-v4/fab_bg_normal.png+SHA-256-Digest: /madVJ9rVMmBOmDgDz1gGv9dzPw240QikOb4isjFjeg=++Name: res/drawable-hdpi-v4/ic_action_delete_sweep.png+SHA-256-Digest: cS78/pJvg/+aujQdWfmZF3c67oid5giri1/xMKjOmcI=++Name: res/drawable-hdpi-v4/ic_action_fiber_new.png+SHA-256-Digest: XND86AeohZ4ho++VkEuTnnrHLifDUgF3njVKLdiLAq8=++Name: res/drawable-hdpi-v4/ic_action_playlist_add.png+SHA-256-Digest: 6zQ3YcmOzbib/82PCtP/zY3myt0SxcMBv+MzSor+oaI=++Name: res/drawable-hdpi-v4/ic_action_send.png+SHA-256-Digest: I26YPk048fLihdH9gZubTcAGXaE9SnyHMk01UJNPdj4=++Name: res/drawable-hdpi-v4/ic_backspace_white_24dp.png+SHA-256-Digest: eh1NY4Odd0imsiP0hzmQt0H4ji6/k1XjZn87BGq6O68=++Name: res/drawable-hdpi-v4/ic_bubbles.png+SHA-256-Digest: jdAslM5TWx/31a2UAtp1c+rDYDarsJgiuyVxAsIpveM=++Name: res/drawable-hdpi-v4/ic_bubbles_add.png+SHA-256-Digest: tBdKVb+ECulgiN2uJDTgqeaYEaXuYeSDowhUWDsnMyM=++Name: res/drawable-hdpi-v4/ic_crop_free_white_24dp.png+SHA-256-Digest: e43yu1bGT3yP1B1BnA14L3lB0pZeU/8XCwA2WeivNSg=++Name: res/drawable-hdpi-v4/ic_done_white_24dp.png+SHA-256-Digest: wgp/0jWXDn4zFfjjUpWh67Ce/LO2AFMoP0RWSX25PnA=++Name: res/drawable-hdpi-v4/ic_edit_white_24dp.png+SHA-256-Digest: YAtIrnj6fbHYRvar5DpNQxh0fM+SawzYxGR46j45Grk=++Name: res/drawable-hdpi-v4/ic_launcher.png+SHA-256-Digest: riRg48GqnJGyljl+BKb9ukQBjkZwhWPj/cSQKYK/qgc=++Name: res/drawable-hdpi-v4/ic_launcher_foreground.png+SHA-256-Digest: vUGmZBRe39IYoGVrLmFaEy3NJTeX7A3hzAugmE8Yn+M=++Name: res/drawable-hdpi-v4/ic_launcher_round.png+SHA-256-Digest: AriXyPiF9UlOtbvEuqyTT360O/sfKRHZySguBcMDRkI=++Name: res/drawable-hdpi-v4/ic_link_white_24dp.png+SHA-256-Digest: MHlhjFo79eYefgbLbqAj4iXGfS3v5qOrmFnjV1blPEQ=++Name: res/drawable-hdpi-v4/ic_lock_white_24dp.png+SHA-256-Digest: GnMElRPl58HsKfrnvg7MyL3AIjGDElJ2M8YEEV27gbQ=++Name: res/drawable-hdpi-v4/ic_paynym_white_24dp.png+SHA-256-Digest: BCb60B+nQZeK972v9lB0ym4ClT3vaxI/mz0frk3aU3Y=++Name: res/drawable-hdpi-v4/ic_receive_qr.png+SHA-256-Digest: NymgsT5xFKFCYdHyoj3sdJAyjGdZmzTfzGBjbgBfQ0A=++Name: res/drawable-hdpi-v4/ic_samourai_and_tor_notif_icon.png+SHA-256-Digest: 6oDH+bClyU4sz9XDnc/sQ2x5EnWZAacxa3hwsrY0UUg=++Name: res/drawable-hdpi-v4/ic_samourai_deposit_24dp.png+SHA-256-Digest: igNiy/9nSsKGYAgHthTnefbzak4Chk2RAnTVzMXeDgw=++Name: res/drawable-hdpi-v4/ic_samourai_logo_trans2x.png+SHA-256-Digest: 32KBtfYSd4obJWEfu6QvxMikGifVlZZdvaiBdER4mio=++Name: res/drawable-hdpi-v4/ic_samourai_send_24dp.png+SHA-256-Digest: 1vz4mdVXsOJ8ZG3GAQxKTGHGk+DEhQD1HA06u1oFMnc=++Name: res/drawable-hdpi-v4/ic_send_final.png+SHA-256-Digest: IMAzfBCPkHv/zy2F1HQ5i3f7dwtQQmAi0IMHEPACgtI=++Name: res/drawable-hdpi-v4/ic_share_white_24dp.png+SHA-256-Digest: +n6R89enuf3bN5XlNi+p/46miYTAjlx1Jn92kelim9M=++Name: res/drawable-hdpi-v4/ic_standard.png+SHA-256-Digest: eO9NG9oS3R5lKsSVCyoRl4SpCSxcFjWy2HChpGi1W3M=++Name: res/drawable-hdpi-v4/notification_bg_low_normal.9.png+SHA-256-Digest: IfC1UoC+ELGHzv+O3vSlpwR2g+bp/PR95BCqODn0EJQ=++Name: res/drawable-hdpi-v4/notification_bg_low_pressed.9.png+SHA-256-Digest: Qq7gsDiD6U315UM0ijl9EwLBuCIYlYcag7gYmfWpZHs=++Name: res/drawable-hdpi-v4/notification_bg_normal.9.png+SHA-256-Digest: DGMox7JCBXCn7DizvrO6yaKdiVrBq3I5MVq6cmZBhZM=++Name: res/drawable-hdpi-v4/notification_bg_normal_pressed.9.png+SHA-256-Digest: GLMo2AF+Z31arT29ZrrjVrXKyXjG8GcJOOpkjlHQ62Y=++Name: res/drawable-hdpi-v4/notify_panel_notification_icon_bg.png+SHA-256-Digest: hDDsAD4APz8roveNSP0VDiVAdmflMOguh6fUhBwP1nY=++Name: res/drawable-ldpi-v4/ic_samourai_and_tor_notif_icon.png+SHA-256-Digest: 1uR40MP1ih9uDrQ54H1tnrTXhFdj6+kDBuZGB3r5gAA=++Name: res/drawable-ldrtl-hdpi-v17/abc_ic_menu_copy_mtrl_am_alpha.png+SHA-256-Digest: ZBrRnTRnqOXE2XFOt1gWCN4oQ/GempAqTpIjvgZh+4c=++Name: res/drawable-ldrtl-hdpi-v17/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: yzdN3X9rRNAoRg82KbEAk4fABXJxe/JAyF+agmUfq0E=++Name: res/drawable-ldrtl-hdpi-v17/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: 1NKw27A58cY5UYOr6UWzlHCtmop7aApA+nkN9sZFu0M=++Name: res/drawable-ldrtl-mdpi-v17/abc_ic_menu_copy_mtrl_am_alpha.png+SHA-256-Digest: c0wfYb1Qe7T0wfsoYg0WPvFY4sGd+pTzROGNTi/Q7F4=++Name: res/drawable-ldrtl-mdpi-v17/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: bcb3C2ArUk1vCXwzleP6u/mGoA66zMjHcarxKhhaWbg=++Name: res/drawable-ldrtl-mdpi-v17/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: gFApeTAt7nNT9HX1WMSXrmaX93GBpR98yAtA1ywuDEw=++Name: res/drawable-ldrtl-xhdpi-v17/abc_ic_menu_copy_mtrl_am_alpha.png+SHA-256-Digest: d3fAgt2QCz8OoxOUQjK+QB5ef6HwfaFcVD/8/aTK7ig=++Name: res/drawable-ldrtl-xhdpi-v17/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: XQGoD4K0xYdPINeBgwN/tVUExsM4RFitKbRTW9uVHKw=++Name: res/drawable-ldrtl-xhdpi-v17/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: d/DrqyQWQE6x1WI0LkMVQdiFaG3R5J1tyTvhqGwic8Q=++Name: res/drawable-ldrtl-xxhdpi-v17/abc_ic_menu_copy_mtrl_am_alpha.png+SHA-256-Digest: Kho/hC0Fbm5+fgy54HWhPTo/D47cTEHED6C8NQYTL1U=++Name: res/drawable-ldrtl-xxhdpi-v17/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: O7fnnzwSUeISRjO5KvPGVC+/4zTIO43XauQUbai1r8A=++Name: res/drawable-ldrtl-xxhdpi-v17/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: AH2/X6LcRmpJQLCmpz2rSMtyH2TTWPcf81qq25Ywtew=++Name: res/drawable-ldrtl-xxxhdpi-v17/abc_ic_menu_copy_mtrl_am_alpha.pn+ g+SHA-256-Digest: q+dDHj8dV8z1Aq7NHMar3DWy2NgCPEQLakw/ABKmt4c=++Name: res/drawable-ldrtl-xxxhdpi-v17/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: Fg9jJyQLWew1NO7+DU6m29WF4B0TV9hw6RDFWUAW3JY=++Name: res/drawable-ldrtl-xxxhdpi-v17/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: jD3lOJpP7fI7Hv3xx3N8p+tE84HCI2kVPfqXJhOkxEg=++Name: res/drawable-mdpi-v4/abc_ab_share_pack_mtrl_alpha.9.png+SHA-256-Digest: +U4hKRgMC6aSRDA3RAJFYDXc1rb/99BfbefiQZajrzU=++Name: res/drawable-mdpi-v4/abc_btn_check_to_on_mtrl_000.png+SHA-256-Digest: BV1fh7G7tmdwlrx+t+rOV+QCFsuX8rK5JtJsEmP5q84=++Name: res/drawable-mdpi-v4/abc_btn_check_to_on_mtrl_015.png+SHA-256-Digest: yvHkc99nAsKmqV1zjx1vK3MZZ2a1BOX/Mzs8jnR+BHs=++Name: res/drawable-mdpi-v4/abc_btn_radio_to_on_mtrl_000.png+SHA-256-Digest: pUdDH+vxCMz6lYiribEHjjh7s1HrVNdyOUMyGH93C3Q=++Name: res/drawable-mdpi-v4/abc_btn_radio_to_on_mtrl_015.png+SHA-256-Digest: yIJc1jflmgJQDYt1GFYvDJG+8u3Zcbo+WtD0FnlNYY4=++Name: res/drawable-mdpi-v4/abc_btn_switch_to_on_mtrl_00001.9.png+SHA-256-Digest: Viy6GtG5q9UC2pwD9MELsr1ygCLFRvGAWTGfKtKTKA4=++Name: res/drawable-mdpi-v4/abc_btn_switch_to_on_mtrl_00012.9.png+SHA-256-Digest: tSIoo1Ug4teG6WLoUBP+f3yX/7Qmd/O9q8Ay+7cJlSo=++Name: res/drawable-mdpi-v4/abc_cab_background_top_mtrl_alpha.9.png+SHA-256-Digest: +3HhHAkBM6l/6E+jt2omO0KckDLsRnhUsOMqMVel66U=++Name: res/drawable-mdpi-v4/abc_ic_commit_search_api_mtrl_alpha.png+SHA-256-Digest: UlSajQtsNfryeV799rTF/iyzS36LEDnMp6onabbKs9A=++Name: res/drawable-mdpi-v4/abc_ic_menu_copy_mtrl_am_alpha.png+SHA-256-Digest: Z2keRGYoVlQbxZ9WQ5NC/X7p6YUQnVqIGaS3RryHGNo=++Name: res/drawable-mdpi-v4/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: ZbS24iueooZbzG6yr8RgpkXMOfZC1urs6lppt5SBM5Y=++Name: res/drawable-mdpi-v4/abc_ic_menu_paste_mtrl_am_alpha.png+SHA-256-Digest: SlyDmrDOjAsjpHCRv2ppOSxuEefgLzHgiJ8SwLGifMo=++Name: res/drawable-mdpi-v4/abc_ic_menu_selectall_mtrl_alpha.png+SHA-256-Digest: kysvGl0fcUdCVR304lt4rx1o2MOXKj2XrY0sJNwTd3s=++Name: res/drawable-mdpi-v4/abc_ic_menu_share_mtrl_alpha.png+SHA-256-Digest: yHIIM6M44ECCN2tDBTD0EZ0/Iu4U5d1DTAbP4vC8y1M=++Name: res/drawable-mdpi-v4/abc_ic_star_black_16dp.png+SHA-256-Digest: KWVhpd00YdfBh/Cw+NtKumJ1wJcLWx/XsEF8tbmcMr8=++Name: res/drawable-mdpi-v4/abc_ic_star_black_36dp.png+SHA-256-Digest: WazzJLvijuzNl/41rWmZpK0Bo2JJvtBG4Gq/xTjVPlM=++Name: res/drawable-mdpi-v4/abc_ic_star_black_48dp.png+SHA-256-Digest: 38IQ1KAgHs7ma0jAGlZo6CuLZIUdY0107EE71lAW5kU=++Name: res/drawable-mdpi-v4/abc_ic_star_half_black_16dp.png+SHA-256-Digest: 5E2V5XFyYDqpkv/ba7mjAvlF8AtjKl98bCm4cxYemqk=++Name: res/drawable-mdpi-v4/abc_ic_star_half_black_36dp.png+SHA-256-Digest: wzwTi9NSYNd75e66+gjvv+JdnrstV9Ftoxyq9Yf7Blc=++Name: res/drawable-mdpi-v4/abc_ic_star_half_black_48dp.png+SHA-256-Digest: pHTsuFeMU5tRTByZYN6LDBd6hnNAhUJyRA4ONJlZFBM=++Name: res/drawable-mdpi-v4/abc_list_divider_mtrl_alpha.9.png+SHA-256-Digest: N4aUcG+3JW3SJI4q+FTv1x7H6IhfYdouFqK9Mvzz0Kk=++Name: res/drawable-mdpi-v4/abc_list_focused_holo.9.png+SHA-256-Digest: hDZiQiD7okaugWo6qzed/X/ypIQoSrJMOvSYl3hwW7M=++Name: res/drawable-mdpi-v4/abc_list_longpressed_holo.9.png+SHA-256-Digest: 28CvYfRAuz9TgrjqP6V4ZZ92x6au9iCmivxDqQny4OU=++Name: res/drawable-mdpi-v4/abc_list_pressed_holo_dark.9.png+SHA-256-Digest: XUFhv5SCtdKiNGzT+ic57DID2ZW+usAuiacylDNou/w=++Name: res/drawable-mdpi-v4/abc_list_pressed_holo_light.9.png+SHA-256-Digest: 6Y8ZLwE6kiYBBIKrjhTH8hX7Fr2jzLDdrsPtCycRnnw=++Name: res/drawable-mdpi-v4/abc_list_selector_disabled_holo_dark.9.png+SHA-256-Digest: oVFx6tSxzZuAxYuTwO+0U7DPiJtxTMhZ7iybk39LN9A=++Name: res/drawable-mdpi-v4/abc_list_selector_disabled_holo_light.9.png+SHA-256-Digest: fEXkbkBfW0o9DGKiLmcBDDMnAi3RwfS7zOoSeaTRrXQ=++Name: res/drawable-mdpi-v4/abc_menu_hardkey_panel_mtrl_mult.9.png+SHA-256-Digest: x5VOK/vQHlu8nXdN1NdD0/iiZhMSn6yAcbdBurMBirA=++Name: res/drawable-mdpi-v4/abc_popup_background_mtrl_mult.9.png+SHA-256-Digest: XHxoL/tk9LUx3g+VScDaEcM3V25CZhhSK/0dNaRRpBQ=++Name: res/drawable-mdpi-v4/abc_scrubber_control_off_mtrl_alpha.png+SHA-256-Digest: Wmyh0NL+pTgT2ls8kDdAgIf591P1jdLhKKSkj3aJdp8=++Name: res/drawable-mdpi-v4/abc_scrubber_control_to_pressed_mtrl_000.pn+ g+SHA-256-Digest: n4Vt0ApPKB0RmOZnmshhH8Z9MB8owHrql1BCRLoWy0Q=++Name: res/drawable-mdpi-v4/abc_scrubber_control_to_pressed_mtrl_005.pn+ g+SHA-256-Digest: YVFFDs46uWZyE8OYe22P/6Jbr5/0PVO82clP2Op2FtA=++Name: res/drawable-mdpi-v4/abc_scrubber_primary_mtrl_alpha.9.png+SHA-256-Digest: Xj8T7oVPpBNUynN4NYuZ+OQfOxyZaMMTtjCwLehwTm4=++Name: res/drawable-mdpi-v4/abc_scrubber_track_mtrl_alpha.9.png+SHA-256-Digest: mpyUDqEz9+CsjbbwbhPoUlCGM8IfjHHyl0gxZaBtkus=++Name: res/drawable-mdpi-v4/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: D6F9h1TW0WPMQz8IfK1sCDFzrIetcJfnaVCiXuxfPpA=++Name: res/drawable-mdpi-v4/abc_switch_track_mtrl_alpha.9.png+SHA-256-Digest: Ykd63HTU5oNuPA5LUzfDfXSMs/lAM/QsYpk47xjTi0E=++Name: res/drawable-mdpi-v4/abc_tab_indicator_mtrl_alpha.9.png+SHA-256-Digest: 9i16ofkpcwKkMzKlmDR1XtvTo4ZwuMUjYUrhNmtflH8=++Name: res/drawable-mdpi-v4/abc_text_select_handle_left_mtrl_dark.png+SHA-256-Digest: ENs+Wnc1caTtp9C/D0u55GuJKYwoOViFXFnCVYnucRM=++Name: res/drawable-mdpi-v4/abc_text_select_handle_left_mtrl_light.png+SHA-256-Digest: D9L1OUbrk7MVT0S9r8iJbqkxlaZM5fxkBJ6LcpPNaAE=++Name: res/drawable-mdpi-v4/abc_text_select_handle_middle_mtrl_dark.png+SHA-256-Digest: YXTxf7L/nYQwonpA31BwDTLjb28zadENQq37eXj+m7M=++Name: res/drawable-mdpi-v4/abc_text_select_handle_middle_mtrl_light.pn+ g+SHA-256-Digest: U1hzfLaA6hzda6QA0zMW+r+HL9RPag4Se/yL3RYys3Q=++Name: res/drawable-mdpi-v4/abc_text_select_handle_right_mtrl_dark.png+SHA-256-Digest: 9mK4e+nTJ+Dobj9NupVTE4PtCxnT7GWFfYcjbTf9KjU=++Name: res/drawable-mdpi-v4/abc_text_select_handle_right_mtrl_light.png+SHA-256-Digest: fIRytyRBzCihrFOgi08MFPMQrzOBdbpsRv1jQqyM4v8=++Name: res/drawable-mdpi-v4/abc_textfield_activated_mtrl_alpha.9.png+SHA-256-Digest: +lAWK9s1Aca1DPo2wU2rnJTkjVf1WGB+yYWBJNcEEvk=++Name: res/drawable-mdpi-v4/abc_textfield_default_mtrl_alpha.9.png+SHA-256-Digest: n9N8gvh98ARkVUNE3d3qVeSA0JwztQWsEyUgNtTWJ24=++Name: res/drawable-mdpi-v4/abc_textfield_search_activated_mtrl_alpha.9+ .png+SHA-256-Digest: S8j00T0qzMwTOPc/+QzZdpXZIQ4E3l2pJCFSQ8iVC/M=++Name: res/drawable-mdpi-v4/abc_textfield_search_default_mtrl_alpha.9.p+ ng+SHA-256-Digest: uAD6x9Lwp1sX+tcAlwfqSRNJGeSJhOiYFanSTA+nBNg=++Name: res/drawable-mdpi-v4/design_ic_visibility.png+SHA-256-Digest: G1Q7uL7FfOG+9m8DiAA04dFdy78Xd1SV1el9b520e0s=++Name: res/drawable-mdpi-v4/design_ic_visibility_off.png+SHA-256-Digest: E9g1J4JaYlgGBfuP1Yynylve4tt2xROEyCWnBFJ1kv0=++Name: res/drawable-mdpi-v4/fab_add.png+SHA-256-Digest: U9Qbtrr+xt2W10Zyd4zUZONmb8CADfGKef98gO9vFFo=++Name: res/drawable-mdpi-v4/fab_bg_mini.png+SHA-256-Digest: J9OeRN0P4qG1GAHeVExgHfDM4HFU8LhjJNeqj/EIMWs=++Name: res/drawable-mdpi-v4/fab_bg_normal.png+SHA-256-Digest: Jx+NRZcjutQLFwWieLnnLgEcfvW1X7b4G2IXUaNTBc4=++Name: res/drawable-mdpi-v4/ic_action_delete_sweep.png+SHA-256-Digest: RBvzkU4AaWBUAFgIqKt8vtHH680aqIuBlvJdnljrYag=++Name: res/drawable-mdpi-v4/ic_action_fiber_new.png+SHA-256-Digest: 2UnC8gTsbUPhqRkUvDkSiLyTtN3cbfxb7oWNAwTj0uY=++Name: res/drawable-mdpi-v4/ic_action_playlist_add.png+SHA-256-Digest: +vj7r0wnfNDdjhTKbSzFiEDkwOUa2it2bwsBbek8Gpo=++Name: res/drawable-mdpi-v4/ic_action_send.png+SHA-256-Digest: FACVuYA8ha5aXMAKqehEP+p0ev9V0h2iT1LFUk7Ue/4=++Name: res/drawable-mdpi-v4/ic_backspace_white_24dp.png+SHA-256-Digest: w5NpU8lef6DaMpWjZuvJWe0nAgRO/DLuFqJrUIurtRA=++Name: res/drawable-mdpi-v4/ic_bubbles.png+SHA-256-Digest: uRmawjzBhM5j67nm5Bu6n13ZuJEnZp21YswME5/fYOE=++Name: res/drawable-mdpi-v4/ic_bubbles_add.png+SHA-256-Digest: 7t6KgnnBMIPp8m2cS8TNgs+Vdnc1pw9e1qY4Ys5GiKI=++Name: res/drawable-mdpi-v4/ic_crop_free_white_24dp.png+SHA-256-Digest: uEo4HjdYgXEXSrfDwLBuNXIlNu2TXk5aQPaO5mJw/3k=++Name: res/drawable-mdpi-v4/ic_done_white_24dp.png+SHA-256-Digest: ppX2sR1bL3C1TiJLImT2X8YCA92M6IygJD7v0mk23kQ=++Name: res/drawable-mdpi-v4/ic_launcher.png+SHA-256-Digest: 6GB3Ab9wzUxQuKt9lUTF9Mp3evi1+e5ukt5RSpr7nhI=++Name: res/drawable-mdpi-v4/ic_launcher_foreground.png+SHA-256-Digest: zCdckwC989HKNtKD5cwKya11h3feGbTcRQ8dXNnv0Lw=++Name: res/drawable-mdpi-v4/ic_launcher_round.png+SHA-256-Digest: spn0Ur50+DVhKCtIWArPsOJLRH4XXRzbl97qxcLdqD8=++Name: res/drawable-mdpi-v4/ic_link_white_24dp.png+SHA-256-Digest: Q3rpUHOs2Fonzw/oCLFvo+NqnnF40zlpr74vWj+0k+g=++Name: res/drawable-mdpi-v4/ic_lock_white_24dp.png+SHA-256-Digest: Q4FHcJfMCpZiwqUUV/2Dyqx/0QGSHBxZyaE3qySsrL8=++Name: res/drawable-mdpi-v4/ic_paynym_white_24dp.png+SHA-256-Digest: KI/N2mG+UFamjGtnZIz+RjqbBI4QY4I98mtqLwLX2Ug=++Name: res/drawable-mdpi-v4/ic_receive_qr.png+SHA-256-Digest: CEru6dqLNxYQ/pHMiMrrzKwEIOQ20ycMOhAyeiaNeTc=++Name: res/drawable-mdpi-v4/ic_samourai_and_tor_notif_icon.png+SHA-256-Digest: 0bf022RGjCJxzlxLtCsIjA58Hi4hOj3VG3/qJGNa4Uw=++Name: res/drawable-mdpi-v4/ic_samourai_deposit_24dp.png+SHA-256-Digest: 34PnyYR/MUPINo+ZZmetorWV7TT6WBTJR/CzdVPb0u8=++Name: res/drawable-mdpi-v4/ic_samourai_logo_trans2x.png+SHA-256-Digest: OuxkS/o3YilbB8nLjZ5r6bhhro6Q4uXDHtQR+Raqkf8=++Name: res/drawable-mdpi-v4/ic_samourai_send_24dp.png+SHA-256-Digest: BEiSc3H4LV73Ju4kSpPTCIn9Kf6ivzyz0f1embXdwxk=++Name: res/drawable-mdpi-v4/ic_send_final.png+SHA-256-Digest: 9WgkWMhWUNb4BKK2t6wb4BlaldXNPdHGSHHwrIVLPtg=++Name: res/drawable-mdpi-v4/ic_share_white_24dp.png+SHA-256-Digest: GxDVAToRM43EqDQiRCosh3hKqf9or7DdENLVYlpK5Ag=++Name: res/drawable-mdpi-v4/ic_standard.png+SHA-256-Digest: aHwb+Boj3sKbFyfhfVCpjNky3KhGFn9KXYFUzlEJvxg=++Name: res/drawable-mdpi-v4/notification_bg_low_normal.9.png+SHA-256-Digest: L3+9oLpuU+mkfi/A4k4yxEfGE6WAjC1ihdxlHoOgetc=++Name: res/drawable-mdpi-v4/notification_bg_low_pressed.9.png+SHA-256-Digest: 4Xdh7SgO3ZPXFBvVBLcPnp4VqGUiiNnmMzv0zpZO+EQ=++Name: res/drawable-mdpi-v4/notification_bg_normal.9.png+SHA-256-Digest: qGdqF5OsgxD/sSmGIy32bfCS0pwkKu7cK3NVbAENONw=++Name: res/drawable-mdpi-v4/notification_bg_normal_pressed.9.png+SHA-256-Digest: mcFNaFW4viltWAF9N1G43IScR7bR2Aq2FP+QdQgORhs=++Name: res/drawable-mdpi-v4/notify_panel_notification_icon_bg.png+SHA-256-Digest: DXc+YsdWQiMTJihGx4flj2fg7ofkXhrplCAC6BbEy54=++Name: res/drawable-v21/$avd_hide_password__0.xml+SHA-256-Digest: Jg+CNtPxdZHHNZRfcPrQMqHmLWGCC0TCrGsAOqiVK5s=++Name: res/drawable-v21/$avd_hide_password__1.xml+SHA-256-Digest: 3fXsToAuRyE37BZYeuQZRhkl9tcPy3hLowoX8Fan+E8=++Name: res/drawable-v21/$avd_hide_password__2.xml+SHA-256-Digest: 8Vmu2o+WgfBb6/mfqeRNGA2fQ/yvVTvvVHrbpEImp2U=++Name: res/drawable-v21/$avd_show_password__0.xml+SHA-256-Digest: QaDFKSmldIpwiCSvM8ZUReyT4SXng0DgmZb7ujRNLFw=++Name: res/drawable-v21/$avd_show_password__1.xml+SHA-256-Digest: HBMd4eRyt4l0uP4A+iOWa2YPlQuVVPv8lG5jW5QC8Yg=++Name: res/drawable-v21/$avd_show_password__2.xml+SHA-256-Digest: ScnJQzXghFRzYDHgUz4wc4kwAt43CRG+ThUijhiPMso=++Name: res/drawable-v21/abc_action_bar_item_background_material.xml+SHA-256-Digest: zMdk4b1AhJxt3ZupjfSZ9R0XTgupgnkzNZTACtO/gUQ=++Name: res/drawable-v21/abc_btn_colored_material.xml+SHA-256-Digest: 9+4Af0o3NA30uyDD91oIhLaBUYbuQUcDKTtUyo4ZxmY=++Name: res/drawable-v21/abc_edit_text_material.xml+SHA-256-Digest: VFERN3oe8YUWKgkeW/BheZlkdvfLFYRM4jp7Yk2uBJI=++Name: res/drawable-v21/avd_hide_password.xml+SHA-256-Digest: wUtoXNdPlxszj4IjzGFh6UQwxTEy6asK+ZAv8AVqo50=++Name: res/drawable-v21/avd_show_password.xml+SHA-256-Digest: AmJ8S7DZgAAgu0DBwEHElsNhxiNrxuiRRcbBrNdJXIc=++Name: res/drawable-v21/design_bottom_navigation_item_background.xml+SHA-256-Digest: 7ZCbm1Zt4EoGZz3UzuCkfoVLDqMMwJ+Ko8+hVJBEFX8=++Name: res/drawable-v21/design_password_eye.xml+SHA-256-Digest: wio1vLALUgyvWihxy4aPSXd0NFJ34bBPxxGHNibITSA=++Name: res/drawable-v21/notification_action_background.xml+SHA-256-Digest: NdllFdAbfBfmOy6qa9631usyxLRjr/EaCp+ZVc2LfyQ=++Name: res/drawable-v23/abc_control_background_material.xml+SHA-256-Digest: 0XtBAek0Rb//4/0tR4EvR7T7+WtAvRFsbi0/mLEeZq4=++Name: res/drawable-xhdpi-v4/abc_ab_share_pack_mtrl_alpha.9.png+SHA-256-Digest: oEcINpq+CSDe0g2H1Yrr9pkuu2fv76JIqEIYle/FNT8=++Name: res/drawable-xhdpi-v4/abc_btn_check_to_on_mtrl_000.png+SHA-256-Digest: Q8zx8KXp6e2abfM+Gz03jUnbyNxg2Dsc25heXkj1JJc=++Name: res/drawable-xhdpi-v4/abc_btn_check_to_on_mtrl_015.png+SHA-256-Digest: L6UkzaeNfr1mFkqJagQid7ela4ZY+zGPxwChFMsE97I=++Name: res/drawable-xhdpi-v4/abc_btn_radio_to_on_mtrl_000.png+SHA-256-Digest: 0ZCSJUqkEz+6i3eV+121YK1dzRbG95IBvsMbDx6bYIs=++Name: res/drawable-xhdpi-v4/abc_btn_radio_to_on_mtrl_015.png+SHA-256-Digest: Aq0Opv9aVg6UdFLH1k9nmvogVrRPhuo7cHocsXXCzrA=++Name: res/drawable-xhdpi-v4/abc_btn_switch_to_on_mtrl_00001.9.png+SHA-256-Digest: FBdXQTTF6TIcCxj+pxGghEjM9JlX9V4Qztr7EyN1EPc=++Name: res/drawable-xhdpi-v4/abc_btn_switch_to_on_mtrl_00012.9.png+SHA-256-Digest: TS/kWoFp82gFLJISMKJoup9T6l/tvLCf81EHRzVR5Qw=++Name: res/drawable-xhdpi-v4/abc_cab_background_top_mtrl_alpha.9.png+SHA-256-Digest: 9lqH76L1PW/i2EjPyh9skK6l6fxn/0f1lJpt0qduvhs=++Name: res/drawable-xhdpi-v4/abc_ic_commit_search_api_mtrl_alpha.png+SHA-256-Digest: uEoneAf487tTeOY1PZnRNEruEL2aBfR8MK/jgy2cp/A=++Name: res/drawable-xhdpi-v4/abc_ic_menu_copy_mtrl_am_alpha.png+SHA-256-Digest: W6nClCr0OOkWQYZsMJgOPwsE57EvJAonBlslaTxVtdI=++Name: res/drawable-xhdpi-v4/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: nvWY4iUsgRuhsLAx5c8n34R4I7YlN0L4Bz7nC5CYEBk=++Name: res/drawable-xhdpi-v4/abc_ic_menu_paste_mtrl_am_alpha.png+SHA-256-Digest: 7StURJcZUGnVVmO9kbXL+lxzK51NJk7yATlNjvWd624=++Name: res/drawable-xhdpi-v4/abc_ic_menu_selectall_mtrl_alpha.png+SHA-256-Digest: 7kiMY1kv+fI+DpXbYsU6M6VDZWPCNVJ46o9h11VQZx4=++Name: res/drawable-xhdpi-v4/abc_ic_menu_share_mtrl_alpha.png+SHA-256-Digest: D+zEN+4LaBHg+z3+tBh6juL8mGzLMqsBPiPrnOs9biM=++Name: res/drawable-xhdpi-v4/abc_ic_star_black_16dp.png+SHA-256-Digest: scvIjfE7nOYFt9wlEZ1yf5+h4fKBIz0wSO/xuT2t4uw=++Name: res/drawable-xhdpi-v4/abc_ic_star_black_36dp.png+SHA-256-Digest: 6mb4iyfjNb/9+SOT628SD6tO4GGxpZslFW2UONQi7mQ=++Name: res/drawable-xhdpi-v4/abc_ic_star_black_48dp.png+SHA-256-Digest: 0QhcZfJCFkxFlZiBNdW1/bCAhtXMptbAENd8hTDMsgQ=++Name: res/drawable-xhdpi-v4/abc_ic_star_half_black_16dp.png+SHA-256-Digest: CxMytCrxUuBsv5pD1KRLFDWcNkrhxTBR4kuUhdIZj34=++Name: res/drawable-xhdpi-v4/abc_ic_star_half_black_36dp.png+SHA-256-Digest: yk8aH7dX8qQ7ITkU2nsTXbnwAiHod+z2Gr0iy0E2xP8=++Name: res/drawable-xhdpi-v4/abc_ic_star_half_black_48dp.png+SHA-256-Digest: BV635dvPxULIyKc/mvzAFxYDSjwev5W5xfpb6KUfQZI=++Name: res/drawable-xhdpi-v4/abc_list_divider_mtrl_alpha.9.png+SHA-256-Digest: N4aUcG+3JW3SJI4q+FTv1x7H6IhfYdouFqK9Mvzz0Kk=++Name: res/drawable-xhdpi-v4/abc_list_focused_holo.9.png+SHA-256-Digest: Zx0n5aS0IREXS4iNVxGOBQdaVW1wO9VPkzUgLSpBZ5E=++Name: res/drawable-xhdpi-v4/abc_list_longpressed_holo.9.png+SHA-256-Digest: cn14/sP5A6JxwEdqUOjAZNKLMveCmwFq4KB9pTuDsoE=++Name: res/drawable-xhdpi-v4/abc_list_pressed_holo_dark.9.png+SHA-256-Digest: Y21/JL5obpUV99aDDOk2uqClQWRoIg6U6OJXVHln4iw=++Name: res/drawable-xhdpi-v4/abc_list_pressed_holo_light.9.png+SHA-256-Digest: B79c5f+JNyV6/RRgYsm/XKH0EVoWQ1KdgYRdAgLH3e8=++Name: res/drawable-xhdpi-v4/abc_list_selector_disabled_holo_dark.9.png+SHA-256-Digest: /XGeSXqvCRwxZstRv0QEykvDtlRd+++/qgzzHweQt9E=++Name: res/drawable-xhdpi-v4/abc_list_selector_disabled_holo_light.9.pn+ g+SHA-256-Digest: zBYtS4wS7jKeN8jWUUQvDvCp0cb4jvNS5U2o39mlDf4=++Name: res/drawable-xhdpi-v4/abc_menu_hardkey_panel_mtrl_mult.9.png+SHA-256-Digest: AG8twlusw55za8cg4mplRd90J7bBA7Ldd8Hrhyw/MwY=++Name: res/drawable-xhdpi-v4/abc_popup_background_mtrl_mult.9.png+SHA-256-Digest: H33Ys1ITU69HP0GFCIfpOFz2HDkMbjTk4r2ZGSHM/fg=++Name: res/drawable-xhdpi-v4/abc_scrubber_control_off_mtrl_alpha.png+SHA-256-Digest: d3oc9TggqkZyZ9H2Tl+SNlb5MEcDjqY3W8ziV7UXkw4=++Name: res/drawable-xhdpi-v4/abc_scrubber_control_to_pressed_mtrl_000.p+ ng+SHA-256-Digest: QTODD0P5uqCw7TzIDXmLIAcdqfUf4S72sL0Jq8jV0zo=++Name: res/drawable-xhdpi-v4/abc_scrubber_control_to_pressed_mtrl_005.p+ ng+SHA-256-Digest: KZU72AGd2Wt3ATKbmiA8/2NGBRlUm5zKml63T5sbCTA=++Name: res/drawable-xhdpi-v4/abc_scrubber_primary_mtrl_alpha.9.png+SHA-256-Digest: wPkwpyKhbfmGkjv0GQgdEJD5R2pyh8i2Vas2/8CAZMs=++Name: res/drawable-xhdpi-v4/abc_scrubber_track_mtrl_alpha.9.png+SHA-256-Digest: ayNytBSrwc/P1xyY9RkBqExGxbcSBGquAZthEN4mUXU=++Name: res/drawable-xhdpi-v4/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: xjqU5xNs7u9DsK3otJ6OHvTRBg1YT2y5q1i31uqhYxI=++Name: res/drawable-xhdpi-v4/abc_switch_track_mtrl_alpha.9.png+SHA-256-Digest: RoYHYBFAlVshxgkYl7/GX2CdOG+mjVbBmSAYleA7P7w=++Name: res/drawable-xhdpi-v4/abc_tab_indicator_mtrl_alpha.9.png+SHA-256-Digest: uLJnCNcbTHpc9TEavN+nQf7jnJ9eE4PUnKDGd/zbA80=++Name: res/drawable-xhdpi-v4/abc_text_select_handle_left_mtrl_dark.png+SHA-256-Digest: HABkmOPnqY34jqtbxostKpFGWZmDK9249zAfzBpTqbE=++Name: res/drawable-xhdpi-v4/abc_text_select_handle_left_mtrl_light.png+SHA-256-Digest: g6RieeL2XYUslFLIbjgybvnz3vb1vsLvFBbHKBWl+/o=++Name: res/drawable-xhdpi-v4/abc_text_select_handle_middle_mtrl_dark.pn+ g+SHA-256-Digest: FMBg9lnSCw2GX0jfJF85dB1C+Jy4bNxbH9R4/MYe3Ro=++Name: res/drawable-xhdpi-v4/abc_text_select_handle_middle_mtrl_light.p+ ng+SHA-256-Digest: Pbutkm1UBYbWvRIw8ykxCHdMlec/ZgTwu/iMOhFTAiM=++Name: res/drawable-xhdpi-v4/abc_text_select_handle_right_mtrl_dark.png+SHA-256-Digest: NbjRRtvUPXtIRI2h6ZHh6cz9mMuzxOc+Z6m9Pp5rgZo=++Name: res/drawable-xhdpi-v4/abc_text_select_handle_right_mtrl_light.pn+ g+SHA-256-Digest: a0Wu+L9DdnwsHIPe4r2c65AXmU++9mE4kea8IV4qXuM=++Name: res/drawable-xhdpi-v4/abc_textfield_activated_mtrl_alpha.9.png+SHA-256-Digest: I0ObiJn0tj1orpOF6qSShqS5W5X3m4uNN947Dk/bx0c=++Name: res/drawable-xhdpi-v4/abc_textfield_default_mtrl_alpha.9.png+SHA-256-Digest: DKrqAGCzdyukM8Dp46VFLybzQhulAjyFUVcnC8Z1swk=++Name: res/drawable-xhdpi-v4/abc_textfield_search_activated_mtrl_alpha.+ 9.png+SHA-256-Digest: WulZQkCtpeU1AOJSQhWz4rPJHm3ZWwXgrN0n2djFfnI=++Name: res/drawable-xhdpi-v4/abc_textfield_search_default_mtrl_alpha.9.+ png+SHA-256-Digest: d5omBqkxo5miydO9AfPFEMQS8pFkeKpofkMOYAOwpfM=++Name: res/drawable-xhdpi-v4/design_ic_visibility.png+SHA-256-Digest: 5UNk6BFe6hjmlTsGOwlESzOaA6nZS1v2i3EIbK22bD8=++Name: res/drawable-xhdpi-v4/design_ic_visibility_off.png+SHA-256-Digest: wn9EDRTTYa4Y4oNlmTIs8s6suWVzLgxW1NqEB5iib7A=++Name: res/drawable-xhdpi-v4/fab_add.png+SHA-256-Digest: kA/OtpyXIa1bDMRbmHD+7n4P6bHXMa7O/ns1r/DQgMI=++Name: res/drawable-xhdpi-v4/fab_bg_mini.png+SHA-256-Digest: cQknTRx+F94hZ783WtXeK6QXHQNmINMguY/j8N8KIgY=++Name: res/drawable-xhdpi-v4/fab_bg_normal.png+SHA-256-Digest: wT8JvKTsoi2jMZkGhK+UkzWMSFawPaZKN7wxDqNbTy4=++Name: res/drawable-xhdpi-v4/ic_action_delete_sweep.png+SHA-256-Digest: VgbZBiyl7Iy8CVr9cyQiIX/tpR5Ma3aPNmMoTc03LYI=++Name: res/drawable-xhdpi-v4/ic_action_fiber_new.png+SHA-256-Digest: 3FXWlJgVg6TRSr2vKfQ/MxQ2TmjyOiqN76GhTkrXQOs=++Name: res/drawable-xhdpi-v4/ic_action_playlist_add.png+SHA-256-Digest: AI+Rl4Sc/va1MzqlNJX5ARpheE5NdB497b7lBNk19/w=++Name: res/drawable-xhdpi-v4/ic_action_refresh.png+SHA-256-Digest: XKJIkc4+XOVZIJm99XPrt2BGNF5MHrlm5S/1mm2B+6Y=++Name: res/drawable-xhdpi-v4/ic_action_send.png+SHA-256-Digest: 3+YvAzP8LjoPPqLWR3iH8PY+tX10BpQyEzeqIkGt/Bc=++Name: res/drawable-xhdpi-v4/ic_backspace_white_24dp.png+SHA-256-Digest: okZlTozRoOizWpB2fN26SMIFyUKEiqFJk9yhOmi4RZk=++Name: res/drawable-xhdpi-v4/ic_bubbles.png+SHA-256-Digest: deNWh0/0IoWB0Wl5Fxy8F2jQ77ri7AZy3fVxRwg5MAI=++Name: res/drawable-xhdpi-v4/ic_bubbles_add.png+SHA-256-Digest: yC01jLSE3U51dixAwVTee7HEaJ7X+e8gTD60jSCeWck=++Name: res/drawable-xhdpi-v4/ic_crop_free_white_24dp.png+SHA-256-Digest: HHPLJB+UaT4wo3ajINWufO564SXs+UrZ3S0NKQ8McT0=++Name: res/drawable-xhdpi-v4/ic_done_white.png+SHA-256-Digest: W4qKlI0OwPIefy4kKaNj8qyHigyeBkhLfgDsjSHrzzw=++Name: res/drawable-xhdpi-v4/ic_done_white_24dp.png+SHA-256-Digest: DnfEC0AcWo0682YnyHzeqmYS614I2tckhe/EEj+r6U0=++Name: res/drawable-xhdpi-v4/ic_launcher.png+SHA-256-Digest: ypp5tQj7vj2oV82yywv1sUWFgHKKIhIQnv8AL3F5Wcw=++Name: res/drawable-xhdpi-v4/ic_launcher_foreground.png+SHA-256-Digest: a58oz3jmoNkOEIMF/RdMWPDnKI57075PJt4V8U4sSCE=++Name: res/drawable-xhdpi-v4/ic_launcher_round.png+SHA-256-Digest: 6PBg30H/8wV3IQ5cX3K1TSz3AaCU7UYtUhiBhGDCEwM=++Name: res/drawable-xhdpi-v4/ic_link_white_24dp.png+SHA-256-Digest: En5NOQldA3RyXwwktpdRMCg1fHHNVT9YzY0B4LIlnNQ=++Name: res/drawable-xhdpi-v4/ic_lock_white_24dp.png+SHA-256-Digest: K4bW9iEWSJydPIu8hQYhh0hnAL7Qc4P9x2nc0CQ29EY=++Name: res/drawable-xhdpi-v4/ic_paynym_white_24dp.png+SHA-256-Digest: yWhp8zFD55y+Qa8B5L7NZ2BA0qoTfMz2IVn1J6ebgYA=++Name: res/drawable-xhdpi-v4/ic_query_builder_white.png+SHA-256-Digest: heB9Cmk6NwY9XcG26VnLLuZUP1aUQIFiNg5sGBT8f6w=++Name: res/drawable-xhdpi-v4/ic_receive_qr.png+SHA-256-Digest: gVHGrOUIVJH6+idZD5dLsdSWDlYpyuz3ZO3WkyJj2yo=++Name: res/drawable-xhdpi-v4/ic_samourai_and_tor_notif_icon.png+SHA-256-Digest: bIjGzFrDwKYZBZZyutbZp6WcvoXdt4P474BlGbK7q58=++Name: res/drawable-xhdpi-v4/ic_samourai_deposit_24dp.png+SHA-256-Digest: U7K7Epn6aZs2U2xwRHsEKJTj+YUhaVYxgQL8t3evP1c=++Name: res/drawable-xhdpi-v4/ic_samourai_logo_trans2x.png+SHA-256-Digest: /g1HmB6hJfMt+O0yHQ4/9a/Ag43YQ4C2YqZHHyy8wDo=++Name: res/drawable-xhdpi-v4/ic_samourai_send_24dp.png+SHA-256-Digest: RtPdznFeBItBaPowww1ieUvvatpNx0syyNS+Vn/T2pE=++Name: res/drawable-xhdpi-v4/ic_send_final.png+SHA-256-Digest: iVr4eN2SeknKbWCU2rgOi3l2jSH6tNmoJoxvCMyd5ZI=++Name: res/drawable-xhdpi-v4/ic_share_white_24dp.png+SHA-256-Digest: 0Tv82QeMTGwZ88a5Gsyu261NNeE7bYQkxXZa+4rHsbU=++Name: res/drawable-xhdpi-v4/ic_standard.png+SHA-256-Digest: gIY1wXaknPJgJuarAKcAWHliGpoUYxBQXcLpSHbzbHY=++Name: res/drawable-xhdpi-v4/notification_bg_low_normal.9.png+SHA-256-Digest: PgmvohxFNywDVZjAF8j7QFptZ45suE3IV1gcs7QOSC0=++Name: res/drawable-xhdpi-v4/notification_bg_low_pressed.9.png+SHA-256-Digest: IDQyIvn3ndVlw6IkhJTUUucIIKwcQ3Fzw4ut1F+WKv0=++Name: res/drawable-xhdpi-v4/notification_bg_normal.9.png+SHA-256-Digest: VZv3g9dlwCM46XlSvcnGaJx/+ZCQuMmBM2kRjaiwgPA=++Name: res/drawable-xhdpi-v4/notification_bg_normal_pressed.9.png+SHA-256-Digest: 0nr0NRAcpMvsDIQL0waHkYzTnrg6qxSHQghVYjpFmYs=++Name: res/drawable-xhdpi-v4/notify_panel_notification_icon_bg.png+SHA-256-Digest: tE7to016Upwv5VcZ6wmPopcHyqkdGN4Gp6d11ua8+XM=++Name: res/drawable-xxhdpi-v4/abc_ab_share_pack_mtrl_alpha.9.png+SHA-256-Digest: +BQSxRMQRqg/XZ3h0Q4rSzH24mV8TAh0OCXNQPYF/dM=++Name: res/drawable-xxhdpi-v4/abc_btn_check_to_on_mtrl_000.png+SHA-256-Digest: GGIMFRMwKJu6GWwcweJpn5gGGjW+NVGHYpaoxNWSuhc=++Name: res/drawable-xxhdpi-v4/abc_btn_check_to_on_mtrl_015.png+SHA-256-Digest: caK6Y6XU6R98FDJPocPrkpC3PLezx4KAGNBa2xz6q0U=++Name: res/drawable-xxhdpi-v4/abc_btn_radio_to_on_mtrl_000.png+SHA-256-Digest: Du2Z0KXjakaLVXYF5szqSVwCnzVphEpF9LXY2t131Kc=++Name: res/drawable-xxhdpi-v4/abc_btn_radio_to_on_mtrl_015.png+SHA-256-Digest: XgeZoNC11D7Vrjo3iqoIR6gQzu/1jbmg94Nuv07xcUY=++Name: res/drawable-xxhdpi-v4/abc_btn_switch_to_on_mtrl_00001.9.png+SHA-256-Digest: D422BdY78dbTX9ZH1ZKsTnDJpxL/XRwhFMjVioi4Ioo=++Name: res/drawable-xxhdpi-v4/abc_btn_switch_to_on_mtrl_00012.9.png+SHA-256-Digest: H5U4dFz9MgnMCe1FHBmDAqrDocXaQehzlDd4FLG8xe4=++Name: res/drawable-xxhdpi-v4/abc_cab_background_top_mtrl_alpha.9.png+SHA-256-Digest: 1o0Dln+yIvfjV3Ki4GN/c7TdDWy7nuPytEMtL5DCV9s=++Name: res/drawable-xxhdpi-v4/abc_ic_commit_search_api_mtrl_alpha.png+SHA-256-Digest: 9fNJwelJ8OZjdPg7Zn/A0PR3N5YU82kSreIqKZ8hlNU=++Name: res/drawable-xxhdpi-v4/abc_ic_menu_copy_mtrl_am_alpha.png+SHA-256-Digest: oeGqB3STG3MVFCP96FrV7gFeU8qd3qhmMm2hJmoSsoU=++Name: res/drawable-xxhdpi-v4/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: 1oy9V5n6PhQw/MYSvRsDbhyMcYsci9DWtamfJZq9aeg=++Name: res/drawable-xxhdpi-v4/abc_ic_menu_paste_mtrl_am_alpha.png+SHA-256-Digest: 1En5E1XqyS3K6r3KYfmp+HTsYqaIO7B1PKvHI1Rueo8=++Name: res/drawable-xxhdpi-v4/abc_ic_menu_selectall_mtrl_alpha.png+SHA-256-Digest: jG4qPDOJDXK+NFMQ5uUxd4wlucmxQ3YsbCve6I9fsNA=++Name: res/drawable-xxhdpi-v4/abc_ic_menu_share_mtrl_alpha.png+SHA-256-Digest: npoZM6+MK0Hj5z7Cc/27ZeWVQsOXF08qYUhpAwcr7Dg=++Name: res/drawable-xxhdpi-v4/abc_ic_star_black_16dp.png+SHA-256-Digest: /ABPnNdQOpxLQZsXjCuj4kqhkaFFiAOYZb4jVQe929o=++Name: res/drawable-xxhdpi-v4/abc_ic_star_black_36dp.png+SHA-256-Digest: ywCg6DBq94qW1rTpRJsvBi8rD2Ea3ty72+pGCP8FZfc=++Name: res/drawable-xxhdpi-v4/abc_ic_star_black_48dp.png+SHA-256-Digest: p5sGDQ7bZjMb743ZpsdblQbRX9gjwqa4V577Ykm4Uwk=++Name: res/drawable-xxhdpi-v4/abc_ic_star_half_black_16dp.png+SHA-256-Digest: XSYy3/spelJXwJKhqb00BpK8HO9SdNyiy8Shyc0V+c4=++Name: res/drawable-xxhdpi-v4/abc_ic_star_half_black_36dp.png+SHA-256-Digest: tXbjLUHHcUeSXu+4ArFyyNNnIGzRpVTk4q9Fd327bMs=++Name: res/drawable-xxhdpi-v4/abc_ic_star_half_black_48dp.png+SHA-256-Digest: YTgOuustar+NvU7rkbuCJLOyDlmpzrkT5q+aSQWpjQA=++Name: res/drawable-xxhdpi-v4/abc_list_divider_mtrl_alpha.9.png+SHA-256-Digest: SZAwc6sjq/wRpV4TM+spBcdD4bOCAGwnwVQ0/XbgIHw=++Name: res/drawable-xxhdpi-v4/abc_list_focused_holo.9.png+SHA-256-Digest: jGhG9BBe8cAhB+hCFC6c5gsIgZKW6VELLQwSz0VgxeE=++Name: res/drawable-xxhdpi-v4/abc_list_longpressed_holo.9.png+SHA-256-Digest: RMKXZrLYi3inE5Oz46dxyn7vX1UmMMYHTzPWKRJB0Lk=++Name: res/drawable-xxhdpi-v4/abc_list_pressed_holo_dark.9.png+SHA-256-Digest: p3qqIH/VefZDgzI7k/BI7pQ040XKi7ZBdDp3kBtDg8I=++Name: res/drawable-xxhdpi-v4/abc_list_pressed_holo_light.9.png+SHA-256-Digest: k7dlcYRHPViBZpuA49Q/1k5ELR7XG+TO01GDgLbOxp0=++Name: res/drawable-xxhdpi-v4/abc_list_selector_disabled_holo_dark.9.pn+ g+SHA-256-Digest: lK4ic6M1ZywcZ5iOevWV1C6AUm7bf1ZU7hMNzgb9QNc=++Name: res/drawable-xxhdpi-v4/abc_list_selector_disabled_holo_light.9.p+ ng+SHA-256-Digest: TxhlR8P+V5bvSdqW1gpKmks0c1fq/zeU845fKq3j5AA=++Name: res/drawable-xxhdpi-v4/abc_menu_hardkey_panel_mtrl_mult.9.png+SHA-256-Digest: qCUvUmOMgN8RnbAxYmGYpKjUsy7mGOlsOja5uUbiaJQ=++Name: res/drawable-xxhdpi-v4/abc_popup_background_mtrl_mult.9.png+SHA-256-Digest: 4aK4ZNARSoRxZi+OMP/Lsuuf/UFNNiOWEt74x3kqRQo=++Name: res/drawable-xxhdpi-v4/abc_scrubber_control_off_mtrl_alpha.png+SHA-256-Digest: E20I+rD+QW/H4OypxJjmPGg1eyyqQkH0RLvD8m+adMk=++Name: res/drawable-xxhdpi-v4/abc_scrubber_control_to_pressed_mtrl_000.+ png+SHA-256-Digest: Y/rQoZy55BZYYEnUC2IWGwzEwlE9g5MdOFLi9acubRM=++Name: res/drawable-xxhdpi-v4/abc_scrubber_control_to_pressed_mtrl_005.+ png+SHA-256-Digest: Ty+MKnsELlWqj0P0zoE0syF+6c2kMsX/jUwz0J2G32g=++Name: res/drawable-xxhdpi-v4/abc_scrubber_primary_mtrl_alpha.9.png+SHA-256-Digest: dlby8ZqEzvwr+fr8AHYCFnddMz/AsI64X/HgAGtG/CA=++Name: res/drawable-xxhdpi-v4/abc_scrubber_track_mtrl_alpha.9.png+SHA-256-Digest: xWq5N1sUm6HF7iaPIrPPZQe7R5hvYoORUA+6OBR9qyg=++Name: res/drawable-xxhdpi-v4/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: vYk3g8jSvrsWesBaJ82upd/WUf6NZLyzDBTnuSU4DHk=++Name: res/drawable-xxhdpi-v4/abc_switch_track_mtrl_alpha.9.png+SHA-256-Digest: u0sJKuacQp6dT3/5fGC6EMLkQ6Kwyhmp9sd4VL8y4pM=++Name: res/drawable-xxhdpi-v4/abc_tab_indicator_mtrl_alpha.9.png+SHA-256-Digest: NjPsmdZqrkMy+aay29NIBRNDMAGo7sDnltK8tp11tz8=++Name: res/drawable-xxhdpi-v4/abc_text_select_handle_left_mtrl_dark.png+SHA-256-Digest: wbI/G58W/MGpHZKeBtlUrjIs01JrkMVnGVlqKWN7v5g=++Name: res/drawable-xxhdpi-v4/abc_text_select_handle_left_mtrl_light.pn+ g+SHA-256-Digest: r7yu3mapfdybVMTZiRwJQVy2lE15xMGuhEDNpVOWOVc=++Name: res/drawable-xxhdpi-v4/abc_text_select_handle_middle_mtrl_dark.p+ ng+SHA-256-Digest: U/r+ClYvDtt1m9vuAgxaN5UgFZk0fvWz5L2Dn4qiT1k=++Name: res/drawable-xxhdpi-v4/abc_text_select_handle_middle_mtrl_light.+ png+SHA-256-Digest: JPXbIm8c1W5ed1+Cw39l89HuyQkbJrdIYWKcrwAZw70=++Name: res/drawable-xxhdpi-v4/abc_text_select_handle_right_mtrl_dark.pn+ g+SHA-256-Digest: yBqgf/xs/JjR10bLY+UkFhFMLGzYOzgVEE34TBzkrc0=++Name: res/drawable-xxhdpi-v4/abc_text_select_handle_right_mtrl_light.p+ ng+SHA-256-Digest: PP0FVIRIlrUAwzUTseie1iAo0MgN9z08WTVHn0lwSjw=++Name: res/drawable-xxhdpi-v4/abc_textfield_activated_mtrl_alpha.9.png+SHA-256-Digest: aCxGbT5POeMfEUq8FjLYXnNFV705gU47p9fGHq4tBps=++Name: res/drawable-xxhdpi-v4/abc_textfield_default_mtrl_alpha.9.png+SHA-256-Digest: oNY+x27CHUD+lqS2+09KrFthprY6Y0ctqwVeDZ6YkLE=++Name: res/drawable-xxhdpi-v4/abc_textfield_search_activated_mtrl_alpha+ .9.png+SHA-256-Digest: yNE+VoejTVuFAY/3qfDyKHCil7Jh/xQLPtBBzn5/S4E=++Name: res/drawable-xxhdpi-v4/abc_textfield_search_default_mtrl_alpha.9+ .png+SHA-256-Digest: 8jJxTMvsypetxjsIEdYmKQV8d9y9CwYsguJnVMt0SDE=++Name: res/drawable-xxhdpi-v4/design_ic_visibility.png+SHA-256-Digest: t+Ko1OyH7/3LhdM5J6yPi+zXUBlFCVVjZXJ0EXudIzg=++Name: res/drawable-xxhdpi-v4/design_ic_visibility_off.png+SHA-256-Digest: ssWvkusjHtpWuYn0emeI8NAoIu6nFGQWnfEkeyhik70=++Name: res/drawable-xxhdpi-v4/fab_add.png+SHA-256-Digest: fg+yBfenNaJ53jTA4ErvfUxgsRbSLL/GQu+aE9IIRDo=++Name: res/drawable-xxhdpi-v4/fab_bg_mini.png+SHA-256-Digest: 5GCC2Vq1s7V3GyIHMrfYFHjUwj2bF1l7FdMzDcZcjiY=++Name: res/drawable-xxhdpi-v4/fab_bg_normal.png+SHA-256-Digest: VR8ECjqaeZEpPRUkM0OSelOr2ydAjJVQIB6y8OTIqyo=++Name: res/drawable-xxhdpi-v4/ic_action_delete_sweep.png+SHA-256-Digest: iesspWcx42Q0i6emhr4fLGBBGnamkNs8NnGAZdmXwXI=++Name: res/drawable-xxhdpi-v4/ic_action_fiber_new.png+SHA-256-Digest: sMwyrHYAK0Qrh5RqE5GUVhVCracibQVSeljOlZEAi+M=++Name: res/drawable-xxhdpi-v4/ic_action_playlist_add.png+SHA-256-Digest: 3tb3EZpL2yfPyAdaDnUr8GC3WV8d6ZgjPOQ1cylmlak=++Name: res/drawable-xxhdpi-v4/ic_action_send.png+SHA-256-Digest: MbKQTQKiDP6hWAZxlq+IWJTwCTO8/dGP2+X8x283Iog=++Name: res/drawable-xxhdpi-v4/ic_backspace_white_24dp.png+SHA-256-Digest: IqVaquWmcBktClOjrN+DTHlBVoW9tXF/ff/ITIeOV7g=++Name: res/drawable-xxhdpi-v4/ic_bubbles.png+SHA-256-Digest: x/U6MN58Qr4sIOuPk2tURYPklfNzcC8920paK8wInOw=++Name: res/drawable-xxhdpi-v4/ic_bubbles_add.png+SHA-256-Digest: abhyIFkR7v8u6f8m3VBrxTdCb1EloOx/x8UKkKayP+c=++Name: res/drawable-xxhdpi-v4/ic_crop_free_white_24dp.png+SHA-256-Digest: 4nDShyGSZYPZeoCfnStULTTMpDqOQTtDfOefJVYU82g=++Name: res/drawable-xxhdpi-v4/ic_done_white_24dp.png+SHA-256-Digest: W4qKlI0OwPIefy4kKaNj8qyHigyeBkhLfgDsjSHrzzw=++Name: res/drawable-xxhdpi-v4/ic_launcher.png+SHA-256-Digest: okvhp6deo9slfQrz9ZGTVrJghs4O9oUFb25x2s3Kecg=++Name: res/drawable-xxhdpi-v4/ic_launcher_foreground.png+SHA-256-Digest: BQjonSKNWbDS5z9H6cuFl4T4IDCdf9aXqF2N32rqSlY=++Name: res/drawable-xxhdpi-v4/ic_launcher_round.png+SHA-256-Digest: LB19yBk5fGIv/dLJvjDCmhoaR0gRe4Wq60Ng7+M55Ks=++Name: res/drawable-xxhdpi-v4/ic_link_white_24dp.png+SHA-256-Digest: 94y++kjXoPHprV33UBGDRMK8lB6SkzrA1nUPcIML3a4=++Name: res/drawable-xxhdpi-v4/ic_lock_white_24dp.png+SHA-256-Digest: pTjyiib3r3Z28V2xDcpAcSnIzMlBW5mHyeDe7+2V6CY=++Name: res/drawable-xxhdpi-v4/ic_paynym_white_24dp.png+SHA-256-Digest: kVmmmAgR16RaOq/c+q9+RgEdypI5R+rnhWqChosRnIw=++Name: res/drawable-xxhdpi-v4/ic_receive_qr.png+SHA-256-Digest: px8PDlyfDJYxI5yk7iZ3gjc5L41B6xqKvKgM3UjcpQw=++Name: res/drawable-xxhdpi-v4/ic_samourai_and_tor_notif_icon.png+SHA-256-Digest: QFs24kAnc7X6Wc1wnh8S/OD+ISxSY+ml+WWsetQTEe4=++Name: res/drawable-xxhdpi-v4/ic_samourai_deposit_24dp.png+SHA-256-Digest: 6YW0jL69/YCODqodQ8tESRMRGcUw5QZE8T0/Iok9sx0=++Name: res/drawable-xxhdpi-v4/ic_samourai_logo_trans2x.png+SHA-256-Digest: xb2PLoSn51mHAfM9/VR9aj/XOz7ODMn5TyLu7fUHubk=++Name: res/drawable-xxhdpi-v4/ic_samourai_send_24dp.png+SHA-256-Digest: 9U5Kvv3AqG1tYd4YungwGXK0wrVHVrqZ8bAWCFWF+x4=++Name: res/drawable-xxhdpi-v4/ic_send_final.png+SHA-256-Digest: w2RxlCcKV4qCeVASS2xrDDVNwUc8zeGTYna73MHuAnc=++Name: res/drawable-xxhdpi-v4/ic_share_white_24dp.png+SHA-256-Digest: phwbqBEGUvJNVC9jhf3yw1qrPHP+/8M8G3VZ70M5lok=++Name: res/drawable-xxhdpi-v4/ic_standard.png+SHA-256-Digest: G7k0zIPnPvmy/msj4C+9Ua7uGvvbn0nPKV7jLKVLBfs=++Name: res/drawable-xxxhdpi-v4/abc_btn_check_to_on_mtrl_000.png+SHA-256-Digest: sKoBDnqIXkt6ZpwWx7oQ/NhioS3/PxQsc1R3hEKmP94=++Name: res/drawable-xxxhdpi-v4/abc_btn_check_to_on_mtrl_015.png+SHA-256-Digest: UqA1jlRDk3PKOfmc2Dzzp75zwlfwf66D7dg8m0iRiV0=++Name: res/drawable-xxxhdpi-v4/abc_btn_radio_to_on_mtrl_000.png+SHA-256-Digest: YALrVng7lWtfkebd/682zIZ0AqAaIl5ie0wlyNIaTiM=++Name: res/drawable-xxxhdpi-v4/abc_btn_radio_to_on_mtrl_015.png+SHA-256-Digest: UzQLCw9SmybbavYyoBEnCCM78xJEjFuJoTV7LNcLP0I=++Name: res/drawable-xxxhdpi-v4/abc_btn_switch_to_on_mtrl_00001.9.png+SHA-256-Digest: w2e3OjOpM0KeHVfTP8+/JD8CdOfNuiIaC5g+4VtbrKk=++Name: res/drawable-xxxhdpi-v4/abc_btn_switch_to_on_mtrl_00012.9.png+SHA-256-Digest: tK9z5SJmvlcMLBY9mH5kNIBm2zEbQeejggAFKcATbGs=++Name: res/drawable-xxxhdpi-v4/abc_ic_menu_copy_mtrl_am_alpha.png+SHA-256-Digest: UJJkcEclxdelFh4ogJkL6uzBGb5eGmZ9VDoIrM5dbmc=++Name: res/drawable-xxxhdpi-v4/abc_ic_menu_cut_mtrl_alpha.png+SHA-256-Digest: VyP43ekU36Uo9dKtD5cCuOyPvFkW0Lhx3SofuQ3lARY=++Name: res/drawable-xxxhdpi-v4/abc_ic_menu_paste_mtrl_am_alpha.png+SHA-256-Digest: 9KOvhszm6mDZwIxQZpNGHcYOn7ItfAHIA4bwCyNphlk=++Name: res/drawable-xxxhdpi-v4/abc_ic_menu_selectall_mtrl_alpha.png+SHA-256-Digest: f1HA8/c32j+4Lu/H7Xwzo40PeA3NvkQl/cBJhBnmxL0=++Name: res/drawable-xxxhdpi-v4/abc_ic_menu_share_mtrl_alpha.png+SHA-256-Digest: cCU7gub//vP4QmuO5xKblnISv0F4jqofTG6ImK9qFzo=++Name: res/drawable-xxxhdpi-v4/abc_ic_star_black_16dp.png+SHA-256-Digest: V2UiklPuSrO10NH/Z4B8LTd06zwWlRImybQF5jvAnFQ=++Name: res/drawable-xxxhdpi-v4/abc_ic_star_black_36dp.png+SHA-256-Digest: NXAPu7MkmXiv6CHadu9Z28LMQcsS2k/j+eF3RtTs1DA=++Name: res/drawable-xxxhdpi-v4/abc_ic_star_black_48dp.png+SHA-256-Digest: jhAzmfAOiNfledv+iDiH/QlrEdfHTX7aTqI3TnDWChQ=++Name: res/drawable-xxxhdpi-v4/abc_ic_star_half_black_16dp.png+SHA-256-Digest: //dyXiBzwzDTj2MMH8lBVqdzByEb+mbAMqv82ooF+WE=++Name: res/drawable-xxxhdpi-v4/abc_ic_star_half_black_36dp.png+SHA-256-Digest: /K4fdBwYdJbjG+9Qa/6oTynzEpRSSqUqr8MXYpVspaU=++Name: res/drawable-xxxhdpi-v4/abc_ic_star_half_black_48dp.png+SHA-256-Digest: vdbrb8Se695w2l5Q/umRyoVrIC8dShRB5cigc8HWaRk=++Name: res/drawable-xxxhdpi-v4/abc_scrubber_control_to_pressed_mtrl_000+ .png+SHA-256-Digest: HjsC4k+kMbGr4Kl61nI/rUPfef2oF2wQYLb70xF4YZ8=++Name: res/drawable-xxxhdpi-v4/abc_scrubber_control_to_pressed_mtrl_005+ .png+SHA-256-Digest: aDaR157xHoY/5OyE3cYxaW5ZhLVYT8RUnWWG26yiIMc=++Name: res/drawable-xxxhdpi-v4/abc_spinner_mtrl_am_alpha.9.png+SHA-256-Digest: JVLNG83ZiC1sJYgz+3C8CBoxoqCT75wlb5JDE3Cm5d4=++Name: res/drawable-xxxhdpi-v4/abc_switch_track_mtrl_alpha.9.png+SHA-256-Digest: EAzGrjhw3XaaJS5EYIqBlWUi6GdnT4VGGbp8aNMUytc=++Name: res/drawable-xxxhdpi-v4/abc_tab_indicator_mtrl_alpha.9.png+SHA-256-Digest: 5+NsPLztyXvCiv+R7XLEMQsWwzFxOhaYppLGbUb2Mic=++Name: res/drawable-xxxhdpi-v4/abc_text_select_handle_left_mtrl_dark.pn+ g+SHA-256-Digest: t7B1+xt6RKBCbccZ7VkZRB8x5+GvnTRBtwJjuUGWRo8=++Name: res/drawable-xxxhdpi-v4/abc_text_select_handle_left_mtrl_light.p+ ng+SHA-256-Digest: Vbwndy9tNb6TNPuAw3GzJ9sl+qmmCYw8FASekmVKwb8=++Name: res/drawable-xxxhdpi-v4/abc_text_select_handle_right_mtrl_dark.p+ ng+SHA-256-Digest: P0OWrRhILUg6BzspAE3Kx+cKYwqfvVPc+F6FxCveqqM=++Name: res/drawable-xxxhdpi-v4/abc_text_select_handle_right_mtrl_light.+ png+SHA-256-Digest: 2DVD8MgrYs9JnyYYrZlDH571DaYLQVmA7I4OULkOOJM=++Name: res/drawable-xxxhdpi-v4/design_ic_visibility.png+SHA-256-Digest: X8MrNJc8Ndyz6/265oI9kI7Aj4zVid3dwFQSYiA8LAw=++Name: res/drawable-xxxhdpi-v4/design_ic_visibility_off.png+SHA-256-Digest: 1C5/18yqkl3LO5xCJkpP8JxX0fqJjC7PMzuuUuEqOHs=++Name: res/drawable-xxxhdpi-v4/fab_bg_mini.png+SHA-256-Digest: HgeP5mUT0FSUr4MoS2PVZcoOmupJcggty4pXxDiD0ks=++Name: res/drawable-xxxhdpi-v4/fab_bg_normal.png+SHA-256-Digest: LAgwNoRa3c8mcUyOClWYuGVtsU7vYsDG83FMFQhK/ME=++Name: res/drawable-xxxhdpi-v4/ic_action_delete_sweep.png+SHA-256-Digest: EJYBAy/e3sQiLxkwKzZEOTY2gjIwSImdTckq1Y62CpA=++Name: res/drawable-xxxhdpi-v4/ic_action_fiber_new.png+SHA-256-Digest: dcXqJFIG1GQC+9h4kE0145ch/Aaor5v3HxwfeVXaJgA=++Name: res/drawable-xxxhdpi-v4/ic_action_playlist_add.png+SHA-256-Digest: SpxvjRUhzehErSzfQ1H1vel3cBbJ7ZV0t3MqWy7OopA=++Name: res/drawable-xxxhdpi-v4/ic_action_send.png+SHA-256-Digest: a2mSxefYTKRBkVVq7X+WqMya6RHkaOcNzgQ9onAn4EQ=++Name: res/drawable-xxxhdpi-v4/ic_backspace_white_24dp.png+SHA-256-Digest: HL0zle0b4YiE2Kh9+EY33z+R/K1fHrbWoVT6aOsJb3c=++Name: res/drawable-xxxhdpi-v4/ic_bubbles.png+SHA-256-Digest: 4flg7qAFp0LnxdqZt1Qpwid7MH3W4nl/KlcHeGTyd3o=++Name: res/drawable-xxxhdpi-v4/ic_bubbles_add.png+SHA-256-Digest: 27iW8Wk4jyVfhnu9/VIlB3MQoINgEuwK5cDw11FPGis=++Name: res/drawable-xxxhdpi-v4/ic_crop_free_white_24dp.png+SHA-256-Digest: J87Y09sn440GQaTLQhjGgBzqCp5uMRTi0T9eRpPa0Gw=++Name: res/drawable-xxxhdpi-v4/ic_done_white_24dp.png+SHA-256-Digest: nAx4WfOrv7a0NVWkdzWdNMhjEyeoSeO0QgGwfQnT+n8=++Name: res/drawable-xxxhdpi-v4/ic_launcher.png+SHA-256-Digest: DDO1pIKTYrm3+pzxkMGWJUiK31PZ8CMBIcVl+mNsDls=++Name: res/drawable-xxxhdpi-v4/ic_launcher_foreground.png+SHA-256-Digest: OC97ONRDKbKVtNim7ZRF8LFxUZen750vpGzsb4PHIcI=++Name: res/drawable-xxxhdpi-v4/ic_launcher_round.png+SHA-256-Digest: fev+tqeTduHBx9cAHjW7+u0DCe5kfnLCKGVI3PWImug=++Name: res/drawable-xxxhdpi-v4/ic_link_white_24dp.png+SHA-256-Digest: U6hJfyR5mCLCmj0NCEgoC4u7oUGefxzzjt7NP6zNNzE=++Name: res/drawable-xxxhdpi-v4/ic_lock_white_24dp.png+SHA-256-Digest: Oy6/6U9WH4DNQYGxbDyeSOD2/2lvh2YpjtVotVCFcKs=++Name: res/drawable-xxxhdpi-v4/ic_paynym_white_24dp.png+SHA-256-Digest: wf797bUkP9SUmuXaUoIJvYseQiAdyVj88nenBtAH4W4=++Name: res/drawable-xxxhdpi-v4/ic_receive_qr.png+SHA-256-Digest: E0/VE67b0PitIu8en3hNnUOoxS9SReGZKiLpF/1BJZM=++Name: res/drawable-xxxhdpi-v4/ic_samourai_and_tor_notif_icon.png+SHA-256-Digest: KNioGUDAJeX6V4j4576+5EbVTYuvz1/YJl94tchU43Y=++Name: res/drawable-xxxhdpi-v4/ic_samourai_deposit_24dp.png+SHA-256-Digest: PwHCNvfeeSQ8+iFc+3AVEo/qrn26ePkM+RFK5m5Th6M=++Name: res/drawable-xxxhdpi-v4/ic_samourai_logo_trans2x.png+SHA-256-Digest: ukk/iyg2pVtwL2m3Fj8ooAtVOSF0ZZGD2hhRQ2lGUo4=++Name: res/drawable-xxxhdpi-v4/ic_samourai_send_24dp.png+SHA-256-Digest: 1QOBUQ3ct3E+juvBI3pZNUeqYFxxdu2jRep8PIaOWMg=++Name: res/drawable-xxxhdpi-v4/ic_send_final.png+SHA-256-Digest: JxiY1btHwjn5jYOBTB1fpLYypmaATnfYB9riHaoGpRw=++Name: res/drawable-xxxhdpi-v4/ic_share_white_24dp.png+SHA-256-Digest: BSP0vrW15sktXkijfBZ6FE2Xp3X+tgCuLWjpE+id9XY=++Name: res/drawable-xxxhdpi-v4/ic_standard.png+SHA-256-Digest: QWAOsE/GTBnz31mqVRY/4OV3b7DFhqykS8jvI8g+giw=++Name: res/drawable/abc_btn_borderless_material.xml+SHA-256-Digest: rG21oW4YGUi91iMwOaO9GaYiEcz1DUYDdgfiWE2Odmc=++Name: res/drawable/abc_btn_check_material.xml+SHA-256-Digest: b4caChaNk2l4U1G2h1OXu4wnTQP9wJYwF0OzHWUQgwA=++Name: res/drawable/abc_btn_default_mtrl_shape.xml+SHA-256-Digest: oR/dQMRB9YpC2KMq7O9lOEAFzVGAnC0NEibYw9q7l4E=++Name: res/drawable/abc_btn_radio_material.xml+SHA-256-Digest: monPbATjX65gVdX8TBLJtn84WtjJ48nmWuPoO9BozVc=++Name: res/drawable/abc_cab_background_internal_bg.xml+SHA-256-Digest: eZewiJYmo9U+B9Vs88R5WrQt9njD1iZcGGDAav/vAt8=++Name: res/drawable/abc_cab_background_top_material.xml+SHA-256-Digest: HW14lQHwLJG8g5rkOXeJ+oiyVw1qMlCsSM49e2Zptes=++Name: res/drawable/abc_dialog_material_background.xml+SHA-256-Digest: fcRqTb7KKhuWsiQ2iBZTchArAo7zbclMmUqPhHYiHUc=++Name: res/drawable/abc_ic_ab_back_material.xml+SHA-256-Digest: UcMDmNCsUhFzomDAnbSPqG70VkuSPxrIzouPB9RpHhE=++Name: res/drawable/abc_ic_arrow_drop_right_black_24dp.xml+SHA-256-Digest: g7J7l4rnKNhRKYvigmyJnbgfru3mbv5w6Fh1I/qR2v8=++Name: res/drawable/abc_ic_clear_material.xml+SHA-256-Digest: mY7uFSLZ34ZTNSEivjKwAFOAAD4z6+lJ/PhYMXZ9neQ=++Name: res/drawable/abc_ic_go_search_api_material.xml+SHA-256-Digest: pNr8WXzeyXPQD8QsSGRYP7DjmtbNfN9YmEYhMasiRZ0=++Name: res/drawable/abc_ic_menu_overflow_material.xml+SHA-256-Digest: 9F7dwIyFLx4enbwlbdgvHuq11Z07b/yeNG+Amuzwo1g=++Name: res/drawable/abc_ic_search_api_material.xml+SHA-256-Digest: 7h0hR7A+80ZVvVO2dCQuZdOF/441ceamuTL2wriwDjc=++Name: res/drawable/abc_ic_voice_search_api_material.xml+SHA-256-Digest: GwaqN8vFJzHIOoo9WaAJhGmLd/obIkkNDY8MPTwZecc=++Name: res/drawable/abc_item_background_holo_dark.xml+SHA-256-Digest: TcF85YibhQRp5061RI1WcEtahcpKYWetmk/U9ocKhx4=++Name: res/drawable/abc_item_background_holo_light.xml+SHA-256-Digest: VN/olLPpjXR1RIfQ2Wj7WHnnE7/uUigDh92rnaOoXTU=++Name: res/drawable/abc_list_selector_background_transition_holo_dark.x+ ml+SHA-256-Digest: bz2kstePChPS8CODX5kQ6IQvER6ek1vqWFzu+QGdei0=++Name: res/drawable/abc_list_selector_background_transition_holo_light.+ xml+SHA-256-Digest: Ie+Z5iCE0g0pmcx7HpyHP03dSojjiC4ktDyQnWYGdkc=++Name: res/drawable/abc_list_selector_holo_dark.xml+SHA-256-Digest: PiLxj73Dd17jkK4F8FEcuU9EWfYvUdAd35kVN+p3E+k=++Name: res/drawable/abc_list_selector_holo_light.xml+SHA-256-Digest: glJndKHvrTTVh1AgMKuXs0D3eVOCsiM44jvt6r1wSjk=++Name: res/drawable/abc_ratingbar_indicator_material.xml+SHA-256-Digest: 3nveUVNEMv+Iv3qT3d5dAHBiJ4Wg6CfxW4DvaJL5jwg=++Name: res/drawable/abc_ratingbar_material.xml+SHA-256-Digest: 2Ml+7EbzTAdox693zuCtCvMLHZgu09ZLsuPURP1yRpc=++Name: res/drawable/abc_ratingbar_small_material.xml+SHA-256-Digest: HGenJybTg9tQ+jDOk0tqf0ZsTKWF6HFFex5VXxNMmcI=++Name: res/drawable/abc_seekbar_thumb_material.xml+SHA-256-Digest: JSOz/HFkV0P3IPs1qVQ2ynwOsLeSiOb+shYD6UgZ8aY=++Name: res/drawable/abc_seekbar_tick_mark_material.xml+SHA-256-Digest: Jy4qrRuGw1DPCzzYru+BG9CUmdBPz3tjfl5rnPUeMzg=++Name: res/drawable/abc_seekbar_track_material.xml+SHA-256-Digest: DQMhzJHB9SShxT9ykHA8tWfYbbdcI3aqFd5ldxChdrU=++Name: res/drawable/abc_spinner_textfield_background_material.xml+SHA-256-Digest: NO+6ocgFwFhFJYGd47RR3JlqKKPlxk0iRLF82W8EGPg=++Name: res/drawable/abc_switch_thumb_material.xml+SHA-256-Digest: rvdwqXcOrfefXIB4sgsGUWICAyepZAfPiVdM8RIalPE=++Name: res/drawable/abc_tab_indicator_material.xml+SHA-256-Digest: wCJ6+6r7IiGqtfSDU0l73HoSAj8XVJ3b3IYPxZA8rUw=++Name: res/drawable/abc_text_cursor_material.xml+SHA-256-Digest: ARUIuq4F68311+AToGWWYY1H7iMWb/+C01LItHbS1M4=++Name: res/drawable/abc_textfield_search_material.xml+SHA-256-Digest: 9ojP723HcxwkAEM+MalQ8o+ZMljOcAoY3fBmjNWS1jQ=++Name: res/drawable/abc_vector_test.xml+SHA-256-Digest: CuU+jKXpUUvWtnS4eVg0zIiJrUtkv8K9DH3HEjMtqhE=++Name: res/drawable/alert_round.xml+SHA-256-Digest: oRHo2/Xm3bAhdyFeCfUVsjc/H7qtGa/M5Bd22To35uI=++Name: res/drawable/animated_check_vd.xml+SHA-256-Digest: QezkZMWLO+KilsD7MISfFvrVNVIJ2vGbV09+ubwREdI=++Name: res/drawable/border_button2_shape.xml+SHA-256-Digest: TN2jqznQv5u3bmL6p8wM2jFCrZQMBgUsS1BQ6TCVXR8=++Name: res/drawable/border_button_rounded_shape.xml+SHA-256-Digest: txfnT3y2Oa9FAaLSKebE6L1Yg+uD1mRTosROZ+P50zM=++Name: res/drawable/border_button_rounded_transparent_shape.xml+SHA-256-Digest: Wna7FseELtXO2p4Xo5oh+PiMVU8agnsHarkjxTFelQk=++Name: res/drawable/border_button_shape.xml+SHA-256-Digest: 7zVdmJfABPa3qGZ4UMnOj6ikQfUdlpcsX6d4BF5cB4U=++Name: res/drawable/border_round_button_light.xml+SHA-256-Digest: bh+Qp9ZWeIpt9asrjn86KGgyBzvM02T+eMLWH93lzzw=++Name: res/drawable/button_blue.xml+SHA-256-Digest: 6Vnh8q2Sfm0RXUU9zxxQ09q2jKa3G8R8Uj58NYLDJ38=++Name: res/drawable/button_dark.xml+SHA-256-Digest: rC1Y1PAuJHp/9b+bIjSK4AfXI7GGRmo9h9n0V9ZMW/k=++Name: res/drawable/button_green.xml+SHA-256-Digest: ZjU+6ZRUQLdWCvlBwEomGoJroiD+TBZ6z2Wp4b46QHI=++Name: res/drawable/circle_dot_white.xml+SHA-256-Digest: kUSBAyeRM16dnxuT+k6sG/+w9CQ4Xh2SHRJDZoxUnRM=++Name: res/drawable/circle_shape.xml+SHA-256-Digest: ntkgBI4bjgem8qSeggAoYShRomXHNf5G+NMSWRO0y2Q=++Name: res/drawable/cycle_progress.xml+SHA-256-Digest: rVtv1mbDB6vX6eBb4WmOyNGSX9/TZzacpVrRCN0Z+g8=++Name: res/drawable/cycle_selector_btn_normal.xml+SHA-256-Digest: ZyS5EFhXldMUZWs9FBNOhVAVkin8GFzfxastvGKN73U=++Name: res/drawable/cycle_selector_btn_pressed.xml+SHA-256-Digest: dj986UQtcZz2lUvWKmpDelJmLPiD7mNfyO02wm8jkIc=++Name: res/drawable/cycle_selector_button_bg.xml+SHA-256-Digest: snLXGycS/+BTsnISowLJmMhbqISdqvO1+3HSkNiljk4=++Name: res/drawable/design_fab_background.xml+SHA-256-Digest: z4pq/ez4HTlzV/IQoMhCo4RedXjDE2Bbmongq8fiSug=++Name: res/drawable/design_snackbar_background.xml+SHA-256-Digest: YwEbHbgJYk5wCDtJ17Y2/lYsDRV6Yb/vPP9ac5ySMXA=++Name: res/drawable/disabled_grey_button.xml+SHA-256-Digest: MV7ioy6hLBXpIsmRjAIvPLZ6f+GJVdP7jUzbrOAOwPM=++Name: res/drawable/divider.xml+SHA-256-Digest: X2Zg0K/JHH5+WJUfTSmgaiCSFHVXJCYoqOPNIe8eAMQ=++Name: res/drawable/divider_grey.xml+SHA-256-Digest: kJI7ZxcIcQcIFLmf8MuI8ddxA5DBmqezUPVNhzFlVKA=++Name: res/drawable/dojobox.png+SHA-256-Digest: zXCC8RrKuYIyf+LAKXUW0yfI2wz1MO9YjDyFS+6RqNQ=++Name: res/drawable/fab_label_background.xml+SHA-256-Digest: dIV+TWc5+wMG7wUp5F1hhC13jSSZ0/kwJNeDMl+YU+o=++Name: res/drawable/ic_action_account_circle.xml+SHA-256-Digest: JI6dYXq6e2X7G6lumIbXkT4rqaLs1FKXTETDJhSWPQU=++Name: res/drawable/ic_add_bubble.xml+SHA-256-Digest: VatAZHtbVncfPM59N8fmISoALXzu/c+scYYS5MjwsD0=++Name: res/drawable/ic_add_bubble_green.xml+SHA-256-Digest: iDNk+B4kNiYtIR+Lov2EG+VhAxcuJvbICk/pBtSFxV8=++Name: res/drawable/ic_add_white_24dp.xml+SHA-256-Digest: g1+mremIS5bT/5qn33dnh/h4uBUcXHsIHJNL2oiveP0=++Name: res/drawable/ic_check_circle_24dp.xml+SHA-256-Digest: TbOoBe2U/AHto7e+fpipGgx/TgGqI4nap3qGcU1NJuw=++Name: res/drawable/ic_check_white_24dp.xml+SHA-256-Digest: oipSijdIhCAxpIlNeOeDEh5JFOBvutDbm1QF+RRWAsQ=++Name: res/drawable/ic_check_white_82dp.xml+SHA-256-Digest: ckeAkCYuSZeTnjwSIch5QfFa9CX9/ywEQxvyNc8oUdo=++Name: res/drawable/ic_chevron_right_white_24dp.xml+SHA-256-Digest: XbTVFrZeWtKKhY+uEYGD/TVDHlJ01ydxdt1zmRJGD/Q=++Name: res/drawable/ic_circle_white_24dp.xml+SHA-256-Digest: B31k9O5qqjilRrz5HbbFgMuCybsV9Uq6+j3CUDVVz7A=++Name: res/drawable/ic_close_white_24dp.xml+SHA-256-Digest: yr/aa7gB+GqdJX3DYZ4OMy+m8olSp3ewjEsoRrT24lc=++Name: res/drawable/ic_code_scanner_auto_focus_off.xml+SHA-256-Digest: mBeMNNwUVty4CGf+RXjOtZUaVu8pB7fIEE/Njc7Ttcg=++Name: res/drawable/ic_code_scanner_auto_focus_on.xml+SHA-256-Digest: YoshMgq4zUaXwPJij9pr+SAsADdYOS++bcxtuK0A+2s=++Name: res/drawable/ic_code_scanner_flash_off.xml+SHA-256-Digest: mbEIYaNxagG/mzjtbvDf6jQeVPzMIFJ/Lvn5YuKS+dY=++Name: res/drawable/ic_code_scanner_flash_on.xml+SHA-256-Digest: /7LUnI/9JzdfrkLLe07qiTJDvGJgkI6KCbb69kAswkg=++Name: res/drawable/ic_dialpad_white_24dp.xml+SHA-256-Digest: QjhLN5AqzyeUqX5yq8scaXZ6jjReJLqMHjbILisaeos=++Name: res/drawable/ic_explore_black_24dp.xml+SHA-256-Digest: lVz63mfCXYRiEF+HExXPKEiEL0FAHBdo+lVZnR/ETxA=++Name: res/drawable/ic_flash_black.xml+SHA-256-Digest: ZdJmOeeTx7erEchey0CHk2TC/6u8MAqv0bVRSvcPHOU=++Name: res/drawable/ic_group.xml+SHA-256-Digest: Du+hxf5YeyF2DNFXnUzskUzRsHxKBAphjujKzJ6WXno=++Name: res/drawable/ic_insert_chart_black_24dp.xml+SHA-256-Digest: N9+R4bW6emZ1ha7pu0acrjehg0o90uy7dH/M2i3nZ/w=++Name: res/drawable/ic_loyalty_whie_24dp.xml+SHA-256-Digest: zcvVRzzeH3Whj4GXP3GlqIEodgr8lDs23Pc9fv1cnc0=++Name: res/drawable/ic_more_vert_white_24dp.xml+SHA-256-Digest: HatmwKqIjN3L1W/zy+Sr6MJRxUij2p/MpBZh+JU8cwM=++Name: res/drawable/ic_navigate_before_white_24dp.xml+SHA-256-Digest: 10TJP0F6zy+gar8zUnX7CImrWxC/EEdSD/E0RG4zLWM=++Name: res/drawable/ic_navigate_next_white_24dp.xml+SHA-256-Digest: meNP3C2H8UCJ2dZuWjV1ukdX9vSLg0/ztTs4GPUqJ/0=++Name: res/drawable/ic_network_check_black_24dp.xml+SHA-256-Digest: 3cASeMqRe2beITpxKGtWM5TEgLGNWTB8NPBMPCfqs3I=++Name: res/drawable/ic_note_black_24dp.xml+SHA-256-Digest: /8SU+KxPzefkwFpg+W3CGevbttxAy+GCTmQwXvdWhdI=++Name: res/drawable/ic_person_add_24dp.xml+SHA-256-Digest: L4w/TuV2aIaImXW4iWS8zVj/Lm43QHUDlTeyNTuXOGw=++Name: res/drawable/ic_pool.xml+SHA-256-Digest: vlySgLYoR+nR9Omy0xgIASosSJZCkeRDyff8jDNbEdo=++Name: res/drawable/ic_samourai_logo_toolbar.xml+SHA-256-Digest: RfOpb76DV7jhYIfWgV4AQH8el2VJyX+TJXNsDvrDPYI=++Name: res/drawable/ic_search_white_24dp.xml+SHA-256-Digest: vOhKeu4hASQYU8JDiI1MtrywlnDGSOc/nkxo+xdYEoM=++Name: res/drawable/ic_security_white_24dp.xml+SHA-256-Digest: EcFVQrvOZARbjXdzTNZPzGqLUwlQQtna/VqgDuhGpi8=++Name: res/drawable/ic_settings_applications_white_24dp.xml+SHA-256-Digest: QehR7tW+qz8t1s1CA1SrKLheGGadAQ6qDubsiYNb/4A=++Name: res/drawable/ic_signal_cellular_connected_no_internet.xml+SHA-256-Digest: fw+eXFWIQVL7lbngfUFF4xp/8KIZg4IXM3U6N8ObBz0=++Name: res/drawable/ic_stars_black_24dp.xml+SHA-256-Digest: sd3zP3rF+XVPSn93RFsAhDFSXLGl8TlArWfqvxxxDyE=++Name: res/drawable/ic_supercharge.xml+SHA-256-Digest: cTij0oTpqJ1amKCj+lWKlV3lwclIhzlc3qjeGqIjGU8=++Name: res/drawable/ic_timer_white_24dp.xml+SHA-256-Digest: TUMTWBrIKSRZk5dCSMBLYOEESDulb4KlqAwHZu8I9g8=++Name: res/drawable/ic_verified_user_white_24dp.xml+SHA-256-Digest: IpQid1wbtvhWKUvV/S9W/nHXjo8KHZBoaPBOFzevtHQ=++Name: res/drawable/ic_whirlpool.xml+SHA-256-Digest: EXZQrSal9N7Il7QEFbEJZ/icsA5DdoseyIt3+WE7BaY=++Name: res/drawable/incoming_tx_green.xml+SHA-256-Digest: umNvmNMMwCl4tDaGUrc7Mf1bs10J2fikw1SrK6JOmrE=++Name: res/drawable/keypad_rectangle_shape.xml+SHA-256-Digest: 01CKxY69zUS4+AbYKaNg0N1UKfJD2aj8PW/nV6x5BTU=++Name: res/drawable/launch_screen.xml+SHA-256-Digest: 5LpZj+lII1Wxeoh/uUTCDCArK4d78db4YrCPyPx2POU=++Name: res/drawable/list_divider.xml+SHA-256-Digest: OTyMliOTAjaRjei5u5CTGiJxuSpQCiAfI24Xz+8mBzA=++Name: res/drawable/navigation_empty_icon.xml+SHA-256-Digest: iB6ORIG4l3wHQR8jwauin73IRGbHuh+06f7Tz9Jf6H0=++Name: res/drawable/notification_bg.xml+SHA-256-Digest: /GEezBlwjZXL4S4SOX8AZtDtxgTCRe0/kKvv1/iMM0k=++Name: res/drawable/notification_bg_low.xml+SHA-256-Digest: +MgmcYyKURuBkWrKHodO/0PD3kf/uw4f+GHZBnHSjbM=++Name: res/drawable/notification_icon_background.xml+SHA-256-Digest: 1s3axc3i3lDo1L/l08Z5p2I+d4eRhbmdqcgyExr8dl0=++Name: res/drawable/notification_tile_bg.xml+SHA-256-Digest: 1hnfxInDSz8YwavcWdqWa0dG+fyqipzpppho6hjIS78=++Name: res/drawable/out_going_tx_whtie_arrow.xml+SHA-256-Digest: 22a0RvNd6qKa0KqJOJgo++o5rWbcC8Rl5NR2dFSgr8Q=++Name: res/drawable/pager_indicator_dot.xml+SHA-256-Digest: 9NR7S2zZqS+b1APp91B8IjeLCDMsloDLa8olvu0GO5E=++Name: res/drawable/paynym.png+SHA-256-Digest: shNT33Bk8fXPpjOwroCw3LnuuXfMnr1+9bNOd9TBzuQ=++Name: res/drawable/recovery_word_bg.xml+SHA-256-Digest: e7fjaYYr2TC/+0prMCWxwf3JErk75ijpdhPhKiDPCyE=++Name: res/drawable/recovery_word_number_bg.xml+SHA-256-Digest: eXGzhZyYaU7S88f067bSUSY8MjnWAjQGX67CH1qTw2Y=++Name: res/drawable/ripple_initial_blue.xml+SHA-256-Digest: a1fDIRYwpsCIGER8VguA1FM4LiHgnozpIsf1WgIojHg=++Name: res/drawable/ripple_initial_green.xml+SHA-256-Digest: VoCxeCGZXMxQW3NGL0hX6Jjre60Mub1CFIZl7BZOwQU=++Name: res/drawable/ripple_initial_red.xml+SHA-256-Digest: qJB2Gzsm38yf7EFxtSNZpkKZ6V17wmLtcipyIIkhdJ4=++Name: res/drawable/ripple_tx_status.xml+SHA-256-Digest: 8m5lfmmG0E8pDM0+pMpJ6Q7+fIM4vBFUFU2+s7lsjwE=++Name: res/drawable/round_border_grey_bg.xml+SHA-256-Digest: wz6cbst8vTIILlnr2lvxXI0j5QslMDXmci+lygP5PJQ=++Name: res/drawable/round_rectangle_token_word_background.xml+SHA-256-Digest: y7zs2B9z5gwxmhlGM/viW7ukC10L1/rd/gOhuygcfiM=++Name: res/drawable/rounded_rectangle_black.xml+SHA-256-Digest: dowK5w6nXjAngVD0yfwsTcSQqECHY0JSSgJ/M1X1414=++Name: res/drawable/rounded_rectangle_green.xml+SHA-256-Digest: E12kH5N/Y9OhAA74ZHaqU98FFFrQvjsnL/L10DDkHrA=++Name: res/drawable/rounded_rectangle_pinview.xml+SHA-256-Digest: fiVG2+o85CbUESZjnEOpINtvRjgZ24UO6kG4evkNKzM=++Name: res/drawable/samourai_splash.png+SHA-256-Digest: M/JYKLDbrwsNdmOc3jsOwrb+X+hZhT8TQIVO8CBaNmU=++Name: res/drawable/seekbar_blue_bg.xml+SHA-256-Digest: cPeGNBnY9BJpKidNpv5cWzVag+TyBTssiTEAJoh4vAs=++Name: res/drawable/seekbar_blue_thumb.xml+SHA-256-Digest: MRqUwkhM3GsfNMIwaniO10p8OSfazECt3fJJFOUHJT4=++Name: res/drawable/seekbar_green_bg.xml+SHA-256-Digest: o5hskEQFmMNPyL/u7Hz6Z5X9SUnGeYYF2pmuJCPK0qY=++Name: res/drawable/seekbar_green_thumb.xml+SHA-256-Digest: eaN5AgRYoSU4Qbx+vccBoa8khze/rCGTUeI8i1icTkw=++Name: res/drawable/tooltip_frame_dark.xml+SHA-256-Digest: jo5vWMwdIX2kssimNgOcoxGofbz9eRis01iW6ztknSI=++Name: res/drawable/tooltip_frame_light.xml+SHA-256-Digest: PNyiV7MZu0pYxgkeEJSW0XK6y6+1cbVRsfjWmyQvC48=++Name: res/drawable/tor_off.png+SHA-256-Digest: 0AHrlx/t+FMgX9k5/K9UP+RWW5B4rbNCNaRDXx+1qH4=++Name: res/drawable/tor_on.png+SHA-256-Digest: IQ//GGwIdxNAufhZ0s+1GoEHKZi/53ISw/aoUsHlvzg=++Name: res/drawable/tx_ripples.xml+SHA-256-Digest: wPWMBrSyB8f5eK0/8fXFAQv2I7UNg1eB06wo02++ZoY=++Name: res/drawable/whirlpool_btn_blue.xml+SHA-256-Digest: GD+kezDbT0Zpt2zhF3/F1fKBw2NxLp/hDgHX899Mp78=++Name: res/drawable/whirlpool_btn_inactive.xml+SHA-256-Digest: rdUBpYBPHzms1xlZZZg47yGqo88b/30MO1Tn1DMbhAQ=++Name: res/font-v22/roboto_mono.xml+SHA-256-Digest: DEZT6//a0ZHHvw9WDJlTpvTooKWXpf1DPk6fbn2iQhI=++Name: res/font/roboto_mono.xml+SHA-256-Digest: Jq91dwUz0ZlNTnZHo9/DYATC4vUyAPBb5el95xnJPrY=++Name: res/font/roboto_mono_italic.ttf+SHA-256-Digest: Pb3XA7CaF65MFtDZJl61gjSUFssLo8d7OD8p3m4rJ8U=++Name: res/font/roboto_mono_regular.ttf+SHA-256-Digest: x6stc899U4+s4IvN3pW5KM5gmpcCN8iBHKPHYFnIuy8=++Name: res/layout-sw600dp-v13/design_layout_snackbar.xml+SHA-256-Digest: DygIeI6TLKLSUz5jNGOY+NFQoykylhLt6Z0fNWAC5lM=++Name: res/layout-v21/notification_action.xml+SHA-256-Digest: 6W5qxa9chTUJVpte9C6vCQ1HEouROC0OZSHlXTnwSqA=++Name: res/layout-v21/notification_action_tombstone.xml+SHA-256-Digest: 8ly2HLrFJkFV/qAF1xpEskQEbMOc3RmcZQ3Hw5tYSu0=++Name: res/layout-v21/notification_template_custom_big.xml+SHA-256-Digest: SlEkXy7BaqLN/6vXBdiphZ9JYM1cg2CA5U+twlplCFs=++Name: res/layout-v21/notification_template_icon_group.xml+SHA-256-Digest: kiCQ7wrKx03pb9cguPb21cEsHixfzNZUzIloLxAkGvg=++Name: res/layout-v22/abc_alert_dialog_button_bar_material.xml+SHA-256-Digest: iC74JP13Asszo2crdfCDccczh7aebO8jEpvHxZEttr4=++Name: res/layout-v22/activity_network_dashboard.xml+SHA-256-Digest: 8il2guKNuc61HLr/uDwDnae2zX3dnI0d/vxwnqMxVdY=++Name: res/layout-v26/abc_screen_toolbar.xml+SHA-256-Digest: X8kC6eZmceCViBd4ucL5BtPLk49Xw4opYJbswJBNHJE=++Name: res/layout/abc_action_bar_title_item.xml+SHA-256-Digest: 8R97Yafa1wv+IrBtpG9o5QH6gEoj1hxId/4OVn7ysl0=++Name: res/layout/abc_action_bar_up_container.xml+SHA-256-Digest: KxIkwLwSCwfZ9b9aYVYz/i6EWo14j5q0lpmUSXQ/Th0=++Name: res/layout/abc_action_bar_view_list_nav_layout.xml+SHA-256-Digest: egOSAg9Yv3dr7k5IOnmc+YziTrc1kTA0n6M0WYgKXm4=++Name: res/layout/abc_action_menu_item_layout.xml+SHA-256-Digest: zSG24lHSbCL5Cnh9XjrZPdpawzQr9EEG3w4NgzXfJSs=++Name: res/layout/abc_action_menu_layout.xml+SHA-256-Digest: 4FTmWV6fkEitBXh/k85pzVt1o+tTV43Bbdzw5Qkpcx0=++Name: res/layout/abc_action_mode_bar.xml+SHA-256-Digest: TMLoJWkNGyHfCIO0BShNUv5aDqE6G9Kt/dyw+v9aQvo=++Name: res/layout/abc_action_mode_close_item_material.xml+SHA-256-Digest: oKWwH7VlQuwFdyXgsYh1o5EuFdYdJHpUvdtFeDvHAoE=++Name: res/layout/abc_activity_chooser_view.xml+SHA-256-Digest: 22gSOFHnd6CVO/9MkvEfRsqpXTHSnVSSRcCp94KZot0=++Name: res/layout/abc_activity_chooser_view_list_item.xml+SHA-256-Digest: qBYtqIF7lv9oHW03U7UeJnqtJlQfPoZSkvuHO64zYEo=++Name: res/layout/abc_alert_dialog_button_bar_material.xml+SHA-256-Digest: GLJ66zUYTNcSGXcWgkfirp5qdLdI5X/q0UKoSGVseq4=++Name: res/layout/abc_alert_dialog_material.xml+SHA-256-Digest: 6w9IXI9Bf/6m2xZHFYxocz1lBsAHZRiH/yQfQ9s1SfE=++Name: res/layout/abc_alert_dialog_title_material.xml+SHA-256-Digest: vOFYjm3adanQNCcfk+al1qTm4/+kWnzxgJfJYDTX+aE=++Name: res/layout/abc_dialog_title_material.xml+SHA-256-Digest: 9FOmhEsZPFpHexCthsFVNh+mcCVNANwKqobCCb8O78o=++Name: res/layout/abc_expanded_menu_layout.xml+SHA-256-Digest: HJT06vSuNpH7vMRKne2Zscc5NXnKThC6qOS83ZrdVrQ=++Name: res/layout/abc_list_menu_item_checkbox.xml+SHA-256-Digest: +z81DmV86xtfgJeewDlHyHHRO96L2EP0+vs9n+z7Tww=++Name: res/layout/abc_list_menu_item_icon.xml+SHA-256-Digest: zGFV3zDeyq3FSFKROXKdYY+4G1tQrm7eI3NXzYXJz7I=++Name: res/layout/abc_list_menu_item_layout.xml+SHA-256-Digest: lG0em8QE8CDveEuxcCICMW6/rgEs2MqwHg010Amj5s0=++Name: res/layout/abc_list_menu_item_radio.xml+SHA-256-Digest: Ho+U+OoyfxvjbOV+eHFdLOLmW9jnwkX7KhgY2aZ5nP8=++Name: res/layout/abc_popup_menu_header_item_layout.xml+SHA-256-Digest: y+G6GihDM9+f9q3jZR8zzDj7nRQ/zvl4dBkpFH9cZzE=++Name: res/layout/abc_popup_menu_item_layout.xml+SHA-256-Digest: jdsLd846KgtSzOtjsRqDQQtmaZec1Y8+smpVbVhj4j4=++Name: res/layout/abc_screen_content_include.xml+SHA-256-Digest: FFGaI5cAFHolHvX2v/m+sd9tlAgz+g8q7PRFqDxxuQ4=++Name: res/layout/abc_screen_simple.xml+SHA-256-Digest: bJkY7Az/zsbecc3Q6dxjLqeeb1mOcfNNozk8ZkzXgCQ=++Name: res/layout/abc_screen_simple_overlay_action_mode.xml+SHA-256-Digest: wqunrpHedl3ilQp+R60IdHG91E3iVD6pv1JGLs0Aqxc=++Name: res/layout/abc_screen_toolbar.xml+SHA-256-Digest: AgdpVgAID2aZteP+DJoN5DrPpAhvUNZPAo2+gvyntyY=++Name: res/layout/abc_search_dropdown_item_icons_2line.xml+SHA-256-Digest: 6t+IEm4BarsgkrcJ0zNYacL5Ojm/G5uAum/CXNCZzuc=++Name: res/layout/abc_search_view.xml+SHA-256-Digest: Mpb475R0Dj1TrrkkDn2Uo78pV5w8Vcz5Am6IU62Bjn8=++Name: res/layout/abc_select_dialog_material.xml+SHA-256-Digest: cTVzGPlGnVTnJILiHRciiyfFxvIniTl8wHUDNwEQAMM=++Name: res/layout/activity_about.xml+SHA-256-Digest: JziSRp1H5tvuks5i+DxGIq8TjUWwgs/dpAqkxnUZmwk=++Name: res/layout/activity_add_paynym.xml+SHA-256-Digest: AOKGRDDsKAgu24vm9yQwTgrsYkhXZ4Xj5bcDfPykPSE=++Name: res/layout/activity_address_calc.xml+SHA-256-Digest: rsr28oSwUVv6zRc3DGkvHltN/8Th1c0UKC3otiQ54hs=++Name: res/layout/activity_balance.xml+SHA-256-Digest: YYuE5EuA9yH8WrUxYJ72MmQXr+wakO8KceYpklaEJ5M=++Name: res/layout/activity_batchsend.xml+SHA-256-Digest: AzqAIzumFwCfSIXczHxIYtrRC90Y6VX10z1eji82nFg=++Name: res/layout/activity_choose_cycle_type.xml+SHA-256-Digest: /O6v5vkX1RuCm94gvtE2zjJVjzpyblQwyXeHzuqK19o=++Name: res/layout/activity_create_wallet.xml+SHA-256-Digest: 7jga81bqtd6cwe/ACznS8qSXQFu3wSRpfxM2n2AC+64=++Name: res/layout/activity_cycle.xml+SHA-256-Digest: a59Uur1QzOvcNcH2PA1Hvhap90q3d8hRobRglMW9Z/8=++Name: res/layout/activity_fee.xml+SHA-256-Digest: ct3TU5AF5ImWr2zUNaYMiLXyyBuzwbCsPHrLQTLGv1E=++Name: res/layout/activity_landing.xml+SHA-256-Digest: Y8dSll2mMSFG2KiWw8yxJduselGlPFmNjxmp/X6AwZg=++Name: res/layout/activity_main.xml+SHA-256-Digest: fYnZoDyZAc/5dxMDu7EPcE+XUenTTGzt8m3LyAwRhgo=++Name: res/layout/activity_manual_stone_wall.xml+SHA-256-Digest: nw/EhmXKpsAXleCYV+BJgvghCplGC3RP/ghv882Pzik=++Name: res/layout/activity_network_dashboard.xml+SHA-256-Digest: uqwXCm5jMGUPjqdiLg3UMFuBfhsTLzCLNNiZA+L+02I=++Name: res/layout/activity_new_whirlpool_cycle.xml+SHA-256-Digest: lf+JAmBosTL7b5Gffsyhkta7gotHKz2wqXr5qkGl6ZU=++Name: res/layout/activity_opendime.xml+SHA-256-Digest: x/g+jYgJtah1T2BSxoih1Cg6Ha8VzkJT81XuN56av74=++Name: res/layout/activity_pay_nym_home.xml+SHA-256-Digest: X1Wd19i+vozSPTxtHGBG1IcxgaeQABp9Yywl2C4q/cU=++Name: res/layout/activity_paynym_calc.xml+SHA-256-Digest: /eMO8LxfVmv16Ov//F+g43Ne+Z6YJuuiEw9BhMGbRiw=++Name: res/layout/activity_paynym_claim.xml+SHA-256-Digest: 5dc07DFylkI50YTLszZGyYSichJZIN4sw0ovgLvYdb0=++Name: res/layout/activity_paynym_details.xml+SHA-256-Digest: cRbz2kYXUEe1YVmFnwYyTZkwM4QrF7E1La1ZrdK+J20=++Name: res/layout/activity_pinentry.xml+SHA-256-Digest: lEYrzTDkJklOOj2lQTs3SFYCju6kAc6JjFwRSNBsDPs=++Name: res/layout/activity_receive.xml+SHA-256-Digest: riag0exjJA13ZNy7YaS32hoKrW63MvHfkKBnTQH3JU8=++Name: res/layout/activity_recovery_words.xml+SHA-256-Digest: wKtWk1NjGXUsD6/muZWham4EIXnUR2PbiunRvtsj+70=++Name: res/layout/activity_replay_protection.xml+SHA-256-Digest: mNR2UeVBDm5uB6bzQgE4StBGWazZUwjUAzUaNd8gpPc=++Name: res/layout/activity_restore_wallet_activity.xml+SHA-256-Digest: 7jga81bqtd6cwe/ACznS8qSXQFu3wSRpfxM2n2AC+64=++Name: res/layout/activity_ricochet.xml+SHA-256-Digest: FMq0zOcYig4pOstRERYYkTCGBFljWhXCqBuI4tbUIkw=++Name: res/layout/activity_send.xml+SHA-256-Digest: d03A/qUUSE2YSjYqoesXUBiDNiG+wVdM0K8yte3WHOw=++Name: res/layout/activity_tx.xml+SHA-256-Digest: gEE2yhWhfiRUqNK4fugYuEDJE8nitQOCrbSqX2HBCGY=++Name: res/layout/activity_tx_anim_ui.xml+SHA-256-Digest: iIM6UREDVPWy6KKf3Ktw604rgF5PrEBvJZ+a1GgAOVw=++Name: res/layout/activity_tx_privacy_details.xml+SHA-256-Digest: xI/lzj9okk0xLMH5nS4kG4DYZbmPEpc5SP/v0tQOUO8=++Name: res/layout/activity_utxo.xml+SHA-256-Digest: QujD4iNAc7APaTFGRfdKTcCuMElUw7yJmLSyahnrV/M=++Name: res/layout/activity_utxos.xml+SHA-256-Digest: 69NpW65wYiSx/boZ9tEfPryqSgmfe9383sanSJsmWv4=++Name: res/layout/activity_whirlpool_main.xml+SHA-256-Digest: XbjcXk4B4E4ChmRhVq77olU8CCunokuINOEWwTsQxPA=++Name: res/layout/alert_bis_layout.xml+SHA-256-Digest: lulAYQnvLIoFUehYsOVyL8YZn/COU8w6G1BU4wcHuyo=++Name: res/layout/alert_layout.xml+SHA-256-Digest: JNw3zMLgnw7anZNreldfwGQ6N110b7m100h5eeuBx1M=++Name: res/layout/balance_layout.xml+SHA-256-Digest: P6heYQU0dgtsxnyWwSAoZyt5xJYGnSF72KeCcRX7+Ws=++Name: res/layout/bip47_add.xml+SHA-256-Digest: 3sbnlhuCk5RpuKNk56Ip6gGMNMH84EyxrQ4IS9k9VF0=++Name: res/layout/bip47_entry.xml+SHA-256-Digest: AAKZJiqxDHybrRDK4HiEChwbavygc7ZjZcXH2DePl6c=++Name: res/layout/bip47_list.xml+SHA-256-Digest: g4tA19FPf5TYOQBUnR4uKkV7NhPOmKpBu9uGJ2Q13aw=++Name: res/layout/bip47_show_qr.xml+SHA-256-Digest: ag46RyVvUaYl3ngATug681jYfV1B2YgXsvDF/UgSzhk=++Name: res/layout/bottomsheet_camera.xml+SHA-256-Digest: YBxpZuL1fVgzeCiUOHWO7SKBpNXwwe0d151zkYC1KS0=++Name: res/layout/bottomsheet_dojo_configure.xml+SHA-256-Digest: 98ABkD66i9LmJwN/40fVnuPjZWThoknhr8+zvbIqOSc=++Name: res/layout/bottomsheet_edit_paynym.xml+SHA-256-Digest: pMwOZiANQYbGQ0tMTHrGLjTEigonNTj5YNb2eEDpKCg=++Name: res/layout/bottomsheet_paynym_qr.xml+SHA-256-Digest: 1um+qpJfja+s5MssayUqMIWnxkwHh8+6TAIKxiaMPac=++Name: res/layout/cahoots_broadcast_details.xml+SHA-256-Digest: 7XxcweFU4XoqiR1m0vVCu8kI4NyiyTwmjyjgnX3ZvbM=++Name: res/layout/cahoots_qr_dialog_layout.xml+SHA-256-Digest: Hqet8pWSCXYM3mDbOMjyrYI2TDH1UL6DbsWt/BLkfVg=++Name: res/layout/cahoots_step_view.xml+SHA-256-Digest: x5ba1EVp4H7+avCT+mjItjH11pQdtP0pPckEy+VsuLo=++Name: res/layout/circle_step_item.xml+SHA-256-Digest: zLFoC0xQzqfdX9OHakDl/R4e4X9BNo+xqFMAQGHh8rI=++Name: res/layout/content_cycle.xml+SHA-256-Digest: cAfqlj9oQLGZvheMTai0amoUCnQ6T19sLiNR9MVGFgE=++Name: res/layout/cycle_header.xml+SHA-256-Digest: TwEBOLL2mc/AS8UlzIlVRVwDgOI7XW+ESxV8ijErjeY=++Name: res/layout/cycle_item.xml+SHA-256-Digest: oi5kG2lDFcPjkpOjM67tb/FBtkTJM8R6B6TjL2LdEwk=++Name: res/layout/design_bottom_navigation_item.xml+SHA-256-Digest: rVRmFJGaPSw3eGxxmYkOkvtUSUNpi7uhUV4WtXUTsUU=++Name: res/layout/design_bottom_sheet_dialog.xml+SHA-256-Digest: tu/GJgzqCwXGaI1dc02APYEqcaDbKgd2AKvv2c7Byp0=++Name: res/layout/design_layout_snackbar.xml+SHA-256-Digest: jo4kPn7F690cNAUeGOYZHolGwRozZfOiI91FOI+tMkA=++Name: res/layout/design_layout_snackbar_include.xml+SHA-256-Digest: Cg4Gy14Ya0tfoXafg9cWaxbv1i9BU6eUNjyNkX45ac0=++Name: res/layout/design_layout_tab_icon.xml+SHA-256-Digest: mpLZKvZHT9p8CMcdttxxTKba+qu2poYfM0gfdtP4Mk0=++Name: res/layout/design_layout_tab_text.xml+SHA-256-Digest: cC9kGw1yLNoH5z4Jb+rTdCOME2AE7TP10dAIJiUhQ9M=++Name: res/layout/design_menu_item_action_area.xml+SHA-256-Digest: 3qtw5q9gufYOn3/rDgEhSP5TbOFaXvaf41Ba+qIbWf8=++Name: res/layout/design_navigation_item.xml+SHA-256-Digest: ZbSQ4fOCxyK5x1RjmFD2TfzrEtuhbbjvnJP9pcsBWk0=++Name: res/layout/design_navigation_item_header.xml+SHA-256-Digest: 7fExbZKdFLJ6zNUjzMIQ8CRRRaHkIQt3l9MPPePUBXc=++Name: res/layout/design_navigation_item_separator.xml+SHA-256-Digest: J4n5m2iSKAlcsfFi14IKqaKs2z2K3jKG+w6PPWaT46w=++Name: res/layout/design_navigation_item_subheader.xml+SHA-256-Digest: zEpSq/LZ6xsdGBVTE0KzQd3jQ4D+JXygI9KwFoTHRBQ=++Name: res/layout/design_navigation_menu.xml+SHA-256-Digest: xXDXdUeJ2Eo1/qmCIn21WHX/+kA57RB84f6koL/IoKk=++Name: res/layout/design_navigation_menu_item.xml+SHA-256-Digest: H1z8Oa6pxxBQvtfKywElRMxVmawKLt4jteCNuIsimKA=++Name: res/layout/design_text_input_password_icon.xml+SHA-256-Digest: kcvRKBwRsdZWoWjsYygHypE/Tzrrw3/5LntC4m+wqE4=++Name: res/layout/dojo_connect_dialog.xml+SHA-256-Digest: NFWp5rkiwxURR2EjZBqmJwrDz3n01c51eNJRMdn3oEw=++Name: res/layout/fee_selector.xml+SHA-256-Digest: GbhE3RR6Y3DYoyP7DIsktEe05odfQpW8PBlE1vHjyAU=++Name: res/layout/fee_template.xml+SHA-256-Digest: U7N7c0tDmvBlaVyFnvWCHG6IMIsOLK8pysr2uN9jLUk=++Name: res/layout/fragment_choose_cahoots_type.xml+SHA-256-Digest: OZttvAqSYJi2HZE5iRK72M/t87fyGZxWYXVuZMkYaNM=++Name: res/layout/fragment_choose_pools.xml+SHA-256-Digest: R8Iaewa3CiUafNN2hCLgdiEFk0oIA4GIaFavfndDD9Y=++Name: res/layout/fragment_choose_utxos.xml+SHA-256-Digest: ZTPrZ7Ic2wG/Oo8c6ikSA1XEmojNP7nlkryo7Bp8WZU=++Name: res/layout/fragment_import_wallet.xml+SHA-256-Digest: VTDYavl0gc/TVv0d3FU1erE1GIR0pf6Fy+Xe7wW0KFk=++Name: res/layout/fragment_password_entry.xml+SHA-256-Digest: NDdbSkdEF3RjqhDBHk3tdiXn5dGJzxKH7q1fUhwK3M0=++Name: res/layout/fragment_paynymselectmodal_list_dialog.xml+SHA-256-Digest: uVgH28co4nTTLfJLzow/eqnpPJON8IIJtHnXz53NK+I=++Name: res/layout/fragment_paynymselectmodal_list_item.xml+SHA-256-Digest: D7im5SdDGN81p27F+MKlBAi1HyP7ibjrk1sAer7ADWA=++Name: res/layout/fragment_pin_entry.xml+SHA-256-Digest: 5Dz9DpC4yq/MUU1XiAIAYn9hl3s12Q5msgOnAGiKBuo=++Name: res/layout/fragment_whirlpool_review.xml+SHA-256-Digest: dvtOLC1QJMVNlCn04b+1WS8XYgXCj5a8/GK7mT2yhkM=++Name: res/layout/item_coin.xml+SHA-256-Digest: XPQsBaufHzXkRcRKztdLrVB7Qw9MmlZ3rpWH5D7cAxk=++Name: res/layout/item_cycle_tx.xml+SHA-256-Digest: YQmXZe/Rlzmw8vHCGik2N0UQW2iqC3vS/1QxG1WS/7M=++Name: res/layout/item_pool.xml+SHA-256-Digest: DIWxF7oBXQKvC3UZ/HC4ozdPnaZZiDTuVwfLM22KbMQ=++Name: res/layout/keypad_view.xml+SHA-256-Digest: 01cxNI4241/wwxkmyuW6KRTQXhaOrmnnm5NV/0XxdGo=++Name: res/layout/landing_restore_dialog.xml+SHA-256-Digest: SaQbuWMqi3s2c4XZ1wWJTmPc7m4/69tCHDbYTU+Aub0=++Name: res/layout/network_item.xml+SHA-256-Digest: 5Hmdx7tX0FVAjYjOqAiGa3Ttt8XVAQ0kTjMYMsGloU0=++Name: res/layout/notification_media_action.xml+SHA-256-Digest: 5DHUBLDO3StmKAsnNPNgWqd4oSug0umqt6G5Wl0BCGI=++Name: res/layout/notification_media_cancel_action.xml+SHA-256-Digest: dfbyC6A/Ar82oscZ0g7ArnYcRSw8lfd/ftfAyPJwBKs=++Name: res/layout/notification_template_big_media.xml+SHA-256-Digest: ArKn9Ia2VP16gBe/6f4EQcrEp8/mbI4f2GVezY7tXZw=++Name: res/layout/notification_template_big_media_custom.xml+SHA-256-Digest: 9vegcMUwwhLMZ0b7dT2JJdH4+/l6GmHvKEBvjYCnCAU=++Name: res/layout/notification_template_big_media_narrow.xml+SHA-256-Digest: bNs6k52CBbK/0PP1TflBy7kEr0Rj71WsTvJEGgmmDfE=++Name: res/layout/notification_template_big_media_narrow_custom.xml+SHA-256-Digest: 7Sa1chG1vfYxnHBEOadxexqF6S/W8HP/BeqcvUeJhJQ=++Name: res/layout/notification_template_lines_media.xml+SHA-256-Digest: R0ZYKzANyjjz8DKOQIzzgOvZuMQd4oT7TPoMACKVmLw=++Name: res/layout/notification_template_media.xml+SHA-256-Digest: 4tvBjobngkO2wFcLcCrcfzwmOgQvp/gAT8bByWlU/zQ=++Name: res/layout/notification_template_media_custom.xml+SHA-256-Digest: 6oKD2Ti0SGzsRLBMdB8gAz1vgklIqUdZ4lOYt87rDsg=++Name: res/layout/notification_template_part_chronometer.xml+SHA-256-Digest: 1mgCDVJCpXGFdArej80hJJqmFj/x+WiL8zIj041rzp8=++Name: res/layout/notification_template_part_time.xml+SHA-256-Digest: EKxdJ1yMmadSEV7UtQsDtTB+LSI0tFJfgP6YOqow6mE=++Name: res/layout/paynym_account_list_fragment.xml+SHA-256-Digest: yi/XGUaIMpzHOen+nSMYj773kdpV5YpXBE6p5o+MRwY=++Name: res/layout/paynym_follow_dialog.xml+SHA-256-Digest: U9Gmy3QNH4YgpR4CRfwHOUHqy5TGPI71XbvSgN1rAGw=++Name: res/layout/paynym_list_item.xml+SHA-256-Digest: Mn8thzT9/6jmoc2I54RIBgXbnfJLWiuO8M8/jfmpGX4=++Name: res/layout/receive_advance_form_segment.xml+SHA-256-Digest: ZkapEk+dI6/3eFoBT6aQ+r+EXKsYASErvo7BtreV9ic=++Name: res/layout/replay_protection_progess_layout.xml+SHA-256-Digest: oEs9DdAZkglLzOm6mbQRL65dlMzlYum68GEyTTORnN0=++Name: res/layout/replay_protection_warning_layout.xml+SHA-256-Digest: nYjG7L7xTP4USu+A1ZZ7u2uNIzGYbheh19USVPJaGU8=++Name: res/layout/select_dialog_item_material.xml+SHA-256-Digest: V2XHyp7XZdpH/E8gWKOMSN1CjkOpgLhf9UNdUR16gGE=++Name: res/layout/select_dialog_multichoice_material.xml+SHA-256-Digest: xQ0cYjwdlQzTU+QECviIDK9nO8RbQaP//Ctn3upS+zE=++Name: res/layout/select_dialog_singlechoice_material.xml+SHA-256-Digest: 1dbyuOMO86zph1EQcLXCMbSh4viNB84MMLiqkk41UEU=++Name: res/layout/send_form_segment.xml+SHA-256-Digest: fYN3ONlkinYuKZnGoL5qwRTxYqiEKHy4ITzZ9Hayt/E=++Name: res/layout/send_template.xml+SHA-256-Digest: Kjgx9Ccdb57yHlGJhZb9d4kJYqg7A6BSsLTnG0NX8yk=++Name: res/layout/send_transaction.xml+SHA-256-Digest: RaLTbmPo329fWMjRm555B755r42p5NxNAbXsbpJi6Y4=++Name: res/layout/send_transaction_main_segment.xml+SHA-256-Digest: wDDssK+HFgv9YPsMH5+NufpnnL0g8Geq8v1eLaCMRC0=++Name: res/layout/send_transaction_review.xml+SHA-256-Digest: RNCNs41DcQJcB2JpgCQ5ZkR8uZgxB/X9RiolUNspsfM=++Name: res/layout/simple_list_item3.xml+SHA-256-Digest: LRsaEQjjkOhtTl6BFEWkcm5D7iUMa68oY7AcL3L0tv8=++Name: res/layout/support_simple_spinner_dropdown_item.xml+SHA-256-Digest: t5EaheQXiqXqYMv9vYZ/0vQ7wxoGYCiB4FuzrHFxZxc=++Name: res/layout/tooltip.xml+SHA-256-Digest: wpue33I7eJL7FbjrFb5dVBr4Oc3+LYavXcUDwY1ojIM=++Name: res/layout/tor_option_menu.xml+SHA-256-Digest: NTSLo1pmDCieXxqVeMZ2IPbwHhoJa+pkwJphSgaruME=++Name: res/layout/transaction_progress_view.xml+SHA-256-Digest: abyYyLYAhxi6SpGSB2x+hqz09pDxPV/MHSxLt6tt1fE=++Name: res/layout/tx_item_layout_.xml+SHA-256-Digest: c36XPojqAYKEAr0c/6ZC+lL3y3wq9s3RcARXUtu+u28=++Name: res/layout/tx_item_layout_paynym.xml+SHA-256-Digest: /WKZzy/1TpWSYAmbJ6PM+UR42AEB0U+DEqYmoDeUHcw=++Name: res/layout/tx_item_section_layout.xml+SHA-256-Digest: JZIxtlEMv6vtgzwGVXfR0/GH1iTJ3REysjfyMVsN5fc=++Name: res/layout/utxo_item_layout.xml+SHA-256-Digest: TjuFO94uVHyaDTn3rZ6E0R+3zb7OJ87vpR9LcUvFYbE=++Name: res/layout/whirlpool_cycles_list.xml+SHA-256-Digest: U5DtmnJSczA1UF3DfKO8o8tcyOTk2lcEnxZ8ZatIjds=++Name: res/layout/whirlpool_intro_item.xml+SHA-256-Digest: LrvTfVa//3t3P/R+N83mxSK0WkbVTxjOlkDcXZGxMWc=++Name: res/layout/whirlpool_stepper.xml+SHA-256-Digest: Pu3rrljKVzvaOGFcVmaIb+A3HBcBPJMY5ZljL1VGZuk=++Name: res/layout/widget_horizontal_stepsview.xml+SHA-256-Digest: WjDbkP55/3t5FA4SFmJcOYSWDlfNKwItnktRYpFADUs=++Name: res/layout/word_grid_item_view.xml+SHA-256-Digest: PvDY6G6zbyaOb+5XfXwFYpOX+h9Qt5ZxF+wajKrSxfg=++Name: res/menu/add_paynym_menu.xml+SHA-256-Digest: 3zi85GHzV6QgAdUvl4wKCAxlxbIhbPmQK7+Gjy225mc=++Name: res/menu/batch_menu.xml+SHA-256-Digest: sY0O276dbxru8y81JHOlxucDBnNpSga9V7FuQIZIfBM=++Name: res/menu/bip47_add.xml+SHA-256-Digest: 6Mjs0Hw8Mx04gW2XmRi5NzEz3Hpa4jm+/W3TrVgAO8g=++Name: res/menu/bip47_menu.xml+SHA-256-Digest: nNeJSOdqt0JCjx2fNIA2IIM4Vyu+ZgjaxPZPFFoEcYg=++Name: res/menu/bip47_menu_show_qr.xml+SHA-256-Digest: iBraokHflRi30GJF341jp4bbfVCSPDOchMFvvpYss6k=++Name: res/menu/landing_activity_menu.xml+SHA-256-Digest: z53NM4fvtAE+4Q7lzibN6Cz1yO8wETqwsFROiYMOTmY=++Name: res/menu/main.xml+SHA-256-Digest: p4980Z9HPZLPg6KhNQ/Cbeo5Lff5JiGWENgYmPOOk7g=++Name: res/menu/manual_stonewall_menu.xml+SHA-256-Digest: wvJwXH+aKlV6R4nZJRuUeYdmRrJnDvuujdf1CCvXu74=++Name: res/menu/menu_whirl_pool_main.xml+SHA-256-Digest: LAe6jSsAfNhqR8axNKTEiHybeh/86vo+B9kE2S/UERY=++Name: res/menu/opendime_menu.xml+SHA-256-Digest: EVvumR7Z96xylU1hvIieqY+se3/No5w8FsjCQB09SfY=++Name: res/menu/paynym_details_menu.xml+SHA-256-Digest: HjoKO/7q6uCH42A+rzEv2KCTYrBIxYAQRcr3llOQyE0=++Name: res/menu/receive_activity_menu.xml+SHA-256-Digest: HOljHAWnqfbMbkjm9sfePMA+dhRjfwd6kXQt/SsJ0c4=++Name: res/menu/ricochet.xml+SHA-256-Digest: kYsgnTB6MJzGWKBMRUGTqX79SlqA16oY7iRP7yFQC9E=++Name: res/menu/send_menu.xml+SHA-256-Digest: Mz8/fHUz9Y/WWW+MF+I2bR3zJGlIw/8o0L0uGZ5R1cc=++Name: res/menu/tx_details_menu.xml+SHA-256-Digest: p1S0GnyZXcPbU1kpA+UE7d+cm2eqUFVjPlWV3yFMuss=++Name: res/menu/utxo_menu.xml+SHA-256-Digest: ze3tEu+d7UtaorBMfHiyqSY5iJDRYoWxA95QmkWGX/o=++Name: res/menu/utxo_popup_menu.xml+SHA-256-Digest: JfJjURjfvN7D4BJCCQY0WTIVwXlEeqc6Yc6awe1T/yk=++Name: res/menu/whirlpool_cycle_detail_menu.xml+SHA-256-Digest: ELm4kTOeMtcwGPRxscHyqeWBY//YQo7dZvTYHpIgLi0=++Name: res/raw/cacerts+SHA-256-Digest: s7aSgrcmpZ2VIyXTva2Mq7kQxunN0sk7RfcEzvpfO6w=++Name: res/raw/debiancacerts.bks+SHA-256-Digest: NAXPj/ftSllY2z964/trBdiso8tA5xCbO68/2f9Omm0=++Name: res/xml/device_filter.xml+SHA-256-Digest: CjQEl/0DI+9m96aWFk6kDqoAlaga9lnhFRi+TVrTpxY=++Name: res/xml/provider_paths.xml+SHA-256-Digest: iDME9YAXMUznHbJEiIDf+ClkbIMHEB3tfDMlxdpvd68=++Name: res/xml/settings_networking.xml+SHA-256-Digest: 2VWPT3u5UwQxnrHbjo207mVVSoLHY0FRH/gdnpObbPA=++Name: res/xml/settings_other.xml+SHA-256-Digest: shayS7kzrWq8QEjDOWbSlApeORbujiUHOStGCSUs01E=++Name: res/xml/settings_prefs.xml+SHA-256-Digest: ySeoiLNXdOU3lOi79qgJ4W3AWi7vJt/ac1WcpF+r+2c=++Name: res/xml/settings_remote.xml+SHA-256-Digest: XJWTyQSlcNWm/hAfdm0JS5aTvA4LHIhtJIwcS0AMH1s=++Name: res/xml/settings_root.xml+SHA-256-Digest: DoZJJymCL5ojXcxV/OLvXEK7S2vMJdMQD9zax8oQujA=++Name: res/xml/settings_stealth.xml+SHA-256-Digest: MOR33ch+jpz2ofH2RvK2Bi8+YVr/BMoghyOck/KsCr8=++Name: res/xml/settings_troubleshoot.xml+SHA-256-Digest: KSzq9rMPMH9wJvjI1zAMOIpVCA6GM6YkzqZ0VtLZzAU=++Name: res/xml/settings_txs.xml+SHA-256-Digest: Zx2Tjx2bhx8BflaDmrDgc1lCOs+7woRAvJIUtT/x5QU=++Name: res/xml/settings_wallet.xml+SHA-256-Digest: FQZbr39ZPVMoeKjs2ylTTQ8w0feLhDupuwazYxeWW7M=++Name: resources.arsc+SHA-256-Digest: VklLivCt570+mVgepv3QeYOFcCEqcJnijMk5VdvaDUQ=+
├── smali_classes2/com/samourai/boltzmann/Boltzmann.smali
│ @@ -150,34 +150,52 @@
│      iget-object v2, p0, Lcom/samourai/boltzmann/Boltzmann;->txProcessor:Lcom/samourai/boltzmann/processor/TxProcessor;
│  
│      .line 45
│      invoke-virtual {v2, p1, p2, p3}, Lcom/samourai/boltzmann/processor/TxProcessor;->processTx(Lcom/samourai/boltzmann/beans/Txos;F[Lcom/samourai/boltzmann/linker/TxosLinkerOptionEnum;)Lcom/samourai/boltzmann/processor/TxProcessorResult;
│  
│      move-result-object p1
│  
│ +    .line 46+    new-instance p2, Lcom/samourai/boltzmann/beans/BoltzmannResult;++    invoke-direct {p2, p1}, Lcom/samourai/boltzmann/beans/BoltzmannResult;-><init>(Lcom/samourai/boltzmann/processor/TxProcessorResult;)V+
│      .line 47
│ +    invoke-virtual {p2}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->print()V++    .line 49+    sget-object p1, Ljava/lang/System;->out:Ljava/io/PrintStream;++    new-instance p3, Ljava/lang/StringBuilder;++    invoke-direct {p3}, Ljava/lang/StringBuilder;-><init>()V++    const-string v2, "Duration = "++    invoke-virtual {p3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+
│      invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
│  
│ -    move-result-wide p2+    move-result-wide v2
│  
│ -    sub-long/2addr p2, v0+    sub-long/2addr v2, v0
│  
│ -    const-wide/16 v0, 0x3e8+    invoke-virtual {p3, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    div-long/2addr p2, v0+    const-string v0, "ms"
│  
│ -    .line 48-    new-instance v0, Lcom/samourai/boltzmann/beans/BoltzmannResult;+    invoke-virtual {p3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-direct {v0, p2, p3, p1}, Lcom/samourai/boltzmann/beans/BoltzmannResult;-><init>(JLcom/samourai/boltzmann/processor/TxProcessorResult;)V+    invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    .line 49-    invoke-virtual {v0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->print()V+    move-result-object p3++    invoke-virtual {p1, p3}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    return-object v0+    return-object p2
│  .end method
│  
│  .method public process(Ljava/lang/String;)Lcom/samourai/boltzmann/beans/BoltzmannResult;
│      .locals 2
│      .annotation system Ldalvik/annotation/Throws;
│          value = {
│              Ljava/lang/Exception;
├── smali_classes2/com/samourai/boltzmann/utils/ListsUtils$2.smali
│ @@ -23,42 +23,42 @@
│  .field final synthetic val$copy:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│  
│  # direct methods
│  .method constructor <init>(Lit/unimi/dsi/fastutil/objects/ObjectBigList;Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;)V
│      .locals 0
│  
│ -    .line 144+    .line 137
│      iput-object p1, p0, Lcom/samourai/boltzmann/utils/ListsUtils$2;->val$copy:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      iput-object p2, p0, Lcom/samourai/boltzmann/utils/ListsUtils$2;->val$c:Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(J)V
│      .locals 1
│  
│ -    .line 147+    .line 140
│      iget-object v0, p0, Lcom/samourai/boltzmann/utils/ListsUtils$2;->val$copy:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      invoke-interface {v0, p1, p2}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, Lit/unimi/dsi/fastutil/ints/IntBigArrayBigList;
│  
│      invoke-virtual {p1}, Lit/unimi/dsi/fastutil/ints/IntBigArrayBigList;->clone()Lit/unimi/dsi/fastutil/ints/IntBigArrayBigList;
│  
│      move-result-object p1
│  
│ -    .line 148+    .line 141
│      iget-object p2, p0, Lcom/samourai/boltzmann/utils/ListsUtils$2;->val$c:Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;
│  
│      invoke-virtual {p2, p1}, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;->add(Ljava/lang/Object;)Z
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/utils/Utils.smali
│ @@ -2,545 +2,126 @@
│  .super Ljava/lang/Object;
│  .source "Utils.java"
│  
│  
│  # static fields
│  .field private static final BYTE_TO_MB:J = 0x100000L
│  
│ -.field private static final LOG_PROGRESS_FREQUENCY:I = 0x1e-
│  .field private static final log:Lorg/slf4j/Logger;
│  
│ -.field private static maxMemUsed:J--.field private static final progressLast:Ljava/util/Map;-    .annotation system Ldalvik/annotation/Signature;-        value = {-            "Ljava/util/Map<",-            "Ljava/lang/String;",-            "Lcom/samourai/boltzmann/utils/Progress;",-            ">;"-        }-    .end annotation-.end field--.field private static final progressResult:Ljava/util/List;-    .annotation system Ldalvik/annotation/Signature;-        value = {-            "Ljava/util/List<",-            "Lcom/samourai/boltzmann/utils/Progress;",-            ">;"-        }-    .end annotation-.end field-
│  
│  # direct methods
│  .method static constructor <clinit>()V
│ -    .locals 2+    .locals 1
│  
│ -    .line 8+    .line 7
│      const-class v0, Lcom/samourai/boltzmann/utils/Utils;
│  
│      invoke-static {v0}, Lorg/slf4j/LoggerFactory;->getLogger(Ljava/lang/Class;)Lorg/slf4j/Logger;
│  
│      move-result-object v0
│  
│      sput-object v0, Lcom/samourai/boltzmann/utils/Utils;->log:Lorg/slf4j/Logger;
│  
│ -    .line 12-    new-instance v0, Ljava/util/HashMap;--    invoke-direct {v0}, Ljava/util/HashMap;-><init>()V--    sput-object v0, Lcom/samourai/boltzmann/utils/Utils;->progressLast:Ljava/util/Map;--    .line 13-    new-instance v0, Ljava/util/LinkedList;--    invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V--    sput-object v0, Lcom/samourai/boltzmann/utils/Utils;->progressResult:Ljava/util/List;--    const-wide/16 v0, 0x0--    .line 15-    sput-wide v0, Lcom/samourai/boltzmann/utils/Utils;->maxMemUsed:J-
│      return-void
│  .end method
│  
│  .method public constructor <init>()V
│      .locals 0
│  
│ -    .line 7+    .line 6
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│ -.method public static duration(J)Ljava/lang/String;-    .locals 11--    .line 80-    new-instance v0, Ljava/lang/StringBuffer;--    invoke-direct {v0}, Ljava/lang/StringBuffer;-><init>()V--    const-wide/16 v1, 0x3c--    const-wide/16 v3, 0x0--    cmp-long v5, p0, v1--    if-ltz v5, :cond_2--    .line 85-    div-long v5, p0, v1--    long-to-double v5, v5--    invoke-static {v5, v6}, Ljava/lang/Math;->floor(D)D--    move-result-wide v5--    double-to-long v5, v5--    .line 86-    rem-long/2addr p0, v1--    cmp-long v7, v5, v1--    if-ltz v7, :cond_0--    .line 89-    div-long v7, v5, v1--    long-to-double v7, v7--    invoke-static {v7, v8}, Ljava/lang/Math;->floor(D)D--    move-result-wide v7--    double-to-long v7, v7--    .line 90-    rem-long/2addr v5, v1--    goto :goto_0--    :cond_0-    move-wide v7, v3--    :goto_0-    cmp-long v1, v7, v1--    if-ltz v1, :cond_1--    const-wide/16 v1, 0x18--    .line 94-    div-long v9, v7, v1--    long-to-double v9, v9--    invoke-static {v9, v10}, Ljava/lang/Math;->floor(D)D--    move-result-wide v9--    double-to-long v9, v9--    .line 95-    rem-long v1, v7, v1--    goto :goto_1--    :cond_1-    move-wide v9, v3--    move-wide v1, v7--    goto :goto_1--    :cond_2-    move-wide v1, v3--    move-wide v5, v1--    move-wide v9, v5--    :goto_1-    cmp-long v7, v9, v3--    if-lez v7, :cond_3--    .line 99-    new-instance v7, Ljava/lang/StringBuilder;--    invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V--    invoke-virtual {v7, v9, v10}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;--    const-string v8, "d"--    invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;--    move-result-object v7--    invoke-virtual {v0, v7}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;--    :cond_3-    cmp-long v7, v1, v3--    if-lez v7, :cond_4--    .line 102-    new-instance v7, Ljava/lang/StringBuilder;--    invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V--    invoke-virtual {v7, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;--    const-string v1, "h"--    invoke-virtual {v7, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;--    move-result-object v1--    invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;--    :cond_4-    cmp-long v1, v5, v3--    if-lez v1, :cond_5--    .line 105-    new-instance v1, Ljava/lang/StringBuilder;--    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V--    invoke-virtual {v1, v5, v6}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;--    const-string v2, "m"--    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;--    move-result-object v1--    invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;--    :cond_5-    cmp-long v1, p0, v3--    if-gtz v1, :cond_6--    .line 107-    invoke-virtual {v0}, Ljava/lang/StringBuffer;->length()I--    move-result v1--    if-nez v1, :cond_7--    .line 108-    :cond_6-    new-instance v1, Ljava/lang/StringBuilder;--    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V--    invoke-virtual {v1, p0, p1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;--    const-string p0, "s"--    invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;--    move-result-object p0--    invoke-virtual {v0, p0}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;--    .line 110-    :cond_7-    invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;--    move-result-object p0--    return-object p0-.end method--.method public static getMaxMemUsed()J-    .locals 2--    .line 76-    sget-wide v0, Lcom/samourai/boltzmann/utils/Utils;->maxMemUsed:J--    return-wide v0-.end method--.method public static getProgressResult()Ljava/util/List;+.method public static logMemory()V
│      .locals 1
│ -    .annotation system Ldalvik/annotation/Signature;-        value = {-            "()",-            "Ljava/util/List<",-            "Lcom/samourai/boltzmann/utils/Progress;",-            ">;"-        }-    .end annotation
│  
│ -    .line 72-    sget-object v0, Lcom/samourai/boltzmann/utils/Utils;->progressResult:Ljava/util/List;+    const/4 v0, 0x0
│  
│ -    return-object v0+    .line 11+    invoke-static {v0}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V++    return-void
│  .end method
│  
│  .method public static logMemory(Ljava/lang/String;)V
│ -    .locals 8+    .locals 9
│  
│ -    .line 18+    .line 15
│      sget-object v0, Lcom/samourai/boltzmann/utils/Utils;->log:Lorg/slf4j/Logger;
│  
│      invoke-interface {v0}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│      move-result v0
│  
│      if-eqz v0, :cond_1
│  
│ -    .line 19+    .line 16
│      invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
│  
│      move-result-object v0
│  
│ -    .line 20-    invoke-virtual {v0}, Ljava/lang/Runtime;->freeMemory()J+    .line 18+    invoke-virtual {v0}, Ljava/lang/Runtime;->totalMemory()J
│  
│      move-result-wide v1
│  
│      const-wide/32 v3, 0x100000
│  
│      div-long/2addr v1, v3
│  
│ -    .line 21-    sget-object v5, Lcom/samourai/boltzmann/utils/Utils;->log:Lorg/slf4j/Logger;--    new-instance v6, Ljava/lang/StringBuilder;--    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V--    invoke-virtual {v6, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;--    const-string v7, "M free - "--    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    if-eqz p0, :cond_0--    goto :goto_0--    :cond_0-    const-string p0, ""--    :goto_0-    invoke-virtual {v6, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;--    move-result-object p0--    invoke-interface {v5, p0}, Lorg/slf4j/Logger;->debug(Ljava/lang/String;)V--    .line 24-    invoke-virtual {v0}, Ljava/lang/Runtime;->totalMemory()J+    .line 19+    invoke-virtual {v0}, Ljava/lang/Runtime;->freeMemory()J
│  
│      move-result-wide v5
│  
│      div-long/2addr v5, v3
│  
│ -    sub-long/2addr v5, v1--    .line 26-    sget-wide v0, Lcom/samourai/boltzmann/utils/Utils;->maxMemUsed:J--    cmp-long p0, v5, v0--    if-lez p0, :cond_1--    .line 27-    sput-wide v5, Lcom/samourai/boltzmann/utils/Utils;->maxMemUsed:J--    :cond_1-    return-void-.end method--.method public static logProgress(Ljava/lang/String;JJ)V-    .locals 6--    const-string v5, ""--    move-object v0, p0--    move-wide v1, p1--    move-wide v3, p3--    .line 33-    invoke-static/range {v0 .. v5}, Lcom/samourai/boltzmann/utils/Utils;->logProgress(Ljava/lang/String;JJLjava/lang/String;)V--    return-void-.end method--.method public static logProgress(Ljava/lang/String;JJLjava/lang/String;)V-    .locals 8--    .line 37-    sget-object v0, Lcom/samourai/boltzmann/utils/Utils;->progressLast:Ljava/util/Map;--    invoke-interface {v0, p0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;--    move-result-object v0--    check-cast v0, Lcom/samourai/boltzmann/utils/Progress;--    .line 38-    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J--    move-result-wide v1--    if-eqz v0, :cond_0--    .line 39-    invoke-virtual {v0}, Lcom/samourai/boltzmann/utils/Progress;->getLast()J--    move-result-wide v3--    sub-long/2addr v1, v3+    sub-long v3, v1, v5
│  
│ -    const-wide/16 v3, 0x7530+    const-wide/16 v7, 0x64
│  
│ -    cmp-long v1, v1, v3+    mul-long v3, v3, v7
│  
│ -    if-gez v1, :cond_0+    .line 21+    div-long/2addr v3, v1
│  
│ -    return-void+    .line 22+    sget-object v0, Lcom/samourai/boltzmann/utils/Utils;->log:Lorg/slf4j/Logger;
│  
│ -    :cond_0-    if-nez v0, :cond_1+    new-instance v1, Ljava/lang/StringBuilder;
│  
│ -    .line 46-    new-instance v0, Lcom/samourai/boltzmann/utils/Progress;+    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    move-object v2, v0+    invoke-virtual {v1, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    move-object v3, p0+    const-string v2, "% mem used ("
│  
│ -    move-wide v4, p1+    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    move-wide v6, p3+    invoke-virtual {v1, v5, v6}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    invoke-direct/range {v2 .. v7}, Lcom/samourai/boltzmann/utils/Progress;-><init>(Ljava/lang/String;JJ)V+    const-string v2, "MB free) "
│  
│ -    .line 47-    sget-object p1, Lcom/samourai/boltzmann/utils/Utils;->progressLast:Ljava/util/Map;+    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-interface {p1, p0, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+    if-eqz p0, :cond_0
│  
│      goto :goto_0
│  
│ -    .line 49-    :cond_1-    invoke-virtual {v0, p1, p2, p3, p4}, Lcom/samourai/boltzmann/utils/Progress;->update(JJ)V+    :cond_0+    const-string p0, ""
│  
│ -    .line 53
│      :goto_0
│ -    sget-object p0, Lcom/samourai/boltzmann/utils/Utils;->log:Lorg/slf4j/Logger;--    invoke-interface {p0}, Lorg/slf4j/Logger;->isDebugEnabled()Z--    move-result p0--    if-eqz p0, :cond_2--    .line 54-    new-instance p0, Ljava/lang/StringBuilder;--    invoke-direct {p0}, Ljava/lang/StringBuilder;-><init>()V--    invoke-virtual {v0}, Lcom/samourai/boltzmann/utils/Progress;->getProgress()Ljava/lang/String;--    move-result-object p1--    invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    const-string p1, " "--    invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {p0, p5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;--    move-result-object p0--    invoke-static {p0}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V--    :cond_2-    return-void-.end method--.method public static logProgressDone(Ljava/lang/String;J)V-    .locals 1--    const-string v0, ""--    .line 59-    invoke-static {p0, p1, p2, v0}, Lcom/samourai/boltzmann/utils/Utils;->logProgressDone(Ljava/lang/String;JLjava/lang/String;)V--    return-void-.end method--.method public static logProgressDone(Ljava/lang/String;JLjava/lang/String;)V-    .locals 1--    .line 63-    sget-object v0, Lcom/samourai/boltzmann/utils/Utils;->progressLast:Ljava/util/Map;--    invoke-interface {v0, p0}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;--    move-result-object p0--    check-cast p0, Lcom/samourai/boltzmann/utils/Progress;--    .line 64-    sget-object v0, Lcom/samourai/boltzmann/utils/Utils;->progressResult:Ljava/util/List;--    invoke-interface {v0, p0}, Ljava/util/List;->add(Ljava/lang/Object;)Z--    .line 65-    sget-object v0, Lcom/samourai/boltzmann/utils/Utils;->log:Lorg/slf4j/Logger;--    invoke-interface {v0}, Lorg/slf4j/Logger;->isDebugEnabled()Z--    move-result v0--    if-eqz v0, :cond_0--    .line 66-    invoke-static {p1, p2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;--    move-result-object p1+    invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {p0, p1, p3}, Lcom/samourai/boltzmann/utils/Progress;->done(Ljava/lang/Long;Ljava/lang/String;)Ljava/lang/String;+    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object p0
│  
│ -    .line 67-    invoke-static {p0}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V+    invoke-interface {v0, p0}, Lorg/slf4j/Logger;->debug(Ljava/lang/String;)V
│  
│ -    :cond_0+    :cond_1
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/utils/ListsUtils$1.smali
│ @@ -26,26 +26,26 @@
│  .end annotation
│  
│  
│  # direct methods
│  .method constructor <init>()V
│      .locals 0
│  
│ -    .line 106+    .line 99
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public bridge synthetic compare(Ljava/lang/Object;Ljava/lang/Object;)I
│      .locals 0
│  
│ -    .line 106+    .line 99
│      check-cast p1, Ljava/util/Map$Entry;
│  
│      check-cast p2, Ljava/util/Map$Entry;
│  
│      invoke-virtual {p0, p1, p2}, Lcom/samourai/boltzmann/utils/ListsUtils$1;->compare(Ljava/util/Map$Entry;Ljava/util/Map$Entry;)I
│  
│      move-result p1
│ @@ -61,15 +61,15 @@
│              "Ljava/util/Map$Entry<",
│              "TK;TV;>;",
│              "Ljava/util/Map$Entry<",
│              "TK;TV;>;)I"
│          }
│      .end annotation
│  
│ -    .line 109+    .line 102
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava/lang/Comparable;
│  
│      invoke-interface {p2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
├── smali_classes2/com/samourai/boltzmann/utils/ListsUtils.smali
│ @@ -1,36 +1,17 @@
│  .class public Lcom/samourai/boltzmann/utils/ListsUtils;
│  .super Ljava/lang/Object;
│  .source "ListsUtils.java"
│  
│  
│ -# static fields-.field private static final log:Lorg/slf4j/Logger;--
│  # direct methods
│ -.method static constructor <clinit>()V-    .locals 1--    .line 18-    const-class v0, Lcom/samourai/boltzmann/utils/ListsUtils;--    invoke-static {v0}, Lorg/slf4j/LoggerFactory;->getLogger(Ljava/lang/Class;)Lorg/slf4j/Logger;--    move-result-object v0--    sput-object v0, Lcom/samourai/boltzmann/utils/ListsUtils;->log:Lorg/slf4j/Logger;--    return-void-.end method-
│  .method public constructor <init>()V
│      .locals 0
│  
│ -    .line 17+    .line 15
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  .method public static clone(Lit/unimi/dsi/fastutil/objects/ObjectBigList;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│      .locals 5
│ @@ -42,44 +23,44 @@
│              ">;)",
│              "Lit/unimi/dsi/fastutil/objects/ObjectBigList<",
│              "Lit/unimi/dsi/fastutil/ints/IntBigList;",
│              ">;"
│          }
│      .end annotation
│  
│ -    .line 139+    .line 132
│      new-instance v0, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;
│  
│      invoke-interface {p0}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->size64()J
│  
│      move-result-wide v1
│  
│      invoke-direct {v0, v1, v2}, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;-><init>(J)V
│  
│ -    .line 141+    .line 134
│      invoke-interface {p0}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->size64()J
│  
│      move-result-wide v1
│  
│      const-wide/16 v3, 0x0
│  
│      invoke-static {v3, v4, v1, v2}, Ljava8/util/stream/LongStreams;->range(JJ)Ljava8/util/stream/LongStream;
│  
│      move-result-object v1
│  
│ -    .line 142+    .line 135
│      invoke-interface {v1}, Ljava8/util/stream/LongStream;->parallel()Ljava8/util/stream/LongStream;
│  
│      move-result-object v1
│  
│      new-instance v2, Lcom/samourai/boltzmann/utils/ListsUtils$2;
│  
│      invoke-direct {v2, p0, v0}, Lcom/samourai/boltzmann/utils/ListsUtils$2;-><init>(Lit/unimi/dsi/fastutil/objects/ObjectBigList;Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;)V
│  
│ -    .line 143+    .line 136
│      invoke-interface {v1, v2}, Ljava8/util/stream/LongStream;->forEachOrdered(Ljava8/util/function/LongConsumer;)V
│  
│      return-object v0
│  .end method
│  
│  .method public static comparingByValue()Ljava/util/Comparator;
│      .locals 1
│ @@ -92,15 +73,15 @@
│              "-TV;>;>()",
│              "Ljava/util/Comparator<",
│              "Ljava/util/Map$Entry<",
│              "TK;TV;>;>;"
│          }
│      .end annotation
│  
│ -    .line 106+    .line 99
│      new-instance v0, Lcom/samourai/boltzmann/utils/ListsUtils$1;
│  
│      invoke-direct {v0}, Lcom/samourai/boltzmann/utils/ListsUtils$1;-><init>()V
│  
│      return-object v0
│  .end method
│  
│ @@ -111,15 +92,15 @@
│              "([[I",
│              "Lit/unimi/dsi/fastutil/objects/ObjectBigList<",
│              "Lit/unimi/dsi/fastutil/ints/IntBigList;",
│              ">;)Z"
│          }
│      .end annotation
│  
│ -    .line 161+    .line 154
│      array-length v0, p0
│  
│      int-to-long v0, v0
│  
│      invoke-interface {p1}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->size64()J
│  
│      move-result-wide v2
│ @@ -131,21 +112,21 @@
│      if-eqz v0, :cond_0
│  
│      return v4
│  
│      :cond_0
│      const/4 v0, 0x0
│  
│ -    .line 164+    .line 157
│      :goto_0
│      array-length v1, p0
│  
│      if-ge v0, v1, :cond_2
│  
│ -    .line 165+    .line 158
│      aget-object v1, p0, v0
│  
│      int-to-long v2, v0
│  
│      invoke-interface {p1, v2, v3}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object v2
│ @@ -183,15 +164,15 @@
│          value = {
│              "([[J",
│              "Lit/unimi/dsi/fastutil/objects/ObjectBigList<",
│              "[J>;)Z"
│          }
│      .end annotation
│  
│ -    .line 173+    .line 166
│      array-length v0, p0
│  
│      int-to-long v0, v0
│  
│      invoke-interface {p1}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->size64()J
│  
│      move-result-wide v2
│ @@ -203,21 +184,21 @@
│      if-eqz v0, :cond_0
│  
│      return v4
│  
│      :cond_0
│      const/4 v0, 0x0
│  
│ -    .line 176+    .line 169
│      :goto_0
│      array-length v1, p0
│  
│      if-ge v0, v1, :cond_2
│  
│ -    .line 177+    .line 170
│      aget-object v1, p0, v0
│  
│      int-to-long v2, v0
│  
│      invoke-interface {p1, v2, v3}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object v2
│ @@ -258,15 +239,15 @@
│      const-wide/16 v0, 0x0
│  
│      :goto_0
│      cmp-long v2, v0, p2
│  
│      if-gez v2, :cond_0
│  
│ -    .line 156+    .line 149
│      invoke-interface {p0, p1}, Lit/unimi/dsi/fastutil/BigList;->add(Ljava/lang/Object;)Z
│  
│      const-wide/16 v2, 0x1
│  
│      add-long/2addr v0, v2
│  
│      goto :goto_0
│ @@ -287,15 +268,15 @@
│              "Ljava/util/List<",
│              "Ljava/util/Set<",
│              "Ljava/lang/String;",
│              ">;>;"
│          }
│      .end annotation
│  
│ -    .line 28+    .line 24
│      new-instance v0, Ljava/util/LinkedList;
│  
│      invoke-direct {v0, p0}, Ljava/util/LinkedList;-><init>(Ljava/util/Collection;)V
│  
│      const/4 p0, 0x1
│  
│      move-object v1, v0
│ @@ -303,40 +284,40 @@
│      const/4 v0, 0x1
│  
│      :goto_0
│      if-eqz v0, :cond_3
│  
│      const/4 v0, 0x0
│  
│ -    .line 32+    .line 28
│      new-instance v2, Ljava/util/LinkedList;
│  
│      invoke-direct {v2}, Ljava/util/LinkedList;-><init>()V
│  
│ -    .line 33+    .line 29
│      :goto_1
│      invoke-virtual {v1}, Ljava/util/LinkedList;->isEmpty()Z
│  
│      move-result v3
│  
│      if-nez v3, :cond_2
│  
│ -    .line 34+    .line 30
│      invoke-virtual {v1}, Ljava/util/LinkedList;->poll()Ljava/lang/Object;
│  
│      move-result-object v3
│  
│      check-cast v3, Ljava/util/Set;
│  
│ -    .line 36+    .line 32
│      new-instance v4, Ljava/util/LinkedList;
│  
│      invoke-direct {v4}, Ljava/util/LinkedList;-><init>()V
│  
│ -    .line 37+    .line 33
│      invoke-virtual {v1}, Ljava/util/LinkedList;->iterator()Ljava/util/Iterator;
│  
│      move-result-object v1
│  
│      :goto_2
│      invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
│  
│ @@ -346,35 +327,35 @@
│  
│      invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
│  
│      move-result-object v5
│  
│      check-cast v5, Ljava/util/Set;
│  
│ -    .line 38+    .line 34
│      invoke-static {v3, v5}, Ljava/util/Collections;->disjoint(Ljava/util/Collection;Ljava/util/Collection;)Z
│  
│      move-result v6
│  
│      if-eqz v6, :cond_0
│  
│ -    .line 39+    .line 35
│      invoke-virtual {v4, v5}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
│  
│      goto :goto_2
│  
│ -    .line 42+    .line 38
│      :cond_0
│      invoke-interface {v3, v5}, Ljava/util/Set;->addAll(Ljava/util/Collection;)Z
│  
│      const/4 v0, 0x1
│  
│      goto :goto_2
│  
│ -    .line 45+    .line 41
│      :cond_1
│      invoke-virtual {v2, v3}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
│  
│      move-object v1, v4
│  
│      goto :goto_1
│  
│ @@ -386,20 +367,20 @@
│      :cond_3
│      return-object v1
│  .end method
│  
│  .method public static newIntBigList(JI)Lit/unimi/dsi/fastutil/ints/IntBigList;
│      .locals 1
│  
│ -    .line 133+    .line 126
│      new-instance v0, Lit/unimi/dsi/fastutil/ints/IntBigArrayBigList;
│  
│      invoke-direct {v0, p0, p1}, Lit/unimi/dsi/fastutil/ints/IntBigArrayBigList;-><init>(J)V
│  
│ -    .line 134+    .line 127
│      invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
│  
│      move-result-object p2
│  
│      invoke-static {v0, p2, p0, p1}, Lcom/samourai/boltzmann/utils/ListsUtils;->fill(Lit/unimi/dsi/fastutil/BigList;Ljava/lang/Object;J)V
│  
│      return-object v0
│ @@ -412,66 +393,66 @@
│              "(JJI)",
│              "Lit/unimi/dsi/fastutil/objects/ObjectBigList<",
│              "Lit/unimi/dsi/fastutil/ints/IntBigList;",
│              ">;"
│          }
│      .end annotation
│  
│ -    .line 124+    .line 117
│      new-instance v0, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;
│  
│      invoke-direct {v0, p0, p1}, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;-><init>(J)V
│  
│      const-wide/16 v1, 0x0
│  
│      :goto_0
│      cmp-long v3, v1, p0
│  
│      if-gez v3, :cond_0
│  
│ -    .line 126+    .line 119
│      invoke-static {p2, p3, p4}, Lcom/samourai/boltzmann/utils/ListsUtils;->newIntBigList(JI)Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      move-result-object v3
│  
│ -    .line 127+    .line 120
│      invoke-interface {v0, v3}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->add(Ljava/lang/Object;)Z
│  
│      const-wide/16 v3, 0x1
│  
│      add-long/2addr v1, v3
│  
│      goto :goto_0
│  
│      :cond_0
│      return-object v0
│  .end method
│  
│  .method public static powerSet([Ljava/lang/Long;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│ -    .locals 19+    .locals 17
│      .annotation system Ldalvik/annotation/Signature;
│          value = {
│              "([",
│              "Ljava/lang/Long;",
│              ")",
│              "Lit/unimi/dsi/fastutil/objects/ObjectBigList<",
│              "[J>;"
│          }
│      .end annotation
│  
│      move-object/from16 v0, p0
│  
│ -    .line 69+    .line 65
│      array-length v1, v0
│  
│      const-wide/16 v2, 0x1
│  
│      shl-long v4, v2, v1
│  
│ -    .line 70+    .line 66
│      new-instance v1, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;
│  
│      invoke-direct {v1, v4, v5}, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;-><init>(J)V
│  
│      const/4 v6, 0x0
│  
│      const/4 v7, 0x0
│ @@ -479,107 +460,97 @@
│      :goto_0
│      int-to-long v8, v7
│  
│      cmp-long v10, v8, v4
│  
│      if-gez v10, :cond_2
│  
│ -    .line 73+    .line 68
│      invoke-static {v8, v9}, Ljava/lang/Long;->bitCount(J)I
│  
│      move-result v10
│  
│      new-array v10, v10, [J
│  
│ -    move-wide v12, v8+    move-wide v11, v8
│  
│ -    const/4 v11, 0x0+    const/4 v8, 0x0
│  
│ -    const/4 v14, 0x0+    const/4 v9, 0x0
│  
│ -    .line 75+    .line 70
│      :goto_1
│ -    array-length v15, v0+    array-length v13, v0
│  
│ -    if-ge v11, v15, :cond_1+    if-ge v8, v13, :cond_1
│  
│ -    and-long v15, v12, v2+    and-long v13, v11, v2
│  
│ -    const-wide/16 v17, 0x0+    const-wide/16 v15, 0x0
│  
│ -    cmp-long v15, v15, v17+    cmp-long v13, v13, v15
│  
│ -    if-eqz v15, :cond_0+    if-eqz v13, :cond_0
│  
│ -    add-int/lit8 v15, v14, 0x1+    add-int/lit8 v13, v9, 0x1
│  
│ -    .line 76-    aget-object v16, v0, v11+    .line 71+    aget-object v14, v0, v8
│  
│ -    invoke-virtual/range {v16 .. v16}, Ljava/lang/Long;->longValue()J+    invoke-virtual {v14}, Ljava/lang/Long;->longValue()J
│  
│ -    move-result-wide v16+    move-result-wide v14
│  
│ -    aput-wide v16, v10, v14+    aput-wide v14, v10, v9
│  
│ -    move v14, v15+    move v9, v13
│  
│      :cond_0
│ -    add-int/lit8 v11, v11, 0x1+    add-int/lit8 v8, v8, 0x1
│  
│ -    const/4 v15, 0x1+    const/4 v13, 0x1
│  
│ -    shr-long/2addr v12, v15+    shr-long/2addr v11, v13
│  
│      goto :goto_1
│  
│ -    .line 78+    .line 73
│      :cond_1
│      invoke-interface {v1, v10}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->add(Ljava/lang/Object;)Z
│  
│ -    const-string v10, "powerSet"--    .line 79-    invoke-static {v10, v8, v9, v4, v5}, Lcom/samourai/boltzmann/utils/Utils;->logProgress(Ljava/lang/String;JJ)V-
│      add-int/lit8 v7, v7, 0x1
│  
│      goto :goto_0
│  
│      :cond_2
│ -    const-string v2, "powerSet"--    .line 81-    invoke-static {v2, v4, v5}, Lcom/samourai/boltzmann/utils/Utils;->logProgressDone(Ljava/lang/String;J)V-
│      const-wide/high16 v2, 0x4000000000000000L    # 2.0
│  
│ -    .line 84+    .line 77
│      array-length v0, v0
│  
│      int-to-double v4, v0
│  
│      invoke-static {v2, v3, v4, v5}, Ljava/lang/Math;->pow(DD)D
│  
│      move-result-wide v2
│  
│      double-to-long v2, v2
│  
│ -    .line 85+    .line 78
│      invoke-interface {v1}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->size64()J
│  
│      move-result-wide v4
│  
│      cmp-long v0, v2, v4
│  
│      if-nez v0, :cond_3
│  
│      return-object v1
│  
│ -    .line 86+    .line 79
│      :cond_3
│      new-instance v0, Ljava/lang/RuntimeException;
│  
│      new-instance v4, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
│  
│ @@ -623,32 +594,32 @@
│              "Ljava/util/Map$Entry<",
│              "TK;TV;>;>;)",
│              "Ljava/util/Map<",
│              "TK;TV;>;"
│          }
│      .end annotation
│  
│ -    .line 93+    .line 86
│      new-instance v0, Ljava/util/ArrayList;
│  
│      invoke-interface {p0}, Ljava/util/Map;->entrySet()Ljava/util/Set;
│  
│      move-result-object p0
│  
│      invoke-direct {v0, p0}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
│  
│ -    .line 94+    .line 87
│      invoke-static {v0, p1}, Ljava/util/Collections;->sort(Ljava/util/List;Ljava/util/Comparator;)V
│  
│ -    .line 96+    .line 89
│      new-instance p0, Ljava/util/LinkedHashMap;
│  
│      invoke-direct {p0}, Ljava/util/LinkedHashMap;-><init>()V
│  
│ -    .line 97+    .line 90
│      invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
│  
│      move-result-object p1
│  
│      :goto_0
│      invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
│  
│ @@ -658,15 +629,15 @@
│  
│      invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/util/Map$Entry;
│  
│ -    .line 98+    .line 91
│      invoke-interface {v0}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
│  
│      move-result-object v1
│  
│      invoke-interface {v0}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object v0
│ @@ -686,36 +657,36 @@
│              "([[D)",
│              "Lit/unimi/dsi/fastutil/objects/ObjectBigList<",
│              "Lit/unimi/dsi/fastutil/doubles/DoubleBigList;",
│              ">;"
│          }
│      .end annotation
│  
│ -    .line 193+    .line 186
│      new-instance v0, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;
│  
│      array-length v1, p0
│  
│      int-to-long v1, v1
│  
│      invoke-direct {v0, v1, v2}, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;-><init>(J)V
│  
│      const/4 v1, 0x0
│  
│      const/4 v2, 0x0
│  
│ -    .line 195+    .line 188
│      :goto_0
│      array-length v3, p0
│  
│      if-ge v2, v3, :cond_0
│  
│      const/4 v3, 0x1
│  
│ -    .line 196+    .line 189
│      new-array v3, v3, [[D
│  
│      aget-object v4, p0, v2
│  
│      aput-object v4, v3, v1
│  
│      invoke-static {v3}, Lit/unimi/dsi/fastutil/doubles/DoubleBigArrayBigList;->wrap([[D)Lit/unimi/dsi/fastutil/doubles/DoubleBigArrayBigList;
│ @@ -739,36 +710,36 @@
│              "([[I)",
│              "Lit/unimi/dsi/fastutil/objects/ObjectBigList<",
│              "Lit/unimi/dsi/fastutil/ints/IntBigList;",
│              ">;"
│          }
│      .end annotation
│  
│ -    .line 185+    .line 178
│      new-instance v0, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;
│  
│      array-length v1, p0
│  
│      int-to-long v1, v1
│  
│      invoke-direct {v0, v1, v2}, Lit/unimi/dsi/fastutil/objects/ObjectBigArrayBigList;-><init>(J)V
│  
│      const/4 v1, 0x0
│  
│      const/4 v2, 0x0
│  
│ -    .line 186+    .line 179
│      :goto_0
│      array-length v3, p0
│  
│      if-ge v2, v3, :cond_0
│  
│      const/4 v3, 0x1
│  
│ -    .line 187+    .line 180
│      new-array v3, v3, [[I
│  
│      aget-object v4, p0, v2
│  
│      aput-object v4, v3, v1
│  
│      invoke-static {v3}, Lit/unimi/dsi/fastutil/ints/IntBigArrayBigList;->wrap([[I)Lit/unimi/dsi/fastutil/ints/IntBigArrayBigList;
│ @@ -792,37 +763,37 @@
│              "(",
│              "Ljava/util/Collection<",
│              "Ljava/lang/Long;",
│              ">;)[J"
│          }
│      .end annotation
│  
│ -    .line 115+    .line 108
│      invoke-interface {p0}, Ljava/util/Collection;->size()I
│  
│      move-result v0
│  
│      new-array v0, v0, [J
│  
│ -    .line 116+    .line 109
│      invoke-interface {p0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
│  
│      move-result-object p0
│  
│      const/4 v1, 0x0
│  
│ -    .line 117+    .line 110
│      :goto_0
│      invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
│  
│      move-result v2
│  
│      if-eqz v2, :cond_0
│  
│ -    .line 118+    .line 111
│      invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
│  
│      move-result-object v2
│  
│      check-cast v2, Ljava/lang/Long;
│  
│      invoke-virtual {v2}, Ljava/lang/Long;->longValue()J
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$5$1$1.smali
│ @@ -33,30 +33,30 @@
│  .field final synthetic val$nbOccur:I
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;I)V
│      .locals 0
│  
│ -    .line 544+    .line 555
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1$1;->this$2:Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;
│  
│      iput p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1$1;->val$nbOccur:I
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public bridge synthetic accept(Ljava/lang/Object;)V
│      .locals 0
│  
│ -    .line 544+    .line 555
│      check-cast p1, Ljava/util/Map$Entry;
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1$1;->accept(Ljava/util/Map$Entry;)V
│  
│      return-void
│  .end method
│  
│ @@ -67,15 +67,15 @@
│              "(",
│              "Ljava/util/Map$Entry<",
│              "Ljava/lang/Long;",
│              "[I>;)V"
│          }
│      .end annotation
│  
│ -    .line 547+    .line 558
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, [I
│  
│      const/4 v0, 0x1
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$1$1.smali
│ @@ -25,15 +25,15 @@
│  .field final synthetic val$outAggVal:J
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;JLjava/util/List;)V
│      .locals 0
│  
│ -    .line 103+    .line 106
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;
│  
│      iput-wide p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1$1;->val$outAggVal:J
│  
│      iput-object p4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1$1;->val$keysMatchOutAgg:Ljava/util/List;
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│ @@ -42,28 +42,28 @@
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(I)V
│      .locals 5
│  
│ -    .line 106+    .line 109
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allOutAggVal:[J
│  
│      aget-wide v1, v0, p1
│  
│      iget-wide v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1$1;->val$outAggVal:J
│  
│      cmp-long v0, v1, v3
│  
│      if-nez v0, :cond_0
│  
│ -    .line 107+    .line 110
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1$1;->val$keysMatchOutAgg:Ljava/util/List;
│  
│      invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
│  
│      move-result-object p1
│  
│      invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$3$1$1.smali
│ @@ -21,39 +21,39 @@
│  .field final synthetic this$2:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;)V
│      .locals 0
│  
│ -    .line 224+    .line 233
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1$1;->this$2:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(J)V
│      .locals 2
│  
│ -    .line 227+    .line 236
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1$1;->this$2:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->val$inCmbn:Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      invoke-interface {v0, p1, p2}, Lit/unimi/dsi/fastutil/ints/IntBigList;->getInt(J)I
│  
│      move-result v0
│  
│ -    .line 228+    .line 237
│      iget-object v1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1$1;->this$2:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;
│  
│      iget-object v1, v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;
│  
│      iget-object v1, v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->val$inCmbn:Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      add-int/lit8 v0, v0, 0x1
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$2.smali
│ @@ -27,15 +27,15 @@
│  .field final synthetic val$tgt:I
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/LinkedList;ILjava/util/Map;)V
│      .locals 0
│  
│ -    .line 143+    .line 147
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iput-object p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->val$aggs:Ljava/util/LinkedList;
│  
│      iput p3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->val$tgt:I
│  
│      iput-object p4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->val$mat:Ljava/util/Map;
│ @@ -44,86 +44,109 @@
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(I)V
│ -    .locals 8+    .locals 2
│  
│ -    .line 146+    .line 150
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->val$aggs:Ljava/util/LinkedList;
│  
│      invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/util/LinkedList;->contains(Ljava/lang/Object;)Z
│  
│      move-result v0
│  
│      if-eqz v0, :cond_0
│  
│ -    .line 147+    .line 151
│      iget v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->val$tgt:I
│  
│      sub-int/2addr v0, p1
│  
│      add-int/lit8 v0, v0, 0x1
│  
│      invoke-static {p1, v0}, Ljava/lang/Math;->min(II)I
│  
│      move-result v0
│  
│      const/4 v1, 0x0
│  
│ -    .line 149+    .line 153
│      invoke-static {v1, v0}, Ljava8/util/stream/IntStreams;->range(II)Ljava8/util/stream/IntStream;
│  
│      move-result-object v0
│  
│ -    .line 150+    .line 154
│      invoke-interface {v0}, Ljava8/util/stream/IntStream;->parallel()Ljava8/util/stream/IntStream;
│  
│      move-result-object v0
│  
│      new-instance v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2$1;
│  
│      invoke-direct {v1, p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;I)V
│  
│ -    .line 151+    .line 155
│      invoke-interface {v0, v1}, Ljava8/util/stream/IntStream;->forEach(Ljava8/util/function/IntConsumer;)V
│  
│ +    .line 167
│      :cond_0
│ -    const-string v2, "computeInAggCmbn"+    rem-int/lit16 v0, p1, 0x190++    if-nez v0, :cond_1++    .line 168+    invoke-static {}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$000()Lorg/slf4j/Logger;++    move-result-object v0
│  
│ -    int-to-long v3, p1+    invoke-interface {v0}, Lorg/slf4j/Logger;->isDebugEnabled()Z++    move-result v0++    if-eqz v0, :cond_1++    .line 169+    new-instance v0, Ljava/lang/StringBuilder;++    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V++    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;++    const-string p1, "/"++    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 163
│      iget p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->val$tgt:I
│  
│ -    int-to-long v5, p1+    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│ -    new-instance p1, Ljava/lang/StringBuilder;+    const-string p1, "... "
│  
│ -    invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V+    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->val$mat:Ljava/util/Map;+    iget-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->val$mat:Ljava/util/Map;
│  
│ -    invoke-interface {v0}, Ljava/util/Map;->size()I+    invoke-interface {p1}, Ljava/util/Map;->size()I
│  
│ -    move-result v0+    move-result p1
│  
│ -    invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;+    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│ -    const-string v0, " matches"+    const-string p1, " matches"
│  
│ -    invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;+    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    move-result-object v7+    move-result-object p1
│  
│ -    invoke-static/range {v2 .. v7}, Lcom/samourai/boltzmann/utils/Utils;->logProgress(Ljava/lang/String;JJLjava/lang/String;)V+    invoke-static {p1}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│ +    :cond_1
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$3$1.smali
│ @@ -32,30 +32,30 @@
│  .field final synthetic val$inIdx:I
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;I)V
│      .locals 0
│  
│ -    .line 211+    .line 220
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;
│  
│      iput p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;->val$inIdx:I
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(Ljava/lang/Integer;)V
│      .locals 8
│  
│ -    .line 216+    .line 225
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;
│  
│      iget-object v1, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;
│  
│      iget-object v2, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->val$matCmbn:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│ @@ -70,17 +70,17 @@
│  
│      int-to-long v5, p1
│  
│      iget-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;
│  
│      iget-object v7, p1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->val$allAgg:Lcom/samourai/boltzmann/aggregator/TxosAggregates;
│  
│ -    invoke-static/range {v1 .. v7}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$100(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;+    invoke-static/range {v1 .. v7}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$200(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│ -    .line 220+    .line 229
│      iget-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;
│  
│      iget-object p1, p1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->val$allAgg:Lcom/samourai/boltzmann/aggregator/TxosAggregates;
│  
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregates;->getInAgg()Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;
│  
│      move-result-object p1
│ @@ -95,37 +95,37 @@
│  
│      invoke-interface {p1, v0, v1}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, [J
│  
│ -    .line 221+    .line 230
│      invoke-static {p1}, Ljava8/util/stream/LongStreams;->of([J)Ljava8/util/stream/LongStream;
│  
│      move-result-object p1
│  
│ -    .line 222+    .line 231
│      invoke-interface {p1}, Ljava8/util/stream/LongStream;->parallel()Ljava8/util/stream/LongStream;
│  
│      move-result-object p1
│  
│      new-instance v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1$1;
│  
│      invoke-direct {v0, p0}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;)V
│  
│ -    .line 223+    .line 232
│      invoke-interface {p1, v0}, Ljava8/util/stream/LongStream;->forEach(Ljava8/util/function/LongConsumer;)V
│  
│      return-void
│  .end method
│  
│  .method public bridge synthetic accept(Ljava/lang/Object;)V
│      .locals 0
│  
│ -    .line 211+    .line 220
│      check-cast p1, Ljava/lang/Integer;
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;->accept(Ljava/lang/Integer;)V
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$6.smali
│ @@ -43,15 +43,15 @@
│  .field final synthetic val$otGt:J
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;JLcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;IILjava/util/Map;)V
│      .locals 0
│  
│ -    .line 583+    .line 594
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iput-wide p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$otGt:J
│  
│      iput-object p4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$aggMatches:Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;
│  
│      iput p5, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$nIl:I
│ @@ -66,15 +66,15 @@
│  .end method
│  
│  
│  # virtual methods
│  .method public bridge synthetic accept(Ljava/lang/Object;)V
│      .locals 0
│  
│ -    .line 583+    .line 594
│      check-cast p1, Ljava/util/Map$Entry;
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->accept(Ljava/util/Map$Entry;)V
│  
│      return-void
│  .end method
│  
│ @@ -87,67 +87,67 @@
│              "Ljava/lang/Long;",
│              "Ljava/util/Map<",
│              "Ljava/lang/Long;",
│              "[I>;>;)V"
│          }
│      .end annotation
│  
│ -    .line 586+    .line 597
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/lang/Long;
│  
│      invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
│  
│      move-result-wide v0
│  
│ -    .line 587+    .line 598
│      iget-wide v2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$otGt:J
│  
│      sub-long/2addr v2, v0
│  
│ -    .line 591+    .line 602
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava/util/Map;
│  
│      invoke-interface {p1}, Ljava/util/Map;->values()Ljava/util/Collection;
│  
│      move-result-object p1
│  
│      invoke-static {p1}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object p1
│  
│ -    .line 592+    .line 603
│      invoke-interface {p1}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava8/util/stream/Stream;
│  
│      new-instance v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$1;
│  
│      invoke-direct {v0, p0}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;)V
│  
│ -    .line 593+    .line 604
│      invoke-interface {p1, v0}, Ljava8/util/stream/Stream;->mapToInt(Ljava8/util/function/ToIntFunction;)Ljava8/util/stream/IntStream;
│  
│      move-result-object p1
│  
│ -    .line 600+    .line 611
│      invoke-interface {p1}, Ljava8/util/stream/IntStream;->sum()I
│  
│      move-result p1
│  
│ -    .line 603+    .line 614
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$aggMatches:Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;
│  
│      invoke-virtual {v0}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;->getMatchInAggToVal()Ljava/util/Map;
│  
│      move-result-object v0
│  
│      iget v1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$nIl:I
│ @@ -162,15 +162,15 @@
│  
│      check-cast v0, Ljava/lang/Long;
│  
│      invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
│  
│      move-result-wide v0
│  
│ -    .line 604+    .line 615
│      iget-object v4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$aggMatches:Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;
│  
│      invoke-virtual {v4}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;->getValToMatchOutAgg()Ljava/util/Map;
│  
│      move-result-object v4
│  
│      invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│ @@ -183,23 +183,23 @@
│  
│      check-cast v0, Ljava/util/Collection;
│  
│      invoke-static {v0}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object v0
│  
│ -    .line 605+    .line 616
│      invoke-interface {v0}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava8/util/stream/Stream;
│  
│      new-instance v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;
│  
│      invoke-direct {v1, p0, v2, v3, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;JI)V
│  
│ -    .line 606+    .line 617
│      invoke-interface {v0, v1}, Ljava8/util/stream/Stream;->forEach(Ljava8/util/function/Consumer;)V
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$4$1.smali
│ @@ -34,30 +34,30 @@
│  .field final synthetic val$key0:J
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;J)V
│      .locals 0
│  
│ -    .line 458+    .line 469
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;
│  
│      iput-wide p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->val$key0:J
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public bridge synthetic accept(Ljava/lang/Object;)V
│      .locals 0
│  
│ -    .line 458+    .line 469
│      check-cast p1, Ljava/util/Map$Entry;
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->accept(Ljava/util/Map$Entry;)V
│  
│      return-void
│  .end method
│  
│ @@ -69,78 +69,78 @@
│              "Ljava/util/Map$Entry<",
│              "Ljava/lang/Long;",
│              "Ljava/lang/Integer;",
│              ">;)V"
│          }
│      .end annotation
│  
│ -    .line 461+    .line 472
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/lang/Long;
│  
│      invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
│  
│      move-result-wide v5
│  
│ -    .line 463+    .line 474
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava/lang/Integer;
│  
│      invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
│  
│      move-result p1
│  
│ -    .line 464+    .line 475
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksClear:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      invoke-static {v0}, Lcom/samourai/boltzmann/utils/ListsUtils;->clone(Lit/unimi/dsi/fastutil/objects/ObjectBigList;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v0
│  
│ -    .line 465+    .line 476
│      iget-object v1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;
│  
│      iget-object v1, v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iget-wide v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->val$key0:J
│  
│      iget-object v2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;
│  
│      iget-object v7, v2, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$allAgg:Lcom/samourai/boltzmann/aggregator/TxosAggregates;
│  
│      move-object v2, v0
│  
│ -    invoke-static/range {v1 .. v7}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$100(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;+    invoke-static/range {v1 .. v7}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$200(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│ -    .line 467+    .line 478
│      iget-object v1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;
│  
│      iget-wide v1, v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksX:J
│  
│      const-wide/16 v3, 0x0
│  
│      invoke-static {v3, v4, v1, v2}, Ljava8/util/stream/LongStreams;->range(JJ)Ljava8/util/stream/LongStream;
│  
│      move-result-object v1
│  
│ -    .line 468+    .line 479
│      invoke-interface {v1}, Ljava8/util/stream/LongStream;->parallel()Ljava8/util/stream/LongStream;
│  
│      move-result-object v1
│  
│      new-instance v2, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;
│  
│      invoke-direct {v2, p0, v0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;Lit/unimi/dsi/fastutil/objects/ObjectBigList;I)V
│  
│ -    .line 469+    .line 480
│      invoke-interface {v1, v2}, Ljava8/util/stream/LongStream;->forEach(Ljava8/util/function/LongConsumer;)V
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$2$1.smali
│ @@ -23,30 +23,30 @@
│  .field final synthetic val$i:I
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;I)V
│      .locals 0
│  
│ -    .line 152+    .line 156
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;
│  
│      iput p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2$1;->val$i:I
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(I)V
│      .locals 6
│  
│ -    .line 155+    .line 159
│      iget v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2$1;->val$i:I
│  
│      and-int/2addr v0, p1
│  
│      if-nez v0, :cond_0
│  
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;
│ @@ -59,15 +59,15 @@
│  
│      invoke-virtual {v0, v1}, Ljava/util/LinkedList;->contains(Ljava/lang/Object;)Z
│  
│      move-result v0
│  
│      if-eqz v0, :cond_0
│  
│ -    .line 156+    .line 160
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iget-object v1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;
│  
│      iget-object v1, v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;->val$mat:Ljava/util/Map;
│ @@ -76,22 +76,22 @@
│  
│      int-to-long v2, v2
│  
│      int-to-long v4, p1
│  
│      add-long/2addr v2, v4
│  
│ -    .line 157-    invoke-static {v0, v1, v2, v3}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$000(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;J)Ljava/util/List;+    .line 161+    invoke-static {v0, v1, v2, v3}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$100(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;J)Ljava/util/List;
│  
│      move-result-object v0
│  
│      const/4 v1, 0x2
│  
│ -    .line 158+    .line 162
│      new-array v1, v1, [I
│  
│      const/4 v2, 0x0
│  
│      iget v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2$1;->val$i:I
│  
│      aput v3, v1, v2
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$5.smali
│ @@ -41,15 +41,15 @@
│  .field final synthetic val$pt:Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;JJLjava/util/Map;Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;)V
│      .locals 0
│  
│ -    .line 510+    .line 521
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iput-wide p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->val$ir:J
│  
│      iput-wide p4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->val$il:J
│  
│      iput-object p6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->val$dLinks:Ljava/util/Map;
│ @@ -62,15 +62,15 @@
│  .end method
│  
│  
│  # virtual methods
│  .method public bridge synthetic accept(Ljava/lang/Object;)V
│      .locals 0
│  
│ -    .line 510+    .line 521
│      check-cast p1, Ljava/util/Map$Entry;
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->accept(Ljava/util/Map$Entry;)V
│  
│      return-void
│  .end method
│  
│ @@ -83,65 +83,65 @@
│              "Ljava/lang/Long;",
│              "Ljava/util/Map<",
│              "Ljava/lang/Long;",
│              "[I>;>;)V"
│          }
│      .end annotation
│  
│ -    .line 513+    .line 524
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/lang/Long;
│  
│      invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
│  
│      move-result-wide v0
│  
│ -    .line 514+    .line 525
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava/util/Map;
│  
│      const/4 v2, 0x2
│  
│ -    .line 515+    .line 526
│      new-array v2, v2, [J
│  
│      iget-wide v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->val$ir:J
│  
│      const/4 v5, 0x0
│  
│      aput-wide v3, v2, v5
│  
│      const/4 v3, 0x1
│  
│      aput-wide v0, v2, v3
│  
│ -    .line 518+    .line 529
│      invoke-interface {p1}, Ljava/util/Map;->entrySet()Ljava/util/Set;
│  
│      move-result-object p1
│  
│      invoke-static {p1}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object p1
│  
│ -    .line 519+    .line 530
│      invoke-interface {p1}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava8/util/stream/Stream;
│  
│      new-instance v3, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;
│  
│      invoke-direct {v3, p0, v2, v0, v1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;[JJ)V
│  
│ -    .line 520+    .line 531
│      invoke-interface {p1, v3}, Ljava8/util/stream/Stream;->forEach(Ljava8/util/function/Consumer;)V
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask.smali
│ @@ -46,58 +46,58 @@
│              "Ljava/lang/Long;",
│              "Ljava/util/Map<",
│              "Ljava/lang/Long;",
│              "[I>;>;)V"
│          }
│      .end annotation
│  
│ -    .line 251+    .line 260
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│ -    .line 252+    .line 261
│      iput p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->idxIl:I
│  
│ -    .line 253+    .line 262
│      iput-wide p3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->il:J
│  
│ -    .line 254+    .line 263
│      iput-wide p5, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->ir:J
│  
│ -    .line 255+    .line 264
│      iput-object p7, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->dOut:Ljava/util/Map;
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public getIdxIl()I
│      .locals 1
│  
│ -    .line 259+    .line 268
│      iget v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->idxIl:I
│  
│      return v0
│  .end method
│  
│  .method public getIl()J
│      .locals 2
│  
│ -    .line 267+    .line 276
│      iget-wide v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->il:J
│  
│      return-wide v0
│  .end method
│  
│  .method public getIr()J
│      .locals 2
│  
│ -    .line 271+    .line 280
│      iget-wide v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->ir:J
│  
│      return-wide v0
│  .end method
│  
│  .method public getdOut()Ljava/util/Map;
│      .locals 1
│ @@ -108,21 +108,21 @@
│              "Ljava/lang/Long;",
│              "Ljava/util/Map<",
│              "Ljava/lang/Long;",
│              "[I>;>;"
│          }
│      .end annotation
│  
│ -    .line 275+    .line 284
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->dOut:Ljava/util/Map;
│  
│      return-object v0
│  .end method
│  
│  .method public setIdxIl(I)V
│      .locals 0
│  
│ -    .line 263+    .line 272
│      iput p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->idxIl:I
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1.smali
│ @@ -23,30 +23,30 @@
│  .field final synthetic val$i:J
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;J)V
│      .locals 0
│  
│ -    .line 477+    .line 488
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1;->this$3:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;
│  
│      iput-wide p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1;->val$i:J
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(J)V
│      .locals 5
│  
│ -    .line 480+    .line 491
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1;->this$3:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;->this$2:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$links:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│ @@ -59,39 +59,39 @@
│  
│      check-cast v0, Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      invoke-interface {v0, p1, p2}, Lit/unimi/dsi/fastutil/ints/IntBigList;->getInt(J)I
│  
│      move-result v0
│  
│ -    .line 481+    .line 492
│      iget-object v1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1;->this$3:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;
│  
│      iget-object v1, v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;->this$2:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;
│  
│      iget-object v1, v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;
│  
│      iget-object v1, v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$links:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      iget-wide v2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1;->val$i:J
│  
│ -    .line 482+    .line 493
│      invoke-interface {v1, v2, v3}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object v1
│  
│      check-cast v1, Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      iget-object v2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1;->this$3:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;
│  
│      iget-object v2, v2, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;->val$linkCmbn:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      iget-wide v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1;->val$i:J
│  
│ -    .line 486+    .line 497
│      invoke-interface {v2, v3, v4}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object v2
│  
│      check-cast v2, Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      invoke-interface {v2, p1, p2}, Lit/unimi/dsi/fastutil/ints/IntBigList;->getInt(J)I
│ @@ -102,12 +102,12 @@
│  
│      iget v3, v3, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;->val$mult:I
│  
│      mul-int v2, v2, v3
│  
│      add-int/2addr v0, v2
│  
│ -    .line 483+    .line 494
│      invoke-interface {v1, p1, p2, v0}, Lit/unimi/dsi/fastutil/ints/IntBigList;->set(JI)I
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$3.smali
│ @@ -40,15 +40,15 @@
│  .field final synthetic val$matCmbn:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;Lit/unimi/dsi/fastutil/objects/ObjectBigList;Lcom/samourai/boltzmann/aggregator/TxosAggregates;Lit/unimi/dsi/fastutil/ints/IntBigList;)V
│      .locals 0
│  
│ -    .line 202+    .line 211
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iput-object p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->val$aggMatches:Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;
│  
│      iput-object p3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->val$matCmbn:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      iput-object p4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->val$allAgg:Lcom/samourai/boltzmann/aggregator/TxosAggregates;
│ @@ -61,15 +61,15 @@
│  .end method
│  
│  
│  # virtual methods
│  .method public bridge synthetic accept(Ljava/lang/Object;)V
│      .locals 0
│  
│ -    .line 202+    .line 211
│      check-cast p1, Ljava/util/Map$Entry;
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->accept(Ljava/util/Map$Entry;)V
│  
│      return-void
│  .end method
│  
│ @@ -81,37 +81,37 @@
│              "Ljava/util/Map$Entry<",
│              "Ljava/lang/Integer;",
│              "Ljava/lang/Long;",
│              ">;)V"
│          }
│      .end annotation
│  
│ -    .line 205+    .line 214
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/lang/Integer;
│  
│      invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
│  
│      move-result v0
│  
│ -    .line 206+    .line 215
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava/lang/Long;
│  
│      invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
│  
│      move-result-wide v1
│  
│ -    .line 208+    .line 217
│      iget-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;->val$aggMatches:Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;
│  
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;->getValToMatchOutAgg()Ljava/util/Map;
│  
│      move-result-object p1
│  
│      invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│ @@ -124,23 +124,23 @@
│  
│      check-cast p1, Ljava/util/Collection;
│  
│      invoke-static {p1}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object p1
│  
│ -    .line 209+    .line 218
│      invoke-interface {p1}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava8/util/stream/Stream;
│  
│      new-instance v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;
│  
│      invoke-direct {v1, p0, v0}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;I)V
│  
│ -    .line 210+    .line 219
│      invoke-interface {p1, v1}, Ljava8/util/stream/Stream;->forEach(Ljava8/util/function/Consumer;)V
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$6$1.smali
│ @@ -29,40 +29,40 @@
│  .field final synthetic this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;)V
│      .locals 0
│  
│ -    .line 594+    .line 605
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public bridge synthetic applyAsInt(Ljava/lang/Object;)I
│      .locals 0
│  
│ -    .line 594+    .line 605
│      check-cast p1, [I
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$1;->applyAsInt([I)I
│  
│      move-result p1
│  
│      return p1
│  .end method
│  
│  .method public applyAsInt([I)I
│      .locals 1
│  
│      const/4 v0, 0x0
│  
│ -    .line 597+    .line 608
│      aget p1, p1, v0
│  
│      return p1
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator.smali
│ @@ -36,46 +36,55 @@
│  
│      .line 20
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│ -.method static synthetic access$000(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;J)Ljava/util/List;+.method static synthetic access$000()Lorg/slf4j/Logger;+    .locals 1++    .line 17+    sget-object v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;++    return-object v0+.end method++.method static synthetic access$100(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;J)Ljava/util/List;
│      .locals 0
│  
│      .line 17
│      invoke-direct {p0, p1, p2, p3}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->createLine(Ljava/util/Map;J)Ljava/util/List;
│  
│      move-result-object p0
│  
│      return-object p0
│  .end method
│  
│ -.method static synthetic access$100(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;+.method static synthetic access$200(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│      .locals 0
│  
│      .line 17
│      invoke-direct/range {p0 .. p6}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->updateLinkCmbn(Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object p0
│  
│      return-object p0
│  .end method
│  
│ -.method static synthetic access$200(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[JILjava/util/Map;)V+.method static synthetic access$300(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[JILjava/util/Map;)V
│      .locals 0
│  
│      .line 17
│      invoke-direct {p0, p1, p2, p3}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->addDLinkLine([JILjava/util/Map;)V
│  
│      return-void
│  .end method
│  
│ -.method static synthetic access$300(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;J)Ljava/util/Map;+.method static synthetic access$400(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;J)Ljava/util/Map;
│      .locals 0
│  
│      .line 17
│      invoke-direct {p0, p1, p2, p3}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->ndOutLine(Ljava/util/Map;J)Ljava/util/Map;
│  
│      move-result-object p0
│  
│ @@ -96,15 +105,15 @@
│          }
│      .end annotation
│  
│      monitor-enter p0
│  
│      const/4 v0, 0x0
│  
│ -    .line 558+    .line 569
│      :try_start_0
│      aget-wide v1, p1, v0
│  
│      invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v1
│  
│ @@ -112,52 +121,52 @@
│  
│      move-result-object v1
│  
│      check-cast v1, Ljava/util/Map;
│  
│      if-nez v1, :cond_0
│  
│ -    .line 560+    .line 571
│      new-instance v1, Ljava/util/LinkedHashMap;
│  
│      invoke-direct {v1}, Ljava/util/LinkedHashMap;-><init>()V
│  
│ -    .line 561+    .line 572
│      aget-wide v2, p1, v0
│  
│      invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v2
│  
│      invoke-interface {p3, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│      :cond_0
│      const/4 p3, 0x1
│  
│ -    .line 564+    .line 575
│      aget-wide v2, p1, p3
│  
│      invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v2
│  
│      invoke-interface {v1, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
│  
│      move-result-object v2
│  
│      check-cast v2, Ljava/lang/Integer;
│  
│      if-nez v2, :cond_1
│  
│ -    .line 566+    .line 577
│      invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
│  
│      move-result-object v2
│  
│ -    .line 568+    .line 579
│      :cond_1
│      aget-wide v3, p1, p3
│  
│      invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object p1
│  
│ @@ -171,23 +180,23 @@
│  
│      move-result-object p2
│  
│      invoke-interface {v1, p1, p2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│      :try_end_0
│      .catchall {:try_start_0 .. :try_end_0} :catchall_0
│  
│ -    .line 569+    .line 580
│      monitor-exit p0
│  
│      return-void
│  
│      :catchall_0
│      move-exception p1
│  
│ -    .line 557+    .line 568
│      monitor-exit p0
│  
│      throw p1
│  .end method
│  
│  .method private declared-synchronized createLine(Ljava/util/Map;J)Ljava/util/List;
│      .locals 2
│ @@ -201,61 +210,61 @@
│              "Ljava/util/List<",
│              "[I>;"
│          }
│      .end annotation
│  
│      monitor-enter p0
│  
│ -    .line 173+    .line 182
│      :try_start_0
│      invoke-static {p2, p3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v0
│  
│      invoke-interface {p1, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/util/List;
│  
│ -    .line 174+    .line 183
│      invoke-static {p2, p3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v1
│  
│      invoke-interface {p1, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
│  
│      move-result-object v1
│  
│      if-nez v1, :cond_0
│  
│ -    .line 175+    .line 184
│      new-instance v0, Ljava/util/ArrayList;
│  
│      invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
│  
│ -    .line 176+    .line 185
│      invoke-static {p2, p3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object p2
│  
│      invoke-interface {p1, p2, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│      :try_end_0
│      .catchall {:try_start_0 .. :try_end_0} :catchall_0
│  
│ -    .line 178+    .line 187
│      :cond_0
│      monitor-exit p0
│  
│      return-object v0
│  
│      :catchall_0
│      move-exception p1
│  
│ -    .line 172+    .line 181
│      monitor-exit p0
│  
│      throw p1
│  .end method
│  
│  .method private finalizeLinkMatrix(Lcom/samourai/boltzmann/aggregator/TxosAggregates;JJLjava/util/Map;I)Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;
│      .locals 16
│ @@ -270,20 +279,20 @@
│              "Ljava/lang/Long;",
│              "Ljava/lang/Integer;",
│              ">;>;I)",
│              "Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;"
│          }
│      .end annotation
│  
│ -    .line 420+    .line 430
│      invoke-direct/range {p0 .. p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->newLinkCmbn(Lcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│ -    move-result-object v8+    move-result-object v7
│  
│ -    .line 423+    .line 433
│      new-instance v0, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v1, "Filling matrix for allAgg... "
│  
│      invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│ @@ -302,117 +311,94 @@
│  
│      invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v0
│  
│      invoke-static {v0}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│ -    .line 424-    invoke-static {v8}, Lcom/samourai/boltzmann/utils/ListsUtils;->clone(Lit/unimi/dsi/fastutil/objects/ObjectBigList;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;--    move-result-object v6--    move-object/from16 v9, p0--    move-object v10, v6--    move-wide/from16 v11, p2+    .line 434+    invoke-static {v7}, Lcom/samourai/boltzmann/utils/ListsUtils;->clone(Lit/unimi/dsi/fastutil/objects/ObjectBigList;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│ -    move-wide/from16 v13, p4+    move-result-object v15
│  
│ -    move-object/from16 v15, p1+    move-object/from16 v8, p0
│  
│ -    .line 425-    invoke-direct/range {v9 .. v15}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->updateLinkCmbn(Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;+    move-object v9, v15
│  
│ -    const/4 v0, 0x1+    move-wide/from16 v10, p2
│  
│ -    add-int/lit8 v11, p7, 0x1+    move-wide/from16 v12, p4
│  
│ -    .line 428-    invoke-interface {v6}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->size64()J+    move-object/from16 v14, p1
│  
│ -    move-result-wide v4+    .line 435+    invoke-direct/range {v8 .. v14}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->updateLinkCmbn(Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│ -    const-wide/16 v1, 0x0+    add-int/lit8 v10, p7, 0x1
│  
│ -    .line 429-    invoke-interface {v6, v1, v2}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;+    .line 438+    invoke-interface {v15}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->size64()J
│  
│ -    move-result-object v3+    move-result-wide v3
│  
│ -    check-cast v3, Lit/unimi/dsi/fastutil/ints/IntBigList;+    const-wide/16 v0, 0x0
│  
│ -    invoke-interface {v3}, Lit/unimi/dsi/fastutil/ints/IntBigList;->size64()J+    .line 439+    invoke-interface {v15, v0, v1}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│ -    move-result-wide v9+    move-result-object v0
│  
│ -    .line 433-    new-array v3, v0, [J+    check-cast v0, Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│ -    const/4 v0, 0x0+    invoke-interface {v0}, Lit/unimi/dsi/fastutil/ints/IntBigList;->size64()J
│  
│ -    aput-wide v1, v3, v0+    move-result-wide v5
│  
│ -    .line 434+    .line 442
│      invoke-interface/range {p6 .. p6}, Ljava/util/Map;->entrySet()Ljava/util/Set;
│  
│      move-result-object v0
│  
│      invoke-static {v0}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object v0
│  
│ -    .line 435+    .line 443
│      invoke-interface {v0}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object v0
│  
│ -    move-object v12, v0+    move-object v11, v0
│  
│ -    check-cast v12, Ljava8/util/stream/Stream;+    check-cast v11, Ljava8/util/stream/Stream;
│  
│ -    new-instance v13, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;+    new-instance v12, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;
│  
│ -    move-object v0, v13+    move-object v0, v12
│  
│      move-object/from16 v1, p0
│  
│ -    move-object v2, v3--    move-object/from16 v3, p6--    move-object v14, v6--    move-wide v6, v9+    move-object/from16 v2, p6
│  
│ -    move-object/from16 v9, p1+    move-object/from16 v8, p1
│  
│ -    move-object v10, v14+    invoke-direct/range {v0 .. v9}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;JJLit/unimi/dsi/fastutil/objects/ObjectBigList;Lcom/samourai/boltzmann/aggregator/TxosAggregates;Lit/unimi/dsi/fastutil/objects/ObjectBigList;)V
│  
│ -    invoke-direct/range {v0 .. v10}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[JLjava/util/Map;JJLit/unimi/dsi/fastutil/objects/ObjectBigList;Lcom/samourai/boltzmann/aggregator/TxosAggregates;Lit/unimi/dsi/fastutil/objects/ObjectBigList;)V--    .line 436-    invoke-interface {v12, v13}, Ljava8/util/stream/Stream;->forEachOrdered(Ljava8/util/function/Consumer;)V--    const-string v0, "finalizeLinkMatrix"--    .line 495-    invoke-interface/range {p6 .. p6}, Ljava/util/Map;->size()I--    move-result v1+    .line 444+    invoke-interface {v11, v12}, Ljava8/util/stream/Stream;->forEachOrdered(Ljava8/util/function/Consumer;)V
│  
│ -    int-to-long v1, v1+    const-string v0, "Filling matrix DONE"
│  
│ -    invoke-static {v0, v1, v2}, Lcom/samourai/boltzmann/utils/Utils;->logProgressDone(Ljava/lang/String;J)V+    .line 506+    invoke-static {v0}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│ -    .line 496+    .line 507
│      new-instance v0, Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;
│  
│ -    invoke-direct {v0, v11, v14}, Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;-><init>(ILit/unimi/dsi/fastutil/objects/ObjectBigList;)V+    invoke-direct {v0, v10, v15}, Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;-><init>(ILit/unimi/dsi/fastutil/objects/ObjectBigList;)V
│  
│      return-object v0
│  .end method
│  
│  .method private declared-synchronized ndOutLine(Ljava/util/Map;J)Ljava/util/Map;
│      .locals 1
│      .annotation system Ldalvik/annotation/Signature;
│ @@ -427,52 +413,52 @@
│              "Ljava/lang/Long;",
│              "[I>;"
│          }
│      .end annotation
│  
│      monitor-enter p0
│  
│ -    .line 639+    .line 650
│      :try_start_0
│      invoke-static {p2, p3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v0
│  
│      invoke-interface {p1, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/util/Map;
│  
│      if-nez v0, :cond_0
│  
│ -    .line 641+    .line 652
│      new-instance v0, Ljava/util/LinkedHashMap;
│  
│      invoke-direct {v0}, Ljava/util/LinkedHashMap;-><init>()V
│  
│ -    .line 642+    .line 653
│      invoke-static {p2, p3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object p2
│  
│      invoke-interface {p1, p2, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│      :try_end_0
│      .catchall {:try_start_0 .. :try_end_0} :catchall_0
│  
│ -    .line 644+    .line 655
│      :cond_0
│      monitor-exit p0
│  
│      return-object v0
│  
│      :catchall_0
│      move-exception p1
│  
│ -    .line 638+    .line 649
│      monitor-exit p0
│  
│      throw p1
│  .end method
│  
│  .method private newLinkCmbn(Lcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│      .locals 9
│ @@ -483,15 +469,15 @@
│              ")",
│              "Lit/unimi/dsi/fastutil/objects/ObjectBigList<",
│              "Lit/unimi/dsi/fastutil/ints/IntBigList;",
│              ">;"
│          }
│      .end annotation
│  
│ -    .line 654+    .line 665
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregates;->getOutAgg()Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;
│  
│      move-result-object v0
│  
│      invoke-virtual {v0}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;->getAllAggIndexes()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v0
│ @@ -514,15 +500,15 @@
│  
│      invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
│  
│      move-result-object v5
│  
│      check-cast v5, [J
│  
│ -    .line 655+    .line 666
│      invoke-static {v5}, Ljava8/util/stream/LongStreams;->of([J)Ljava8/util/stream/LongStream;
│  
│      move-result-object v5
│  
│      invoke-interface {v5}, Ljava8/util/stream/LongStream;->max()Ljava8/util/OptionalLong;
│  
│      move-result-object v5
│ @@ -535,15 +521,15 @@
│  
│      if-lez v7, :cond_0
│  
│      move-wide v3, v5
│  
│      goto :goto_0
│  
│ -    .line 662+    .line 673
│      :cond_1
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregates;->getInAgg()Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;
│  
│      move-result-object p1
│  
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;->getAllAggIndexes()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│ @@ -565,15 +551,15 @@
│  
│      invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, [J
│  
│ -    .line 663+    .line 674
│      invoke-static {v0}, Ljava8/util/stream/LongStreams;->of([J)Ljava8/util/stream/LongStream;
│  
│      move-result-object v0
│  
│      invoke-interface {v0}, Ljava8/util/stream/LongStream;->max()Ljava8/util/OptionalLong;
│  
│      move-result-object v0
│ @@ -595,15 +581,15 @@
│  
│      add-long/2addr v3, v0
│  
│      add-long/2addr v5, v0
│  
│      const/4 p1, 0x0
│  
│ -    .line 672+    .line 683
│      invoke-static {v3, v4, v5, v6, p1}, Lcom/samourai/boltzmann/utils/ListsUtils;->newIntMatrix(JJI)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object p1
│  
│      return-object p1
│  .end method
│  
│ @@ -619,38 +605,38 @@
│              "Ljava/util/Map<",
│              "Ljava/lang/Long;",
│              "Ljava/lang/Integer;",
│              ">;>;)V"
│          }
│      .end annotation
│  
│ -    .line 505+    .line 516
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIl()J
│  
│      move-result-wide v4
│  
│ -    .line 506+    .line 517
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIr()J
│  
│      move-result-wide v2
│  
│ -    .line 507+    .line 518
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getdOut()Ljava/util/Map;
│  
│      move-result-object p1
│  
│      invoke-interface {p1}, Ljava/util/Map;->entrySet()Ljava/util/Set;
│  
│      move-result-object p1
│  
│      invoke-static {p1}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object p1
│  
│ -    .line 508+    .line 519
│      invoke-interface {p1}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava8/util/stream/Stream;
│  
│      new-instance v8, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;
│ @@ -661,15 +647,15 @@
│  
│      move-object v6, p3
│  
│      move-object v7, p2
│  
│      invoke-direct/range {v0 .. v7}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;JJLjava/util/Map;Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;)V
│  
│ -    .line 509+    .line 520
│      invoke-interface {p1, v8}, Ljava8/util/stream/Stream;->forEachOrdered(Ljava8/util/function/Consumer;)V
│  
│      return-void
│  .end method
│  
│  .method private runTask(IILcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;JLjava/util/Map;)Ljava/util/Map;
│      .locals 11
│ @@ -687,29 +673,29 @@
│              "Ljava/lang/Long;",
│              "Ljava/util/Map<",
│              "Ljava/lang/Long;",
│              "[I>;>;"
│          }
│      .end annotation
│  
│ -    .line 577+    .line 588
│      new-instance v8, Ljava/util/LinkedHashMap;
│  
│      invoke-direct {v8}, Ljava/util/LinkedHashMap;-><init>()V
│  
│ -    .line 580+    .line 591
│      invoke-interface/range {p6 .. p6}, Ljava/util/Map;->entrySet()Ljava/util/Set;
│  
│      move-result-object v0
│  
│      invoke-static {v0}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object v0
│  
│ -    .line 581+    .line 592
│      invoke-interface {v0}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object v0
│  
│      move-object v9, v0
│  
│      check-cast v9, Ljava8/util/stream/Stream;
│ @@ -728,15 +714,15 @@
│  
│      move v6, p2
│  
│      move-object v7, v8
│  
│      invoke-direct/range {v0 .. v7}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;JLcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;IILjava/util/Map;)V
│  
│ -    .line 582+    .line 593
│      invoke-interface {v9, v10}, Ljava8/util/stream/Stream;->forEachOrdered(Ljava8/util/function/Consumer;)V
│  
│      return-object v8
│  .end method
│  
│  .method private updateLinkCmbn(Lit/unimi/dsi/fastutil/objects/ObjectBigList;JJLcom/samourai/boltzmann/aggregator/TxosAggregates;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│      .locals 7
│ @@ -750,78 +736,78 @@
│              ")",
│              "Lit/unimi/dsi/fastutil/objects/ObjectBigList<",
│              "Lit/unimi/dsi/fastutil/ints/IntBigList;",
│              ">;"
│          }
│      .end annotation
│  
│ -    .line 686+    .line 697
│      invoke-virtual {p6}, Lcom/samourai/boltzmann/aggregator/TxosAggregates;->getOutAgg()Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;
│  
│      move-result-object v0
│  
│      invoke-virtual {v0}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;->getAllAggIndexes()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v0
│  
│      invoke-interface {v0, p4, p5}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object p4
│  
│      check-cast p4, [J
│  
│ -    .line 687+    .line 698
│      invoke-virtual {p6}, Lcom/samourai/boltzmann/aggregator/TxosAggregates;->getInAgg()Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;
│  
│      move-result-object p5
│  
│      invoke-virtual {p5}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;->getAllAggIndexes()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object p5
│  
│      invoke-interface {p5, p2, p3}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object p2
│  
│      check-cast p2, [J
│  
│ -    .line 689+    .line 700
│      array-length p3, p2
│  
│      const/4 p5, 0x0
│  
│      const/4 p6, 0x0
│  
│      :goto_0
│      if-ge p6, p3, :cond_1
│  
│      aget-wide v0, p2, p6
│  
│ -    .line 690+    .line 701
│      array-length v2, p4
│  
│      const/4 v3, 0x0
│  
│      :goto_1
│      if-ge v3, v2, :cond_0
│  
│      aget-wide v4, p4, v3
│  
│ -    .line 691+    .line 702
│      invoke-interface {p1, v4, v5}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object v6
│  
│      check-cast v6, Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      invoke-interface {v6, v0, v1}, Lit/unimi/dsi/fastutil/ints/IntBigList;->getInt(J)I
│  
│      move-result v6
│  
│ -    .line 692+    .line 703
│      invoke-interface {p1, v4, v5}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object v4
│  
│      check-cast v4, Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      add-int/lit8 v6, v6, 0x1
│ @@ -853,42 +839,42 @@
│              "Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;",
│              ")",
│              "Ljava/util/Set<",
│              "[J>;"
│          }
│      .end annotation
│  
│ -    .line 188+    .line 197
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/beans/Txos;->getInputs()Ljava/util/Map;
│  
│      move-result-object v0
│  
│      invoke-interface {v0}, Ljava/util/Map;->size()I
│  
│      move-result v0
│  
│ -    .line 189+    .line 198
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/beans/Txos;->getOutputs()Ljava/util/Map;
│  
│      move-result-object p1
│  
│      invoke-interface {p1}, Ljava/util/Map;->size()I
│  
│      move-result p1
│  
│ -    .line 191+    .line 200
│      sget-object v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;
│  
│      invoke-interface {v1}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│      move-result v1
│  
│      if-eqz v1, :cond_0
│  
│ -    .line 192+    .line 201
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Checking deterministic links: "
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│ @@ -910,38 +896,38 @@
│      :cond_0
│      int-to-long v1, p1
│  
│      int-to-long v3, v0
│  
│      const/4 p1, 0x0
│  
│ -    .line 195+    .line 204
│      invoke-static {v1, v2, v3, v4, p1}, Lcom/samourai/boltzmann/utils/ListsUtils;->newIntMatrix(JJI)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v0
│  
│ -    .line 197+    .line 206
│      invoke-static {v3, v4, p1}, Lcom/samourai/boltzmann/utils/ListsUtils;->newIntBigList(JI)Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      move-result-object p1
│  
│ -    .line 199+    .line 208
│      invoke-virtual {p3}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;->getMatchInAggToVal()Ljava/util/Map;
│  
│      move-result-object v1
│  
│      invoke-interface {v1}, Ljava/util/Map;->entrySet()Ljava/util/Set;
│  
│      move-result-object v1
│  
│      invoke-static {v1}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object v1
│  
│ -    .line 200+    .line 209
│      invoke-interface {v1}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object v1
│  
│      check-cast v1, Ljava8/util/stream/Stream;
│  
│      new-instance v2, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;
│ @@ -956,39 +942,39 @@
│  
│      move-object v9, p2
│  
│      move-object v10, p1
│  
│      invoke-direct/range {v5 .. v10}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$3;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;Lit/unimi/dsi/fastutil/objects/ObjectBigList;Lcom/samourai/boltzmann/aggregator/TxosAggregates;Lit/unimi/dsi/fastutil/ints/IntBigList;)V
│  
│ -    .line 201+    .line 210
│      invoke-interface {v1, v2}, Ljava8/util/stream/Stream;->forEach(Ljava8/util/function/Consumer;)V
│  
│      const-wide/16 p2, 0x0
│  
│ -    .line 237+    .line 246
│      invoke-interface {p1, p2, p3}, Lit/unimi/dsi/fastutil/ints/IntBigList;->getInt(J)I
│  
│      move-result p1
│  
│ -    .line 238+    .line 247
│      invoke-virtual {p0, v0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->findDtrmLinks(Lit/unimi/dsi/fastutil/objects/ObjectBigList;I)Ljava/util/Set;
│  
│      move-result-object p1
│  
│ -    .line 239+    .line 248
│      sget-object p2, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;
│  
│      invoke-interface {p2}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│      move-result p2
│  
│      if-eqz p2, :cond_1
│  
│ -    .line 240+    .line 249
│      new-instance p2, Ljava/lang/StringBuilder;
│  
│      invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
│  
│      invoke-interface {p1}, Ljava/util/Set;->size()I
│  
│      move-result p3
│ @@ -1006,149 +992,151 @@
│      invoke-static {p2}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│      :cond_1
│      return-object p1
│  .end method
│  
│  .method public computeInAggCmbn(Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;)Ljava/util/Map;
│ -    .locals 5+    .locals 4
│      .annotation system Ldalvik/annotation/Signature;
│          value = {
│              "(",
│              "Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;",
│              ")",
│              "Ljava/util/Map<",
│              "Ljava/lang/Long;",
│              "Ljava/util/List<",
│              "[I>;>;"
│          }
│      .end annotation
│  
│ -    .line 128+    .line 133
│      new-instance v0, Ljava/util/LinkedList;
│  
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;->getAllMatchInAgg()Ljava/util/List;
│  
│      move-result-object p1
│  
│      invoke-direct {v0, p1}, Ljava/util/LinkedList;-><init>(Ljava/util/Collection;)V
│  
│ -    .line 129-    invoke-virtual {v0}, Ljava/util/LinkedList;->pollFirst()Ljava/lang/Object;--    .line 131+    .line 134
│      sget-object p1, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;
│  
│      invoke-interface {p1}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│      move-result p1
│  
│      if-eqz p1, :cond_0
│  
│ -    .line 132+    .line 135
│      new-instance p1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    const-string v1, "Computing combinations for "+    const-string v1, "Computing combinations: "
│  
│      invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      invoke-virtual {v0}, Ljava/util/LinkedList;->size()I
│  
│      move-result v1
│  
│      invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│ -    const-string v1, " aggregates..."--    invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;-
│      invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object p1
│  
│      invoke-static {p1}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│ -    .line 135+    .line 138
│      :cond_0
│ +    invoke-virtual {v0}, Ljava/util/LinkedList;->pollFirst()Ljava/lang/Object;++    .line 140
│      new-instance p1, Ljava/util/LinkedHashMap;
│  
│      invoke-direct {p1}, Ljava/util/LinkedHashMap;-><init>()V
│  
│ -    .line 136+    .line 141
│      invoke-virtual {v0}, Ljava/util/LinkedList;->isEmpty()Z
│  
│      move-result v1
│  
│      if-nez v1, :cond_1
│  
│ -    .line 137+    .line 142
│      invoke-virtual {v0}, Ljava/util/LinkedList;->pollLast()Ljava/lang/Object;
│  
│      move-result-object v1
│  
│      check-cast v1, Ljava/lang/Integer;
│  
│      invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
│  
│      move-result v1
│  
│      const/4 v2, 0x0
│  
│      add-int/lit8 v3, v1, 0x1
│  
│ -    .line 140+    .line 144
│      invoke-static {v2, v3}, Ljava8/util/stream/IntStreams;->range(II)Ljava8/util/stream/IntStream;
│  
│      move-result-object v2
│  
│ -    .line 141+    .line 145
│      invoke-interface {v2}, Ljava8/util/stream/IntStream;->parallel()Ljava8/util/stream/IntStream;
│  
│      move-result-object v2
│  
│      new-instance v3, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;
│  
│      invoke-direct {v3, p0, v0, v1, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$2;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/LinkedList;ILjava/util/Map;)V
│  
│ -    .line 142+    .line 146
│      invoke-interface {v2, v3}, Ljava8/util/stream/IntStream;->forEachOrdered(Ljava8/util/function/IntConsumer;)V
│  
│ -    const-string v0, "computeInAggCmbn"+    .line 175+    :cond_1+    sget-object v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;
│  
│ -    int-to-long v1, v1+    invoke-interface {v0}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│ -    .line 167-    new-instance v3, Ljava/lang/StringBuilder;+    move-result v0++    if-eqz v0, :cond_2++    .line 176+    new-instance v0, Ljava/lang/StringBuilder;
│  
│ -    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V+    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
│  
│      invoke-interface {p1}, Ljava/util/Map;->size()I
│  
│ -    move-result v4+    move-result v1
│  
│ -    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;+    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│ -    const-string v4, " matches"+    const-string v1, " combinations"
│  
│ -    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;+    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    move-result-object v3+    move-result-object v0
│  
│ -    invoke-static {v0, v1, v2, v3}, Lcom/samourai/boltzmann/utils/Utils;->logProgressDone(Ljava/lang/String;JLjava/lang/String;)V+    invoke-static {v0}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│ -    :cond_1+    :cond_2
│      return-object p1
│  .end method
│  
│  .method public computeLinkMatrix(Lcom/samourai/boltzmann/beans/Txos;Lcom/samourai/boltzmann/aggregator/TxosAggregates;Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;Ljava/util/Map;Ljava/lang/Integer;)Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;
│ -    .locals 38+    .locals 37
│      .annotation system Ldalvik/annotation/Signature;
│          value = {
│              "(",
│              "Lcom/samourai/boltzmann/beans/Txos;",
│              "Lcom/samourai/boltzmann/aggregator/TxosAggregates;",
│              "Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;",
│              "Ljava/util/Map<",
│ @@ -1157,664 +1145,610 @@
│              "[I>;>;",
│              "Ljava/lang/Integer;",
│              ")",
│              "Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;"
│          }
│      .end annotation
│  
│ -    move-object/from16 v0, p4--    .line 294+    .line 303
│      invoke-virtual/range {p1 .. p1}, Lcom/samourai/boltzmann/beans/Txos;->getInputs()Ljava/util/Map;
│  
│ -    move-result-object v1+    move-result-object v0
│  
│ -    invoke-interface {v1}, Ljava/util/Map;->size()I+    invoke-interface {v0}, Ljava/util/Map;->size()I
│  
│ -    move-result v1+    move-result v0
│  
│ -    int-to-double v1, v1+    int-to-double v0, v0
│  
│ -    const-wide/high16 v3, 0x4000000000000000L    # 2.0+    const-wide/high16 v2, 0x4000000000000000L    # 2.0
│  
│ -    invoke-static {v3, v4, v1, v2}, Ljava/lang/Math;->pow(DD)D+    invoke-static {v2, v3, v0, v1}, Ljava/lang/Math;->pow(DD)D
│  
│ -    move-result-wide v1+    move-result-wide v0
│  
│ -    double-to-long v1, v1+    double-to-long v0, v0
│  
│ -    const-wide/16 v5, 0x1+    const-wide/16 v4, 0x1
│  
│ -    sub-long/2addr v1, v5+    sub-long/2addr v0, v4
│  
│ -    .line 295+    .line 304
│      invoke-virtual/range {p1 .. p1}, Lcom/samourai/boltzmann/beans/Txos;->getOutputs()Ljava/util/Map;
│  
│ -    move-result-object v7--    invoke-interface {v7}, Ljava/util/Map;->size()I--    move-result v7--    int-to-double v7, v7--    invoke-static {v3, v4, v7, v8}, Ljava/lang/Math;->pow(DD)D--    move-result-wide v3+    move-result-object v6
│  
│ -    double-to-long v3, v3+    invoke-interface {v6}, Ljava/util/Map;->size()I
│  
│ -    sub-long/2addr v3, v5+    move-result v6
│  
│ -    .line 297-    sget-object v5, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;+    int-to-double v6, v6
│  
│ -    invoke-interface {v5}, Lorg/slf4j/Logger;->isDebugEnabled()Z+    invoke-static {v2, v3, v6, v7}, Ljava/lang/Math;->pow(DD)D
│  
│ -    move-result v5+    move-result-wide v2
│  
│ -    if-eqz v5, :cond_0+    double-to-long v2, v2
│  
│ -    .line 298-    new-instance v5, Ljava/lang/StringBuilder;+    sub-long/2addr v2, v4
│  
│ -    invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V+    mul-long v4, v4, v0
│  
│ -    const-string v6, "Computing links for "+    mul-long v4, v4, v2
│  
│ -    invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    const-wide/16 v6, 0x20
│  
│ -    invoke-virtual {v5, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;+    .line 306+    div-long/2addr v4, v6
│  
│ -    const-string v6, "x"+    .line 307+    sget-object v6, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;
│  
│ -    invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    invoke-interface {v6}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│ -    invoke-virtual {v5, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;+    move-result v6
│  
│ -    const-string v6, "..."+    if-eqz v6, :cond_0
│  
│ -    invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    .line 308+    new-instance v6, Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;+    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    move-result-object v5+    const-string v7, "Computing link matrix: "
│  
│ -    invoke-static {v5}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V+    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 301-    :cond_0-    new-instance v5, Ljava/util/LinkedHashMap;+    invoke-virtual {v6, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    invoke-direct {v5}, Ljava/util/LinkedHashMap;-><init>()V+    const-string v7, "x"
│  
│ -    .line 311-    new-instance v6, Ljava/util/LinkedList;+    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-direct {v6}, Ljava/util/LinkedList;-><init>()V+    invoke-virtual {v6, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    .line 314-    new-instance v14, Ljava/util/LinkedHashMap;+    const-string v7, " ("
│  
│ -    invoke-direct {v14}, Ljava/util/LinkedHashMap;-><init>()V+    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 315-    new-instance v7, Ljava/util/LinkedHashMap;+    invoke-virtual {v6, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    invoke-direct {v7}, Ljava/util/LinkedHashMap;-><init>()V+    const-string v7, " iters est.)"
│  
│ -    const-wide/16 v15, 0x0+    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 316-    invoke-static/range {v15 .. v16}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    move-result-object v8+    move-result-object v6
│  
│ -    const/4 v9, 0x2+    invoke-static {v6}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│ -    new-array v9, v9, [I+    .line 312+    :cond_0+    new-instance v14, Ljava/util/LinkedHashMap;
│  
│ -    fill-array-data v9, :array_0+    invoke-direct {v14}, Ljava/util/LinkedHashMap;-><init>()V
│  
│ -    invoke-interface {v7, v8, v9}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+    .line 322+    new-instance v15, Ljava/util/LinkedList;
│  
│ -    .line 317-    invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    invoke-direct {v15}, Ljava/util/LinkedList;-><init>()V
│  
│ -    move-result-object v8+    .line 325+    new-instance v13, Ljava/util/LinkedHashMap;
│  
│ -    invoke-interface {v14, v8, v7}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+    invoke-direct {v13}, Ljava/util/LinkedHashMap;-><init>()V
│  
│ -    .line 320-    new-instance v12, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;+    .line 326+    new-instance v6, Ljava/util/LinkedHashMap;
│  
│ -    const/4 v9, 0x0+    invoke-direct {v6}, Ljava/util/LinkedHashMap;-><init>()V
│  
│ -    const-wide/16 v10, 0x0+    const-wide/16 v16, 0x0
│  
│ -    move-object v7, v12+    .line 327+    invoke-static/range {v16 .. v17}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│ -    move-object/from16 v8, p0+    move-result-object v7
│  
│ -    move-object v15, v12+    const/4 v8, 0x2
│  
│ -    move-wide v12, v1+    new-array v8, v8, [I
│  
│ -    invoke-direct/range {v7 .. v14}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;IJJLjava/util/Map;)V+    fill-array-data v8, :array_0
│  
│ -    .line 321-    invoke-interface {v6, v15}, Ljava/util/Deque;->add(Ljava/lang/Object;)Z+    invoke-interface {v6, v7, v8}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│ -    .line 322-    invoke-virtual {v15}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIr()J+    .line 328+    invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│ -    move-result-wide v7+    move-result-object v7
│  
│ -    invoke-static {v7, v8}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    invoke-interface {v13, v7, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│ -    move-result-object v7+    .line 330+    new-instance v11, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;
│  
│ -    invoke-interface {v0, v7}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;+    const/4 v8, 0x0
│  
│ -    move-result-object v7+    const-wide/16 v9, 0x0
│  
│ -    check-cast v7, Ljava/util/List;+    move-object v6, v11
│  
│ -    if-eqz v7, :cond_1+    move-object/from16 v7, p0
│  
│ -    .line 323-    invoke-interface {v7}, Ljava/util/List;->size()I+    move-object/from16 v18, v11
│  
│ -    move-result v7+    move-wide v11, v0
│  
│ -    move v13, v7+    invoke-direct/range {v6 .. v13}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;IJJLjava/util/Map;)V
│  
│ -    goto :goto_0+    move-object/from16 v6, v18
│  
│ -    :cond_1-    const/4 v13, 0x0+    invoke-interface {v15, v6}, Ljava/util/Deque;->add(Ljava/lang/Object;)Z
│  
│ -    .line 326-    :goto_0+    .line 333
│      invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
│  
│ -    move-result-wide v17+    move-result-wide v18
│  
│ -    const/4 v7, 0x0+    const/4 v13, 0x0
│  
│ -    const/4 v11, 0x0+    const/4 v12, 0x0
│  
│ -    const/16 v16, 0x0+    const/16 v20, 0x0
│  
│ -    .line 332-    :goto_1-    invoke-interface {v6}, Ljava/util/Deque;->isEmpty()Z+    .line 337+    :goto_0+    invoke-interface {v15}, Ljava/util/Deque;->isEmpty()Z
│  
│ -    move-result v8+    move-result v6
│  
│ -    if-nez v8, :cond_a+    if-nez v6, :cond_8
│  
│ -    .line 334+    .line 339
│      invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
│  
│ -    move-result-wide v8+    move-result-wide v6
│  
│ -    sub-long v8, v8, v17+    sub-long v6, v6, v18
│  
│ -    const-wide/16 v19, 0x3e8+    const-wide/16 v8, 0x3e8
│  
│ -    .line 335-    div-long v8, v8, v19+    .line 340+    div-long/2addr v6, v8
│  
│ -    if-eqz p5, :cond_2+    if-eqz p5, :cond_1
│  
│ -    .line 336+    .line 341
│      invoke-virtual/range {p5 .. p5}, Ljava/lang/Integer;->intValue()I
│  
│ -    move-result v10--    move-object/from16 v21, v15+    move-result v8
│  
│ -    int-to-long v14, v10+    int-to-long v8, v8
│  
│ -    cmp-long v8, v8, v14+    cmp-long v6, v6, v8
│  
│ -    if-ltz v8, :cond_3+    if-ltz v6, :cond_1
│  
│ -    .line 337+    .line 342
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      const-string v1, "maxDuration limit reached!"
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 338+    .line 343
│      new-instance v0, Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;
│  
│      const/4 v1, 0x0
│  
│ -    const/4 v2, 0x0--    invoke-direct {v0, v2, v1}, Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;-><init>(ILit/unimi/dsi/fastutil/objects/ObjectBigList;)V+    invoke-direct {v0, v13, v1}, Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;-><init>(ILit/unimi/dsi/fastutil/objects/ObjectBigList;)V
│  
│      return-object v0
│  
│ -    :cond_2-    move-object/from16 v21, v15--    .line 342-    :cond_3-    invoke-interface {v6}, Ljava/util/Deque;->getLast()Ljava/lang/Object;--    move-result-object v8--    move-object v14, v8--    check-cast v14, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;--    .line 343-    invoke-virtual {v14}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIdxIl()I+    .line 347+    :cond_1+    invoke-interface {v15}, Ljava/util/Deque;->getLast()Ljava/lang/Object;
│  
│ -    move-result v8+    move-result-object v6
│  
│ -    .line 346-    invoke-virtual {v14}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIr()J+    move-object v10, v6
│  
│ -    move-result-wide v9+    check-cast v10, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;
│  
│ -    invoke-static {v9, v10}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    .line 348+    invoke-virtual {v10}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIdxIl()I
│  
│ -    move-result-object v9+    move-result v6
│  
│ -    invoke-interface {v0, v9}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;+    .line 351+    invoke-virtual {v10}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIr()J
│  
│ -    move-result-object v9+    move-result-wide v7
│  
│ -    check-cast v9, Ljava/util/List;+    invoke-static {v7, v8}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│ -    if-eqz v9, :cond_4+    move-result-object v7
│  
│ -    .line 347-    invoke-interface {v9}, Ljava/util/List;->size()I+    move-object/from16 v11, p4
│  
│ -    move-result v10+    invoke-interface {v11, v7}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
│  
│ -    move v15, v10+    move-result-object v7
│  
│ -    goto :goto_2+    check-cast v7, Ljava/util/List;
│  
│ -    :cond_4-    const/4 v15, 0x0+    if-eqz v7, :cond_2
│  
│ -    .line 349-    :goto_2-    invoke-virtual {v14}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIdxIl()I+    .line 352+    invoke-interface {v7}, Ljava/util/List;->size()I
│  
│ -    move-result v12+    move-result v8
│  
│ -    const/16 v20, 0x1+    move v9, v8
│  
│ -    if-ge v12, v15, :cond_7+    goto :goto_1
│  
│ -    add-int/lit8 v10, v7, 0x1+    :cond_2+    const/4 v9, 0x0
│  
│      .line 354
│ -    invoke-interface {v9, v12}, Ljava/util/List;->get(I)Ljava/lang/Object;--    move-result-object v7--    check-cast v7, [I+    :goto_1+    invoke-virtual {v10}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIdxIl()I
│  
│ -    aget v8, v7, v20+    move-result v8
│  
│ -    move-wide/from16 v31, v1+    const/16 v21, 0x1
│  
│ -    int-to-long v1, v8+    if-ge v8, v9, :cond_5
│  
│ -    .line 357-    invoke-virtual {v14}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIl()J+    .line 358+    invoke-interface {v7, v8}, Ljava/util/List;->get(I)Ljava/lang/Object;
│  
│ -    move-result-wide v23+    move-result-object v6
│  
│ -    cmp-long v7, v1, v23+    check-cast v6, [I
│  
│ -    if-lez v7, :cond_6+    aget v6, v6, v21
│  
│ -    .line 359-    invoke-interface {v9, v12}, Ljava/util/List;->get(I)Ljava/lang/Object;+    move-object/from16 v31, v14
│  
│ -    move-result-object v7+    int-to-long v13, v6
│  
│ -    check-cast v7, [I+    .line 361+    invoke-virtual {v10}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIl()J
│  
│ -    const/16 v22, 0x0+    move-result-wide v22
│  
│ -    aget v9, v7, v22+    cmp-long v22, v13, v22
│  
│ -    const-string v23, "computeLinkMatrix"+    if-lez v22, :cond_4
│  
│      .line 363
│ -    invoke-virtual/range {v21 .. v21}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getIdxIl()I+    invoke-interface {v7, v8}, Ljava/util/List;->get(I)Ljava/lang/Object;
│  
│ -    move-result v7+    move-result-object v7
│  
│ -    move-object/from16 v33, v6+    check-cast v7, [I
│  
│ -    int-to-long v6, v7+    const/16 v30, 0x0
│  
│ -    move-wide/from16 v34, v1+    aget v7, v7, v30
│  
│ -    int-to-long v0, v13+    .line 365+    rem-int/lit8 v22, v12, 0x32
│  
│ -    new-instance v2, Ljava/lang/StringBuilder;+    if-nez v22, :cond_3
│  
│ -    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V+    .line 366+    sget-object v22, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;
│  
│ -    invoke-virtual {v2, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;+    invoke-interface/range {v22 .. v22}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│ -    move/from16 v36, v9+    move-result v22
│  
│ -    const-string v9, "/"+    if-eqz v22, :cond_3
│  
│ -    invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    move/from16 v32, v6
│  
│ -    invoke-virtual {v2, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;+    .line 367+    new-instance v6, Ljava/lang/StringBuilder;
│  
│ -    const-string v9, ", "+    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    move/from16 v33, v7
│  
│ -    .line 365-    invoke-interface {v5}, Ljava/util/Map;->size()I+    const-string v7, "Computing link matrix... Task "
│  
│ -    move-result v9+    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;+    invoke-virtual {v6, v12}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│ -    const-string v9, " dlinks"+    const-string v7, "/"
│  
│ -    invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;+    invoke-virtual {v6, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    move-result-object v28+    const-string v7, " est. ("
│  
│ -    move-wide/from16 v24, v6+    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    move-wide/from16 v26, v0+    .line 373+    invoke-interface/range {v31 .. v31}, Ljava/util/Map;->size()I
│  
│ -    .line 361-    invoke-static/range {v23 .. v28}, Lcom/samourai/boltzmann/utils/Utils;->logProgress(Ljava/lang/String;JJLjava/lang/String;)V+    move-result v7
│  
│ -    .line 368-    invoke-virtual {v14}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getdOut()Ljava/util/Map;+    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│ -    move-result-object v0+    invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    move-object/from16 v7, p0+    move-result-object v6
│  
│ -    move/from16 v1, v36+    .line 367+    invoke-static {v6}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│ -    move v9, v1+    goto :goto_2
│  
│ -    move v2, v10+    :cond_3+    move/from16 v32, v6
│  
│ -    move-object/from16 v10, p3+    move/from16 v33, v7
│  
│ -    move/from16 v36, v11+    .line 378+    :goto_2+    invoke-virtual {v10}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getdOut()Ljava/util/Map;
│  
│ -    move v6, v12+    move-result-object v22
│  
│ -    move-wide v11, v3+    move/from16 v7, v32
│  
│ -    move/from16 v37, v13+    move-object/from16 v6, p0
│  
│ -    move-object v13, v0+    move/from16 v34, v33
│  
│ -    invoke-direct/range {v7 .. v13}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->runTask(IILcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;JLjava/util/Map;)Ljava/util/Map;+    move/from16 v32, v8
│  
│ -    move-result-object v30+    move/from16 v8, v34
│  
│ -    add-int/lit8 v12, v6, 0x1+    move/from16 v33, v9
│  
│ -    .line 371-    invoke-virtual {v14, v12}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->setIdxIl(I)V+    move-object/from16 v9, p3
│  
│ -    add-int/lit8 v10, v2, 0x1+    move-wide/from16 v35, v0
│  
│ -    .line 375-    new-instance v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;+    move-object v0, v10
│  
│ -    const/16 v25, 0x0+    move-wide v10, v2
│  
│ -    int-to-long v1, v1+    move v1, v12
│  
│ -    move-object/from16 v23, v0+    move-object/from16 v12, v22
│  
│ -    move-object/from16 v24, p0+    invoke-direct/range {v6 .. v12}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->runTask(IILcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;JLjava/util/Map;)Ljava/util/Map;
│  
│ -    move-wide/from16 v26, v34+    move-result-object v29
│  
│ -    move-wide/from16 v28, v1+    add-int/lit8 v8, v32, 0x1
│  
│ -    invoke-direct/range {v23 .. v30}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;IJJLjava/util/Map;)V+    .line 381+    invoke-virtual {v0, v8}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->setIdxIl(I)V
│  
│ -    move-object/from16 v11, v33+    .line 384+    new-instance v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;
│  
│ -    invoke-interface {v11, v0}, Ljava/util/Deque;->add(Ljava/lang/Object;)Z+    const/16 v24, 0x0
│  
│ -    .line 376-    invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    move/from16 v6, v34
│  
│ -    move-result-object v0+    int-to-long v6, v6
│  
│ -    move-object/from16 v1, p4+    move-object/from16 v22, v0
│  
│ -    invoke-interface {v1, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;+    move-object/from16 v23, p0
│  
│ -    move-result-object v0+    move-wide/from16 v25, v13
│  
│ -    check-cast v0, Ljava/util/List;+    move-wide/from16 v27, v6
│  
│ -    if-eqz v0, :cond_5+    invoke-direct/range {v22 .. v29}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;IJJLjava/util/Map;)V
│  
│ -    .line 377-    invoke-interface {v0}, Ljava/util/List;->size()I+    invoke-interface {v15, v0}, Ljava/util/Deque;->add(Ljava/lang/Object;)Z
│  
│ -    move-result v14+    move/from16 v6, v32
│  
│      goto :goto_3
│  
│ -    :cond_5-    const/4 v14, 0x0--    :goto_3-    add-int v0, v36, v14--    move/from16 v36, v0--    move v8, v6--    move v7, v10--    goto :goto_4--    :cond_6-    move-object v1, v0--    move v2, v10--    move/from16 v36, v11--    move/from16 v37, v13+    :cond_4+    move-wide/from16 v35, v0
│  
│ -    const/16 v22, 0x0+    move/from16 v33, v9
│  
│ -    move-object v11, v6+    move v1, v12
│  
│ -    .line 384-    invoke-interface {v9}, Ljava/util/List;->size()I+    const/16 v30, 0x0
│  
│ -    move-result v8+    .line 390+    invoke-interface {v7}, Ljava/util/List;->size()I
│  
│ -    move v7, v2+    move-result v6
│  
│ -    goto :goto_4+    goto :goto_3
│  
│ -    :cond_7-    move-wide/from16 v31, v1+    :cond_5+    move-wide/from16 v35, v0
│  
│ -    move/from16 v36, v11+    move/from16 v33, v9
│  
│ -    move/from16 v37, v13+    move v1, v12
│  
│ -    const/16 v22, 0x0+    move-object/from16 v31, v14
│  
│ -    move-object v1, v0+    const/16 v30, 0x0
│  
│ -    move-object v11, v6+    :goto_3+    add-int/lit8 v12, v1, 0x1
│  
│ -    :goto_4-    add-int/lit8 v15, v15, -0x1+    add-int/lit8 v9, v33, -0x1
│  
│ -    if-le v8, v15, :cond_9+    if-le v6, v9, :cond_6
│  
│ -    .line 392-    invoke-interface {v11}, Ljava/util/Deque;->removeLast()Ljava/lang/Object;+    .line 399+    invoke-interface {v15}, Ljava/util/Deque;->removeLast()Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;
│  
│ -    .line 395-    invoke-interface {v11}, Ljava/util/Deque;->isEmpty()Z+    .line 402+    invoke-interface {v15}, Ljava/util/Deque;->isEmpty()Z
│  
│ -    move-result v2+    move-result v1
│  
│ -    if-eqz v2, :cond_8+    if-eqz v1, :cond_7
│  
│ -    .line 397+    .line 404
│      invoke-virtual {v0}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getdOut()Ljava/util/Map;
│  
│      move-result-object v0
│  
│ -    invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│ -    move-result-object v2+    move-result-object v1
│  
│ -    invoke-interface {v0, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;+    invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/util/Map;
│  
│ -    const-wide/16 v8, 0x0--    invoke-static {v8, v9}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    invoke-static/range {v16 .. v17}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│ -    move-result-object v2+    move-result-object v1
│  
│ -    invoke-interface {v0, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;+    invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, [I
│  
│ -    aget v16, v0, v20+    aget v20, v0, v21
│  
│ -    :goto_5-    move-object/from16 v6, p0+    :cond_6+    move-object/from16 v14, p0
│  
│ -    goto :goto_6+    move-object/from16 v13, v31
│  
│ -    :cond_8-    const-wide/16 v8, 0x0+    goto :goto_4
│  
│ -    .line 400-    invoke-interface {v11}, Ljava/util/Deque;->getLast()Ljava/lang/Object;+    .line 407+    :cond_7+    invoke-interface {v15}, Ljava/util/Deque;->getLast()Ljava/lang/Object;
│  
│ -    move-result-object v2+    move-result-object v1
│  
│ -    check-cast v2, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;+    check-cast v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;
│  
│ -    move-object/from16 v6, p0+    move-object/from16 v14, p0
│  
│ -    .line 402-    invoke-direct {v6, v0, v2, v5}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->onTaskCompleted(Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;Ljava/util/Map;)V+    move-object/from16 v13, v31
│  
│ -    goto :goto_6+    .line 409+    invoke-direct {v14, v0, v1, v13}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->onTaskCompleted(Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;Ljava/util/Map;)V
│  
│ -    :cond_9-    const-wide/16 v8, 0x0+    :goto_4+    move-object v14, v13
│  
│ -    goto :goto_5+    move-wide/from16 v0, v35
│  
│ -    :goto_6-    move-object v0, v1+    const/4 v13, 0x0
│  
│ -    move-object v6, v11+    goto/16 :goto_0
│  
│ -    move-object/from16 v15, v21+    :cond_8+    move-wide/from16 v35, v0
│  
│ -    move-wide/from16 v1, v31+    move v1, v12
│  
│ -    move/from16 v11, v36+    move-object v13, v14
│  
│ -    move/from16 v13, v37+    move-object/from16 v14, p0
│  
│ -    goto/16 :goto_1+    .line 413+    sget-object v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;
│  
│ -    :cond_a-    move-object/from16 v6, p0+    invoke-interface {v0}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│ -    move-wide/from16 v31, v1+    move-result v0
│  
│ -    move/from16 v37, v13+    if-eqz v0, :cond_9
│  
│ -    const-string v0, "computeLinkMatrix"+    .line 414+    new-instance v0, Ljava/lang/StringBuilder;
│  
│ -    move/from16 v14, v37+    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    int-to-long v1, v14+    const-string v6, "Computing link matrix DONE... ("
│  
│ -    .line 406-    new-instance v7, Ljava/lang/StringBuilder;+    invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V+    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│ -    invoke-interface {v5}, Ljava/util/Map;->size()I+    const-string v1, " iterations/"
│  
│ -    move-result v8+    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;+    invoke-virtual {v0, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    const-string v8, " dlinks"+    const-string v1, " est.)"
│  
│ -    invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;+    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    move-result-object v7+    move-result-object v0
│  
│ -    invoke-static {v0, v1, v2, v7}, Lcom/samourai/boltzmann/utils/Utils;->logProgressDone(Ljava/lang/String;JLjava/lang/String;)V+    invoke-static {v0}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│ -    move-object/from16 v7, p0+    :cond_9+    move-object/from16 v6, p0
│  
│ -    move-object/from16 v8, p2+    move-object/from16 v7, p2
│  
│ -    move-wide/from16 v9, v31+    move-wide/from16 v8, v35
│  
│ -    move-wide v11, v3+    move-wide v10, v2
│  
│ -    move-object v13, v5+    move-object v12, v13
│  
│ -    move/from16 v14, v16+    move/from16 v13, v20
│  
│ -    .line 408-    invoke-direct/range {v7 .. v14}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->finalizeLinkMatrix(Lcom/samourai/boltzmann/aggregator/TxosAggregates;JJLjava/util/Map;I)Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;+    .line 418+    invoke-direct/range {v6 .. v13}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->finalizeLinkMatrix(Lcom/samourai/boltzmann/aggregator/TxosAggregates;JJLjava/util/Map;I)Lcom/samourai/boltzmann/aggregator/TxosAggregatorResult;
│  
│      move-result-object v0
│  
│      return-object v0
│  
│      :array_0
│      .array-data 4
│ @@ -1832,36 +1766,36 @@
│              "Lit/unimi/dsi/fastutil/ints/IntBigList;",
│              ">;I)",
│              "Ljava/util/Set<",
│              "[J>;"
│          }
│      .end annotation
│  
│ -    .line 706+    .line 717
│      new-instance v0, Ljava/util/LinkedHashSet;
│  
│      invoke-direct {v0}, Ljava/util/LinkedHashSet;-><init>()V
│  
│      const-wide/16 v1, 0x0
│  
│      move-wide v3, v1
│  
│ -    .line 707+    .line 718
│      :goto_0
│      invoke-interface {p1}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->size64()J
│  
│      move-result-wide v5
│  
│      cmp-long v5, v3, v5
│  
│      if-gez v5, :cond_2
│  
│      move-wide v5, v1
│  
│ -    .line 708+    .line 719
│      :goto_1
│      invoke-interface {p1, v3, v4}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object v7
│  
│      check-cast v7, Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│ @@ -1871,30 +1805,30 @@
│  
│      const-wide/16 v9, 0x1
│  
│      cmp-long v7, v5, v7
│  
│      if-gez v7, :cond_1
│  
│ -    .line 709+    .line 720
│      invoke-interface {p1, v3, v4}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->get(J)Ljava/lang/Object;
│  
│      move-result-object v7
│  
│      check-cast v7, Lit/unimi/dsi/fastutil/ints/IntBigList;
│  
│      invoke-interface {v7, v5, v6}, Lit/unimi/dsi/fastutil/ints/IntBigList;->getInt(J)I
│  
│      move-result v7
│  
│      if-ne v7, p2, :cond_0
│  
│      const/4 v7, 0x2
│  
│ -    .line 710+    .line 721
│      new-array v7, v7, [J
│  
│      const/4 v8, 0x0
│  
│      aput-wide v3, v7, v8
│  
│      const/4 v8, 0x1
│ @@ -1918,15 +1852,15 @@
│      goto :goto_0
│  
│      :cond_2
│      return-object v0
│  .end method
│  
│  .method public matchAggByVal(Lcom/samourai/boltzmann/aggregator/TxosAggregates;JLcom/samourai/boltzmann/linker/IntraFees;)Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;
│ -    .locals 24+    .locals 23
│  
│      .line 32
│      invoke-virtual/range {p1 .. p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregates;->getInAgg()Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;
│  
│      move-result-object v0
│  
│      invoke-virtual {v0}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;->getAllAggVal()[J
│ @@ -1953,97 +1887,95 @@
│  
│      invoke-interface {v0}, Ljava8/util/stream/LongStream;->sorted()Ljava8/util/stream/LongStream;
│  
│      move-result-object v0
│  
│      invoke-interface {v0}, Ljava8/util/stream/LongStream;->toArray()[J
│  
│ -    move-result-object v0+    move-result-object v3
│  
│      .line 37
│      invoke-static/range {v16 .. v16}, Ljava8/util/stream/LongStreams;->of([J)Ljava8/util/stream/LongStream;
│  
│ -    move-result-object v1+    move-result-object v0
│  
│ -    invoke-interface {v1}, Ljava8/util/stream/LongStream;->distinct()Ljava8/util/stream/LongStream;+    invoke-interface {v0}, Ljava8/util/stream/LongStream;->distinct()Ljava8/util/stream/LongStream;
│  
│ -    move-result-object v1+    move-result-object v0
│  
│ -    invoke-interface {v1}, Ljava8/util/stream/LongStream;->sorted()Ljava8/util/stream/LongStream;+    invoke-interface {v0}, Ljava8/util/stream/LongStream;->sorted()Ljava8/util/stream/LongStream;
│  
│ -    move-result-object v1+    move-result-object v0
│  
│ -    invoke-interface {v1}, Ljava8/util/stream/LongStream;->toArray()[J+    invoke-interface {v0}, Ljava8/util/stream/LongStream;->toArray()[J
│  
│      move-result-object v4
│  
│      .line 39
│ -    sget-object v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;+    sget-object v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;
│  
│ -    invoke-interface {v1}, Lorg/slf4j/Logger;->isDebugEnabled()Z+    invoke-interface {v0}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│ -    move-result v1+    move-result v0
│  
│ -    if-eqz v1, :cond_0+    if-eqz v0, :cond_0
│  
│      .line 40
│ -    new-instance v1, Ljava/lang/StringBuilder;+    new-instance v0, Ljava/lang/StringBuilder;
│  
│ -    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V+    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    const-string v2, "Matching aggregates: "+    const-string v1, "Matching aggregates: "
│  
│ -    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    array-length v2, v4+    array-length v1, v4
│  
│ -    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;+    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│ -    const-string v2, "x"+    const-string v1, "x"
│  
│ -    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    array-length v2, v0+    array-length v1, v3
│  
│ -    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;+    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;+    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    move-result-object v1+    move-result-object v0
│  
│ -    invoke-static {v1}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V+    invoke-static {v0}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│      .line 44
│      :cond_0
│ -    new-instance v15, Ljava/util/ArrayList;+    new-instance v0, Ljava/util/ArrayList;
│  
│ -    invoke-direct {v15}, Ljava/util/ArrayList;-><init>()V+    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
│  
│      .line 45
│ -    new-instance v14, Ljava/util/HashMap;+    new-instance v15, Ljava/util/HashMap;
│  
│ -    invoke-direct {v14}, Ljava/util/HashMap;-><init>()V+    invoke-direct {v15}, Ljava/util/HashMap;-><init>()V
│  
│      .line 46
│ -    new-instance v13, Ljava/util/LinkedHashMap;+    new-instance v14, Ljava/util/LinkedHashMap;
│  
│ -    invoke-direct {v13}, Ljava/util/LinkedHashMap;-><init>()V+    invoke-direct {v14}, Ljava/util/LinkedHashMap;-><init>()V
│  
│      const/4 v1, 0x0
│  
│      if-eqz p4, :cond_1
│  
│      .line 49
│      invoke-virtual/range {p4 .. p4}, Lcom/samourai/boltzmann/linker/IntraFees;->hasFees()Z
│  
│ -    move-result v3--    if-eqz v3, :cond_1+    move-result v5
│  
│ -    const/4 v3, 0x1+    if-eqz v5, :cond_1
│  
│      const/4 v5, 0x1
│  
│      goto :goto_0
│  
│      :cond_1
│      const/4 v5, 0x0
│ @@ -2069,90 +2001,85 @@
│  
│      :goto_1
│      if-eqz v5, :cond_3
│  
│      .line 53
│      invoke-virtual/range {p4 .. p4}, Lcom/samourai/boltzmann/linker/IntraFees;->getFeesMaker()J
│  
│ -    move-result-wide v2--    neg-long v2, v2+    move-result-wide v6
│  
│ -    move-wide v8, v2--    goto :goto_2+    neg-long v6, v6
│  
│      :cond_3
│      move-wide v8, v6
│  
│ -    .line 58-    :goto_2-    array-length v2, v0+    .line 57+    array-length v2, v3
│  
│      invoke-static {v1, v2}, Ljava8/util/stream/IntStreams;->range(II)Ljava8/util/stream/IntStream;
│  
│      move-result-object v1
│  
│ -    .line 59+    .line 58
│      invoke-interface {v1}, Ljava8/util/stream/IntStream;->parallel()Ljava8/util/stream/IntStream;
│  
│ -    move-result-object v6+    move-result-object v13
│  
│ -    new-instance v7, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;+    new-instance v6, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;
│  
│ -    move-object v1, v7+    move-object v1, v6
│  
│      move-object/from16 v2, p0
│  
│ -    move-object v3, v0--    move-object/from16 v19, v0--    move-object/from16 v20, v6--    move-object v0, v7+    move-object/from16 v19, v6
│  
│      move-wide/from16 v6, p2
│  
│      move-wide/from16 v10, v17
│  
│ -    move-object/from16 v21, v13+    move-object/from16 v20, v13
│  
│ -    move-object v13, v15+    move-object v13, v0
│  
│ -    move-object/from16 v22, v14+    move-object/from16 v21, v14
│  
│ -    move-object/from16 v23, v15+    move-object v14, v15++    move-object/from16 v22, v0++    move-object v0, v15
│  
│      move-object/from16 v15, v21
│  
│      invoke-direct/range {v1 .. v16}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[J[JZJJJ[JLjava/util/List;Ljava/util/Map;Ljava/util/Map;[J)V
│  
│ +    move-object/from16 v2, v19+
│      move-object/from16 v1, v20
│  
│ -    .line 60-    invoke-interface {v1, v0}, Ljava8/util/stream/IntStream;->forEachOrdered(Ljava8/util/function/IntConsumer;)V+    .line 59+    invoke-interface {v1, v2}, Ljava8/util/stream/IntStream;->forEachOrdered(Ljava8/util/function/IntConsumer;)V
│  
│ -    const-string v0, "matchAggByVal"+    .line 119+    sget-object v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->log:Lorg/slf4j/Logger;
│  
│ -    move-object/from16 v1, v19+    invoke-interface {v1}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│ -    .line 116-    array-length v1, v1+    move-result v1
│  
│ -    int-to-long v1, v1+    if-eqz v1, :cond_4
│  
│ -    invoke-static {v0, v1, v2}, Lcom/samourai/boltzmann/utils/Utils;->logProgressDone(Ljava/lang/String;J)V+    .line 120+    invoke-static {}, Lcom/samourai/boltzmann/utils/Utils;->logMemory()V
│  
│ -    .line 117-    new-instance v0, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;+    .line 122+    :cond_4+    new-instance v1, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;
│  
│      move-object/from16 v3, v21
│  
│      move-object/from16 v2, v22
│  
│ -    move-object/from16 v1, v23+    invoke-direct {v1, v2, v0, v3}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;-><init>(Ljava/util/List;Ljava/util/Map;Ljava/util/Map;)V
│  
│ -    invoke-direct {v0, v1, v2, v3}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;-><init>(Ljava/util/List;Ljava/util/Map;Ljava/util/Map;)V--    return-object v0+    return-object v1
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$1.smali
│ @@ -43,15 +43,15 @@
│  .field final synthetic val$valToMatchOutAgg:Ljava/util/Map;
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[J[JZJJJ[JLjava/util/List;Ljava/util/Map;Ljava/util/Map;[J)V
│      .locals 0
│  
│ -    .line 61+    .line 60
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iput-object p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allUniqueInAggVal:[J
│  
│      iput-object p3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allUniqueOutAggVal:[J
│  
│      iput-boolean p4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$hasIntraFees:Z
│ @@ -78,245 +78,272 @@
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(I)V
│      .locals 13
│  
│ -    .line 64+    .line 63
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allUniqueInAggVal:[J
│  
│      aget-wide v1, v0, p1
│  
│ -    const-string v0, "matchAggByVal"+    .line 65+    rem-int/lit16 v0, p1, 0x190
│  
│ -    int-to-long v3, p1+    if-nez v0, :cond_0
│  
│      .line 66
│ +    invoke-static {}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$000()Lorg/slf4j/Logger;++    move-result-object v0++    invoke-interface {v0}, Lorg/slf4j/Logger;->isDebugEnabled()Z++    move-result v0++    if-eqz v0, :cond_0++    .line 67+    new-instance v0, Ljava/lang/StringBuilder;++    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V++    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;++    const-string p1, "/"++    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+
│      iget-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allUniqueInAggVal:[J
│  
│      array-length p1, p1
│  
│ -    int-to-long v5, p1+    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;++    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    invoke-static {v0, v3, v4, v5, v6}, Lcom/samourai/boltzmann/utils/Utils;->logProgress(Ljava/lang/String;JJ)V+    move-result-object p1
│  
│ +    invoke-static {p1}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V++    :cond_0
│      const/4 p1, 0x0
│  
│      const/4 v0, 0x0
│  
│ -    .line 68+    .line 71
│      :goto_0
│      iget-object v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allUniqueOutAggVal:[J
│  
│      array-length v3, v3
│  
│ -    if-ge v0, v3, :cond_a+    if-ge v0, v3, :cond_b
│  
│ -    .line 69+    .line 72
│      iget-object v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allUniqueOutAggVal:[J
│  
│      aget-wide v4, v3, v0
│  
│      sub-long v6, v1, v4
│  
│ -    .line 73+    .line 76
│      iget-boolean v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$hasIntraFees:Z
│  
│      const-wide/16 v8, 0x0
│  
│ -    if-nez v3, :cond_0+    if-nez v3, :cond_1
│  
│      cmp-long v3, v6, v8
│  
│ -    if-gez v3, :cond_0+    if-gez v3, :cond_1
│  
│      goto/16 :goto_4
│  
│ -    .line 77-    :cond_0+    .line 80+    :cond_1
│      iget-boolean v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$hasIntraFees:Z
│  
│      const/4 v10, 0x1
│  
│ -    if-nez v3, :cond_1+    if-nez v3, :cond_2
│  
│      iget-wide v11, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$fees:J
│  
│      cmp-long v3, v6, v11
│  
│ -    if-gtz v3, :cond_1+    if-gtz v3, :cond_2
│  
│      const/4 v3, 0x1
│  
│      goto :goto_1
│  
│ -    :cond_1+    :cond_2
│      const/4 v3, 0x0
│  
│ -    .line 78+    .line 81
│      :goto_1
│      iget-boolean v11, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$hasIntraFees:Z
│  
│ -    if-eqz v11, :cond_3+    if-eqz v11, :cond_4
│  
│      cmp-long v8, v6, v8
│  
│ -    if-gtz v8, :cond_2+    if-gtz v8, :cond_3
│  
│      iget-wide v11, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$feesMaker:J
│  
│      cmp-long v9, v6, v11
│  
│ -    if-gez v9, :cond_4+    if-gez v9, :cond_5
│  
│ -    :cond_2-    if-ltz v8, :cond_3+    :cond_3+    if-ltz v8, :cond_4
│  
│      iget-wide v8, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$feesTaker:J
│  
│      cmp-long v6, v6, v8
│  
│ -    if-gtz v6, :cond_3+    if-gtz v6, :cond_4
│  
│      goto :goto_2
│  
│ -    :cond_3+    :cond_4
│      const/4 v10, 0x0
│  
│ -    :cond_4+    :cond_5
│      :goto_2
│ -    if-nez v3, :cond_5+    if-nez v3, :cond_6
│  
│ -    if-eqz v10, :cond_9+    if-eqz v10, :cond_a
│  
│ -    :cond_5+    :cond_6
│      const/4 v3, 0x0
│  
│ -    .line 85+    .line 88
│      :goto_3
│      iget-object v6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allInAggVal:[J
│  
│      array-length v6, v6
│  
│ -    if-ge v3, v6, :cond_7+    if-ge v3, v6, :cond_8
│  
│ -    .line 86+    .line 89
│      iget-object v6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allInAggVal:[J
│  
│      aget-wide v7, v6, v3
│  
│      cmp-long v6, v7, v1
│  
│ -    if-nez v6, :cond_6+    if-nez v6, :cond_7
│  
│ -    .line 87+    .line 90
│      iget-object v6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allMatchInAgg:Ljava/util/List;
│  
│      invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
│  
│      move-result-object v7
│  
│      invoke-interface {v6, v7}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
│  
│      move-result v6
│  
│ -    if-nez v6, :cond_6+    if-nez v6, :cond_7
│  
│ -    .line 88+    .line 91
│      iget-object v6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allMatchInAgg:Ljava/util/List;
│  
│      invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
│  
│      move-result-object v7
│  
│      invoke-interface {v6, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z
│  
│ -    .line 89+    .line 92
│      iget-object v6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$matchInAggToVal:Ljava/util/Map;
│  
│      invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
│  
│      move-result-object v7
│  
│      invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v8
│  
│      invoke-interface {v6, v7, v8}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│ -    :cond_6+    :cond_7
│      add-int/lit8 v3, v3, 0x1
│  
│      goto :goto_3
│  
│ -    .line 95-    :cond_7+    .line 98+    :cond_8
│      iget-object v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$valToMatchOutAgg:Ljava/util/Map;
│  
│      invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v6
│  
│      invoke-interface {v3, v6}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
│  
│      move-result v3
│  
│ -    if-nez v3, :cond_8+    if-nez v3, :cond_9
│  
│ -    .line 96+    .line 99
│      iget-object v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$valToMatchOutAgg:Ljava/util/Map;
│  
│      invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v6
│  
│      new-instance v7, Ljava/util/ArrayList;
│  
│      invoke-direct {v7}, Ljava/util/ArrayList;-><init>()V
│  
│      invoke-interface {v3, v6, v7}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│ -    .line 98-    :cond_8+    .line 101+    :cond_9
│      iget-object v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$valToMatchOutAgg:Ljava/util/Map;
│  
│      invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v6
│  
│      invoke-interface {v3, v6}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
│  
│      move-result-object v3
│  
│      check-cast v3, Ljava/util/List;
│  
│ -    .line 100+    .line 103
│      iget-object v6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;->val$allOutAggVal:[J
│  
│      array-length v6, v6
│  
│      invoke-static {p1, v6}, Ljava8/util/stream/IntStreams;->range(II)Ljava8/util/stream/IntStream;
│  
│      move-result-object v6
│  
│ -    .line 101+    .line 104
│      invoke-interface {v6}, Ljava8/util/stream/IntStream;->parallel()Ljava8/util/stream/IntStream;
│  
│      move-result-object v6
│  
│      new-instance v7, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1$1;
│  
│      invoke-direct {v7, p0, v4, v5, v3}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$1$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$1;JLjava/util/List;)V
│  
│ -    .line 102+    .line 105
│      invoke-interface {v6, v7}, Ljava8/util/stream/IntStream;->forEachOrdered(Ljava8/util/function/IntConsumer;)V
│  
│ -    :cond_9+    :cond_a
│      add-int/lit8 v0, v0, 0x1
│  
│      goto/16 :goto_0
│  
│ -    :cond_a+    :cond_b
│      :goto_4
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$4.smali
│ @@ -33,122 +33,129 @@
│  # instance fields
│  .field final synthetic this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│  .field final synthetic val$allAgg:Lcom/samourai/boltzmann/aggregator/TxosAggregates;
│  
│  .field final synthetic val$dLinks:Ljava/util/Map;
│  
│ -.field final synthetic val$i:[J-
│  .field final synthetic val$links:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│  .field final synthetic val$linksClear:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│  .field final synthetic val$linksX:J
│  
│  .field final synthetic val$linksY:J
│  
│  
│  # direct methods
│ -.method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[JLjava/util/Map;JJLit/unimi/dsi/fastutil/objects/ObjectBigList;Lcom/samourai/boltzmann/aggregator/TxosAggregates;Lit/unimi/dsi/fastutil/objects/ObjectBigList;)V+.method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;JJLit/unimi/dsi/fastutil/objects/ObjectBigList;Lcom/samourai/boltzmann/aggregator/TxosAggregates;Lit/unimi/dsi/fastutil/objects/ObjectBigList;)V
│      .locals 0
│  
│ -    .line 437+    .line 445
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│ -    iput-object p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$i:[J+    iput-object p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$dLinks:Ljava/util/Map;
│  
│ -    iput-object p3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$dLinks:Ljava/util/Map;+    iput-wide p3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksX:J
│  
│ -    iput-wide p4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksX:J+    iput-wide p5, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksY:J
│  
│ -    iput-wide p6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksY:J+    iput-object p7, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksClear:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│ -    iput-object p8, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksClear:Lit/unimi/dsi/fastutil/objects/ObjectBigList;+    iput-object p8, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$allAgg:Lcom/samourai/boltzmann/aggregator/TxosAggregates;
│  
│ -    iput-object p9, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$allAgg:Lcom/samourai/boltzmann/aggregator/TxosAggregates;--    iput-object p10, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$links:Lit/unimi/dsi/fastutil/objects/ObjectBigList;+    iput-object p9, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$links:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public bridge synthetic accept(Ljava/lang/Object;)V
│      .locals 0
│  
│ -    .line 437+    .line 445
│      check-cast p1, Ljava/util/Map$Entry;
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->accept(Ljava/util/Map$Entry;)V
│  
│      return-void
│  .end method
│  
│  .method public accept(Ljava/util/Map$Entry;)V
│ -    .locals 11+    .locals 6
│      .annotation system Ldalvik/annotation/Signature;
│          value = {
│              "(",
│              "Ljava/util/Map$Entry<",
│              "Ljava/lang/Long;",
│              "Ljava/util/Map<",
│              "Ljava/lang/Long;",
│              "Ljava/lang/Integer;",
│              ">;>;)V"
│          }
│      .end annotation
│  
│ -    .line 440+    .line 448
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/lang/Long;
│  
│      invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
│  
│      move-result-wide v0
│  
│ -    const-string v2, "finalizeLinkMatrix"+    const-wide/16 v2, 0x64
│  
│ -    .line 442-    iget-object v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$i:[J+    .line 450+    rem-long v2, v0, v2
│  
│ -    const/4 v4, 0x0+    const-wide/16 v4, 0x0
│  
│ -    aget-wide v5, v3, v4+    cmp-long v2, v2, v4
│  
│ -    const-wide/16 v7, 0x1+    if-nez v2, :cond_0
│  
│ -    add-long/2addr v7, v5+    .line 451+    invoke-static {}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$000()Lorg/slf4j/Logger;
│  
│ -    aput-wide v7, v3, v4+    move-result-object v2
│  
│ -    iget-object v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$dLinks:Ljava/util/Map;+    new-instance v3, Ljava/lang/StringBuilder;
│  
│ -    .line 445-    invoke-interface {v3}, Ljava/util/Map;->size()I+    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    move-result v3+    const-string v4, "Processing dLink "
│  
│ -    int-to-long v7, v3+    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    new-instance v3, Ljava/lang/StringBuilder;+    invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V+    const-string v4, "/"++    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;++    iget-object v4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$dLinks:Ljava/util/Map;
│  
│ -    const-string v4, "Processing dLink... "+    .line 455+    invoke-interface {v4}, Ljava/util/Map;->size()I++    move-result v4++    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;++    const-string v4, ": "
│  
│      invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 447+    .line 457
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object v4
│  
│      check-cast v4, Ljava/util/Map;
│  
│      invoke-interface {v4}, Ljava/util/Map;->size()I
│ @@ -157,67 +164,62 @@
│  
│      invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│      const-string v4, " x ("
│  
│      invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    iget-wide v9, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksX:J+    iget-wide v4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksX:J
│  
│ -    invoke-virtual {v3, v9, v10}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;+    invoke-virtual {v3, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│      const-string v4, "x"
│  
│      invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    iget-wide v9, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksY:J+    iget-wide v4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksY:J
│  
│ -    invoke-virtual {v3, v9, v10}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;+    invoke-virtual {v3, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│      const-string v4, ")"
│  
│      invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    move-result-object v9--    move-wide v3, v5--    move-wide v5, v7+    move-result-object v3
│  
│ -    move-object v7, v9+    .line 451+    invoke-interface {v2, v3}, Lorg/slf4j/Logger;->info(Ljava/lang/String;)V
│  
│ -    .line 442-    invoke-static/range {v2 .. v7}, Lcom/samourai/boltzmann/utils/Utils;->logProgress(Ljava/lang/String;JJLjava/lang/String;)V--    .line 455+    .line 466+    :cond_0
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava/util/Map;
│  
│      invoke-interface {p1}, Ljava/util/Map;->entrySet()Ljava/util/Set;
│  
│      move-result-object p1
│  
│      invoke-static {p1}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object p1
│  
│ -    .line 456+    .line 467
│      invoke-interface {p1}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object p1
│  
│      check-cast p1, Ljava8/util/stream/Stream;
│  
│      new-instance v2, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;
│  
│      invoke-direct {v2, p0, v0, v1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;J)V
│  
│ -    .line 457+    .line 468
│      invoke-interface {p1, v2}, Ljava8/util/stream/Stream;->forEachOrdered(Ljava8/util/function/Consumer;)V
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$6$2.smali
│ @@ -34,15 +34,15 @@
│  .field final synthetic val$sol:J
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;JI)V
│      .locals 0
│  
│ -    .line 607+    .line 618
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;
│  
│      iput-wide p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->val$sol:J
│  
│      iput p4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->val$nbPrt:I
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│ @@ -51,15 +51,15 @@
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(Ljava/lang/Integer;)V
│      .locals 9
│  
│ -    .line 612+    .line 623
│      iget-wide v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->val$sol:J
│  
│      invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
│  
│      move-result v2
│  
│      int-to-long v2, v2
│ @@ -68,33 +68,33 @@
│  
│      const-wide/16 v2, 0x0
│  
│      cmp-long v0, v0, v2
│  
│      if-nez v0, :cond_0
│  
│ -    .line 616+    .line 627
│      iget-wide v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->val$sol:J
│  
│      invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
│  
│      move-result v4
│  
│      int-to-long v4, v4
│  
│      add-long/2addr v0, v4
│  
│ -    .line 617+    .line 628
│      iget-object v4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;
│  
│      iget-wide v4, v4, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$otGt:J
│  
│      sub-long/2addr v4, v0
│  
│ -    .line 620+    .line 631
│      iget-object v6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;
│  
│      iget-object v6, v6, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$aggMatches:Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;
│  
│      invoke-virtual {v6}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;->getMatchInAggToVal()Ljava/util/Map;
│  
│      move-result-object v6
│ @@ -113,20 +113,20 @@
│  
│      check-cast v6, Ljava/lang/Long;
│  
│      invoke-virtual {v6}, Ljava/lang/Long;->longValue()J
│  
│      move-result-wide v6
│  
│ -    .line 621+    .line 632
│      iget-object v8, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;
│  
│      iget-object v8, v8, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$aggMatches:Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;
│  
│ -    .line 622+    .line 633
│      invoke-virtual {v8}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesMatches;->getValToMatchOutAgg()Ljava/util/Map;
│  
│      move-result-object v8
│  
│      invoke-static {v6, v7}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│      move-result-object v6
│ @@ -141,39 +141,39 @@
│  
│      cmp-long v0, v0, v2
│  
│      if-nez v0, :cond_0
│  
│      long-to-int v0, v4
│  
│ -    .line 626+    .line 637
│      invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
│  
│      move-result-object v0
│  
│      invoke-interface {v6, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
│  
│      move-result v0
│  
│      if-eqz v0, :cond_0
│  
│ -    .line 627+    .line 638
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iget-object v1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;
│  
│      iget-object v1, v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6;->val$ndOut:Ljava/util/Map;
│  
│ -    invoke-static {v0, v1, v4, v5}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$300(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;J)Ljava/util/Map;+    invoke-static {v0, v1, v4, v5}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$400(Lcom/samourai/boltzmann/aggregator/TxosAggregator;Ljava/util/Map;J)Ljava/util/Map;
│  
│      move-result-object v0
│  
│ -    .line 628+    .line 639
│      invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
│  
│      move-result p1
│  
│      int-to-long v1, p1
│  
│      invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│ @@ -199,14 +199,14 @@
│      :cond_0
│      return-void
│  .end method
│  
│  .method public bridge synthetic accept(Ljava/lang/Object;)V
│      .locals 0
│  
│ -    .line 607+    .line 618
│      check-cast p1, Ljava/lang/Integer;
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$6$2;->accept(Ljava/lang/Integer;)V
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$5$1.smali
│ @@ -35,15 +35,15 @@
│  .field final synthetic val$rKey:[J
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;[JJ)V
│      .locals 0
│  
│ -    .line 521+    .line 532
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;
│  
│      iput-object p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->val$rKey:[J
│  
│      iput-wide p3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->val$or:J
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│ @@ -52,15 +52,15 @@
│  .end method
│  
│  
│  # virtual methods
│  .method public bridge synthetic accept(Ljava/lang/Object;)V
│      .locals 0
│  
│ -    .line 521+    .line 532
│      check-cast p1, Ljava/util/Map$Entry;
│  
│      invoke-virtual {p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->accept(Ljava/util/Map$Entry;)V
│  
│      return-void
│  .end method
│  
│ @@ -71,103 +71,103 @@
│              "(",
│              "Ljava/util/Map$Entry<",
│              "Ljava/lang/Long;",
│              "[I>;)V"
│          }
│      .end annotation
│  
│ -    .line 524+    .line 535
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/lang/Long;
│  
│      invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
│  
│      move-result-wide v0
│  
│ -    .line 525+    .line 536
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object v2
│  
│      check-cast v2, [I
│  
│      const/4 v3, 0x0
│  
│      aget v2, v2, v3
│  
│ -    .line 526+    .line 537
│      invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│      move-result-object p1
│  
│      check-cast p1, [I
│  
│      const/4 v4, 0x1
│  
│      aget p1, p1, v4
│  
│      const/4 v5, 0x2
│  
│ -    .line 528+    .line 539
│      new-array v5, v5, [J
│  
│      iget-object v6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;
│  
│      iget-wide v6, v6, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->val$il:J
│  
│      aput-wide v6, v5, v3
│  
│      aput-wide v0, v5, v4
│  
│      add-int/2addr p1, v4
│  
│ -    .line 532+    .line 543
│      monitor-enter p0
│  
│ -    .line 533+    .line 544
│      :try_start_0
│      iget-object v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;
│  
│      iget-object v3, v3, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      iget-object v4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->val$rKey:[J
│  
│      iget-object v6, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;
│  
│      iget-object v6, v6, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->val$dLinks:Ljava/util/Map;
│  
│ -    invoke-static {v3, v4, v2, v6}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$200(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[JILjava/util/Map;)V+    invoke-static {v3, v4, v2, v6}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$300(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[JILjava/util/Map;)V
│  
│ -    .line 534+    .line 545
│      iget-object v3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;
│  
│      iget-object v3, v3, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->this$0:Lcom/samourai/boltzmann/aggregator/TxosAggregator;
│  
│      mul-int v2, v2, p1
│  
│      iget-object v4, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;
│  
│      iget-object v4, v4, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->val$dLinks:Ljava/util/Map;
│  
│ -    invoke-static {v3, v5, v2, v4}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$200(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[JILjava/util/Map;)V+    invoke-static {v3, v5, v2, v4}, Lcom/samourai/boltzmann/aggregator/TxosAggregator;->access$300(Lcom/samourai/boltzmann/aggregator/TxosAggregator;[JILjava/util/Map;)V
│  
│ -    .line 535+    .line 546
│      monitor-exit p0
│      :try_end_0
│      .catchall {:try_start_0 .. :try_end_0} :catchall_0
│  
│ -    .line 539+    .line 550
│      iget-wide v2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->val$or:J
│  
│      add-long/2addr v0, v2
│  
│ -    .line 540+    .line 551
│      iget-object v2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;
│  
│      iget-object v2, v2, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5;->val$pt:Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;
│  
│      invoke-virtual {v2}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$ComputeLinkMatrixTask;->getdOut()Ljava/util/Map;
│  
│      move-result-object v2
│ @@ -178,43 +178,43 @@
│  
│      invoke-interface {v2, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava/util/Map;
│  
│ -    .line 541+    .line 552
│      invoke-interface {v0}, Ljava/util/Map;->entrySet()Ljava/util/Set;
│  
│      move-result-object v0
│  
│      invoke-static {v0}, Ljava8/util/stream/StreamSupport;->stream(Ljava/util/Collection;)Ljava8/util/stream/Stream;
│  
│      move-result-object v0
│  
│ -    .line 542+    .line 553
│      invoke-interface {v0}, Ljava8/util/stream/Stream;->parallel()Ljava8/util/stream/BaseStream;
│  
│      move-result-object v0
│  
│      check-cast v0, Ljava8/util/stream/Stream;
│  
│      new-instance v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1$1;
│  
│      invoke-direct {v1, p0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$5$1;I)V
│  
│ -    .line 543+    .line 554
│      invoke-interface {v0, v1}, Ljava8/util/stream/Stream;->forEach(Ljava8/util/function/Consumer;)V
│  
│      return-void
│  
│      :catchall_0
│      move-exception p1
│  
│ -    .line 535+    .line 546
│      :try_start_1
│      monitor-exit p0
│      :try_end_1
│      .catchall {:try_start_1 .. :try_end_1} :catchall_0
│  
│      throw p1
│  .end method
├── smali_classes2/com/samourai/boltzmann/aggregator/TxosAggregator$4$1$1.smali
│ @@ -25,15 +25,15 @@
│  .field final synthetic val$mult:I
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;Lit/unimi/dsi/fastutil/objects/ObjectBigList;I)V
│      .locals 0
│  
│ -    .line 470+    .line 481
│      iput-object p1, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;->this$2:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;
│  
│      iput-object p2, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;->val$linkCmbn:Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      iput p3, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;->val$mult:I
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│ @@ -42,34 +42,34 @@
│  .end method
│  
│  
│  # virtual methods
│  .method public accept(J)V
│      .locals 4
│  
│ -    .line 474+    .line 485
│      iget-object v0, p0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;->this$2:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;
│  
│      iget-object v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1;->this$1:Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;
│  
│      iget-wide v0, v0, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4;->val$linksY:J
│  
│      const-wide/16 v2, 0x0
│  
│      invoke-static {v2, v3, v0, v1}, Ljava8/util/stream/LongStreams;->range(JJ)Ljava8/util/stream/LongStream;
│  
│      move-result-object v0
│  
│ -    .line 475+    .line 486
│      invoke-interface {v0}, Ljava8/util/stream/LongStream;->parallel()Ljava8/util/stream/LongStream;
│  
│      move-result-object v0
│  
│      new-instance v1, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1;
│  
│      invoke-direct {v1, p0, p1, p2}, Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1$1;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregator$4$1$1;J)V
│  
│ -    .line 476+    .line 487
│      invoke-interface {v0, v1}, Ljava8/util/stream/LongStream;->forEach(Ljava8/util/function/LongConsumer;)V
│  
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/fetch/OxtFetch.smali
│ @@ -71,15 +71,15 @@
│      .line 28
│      const-class v2, Lcom/samourai/boltzmann/fetch/OxtFetch;
│  
│      new-instance v3, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    const-string v4, "/fetchTx/"+    const-string v4, "/chainSoFetch/"
│  
│      invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      const-string v4, ".json"
├── smali_classes2/com/samourai/boltzmann/beans/BoltzmannResult.smali
│ @@ -2,117 +2,108 @@
│  .super Lcom/samourai/boltzmann/processor/TxProcessorResult;
│  .source "BoltzmannResult.java"
│  
│  
│  # instance fields
│  .field private dtrmLnks:[[Ljava/lang/String;
│  
│ -.field private duration:J-
│  
│  # direct methods
│ -.method public constructor <init>(JLcom/samourai/boltzmann/processor/TxProcessorResult;)V-    .locals 14--    move-object v13, p0+.method public constructor <init>(Lcom/samourai/boltzmann/processor/TxProcessorResult;)V+    .locals 13
│  
│ -    .line 16-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getNbCmbn()I+    .line 15+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getNbCmbn()I
│  
│      move-result v1
│  
│ -    .line 17-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getMatLnkCombinations()Lit/unimi/dsi/fastutil/objects/ObjectBigList;+    .line 16+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getMatLnkCombinations()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v2
│  
│ -    .line 18-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getMatLnkProbabilities()Lit/unimi/dsi/fastutil/objects/ObjectBigList;+    .line 17+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getMatLnkProbabilities()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v3
│  
│ -    .line 19-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getEntropy()Ljava/lang/Double;+    .line 18+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getEntropy()Ljava/lang/Double;
│  
│      move-result-object v4
│  
│ -    .line 20-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getDtrmLnksById()Ljava/util/Set;+    .line 19+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getDtrmLnksById()Ljava/util/Set;
│  
│      move-result-object v5
│  
│ -    .line 21-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getTxos()Lcom/samourai/boltzmann/beans/Txos;+    .line 20+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getTxos()Lcom/samourai/boltzmann/beans/Txos;
│  
│      move-result-object v6
│  
│ -    .line 22-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getFees()J+    .line 21+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getFees()J
│  
│      move-result-wide v7
│  
│ -    .line 23-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getIntraFees()Lcom/samourai/boltzmann/linker/IntraFees;+    .line 22+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getIntraFees()Lcom/samourai/boltzmann/linker/IntraFees;
│  
│      move-result-object v9
│  
│ -    .line 24-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getEfficiency()Ljava/lang/Double;+    .line 23+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getEfficiency()Ljava/lang/Double;
│  
│      move-result-object v10
│  
│ -    .line 25-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getNbCmbnPrfctCj()Ljava/lang/Double;+    .line 24+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getNbCmbnPrfctCj()Ljava/lang/Double;
│  
│      move-result-object v11
│  
│ -    .line 26-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getNbTxosPrfctCj()Lcom/samourai/boltzmann/processor/NbTxos;+    .line 25+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getNbTxosPrfctCj()Lcom/samourai/boltzmann/processor/NbTxos;
│  
│      move-result-object v12
│  
│      move-object v0, p0
│  
│ -    .line 15+    .line 14
│      invoke-direct/range {v0 .. v12}, Lcom/samourai/boltzmann/processor/TxProcessorResult;-><init>(ILit/unimi/dsi/fastutil/objects/ObjectBigList;Lit/unimi/dsi/fastutil/objects/ObjectBigList;Ljava/lang/Double;Ljava/util/Set;Lcom/samourai/boltzmann/beans/Txos;JLcom/samourai/boltzmann/linker/IntraFees;Ljava/lang/Double;Ljava/lang/Double;Lcom/samourai/boltzmann/processor/NbTxos;)V
│  
│ -    .line 28-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getDtrmLnksById()Ljava/util/Set;+    .line 27+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getDtrmLnksById()Ljava/util/Set;
│  
│      move-result-object v0
│  
│      if-eqz v0, :cond_0
│  
│ -    .line 29-    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getDtrmLnksById()Ljava/util/Set;+    .line 28+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getDtrmLnksById()Ljava/util/Set;
│  
│      move-result-object v0
│  
│ -    invoke-virtual/range {p3 .. p3}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getTxos()Lcom/samourai/boltzmann/beans/Txos;+    invoke-virtual {p1}, Lcom/samourai/boltzmann/processor/TxProcessorResult;->getTxos()Lcom/samourai/boltzmann/beans/Txos;
│  
│ -    move-result-object v1+    move-result-object p1
│  
│ -    invoke-direct {p0, v0, v1}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->replaceDtrmLinks(Ljava/util/Set;Lcom/samourai/boltzmann/beans/Txos;)[[Ljava/lang/String;+    invoke-direct {p0, v0, p1}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->replaceDtrmLinks(Ljava/util/Set;Lcom/samourai/boltzmann/beans/Txos;)[[Ljava/lang/String;
│  
│ -    move-result-object v0+    move-result-object p1
│  
│      goto :goto_0
│  
│      :cond_0
│ -    const/4 v0, 0x0+    const/4 p1, 0x0
│  
│ -    new-array v0, v0, [[Ljava/lang/String;+    new-array p1, p1, [[Ljava/lang/String;
│  
│      :goto_0
│ -    iput-object v0, v13, Lcom/samourai/boltzmann/beans/BoltzmannResult;->dtrmLnks:[[Ljava/lang/String;--    move-wide v0, p1--    .line 31-    iput-wide v0, v13, Lcom/samourai/boltzmann/beans/BoltzmannResult;->duration:J+    iput-object p1, p0, Lcom/samourai/boltzmann/beans/BoltzmannResult;->dtrmLnks:[[Ljava/lang/String;
│  
│      return-void
│  .end method
│  
│  .method private replaceDtrmLinks(Ljava/util/Set;Lcom/samourai/boltzmann/beans/Txos;)[[Ljava/lang/String;
│      .locals 10
│      .annotation system Ldalvik/annotation/Signature;
│ @@ -122,15 +113,15 @@
│              "[J>;",
│              "Lcom/samourai/boltzmann/beans/Txos;",
│              ")[[",
│              "Ljava/lang/String;"
│          }
│      .end annotation
│  
│ -    .line 35+    .line 33
│      invoke-interface {p1}, Ljava/util/Set;->size()I
│  
│      move-result v0
│  
│      const/4 v1, 0x2
│  
│      filled-new-array {v0, v1}, [I
│ @@ -141,15 +132,15 @@
│  
│      invoke-static {v2, v0}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object;
│  
│      move-result-object v0
│  
│      check-cast v0, [[Ljava/lang/String;
│  
│ -    .line 37+    .line 35
│      invoke-virtual {p2}, Lcom/samourai/boltzmann/beans/Txos;->getOutputs()Ljava/util/Map;
│  
│      move-result-object v2
│  
│      invoke-interface {v2}, Ljava/util/Map;->keySet()Ljava/util/Set;
│  
│      move-result-object v2
│ @@ -160,15 +151,15 @@
│  
│      invoke-interface {v2, v4}, Ljava/util/Set;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
│  
│      move-result-object v2
│  
│      check-cast v2, [Ljava/lang/String;
│  
│ -    .line 38+    .line 36
│      invoke-virtual {p2}, Lcom/samourai/boltzmann/beans/Txos;->getInputs()Ljava/util/Map;
│  
│      move-result-object p2
│  
│      invoke-interface {p2}, Ljava/util/Map;->keySet()Ljava/util/Set;
│  
│      move-result-object p2
│ @@ -177,15 +168,15 @@
│  
│      invoke-interface {p2, v4}, Ljava/util/Set;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
│  
│      move-result-object p2
│  
│      check-cast p2, [Ljava/lang/String;
│  
│ -    .line 41+    .line 39
│      invoke-interface {p1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
│  
│      move-result-object p1
│  
│      const/4 v4, 0x0
│  
│      :goto_0
│ @@ -197,31 +188,31 @@
│  
│      invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
│  
│      move-result-object v5
│  
│      check-cast v5, [J
│  
│ -    .line 42+    .line 40
│      aget-wide v6, v5, v3
│  
│      long-to-int v6, v6
│  
│      aget-object v6, v2, v6
│  
│      const/4 v7, 0x1
│  
│ -    .line 43+    .line 41
│      aget-wide v8, v5, v7
│  
│      long-to-int v5, v8
│  
│      aget-object v5, p2, v5
│  
│ -    .line 44+    .line 42
│      new-array v8, v1, [Ljava/lang/String;
│  
│      aput-object v6, v8, v3
│  
│      aput-object v5, v8, v7
│  
│      aput-object v8, v0, v4
│ @@ -235,24 +226,24 @@
│  .end method
│  
│  
│  # virtual methods
│  .method public getDtrmLnks()[[Ljava/lang/String;
│      .locals 1
│  
│ -    .line 52+    .line 50
│      iget-object v0, p0, Lcom/samourai/boltzmann/beans/BoltzmannResult;->dtrmLnks:[[Ljava/lang/String;
│  
│      return-object v0
│  .end method
│  
│  .method public print()V
│ -    .locals 11+    .locals 8
│  
│ -    .line 56+    .line 54
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Inputs = "
│ @@ -271,15 +262,15 @@
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 57+    .line 55
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Outputs = "
│ @@ -298,15 +289,15 @@
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 58+    .line 56
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Fees = "
│ @@ -325,61 +316,61 @@
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 60+    .line 58
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getIntraFees()Lcom/samourai/boltzmann/linker/IntraFees;
│  
│      move-result-object v0
│  
│      if-eqz v0, :cond_0
│  
│ -    .line 61+    .line 59
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getIntraFees()Lcom/samourai/boltzmann/linker/IntraFees;
│  
│      move-result-object v0
│  
│      invoke-virtual {v0}, Lcom/samourai/boltzmann/linker/IntraFees;->getFeesMaker()J
│  
│      move-result-wide v0
│  
│      const-wide/16 v2, 0x0
│  
│      cmp-long v0, v0, v2
│  
│      if-lez v0, :cond_0
│  
│ -    .line 62+    .line 60
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getIntraFees()Lcom/samourai/boltzmann/linker/IntraFees;
│  
│      move-result-object v0
│  
│      invoke-virtual {v0}, Lcom/samourai/boltzmann/linker/IntraFees;->getFeesTaker()J
│  
│      move-result-wide v0
│  
│      cmp-long v0, v0, v2
│  
│      if-lez v0, :cond_0
│  
│ -    .line 63+    .line 61
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Hypothesis: Max intrafees received by a participant = "
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 65+    .line 63
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getIntraFees()Lcom/samourai/boltzmann/linker/IntraFees;
│  
│      move-result-object v2
│  
│      invoke-virtual {v2}, Lcom/samourai/boltzmann/linker/IntraFees;->getFeesMaker()J
│  
│      move-result-wide v2
│ @@ -390,29 +381,29 @@
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│ -    .line 63+    .line 61
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 67+    .line 65
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Hypothesis: Max intrafees paid by a participant = "
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 69+    .line 67
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getIntraFees()Lcom/samourai/boltzmann/linker/IntraFees;
│  
│      move-result-object v2
│  
│      invoke-virtual {v2}, Lcom/samourai/boltzmann/linker/IntraFees;->getFeesTaker()J
│  
│      move-result-wide v2
│ @@ -423,63 +414,63 @@
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│ -    .line 67+    .line 65
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 73+    .line 71
│      :cond_0
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getNbCmbnPrfctCj()Ljava/lang/Double;
│  
│      move-result-object v0
│  
│      if-eqz v0, :cond_1
│  
│ -    .line 74+    .line 72
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Perfect coinjoin = "
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 76+    .line 74
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getNbCmbnPrfctCj()Ljava/lang/Double;
│  
│      move-result-object v2
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
│  
│      const-string v2, " combinations (for "
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 78+    .line 76
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getNbTxosPrfctCj()Lcom/samourai/boltzmann/processor/NbTxos;
│  
│      move-result-object v2
│  
│      invoke-virtual {v2}, Lcom/samourai/boltzmann/processor/NbTxos;->getNbIns()I
│  
│      move-result v2
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
│  
│      const-string v2, "x"
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 80+    .line 78
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getNbTxosPrfctCj()Lcom/samourai/boltzmann/processor/NbTxos;
│  
│      move-result-object v2
│  
│      invoke-virtual {v2}, Lcom/samourai/boltzmann/processor/NbTxos;->getNbOuts()I
│  
│      move-result v2
│ @@ -490,18 +481,18 @@
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│ -    .line 74+    .line 72
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 83+    .line 81
│      :cond_1
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│ @@ -517,22 +508,22 @@
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 84+    .line 82
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getEntropy()Ljava/lang/Double;
│  
│      move-result-object v0
│  
│      if-eqz v0, :cond_2
│  
│ -    .line 85+    .line 83
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Tx entropy = "
│ @@ -551,15 +542,15 @@
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 86+    .line 84
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Entropy denstity = "
│ @@ -574,34 +565,34 @@
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 89+    .line 87
│      :cond_2
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getEfficiency()Ljava/lang/Double;
│  
│      move-result-object v0
│  
│      if-eqz v0, :cond_3
│  
│ -    .line 90+    .line 88
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v1, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v2, "Wallet efficiency = "
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 92+    .line 90
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getEfficiency()Ljava/lang/Double;
│  
│      move-result-object v2
│  
│      invoke-virtual {v2}, Ljava/lang/Double;->doubleValue()D
│  
│      move-result-wide v2
│ @@ -612,15 +603,15 @@
│  
│      invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
│  
│      const-string v2, "% ("
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    .line 94+    .line 92
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getEfficiency()Ljava/lang/Double;
│  
│      move-result-object v2
│  
│      invoke-virtual {v2}, Ljava/lang/Double;->doubleValue()D
│  
│      move-result-wide v2
│ @@ -635,439 +626,251 @@
│  
│      invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v1
│  
│ -    .line 90+    .line 88
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 98+    .line 96
│      :cond_3
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getMatLnkCombinations()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v0
│  
│      if-nez v0, :cond_4
│  
│ -    .line 99+    .line 97
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getNbCmbn()I
│  
│      move-result v0
│  
│      if-nez v0, :cond_6
│  
│ -    .line 100+    .line 98
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      const-string v1, "Skipped processing of this transaction (too many inputs and/or outputs)"
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│      goto :goto_0
│  
│ -    .line 104+    .line 102
│      :cond_4
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getMatLnkProbabilities()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v0
│  
│      if-eqz v0, :cond_5
│  
│ -    .line 105+    .line 103
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      const-string v1, "Linkability Matrix (probabilities):"
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 106+    .line 104
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getMatLnkProbabilities()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/Object;)V
│  
│ -    .line 108+    .line 106
│      :cond_5
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getMatLnkCombinations()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v0
│  
│      if-eqz v0, :cond_6
│  
│ -    .line 109+    .line 107
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      const-string v1, "Linkability Matrix (#combinations with link):"
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 110+    .line 108
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getMatLnkCombinations()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/Object;)V
│  
│ -    .line 114+    .line 112
│      :cond_6
│      :goto_0
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getDtrmLnks()[[Ljava/lang/String;
│  
│      move-result-object v0
│  
│      array-length v0, v0
│  
│ -    const/4 v1, 0x1--    const/4 v2, 0x0-
│      if-lez v0, :cond_7
│  
│ -    .line 115+    .line 113
│      sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│ -    const-string v3, "Deterministic links:"+    const-string v1, "Deterministic links:"
│  
│ -    invoke-virtual {v0, v3}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V+    invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 116+    .line 114
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getDtrmLnks()[[Ljava/lang/String;
│  
│      move-result-object v0
│  
│ -    .line 117-    array-length v3, v0--    const/4 v4, 0x0--    :goto_1-    if-ge v4, v3, :cond_8--    aget-object v5, v0, v4--    .line 118-    aget-object v6, v5, v2--    .line 119-    aget-object v5, v5, v1--    .line 120-    sget-object v7, Ljava/lang/System;->out:Ljava/io/PrintStream;--    new-instance v8, Ljava/lang/StringBuilder;--    invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V--    invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    const-string v5, " & "--    invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {v8, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    const-string v5, " are deterministically linked"--    invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;--    move-result-object v5--    invoke-virtual {v7, v5}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V--    add-int/lit8 v4, v4, 0x1--    goto :goto_1--    .line 123-    :cond_7-    sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;--    const-string v3, "Deterministic links: none"--    invoke-virtual {v0, v3}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V--    .line 126-    :cond_8-    sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;--    const-string v3, "Benchmarks:"--    invoke-virtual {v0, v3}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V--    .line 127-    new-instance v0, Ljava/util/ArrayList;--    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V--    const/4 v3, 0x2--    .line 129-    new-array v4, v3, [Ljava/lang/Object;--    const-string v5, "duration"--    aput-object v5, v4, v2--    iget-wide v5, p0, Lcom/samourai/boltzmann/beans/BoltzmannResult;->duration:J--    invoke-static {v5, v6}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;--    move-result-object v5--    aput-object v5, v4, v1--    invoke-interface {v0, v4}, Ljava/util/List;->add(Ljava/lang/Object;)Z--    .line 130-    sget-object v4, Ljava/lang/System;->out:Ljava/io/PrintStream;--    new-instance v5, Ljava/lang/StringBuilder;--    invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V--    const-string v6, "Duration = "--    invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    iget-wide v6, p0, Lcom/samourai/boltzmann/beans/BoltzmannResult;->duration:J--    invoke-static {v6, v7}, Lcom/samourai/boltzmann/utils/Utils;->duration(J)Ljava/lang/String;--    move-result-object v6--    invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;--    invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;--    move-result-object v5--    invoke-virtual {v4, v5}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V--    .line 132-    invoke-static {}, Lcom/samourai/boltzmann/utils/Utils;->getMaxMemUsed()J--    move-result-wide v4+    .line 115+    array-length v1, v0
│  
│ -    .line 133-    new-array v6, v3, [Ljava/lang/Object;+    const/4 v2, 0x0
│  
│ -    const-string v7, "maxMem"+    const/4 v3, 0x0
│  
│ -    aput-object v7, v6, v2+    :goto_1+    if-ge v3, v1, :cond_8
│  
│ -    invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    aget-object v4, v0, v3
│  
│ -    move-result-object v7+    .line 116+    aget-object v5, v4, v2
│  
│ -    aput-object v7, v6, v1+    const/4 v6, 0x1
│  
│ -    invoke-interface {v0, v6}, Ljava/util/List;->add(Ljava/lang/Object;)Z+    .line 117+    aget-object v4, v4, v6
│  
│ -    .line 134+    .line 118
│      sget-object v6, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v7, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    const-string v8, "Max mem used: "+    invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    const-string v4, " & "
│  
│ -    invoke-virtual {v7, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;+    invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    const-string v4, "M"+    invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;++    const-string v4, " are deterministically linked"
│  
│      invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object v4
│  
│      invoke-virtual {v6, v4}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    .line 136-    invoke-static {}, Lcom/samourai/boltzmann/utils/Utils;->getProgressResult()Ljava/util/List;--    move-result-object v4--    invoke-interface {v4}, Ljava/util/List;->iterator()Ljava/util/Iterator;--    move-result-object v4--    :goto_2-    invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z--    move-result v5--    if-eqz v5, :cond_9--    invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object;--    move-result-object v5--    check-cast v5, Lcom/samourai/boltzmann/utils/Progress;--    .line 137-    sget-object v6, Ljava/lang/System;->out:Ljava/io/PrintStream;--    invoke-virtual {v5}, Lcom/samourai/boltzmann/utils/Progress;->getResult()Ljava/lang/String;+    add-int/lit8 v3, v3, 0x1
│  
│ -    move-result-object v7--    invoke-virtual {v6, v7}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V--    const/4 v6, 0x5--    .line 138-    new-array v6, v6, [Ljava/lang/Object;--    .line 140-    invoke-virtual {v5}, Lcom/samourai/boltzmann/utils/Progress;->getName()Ljava/lang/String;--    move-result-object v7--    aput-object v7, v6, v2--    .line 141-    invoke-virtual {v5}, Lcom/samourai/boltzmann/utils/Progress;->getTarget()J--    move-result-wide v7--    invoke-static {v7, v8}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;--    move-result-object v7--    aput-object v7, v6, v1--    .line 142-    invoke-virtual {v5}, Lcom/samourai/boltzmann/utils/Progress;->computeElapsed()J--    move-result-wide v7--    const-wide/16 v9, 0x3e8--    div-long/2addr v7, v9--    invoke-static {v7, v8}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;--    move-result-object v7--    aput-object v7, v6, v3--    const/4 v7, 0x3--    .line 143-    invoke-virtual {v5}, Lcom/samourai/boltzmann/utils/Progress;->getRate()D--    move-result-wide v8+    goto :goto_1
│  
│ -    invoke-static {v8, v9}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double;+    .line 121+    :cond_7+    sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│ -    move-result-object v8+    const-string v1, "Deterministic links: none"
│  
│ -    aput-object v8, v6, v7+    invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│ -    const/4 v7, 0x4+    .line 124+    :cond_8+    sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│ -    .line 144-    invoke-virtual {v5}, Lcom/samourai/boltzmann/utils/Progress;->getMsg()Ljava/lang/String;+    invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getTxos()Lcom/samourai/boltzmann/beans/Txos;
│  
│ -    move-result-object v5+    move-result-object v1
│  
│ -    aput-object v5, v6, v7+    invoke-virtual {v1}, Lcom/samourai/boltzmann/beans/Txos;->getOutputs()Ljava/util/Map;
│  
│ -    .line 146-    invoke-interface {v0, v6}, Ljava/util/List;->add(Ljava/lang/Object;)Z+    move-result-object v1
│  
│ -    goto :goto_2+    invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/Object;)V
│  
│ -    .line 150-    :cond_9+    .line 127
│      :try_start_0
│ -    new-instance v1, Ljava/util/LinkedHashMap;+    new-instance v0, Ljava/util/LinkedHashMap;
│  
│ -    invoke-direct {v1}, Ljava/util/LinkedHashMap;-><init>()V+    invoke-direct {v0}, Ljava/util/LinkedHashMap;-><init>()V
│  
│ -    const-string v2, "ins"+    const-string v1, "ins"
│  
│ -    .line 151+    .line 128
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getTxos()Lcom/samourai/boltzmann/beans/Txos;
│  
│ -    move-result-object v3+    move-result-object v2
│  
│ -    invoke-virtual {v3}, Lcom/samourai/boltzmann/beans/Txos;->getInputs()Ljava/util/Map;+    invoke-virtual {v2}, Lcom/samourai/boltzmann/beans/Txos;->getInputs()Ljava/util/Map;
│  
│ -    move-result-object v3+    move-result-object v2
│  
│ -    invoke-interface {v1, v2, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+    invoke-interface {v0, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│ -    const-string v2, "outs"+    const-string v1, "outs"
│  
│ -    .line 152+    .line 129
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getTxos()Lcom/samourai/boltzmann/beans/Txos;
│  
│ -    move-result-object v3+    move-result-object v2
│  
│ -    invoke-virtual {v3}, Lcom/samourai/boltzmann/beans/Txos;->getOutputs()Ljava/util/Map;+    invoke-virtual {v2}, Lcom/samourai/boltzmann/beans/Txos;->getOutputs()Ljava/util/Map;
│  
│ -    move-result-object v3+    move-result-object v2
│  
│ -    invoke-interface {v1, v2, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+    invoke-interface {v0, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│ -    const-string v2, "nbCmbn"+    const-string v1, "nbCmbn"
│  
│ -    .line 153+    .line 130
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getNbCmbn()I
│  
│ -    move-result v3+    move-result v2
│  
│ -    invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;+    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
│  
│ -    move-result-object v3+    move-result-object v2
│  
│ -    invoke-interface {v1, v2, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+    invoke-interface {v0, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│ -    const-string v2, "mat"+    const-string v1, "mat"
│  
│ -    .line 154+    .line 131
│      invoke-virtual {p0}, Lcom/samourai/boltzmann/beans/BoltzmannResult;->getMatLnkCombinations()Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│ -    move-result-object v3--    invoke-virtual {v3}, Ljava/lang/Object;->toString()Ljava/lang/String;--    move-result-object v3+    move-result-object v2
│  
│ -    invoke-interface {v1, v2, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+    invoke-virtual {v2}, Ljava/lang/Object;->toString()Ljava/lang/String;
│  
│ -    const-string v2, "benchmarks"+    move-result-object v2
│  
│ -    .line 155-    invoke-interface {v1, v2, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+    invoke-interface {v0, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│ -    .line 157-    new-instance v0, Lcom/fasterxml/jackson/databind/ObjectMapper;+    .line 132+    new-instance v1, Lcom/fasterxml/jackson/databind/ObjectMapper;
│  
│ -    invoke-direct {v0}, Lcom/fasterxml/jackson/databind/ObjectMapper;-><init>()V+    invoke-direct {v1}, Lcom/fasterxml/jackson/databind/ObjectMapper;-><init>()V
│  
│ -    invoke-virtual {v0, v1}, Lcom/fasterxml/jackson/databind/ObjectMapper;->writeValueAsString(Ljava/lang/Object;)Ljava/lang/String;+    invoke-virtual {v1, v0}, Lcom/fasterxml/jackson/databind/ObjectMapper;->writeValueAsString(Ljava/lang/Object;)Ljava/lang/String;
│  
│      move-result-object v0
│  
│ -    .line 158+    .line 133
│      sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      new-instance v2, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
│  
│      const-string v3, "Export: "
│ @@ -1080,18 +883,18 @@
│  
│      move-result-object v0
│  
│      invoke-virtual {v1, v0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│      :try_end_0
│      .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
│  
│ -    goto :goto_3+    goto :goto_2
│  
│      :catch_0
│      move-exception v0
│  
│ -    .line 160+    .line 135
│      invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
│  
│ -    :goto_3+    :goto_2
│      return-void
│  .end method
├── smali_classes2/com/samourai/boltzmann/linker/TxosLinker$2.smali
│ @@ -23,30 +23,30 @@
│  .field final synthetic val$allVal:[Ljava/lang/Long;
│  
│  
│  # direct methods
│  .method constructor <init>(Lcom/samourai/boltzmann/linker/TxosLinker;[Ljava/lang/Long;)V
│      .locals 0
│  
│ -    .line 406+    .line 401
│      iput-object p1, p0, Lcom/samourai/boltzmann/linker/TxosLinker$2;->this$0:Lcom/samourai/boltzmann/linker/TxosLinker;
│  
│      iput-object p2, p0, Lcom/samourai/boltzmann/linker/TxosLinker$2;->val$allVal:[Ljava/lang/Long;
│  
│      invoke-direct {p0}, Ljava/lang/Object;-><init>()V
│  
│      return-void
│  .end method
│  
│  
│  # virtual methods
│  .method public applyAsLong(J)J
│      .locals 1
│  
│ -    .line 409+    .line 404
│      iget-object v0, p0, Lcom/samourai/boltzmann/linker/TxosLinker$2;->val$allVal:[Ljava/lang/Long;
│  
│      long-to-int p1, p1
│  
│      aget-object p1, v0, p1
│  
│      invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
├── smali_classes2/com/samourai/boltzmann/linker/TxosLinker.smali
│ @@ -84,51 +84,51 @@
│  
│      return-void
│  .end method
│  
│  .method private checkLimitOk(Lcom/samourai/boltzmann/beans/Txos;)Z
│      .locals 1
│  
│ -    .line 422+    .line 417
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/beans/Txos;->getInputs()Ljava/util/Map;
│  
│      move-result-object v0
│  
│      invoke-interface {v0}, Ljava/util/Map;->size()I
│  
│      move-result v0
│  
│ -    .line 423+    .line 418
│      invoke-virtual {p1}, Lcom/samourai/boltzmann/beans/Txos;->getOutputs()Ljava/util/Map;
│  
│      move-result-object p1
│  
│      invoke-interface {p1}, Ljava/util/Map;->size()I
│  
│      move-result p1
│  
│ -    .line 424+    .line 419
│      invoke-static {v0, p1}, Ljava/lang/Math;->max(II)I
│  
│      move-result p1
│  
│ -    .line 425+    .line 420
│      iget-object v0, p0, Lcom/samourai/boltzmann/linker/TxosLinker;->maxTxos:Ljava/lang/Integer;
│  
│      if-eqz v0, :cond_0
│  
│      iget-object v0, p0, Lcom/samourai/boltzmann/linker/TxosLinker;->maxTxos:Ljava/lang/Integer;
│  
│      invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
│  
│      move-result v0
│  
│      if-le p1, v0, :cond_0
│  
│ -    .line 426+    .line 421
│      sget-object p1, Ljava/lang/System;->out:Ljava/io/PrintStream;
│  
│      const-string v0, "maxTxos limit reached!"
│  
│      invoke-virtual {p1, v0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
│  
│      const/4 p1, 0x0
│ @@ -167,15 +167,15 @@
│  
│      invoke-direct {v1, v0, p1}, Lcom/samourai/boltzmann/aggregator/TxosAggregates;-><init>(Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;)V
│  
│      return-object v1
│  .end method
│  
│  .method private prepareTxos(Ljava/util/Map;)Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;
│ -    .locals 9+    .locals 7
│      .annotation system Ldalvik/annotation/Signature;
│          value = {
│              "(",
│              "Ljava/util/Map<",
│              "Ljava/lang/String;",
│              "Ljava/lang/Long;",
│              ">;)",
│ @@ -196,274 +196,255 @@
│      invoke-static {v1}, Ljava/util/Collections;->reverseOrder(Ljava/util/Comparator;)Ljava/util/Comparator;
│  
│      move-result-object v1
│  
│      .line 369
│      invoke-static {p1, v1}, Lcom/samourai/boltzmann/utils/ListsUtils;->sortMap(Ljava/util/Map;Ljava/util/Comparator;)Ljava/util/Map;
│  
│ -    move-result-object v1+    move-result-object p1
│  
│ -    invoke-interface {v1}, Ljava/util/Map;->entrySet()Ljava/util/Set;+    invoke-interface {p1}, Ljava/util/Map;->entrySet()Ljava/util/Set;
│  
│ -    move-result-object v1+    move-result-object p1
│  
│ -    invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;+    invoke-interface {p1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
│  
│ -    move-result-object v1+    move-result-object p1
│  
│      :cond_0
│      :goto_0
│ -    invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z+    invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
│  
│ -    move-result v2+    move-result v1
│  
│ -    const-wide/16 v3, 0x0+    const-wide/16 v2, 0x0
│  
│ -    if-eqz v2, :cond_1+    if-eqz v1, :cond_1
│  
│ -    invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;+    invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
│  
│ -    move-result-object v2+    move-result-object v1
│  
│ -    check-cast v2, Ljava/util/Map$Entry;+    check-cast v1, Ljava/util/Map$Entry;
│  
│      .line 371
│ -    invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;+    invoke-interface {v1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│ -    move-result-object v5+    move-result-object v4
│  
│ -    check-cast v5, Ljava/lang/Long;+    check-cast v4, Ljava/lang/Long;
│  
│ -    invoke-virtual {v5}, Ljava/lang/Long;->longValue()J+    invoke-virtual {v4}, Ljava/lang/Long;->longValue()J
│  
│ -    move-result-wide v5+    move-result-wide v4
│  
│ -    cmp-long v3, v5, v3+    cmp-long v2, v4, v2
│  
│ -    if-lez v3, :cond_0+    if-lez v2, :cond_0
│  
│      .line 372
│ -    invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;+    invoke-interface {v1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
│  
│ -    move-result-object v3+    move-result-object v2
│  
│ -    invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;+    invoke-interface {v1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
│  
│ -    move-result-object v2+    move-result-object v1
│  
│ -    invoke-interface {v0, v3, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+    invoke-interface {v0, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│      goto :goto_0
│  
│      .line 377
│      :cond_1
│      invoke-interface {v0}, Ljava/util/Map;->values()Ljava/util/Collection;
│  
│ -    move-result-object v1+    move-result-object p1
│  
│ -    const/4 v2, 0x0+    const/4 v1, 0x0
│  
│ -    new-array v5, v2, [Ljava/lang/Long;+    new-array v4, v1, [Ljava/lang/Long;
│  
│ -    invoke-interface {v1, v5}, Ljava/util/Collection;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;+    invoke-interface {p1, v4}, Ljava/util/Collection;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
│  
│ -    move-result-object v1+    move-result-object p1
│  
│ -    check-cast v1, [Ljava/lang/Long;+    check-cast p1, [Ljava/lang/Long;
│  
│      .line 378
│ -    new-instance v5, Ljava/util/ArrayList;+    new-instance v4, Ljava/util/ArrayList;
│  
│ -    invoke-direct {v5}, Ljava/util/ArrayList;-><init>()V+    invoke-direct {v4}, Ljava/util/ArrayList;-><init>()V
│  
│      .line 379
│      :goto_1
│      invoke-interface {v0}, Ljava/util/Map;->size()I
│  
│ -    move-result v6+    move-result v5
│  
│ -    int-to-long v6, v6+    int-to-long v5, v5
│  
│ -    cmp-long v6, v3, v6+    cmp-long v5, v2, v5
│  
│ -    if-gez v6, :cond_2+    if-gez v5, :cond_2
│  
│      .line 380
│ -    invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│ -    move-result-object v6+    move-result-object v5
│  
│ -    invoke-interface {v5, v6}, Ljava/util/List;->add(Ljava/lang/Object;)Z+    invoke-interface {v4, v5}, Ljava/util/List;->add(Ljava/lang/Object;)Z
│  
│ -    const-wide/16 v6, 0x1+    const-wide/16 v5, 0x1
│  
│ -    add-long/2addr v3, v6+    add-long/2addr v2, v5
│  
│      goto :goto_1
│  
│ -    :cond_2-    const-wide/high16 v3, 0x4000000000000000L    # 2.0-
│      .line 385
│ -    invoke-interface {v5}, Ljava/util/List;->size()I--    move-result v6--    int-to-double v6, v6--    invoke-static {v3, v4, v6, v7}, Ljava/lang/Math;->pow(DD)D--    move-result-wide v3--    double-to-long v3, v3+    :cond_2+    sget-object v2, Lcom/samourai/boltzmann/linker/TxosLinker;->log:Lorg/slf4j/Logger;
│  
│ -    .line 386-    sget-object v6, Lcom/samourai/boltzmann/linker/TxosLinker;->log:Lorg/slf4j/Logger;+    invoke-interface {v2}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│ -    invoke-interface {v6}, Lorg/slf4j/Logger;->isDebugEnabled()Z+    move-result v2
│  
│ -    move-result v6+    if-eqz v2, :cond_3
│  
│ -    if-eqz v6, :cond_3+    const-wide/high16 v2, 0x4000000000000000L    # 2.0
│  
│      .line 387
│ -    sget-object v6, Lcom/samourai/boltzmann/linker/TxosLinker;->log:Lorg/slf4j/Logger;+    invoke-interface {v4}, Ljava/util/List;->size()I
│  
│ -    invoke-interface {v6}, Lorg/slf4j/Logger;->isDebugEnabled()Z+    move-result v5
│  
│ -    move-result v6+    int-to-double v5, v5
│  
│ -    if-eqz v6, :cond_3+    invoke-static {v2, v3, v5, v6}, Ljava/lang/Math;->pow(DD)D
│  
│ -    .line 388-    new-instance v6, Ljava/lang/StringBuilder;--    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V+    move-result-wide v2
│  
│ -    const-string v7, "Computing aggregates for "+    double-to-long v2, v2
│  
│ -    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    .line 388+    sget-object v5, Lcom/samourai/boltzmann/linker/TxosLinker;->log:Lorg/slf4j/Logger;
│  
│ -    .line 390-    invoke-interface {p1}, Ljava/util/Map;->size()I+    invoke-interface {v5}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│ -    move-result p1+    move-result v5
│  
│ -    invoke-virtual {v6, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;+    if-eqz v5, :cond_3
│  
│ -    const-string p1, " utxos: "+    .line 389+    new-instance v5, Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v6, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
│  
│ -    invoke-virtual {v6, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;+    const-string v6, "Computing aggregates: "
│  
│ -    const-string p1, " aggregates..."+    invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v6, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;+    invoke-virtual {v5, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
│  
│ -    invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;+    invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│ -    move-result-object p1+    move-result-object v2
│  
│ -    .line 388-    invoke-static {p1}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V+    invoke-static {v2}, Lcom/samourai/boltzmann/utils/Utils;->logMemory(Ljava/lang/String;)V
│  
│ -    .line 396+    .line 392
│      :cond_3
│ -    new-array p1, v2, [Ljava/lang/Long;+    new-array v1, v1, [Ljava/lang/Long;
│  
│ -    invoke-interface {v5, p1}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;+    invoke-interface {v4, v1}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
│  
│ -    move-result-object p1+    move-result-object v1
│  
│ -    check-cast p1, [Ljava/lang/Long;+    check-cast v1, [Ljava/lang/Long;
│  
│ -    invoke-static {p1}, Lcom/samourai/boltzmann/utils/ListsUtils;->powerSet([Ljava/lang/Long;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;+    invoke-static {v1}, Lcom/samourai/boltzmann/utils/ListsUtils;->powerSet([Ljava/lang/Long;)Lit/unimi/dsi/fastutil/objects/ObjectBigList;
│  
│ -    move-result-object p1+    move-result-object v1
│  
│ -    .line 400+    .line 396
│      new-instance v2, Ljava/util/LinkedList;
│  
│      invoke-direct {v2}, Ljava/util/LinkedList;-><init>()V
│  
│ -    .line 402-    invoke-interface {p1}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->iterator()Lit/unimi/dsi/fastutil/objects/ObjectBigListIterator;+    .line 397+    invoke-interface {v1}, Lit/unimi/dsi/fastutil/objects/ObjectBigList;->iterator()Lit/unimi/dsi/fastutil/objects/ObjectBigListIterator;
│  
│ -    move-result-object v5+    move-result-object v3
│  
│      :goto_2
│ -    invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z--    move-result v6+    invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
│  
│ -    if-eqz v6, :cond_4+    move-result v4
│  
│ -    invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;+    if-eqz v4, :cond_4
│  
│ -    move-result-object v6+    invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
│  
│ -    check-cast v6, [J+    move-result-object v4
│  
│ -    .line 404-    invoke-static {v6}, Ljava8/util/stream/LongStreams;->of([J)Ljava8/util/stream/LongStream;+    check-cast v4, [J
│  
│ -    move-result-object v6+    .line 399+    invoke-static {v4}, Ljava8/util/stream/LongStreams;->of([J)Ljava8/util/stream/LongStream;
│  
│ -    new-instance v7, Lcom/samourai/boltzmann/linker/TxosLinker$2;+    move-result-object v4
│  
│ -    invoke-direct {v7, p0, v1}, Lcom/samourai/boltzmann/linker/TxosLinker$2;-><init>(Lcom/samourai/boltzmann/linker/TxosLinker;[Ljava/lang/Long;)V+    new-instance v5, Lcom/samourai/boltzmann/linker/TxosLinker$2;
│  
│ -    .line 405-    invoke-interface {v6, v7}, Ljava8/util/stream/LongStream;->map(Ljava8/util/function/LongUnaryOperator;)Ljava8/util/stream/LongStream;+    invoke-direct {v5, p0, p1}, Lcom/samourai/boltzmann/linker/TxosLinker$2;-><init>(Lcom/samourai/boltzmann/linker/TxosLinker;[Ljava/lang/Long;)V
│  
│ -    move-result-object v6--    .line 412-    invoke-interface {v6}, Ljava8/util/stream/LongStream;->sum()J+    .line 400+    invoke-interface {v4, v5}, Ljava8/util/stream/LongStream;->map(Ljava8/util/function/LongUnaryOperator;)Ljava8/util/stream/LongStream;
│  
│ -    move-result-wide v6+    move-result-object v4
│  
│ -    .line 404-    invoke-static {v6, v7}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;+    .line 407+    invoke-interface {v4}, Ljava8/util/stream/LongStream;->sum()J
│  
│ -    move-result-object v6+    move-result-wide v4
│  
│ -    .line 403-    invoke-interface {v2, v6}, Ljava/util/List;->add(Ljava/lang/Object;)Z+    .line 399+    invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
│  
│ -    const-string v6, "prepareTxos"+    move-result-object v4
│  
│ -    .line 414-    invoke-interface {v2}, Ljava/util/List;->size()I+    .line 398+    invoke-interface {v2, v4}, Ljava/util/List;->add(Ljava/lang/Object;)Z
│  
│ -    move-result v7+    goto :goto_2
│  
│ -    int-to-long v7, v7+    .line 409+    :cond_4+    sget-object p1, Lcom/samourai/boltzmann/linker/TxosLinker;->log:Lorg/slf4j/Logger;
│  
│ -    invoke-static {v6, v7, v8, v3, v4}, Lcom/samourai/boltzmann/utils/Utils;->logProgress(Ljava/lang/String;JJ)V+    invoke-interface {p1}, Lorg/slf4j/Logger;->isDebugEnabled()Z
│  
│ -    goto :goto_2+    move-result p1
│  
│ -    :cond_4-    const-string v1, "prepareTxos"+    if-eqz p1, :cond_5
│  
│ -    .line 416-    invoke-static {v1, v3, v4}, Lcom/samourai/boltzmann/utils/Utils;->logProgressDone(Ljava/lang/String;J)V+    .line 410+    invoke-static {}, Lcom/samourai/boltzmann/utils/Utils;->logMemory()V
│  
│ -    .line 417-    new-instance v1, Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;+    .line 412+    :cond_5+    new-instance p1, Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;
│  
│      invoke-static {v2}, Lcom/samourai/boltzmann/utils/ListsUtils;->toPrimitiveArray(Ljava/util/Collection;)[J
│  
│      move-result-object v2
│  
│ -    invoke-direct {v1, v0, p1, v2}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;-><init>(Ljava/util/Map;Lit/unimi/dsi/fastutil/objects/ObjectBigList;[J)V+    invoke-direct {p1, v0, v1, v2}, Lcom/samourai/boltzmann/aggregator/TxosAggregatesData;-><init>(Ljava/util/Map;Lit/unimi/dsi/fastutil/objects/ObjectBigList;[J)V
│  
│ -    return-object v1+    return-object p1
│  .end method
│  
│  
│  # virtual methods
│  .method protected packLinkedTxos(Ljava/util/Collection;Lcom/samourai/boltzmann/beans/Txos;)Lcom/samourai/boltzmann/beans/Txos;
│      .locals 9
│      .annotation system Ldalvik/annotation/Signature;
├── smali_classes2/com/samourai/wallet/CreateWalletActivity$2.smali
│ @@ -156,15 +156,15 @@
│      .line 328
│      invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
│      :try_end_1
│      .catchall {:try_start_1 .. :try_end_1} :catchall_0
│  
│      goto :goto_1
│  
│ -    .line 333+    .line 332
│      :goto_0
│      throw v0
│  
│      .line 335
│      :cond_0
│      iget-object v0, p0, Lcom/samourai/wallet/CreateWalletActivity$2;->val$seed:Ljava/lang/String;
│  
│ @@ -633,15 +633,15 @@
│  
│      move-result-object v1
│  
│      invoke-virtual {v1}, Lcom/samourai/wallet/util/AppUtil;->restartApp()V
│  
│      goto :goto_7
│  
│ -    .line 393+    .line 392
│      :goto_6
│      throw v0
│  
│      .line 426
│      :cond_6
│      iget-boolean v0, p0, Lcom/samourai/wallet/CreateWalletActivity$2;->val$create:Z
│  
│ @@ -713,15 +713,15 @@
│      invoke-static {v0}, Lcom/samourai/wallet/CreateWalletActivity;->access$200(Lcom/samourai/wallet/CreateWalletActivity;)V
│  
│      .line 444
│      invoke-static {}, Landroid/os/Looper;->loop()V
│  
│      return-void
│  
│ -    .line 441+    .line 440
│      :goto_9
│      throw v0
│  
│ -    .line 355+    .line 354
│      :goto_a
│      throw v0
│  .end method
├── smali_classes2/com/samourai/wallet/PinEntryActivity.smali
│ @@ -1382,15 +1382,14 @@
│      :goto_2
│      new-instance v0, Lcom/samourai/wallet/-$$Lambda$PinEntryActivity$UOMXInJQ-EG6NN_TdTeOjO7rTRI;
│  
│      invoke-direct {v0, p0}, Lcom/samourai/wallet/-$$Lambda$PinEntryActivity$UOMXInJQ-EG6NN_TdTeOjO7rTRI;-><init>(Lcom/samourai/wallet/PinEntryActivity;)V
│  
│      invoke-virtual {p0, v0}, Lcom/samourai/wallet/PinEntryActivity;->runOnUiThread(Ljava/lang/Runnable;)V
│  
│ -    .line 359
│      throw p1
│  
│      .line 362
│      :cond_5
│      new-instance p1, Lcom/samourai/wallet/-$$Lambda$PinEntryActivity$TPBmobuGthMUvi7I--t235mCN7g;
│  
│      invoke-direct {p1, p0}, Lcom/samourai/wallet/-$$Lambda$PinEntryActivity$TPBmobuGthMUvi7I--t235mCN7g;-><init>(Lcom/samourai/wallet/PinEntryActivity;)V
├── smali_classes2/com/samourai/wallet/RestoreSeedWalletActivity$3.smali
│ @@ -156,15 +156,15 @@
│      .line 415
│      invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
│      :try_end_1
│      .catchall {:try_start_1 .. :try_end_1} :catchall_0
│  
│      goto :goto_1
│  
│ -    .line 420+    .line 419
│      :goto_0
│      throw v0
│  
│      .line 422
│      :cond_0
│      iget-object v0, p0, Lcom/samourai/wallet/RestoreSeedWalletActivity$3;->val$seed:Ljava/lang/String;
│  
│ @@ -633,15 +633,15 @@
│  
│      move-result-object v1
│  
│      invoke-virtual {v1}, Lcom/samourai/wallet/util/AppUtil;->restartApp()V
│  
│      goto :goto_7
│  
│ -    .line 480+    .line 479
│      :goto_6
│      throw v0
│  
│      .line 513
│      :cond_6
│      iget-boolean v0, p0, Lcom/samourai/wallet/RestoreSeedWalletActivity$3;->val$create:Z
│  
│ @@ -713,15 +713,15 @@
│      invoke-static {v0}, Lcom/samourai/wallet/RestoreSeedWalletActivity;->access$300(Lcom/samourai/wallet/RestoreSeedWalletActivity;)V
│  
│      .line 530
│      invoke-static {}, Landroid/os/Looper;->loop()V
│  
│      return-void
│  
│ -    .line 528+    .line 527
│      :goto_9
│      throw v0
│  
│ -    .line 442+    .line 441
│      :goto_a
│      throw v0
│  .end method
├── smali_classes2/com/samourai/wallet/SettingsActivity2$12$2$2$2.smali
│ @@ -292,14 +292,13 @@
│  
│      invoke-static {v1, p2, p1}, Landroid/widget/Toast;->makeText(Landroid/content/Context;II)Landroid/widget/Toast;
│  
│      move-result-object p1
│  
│      invoke-virtual {p1}, Landroid/widget/Toast;->show()V
│  
│ -    .line 354
│      throw v0
│  
│      :cond_0
│      :goto_2
│      return-void
│  .end method
├── smali_classes2/com/samourai/wallet/PinEntryActivity$1.smali
│ @@ -156,15 +156,15 @@
│      .line 410
│      invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
│      :try_end_1
│      .catchall {:try_start_1 .. :try_end_1} :catchall_0
│  
│      goto :goto_1
│  
│ -    .line 415+    .line 414
│      :goto_0
│      throw v0
│  
│      .line 417
│      :cond_0
│      iget-object v0, p0, Lcom/samourai/wallet/PinEntryActivity$1;->val$seed:Ljava/lang/String;
│  
│ @@ -643,15 +643,15 @@
│  
│      move-result-object v3
│  
│      invoke-virtual {v1, v3}, Lcom/samourai/wallet/util/AppUtil;->restartApp(Landroid/os/Bundle;)V
│  
│      goto :goto_7
│  
│ -    .line 475+    .line 474
│      :goto_6
│      throw v0
│  
│      .line 508
│      :cond_6
│      iget-boolean v0, p0, Lcom/samourai/wallet/PinEntryActivity$1;->val$create:Z
│  
│ @@ -729,15 +729,15 @@
│      invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;->setVisibility(I)V
│  
│      .line 527
│      invoke-static {}, Landroid/os/Looper;->loop()V
│  
│      return-void
│  
│ -    .line 523+    .line 522
│      :goto_9
│      throw v0
│  
│ -    .line 437+    .line 436
│      :goto_a
│      throw v0
│  .end method
├── smali_classes2/com/samourai/wallet/TxAnimUIActivity.smali
│ @@ -1651,15 +1651,15 @@
│      invoke-virtual {p1}, Landroid/widget/Toast;->show()V
│      :try_end_5
│      .catchall {:try_start_5 .. :try_end_5} :catchall_0
│  
│      :goto_9
│      return-void
│  
│ -    .line 469+    .line 468
│      :goto_a
│      throw p1
│  .end method
│  
│  .method public static synthetic lambda$failTx$0(Lcom/samourai/wallet/TxAnimUIActivity;I)V
│      .locals 2
├── smali_classes2/com/samourai/wallet/RestoreSeedWalletActivity$2.smali
│ @@ -314,10 +314,9 @@
│  
│      invoke-static {v1}, Lcom/samourai/wallet/util/AppUtil;->getInstance(Landroid/content/Context;)Lcom/samourai/wallet/util/AppUtil;
│  
│      move-result-object v1
│  
│      invoke-virtual {v1}, Lcom/samourai/wallet/util/AppUtil;->restartApp()V
│  
│ -    .line 390
│      throw v0
│  .end method
├── smali_classes2/com/samourai/wallet/PinEntryActivity$3$1.smali
│ @@ -975,10 +975,9 @@
│      invoke-virtual {v2, v1, v3}, Landroid/app/AlertDialog$Builder;->setPositiveButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder;
│  
│      move-result-object v1
│  
│      .line 632
│      invoke-virtual {v1}, Landroid/app/AlertDialog$Builder;->show()Landroid/app/AlertDialog;
│  
│ -    .line 634
│      throw v0
│  .end method
├── smali_classes2/com/samourai/wallet/SettingsActivity2$26$2$2$2$2.smali
│ @@ -367,14 +367,13 @@
│  
│      invoke-static {v1, p2, p1}, Landroid/widget/Toast;->makeText(Landroid/content/Context;II)Landroid/widget/Toast;
│  
│      move-result-object p1
│  
│      invoke-virtual {p1}, Landroid/widget/Toast;->show()V
│  
│ -    .line 685
│      throw v0
│  
│      :cond_1
│      :goto_2
│      return-void
│  .end method
├── smali_classes2/com/samourai/wallet/LandingActivity.smali
│ @@ -530,15 +530,14 @@
│      :goto_1
│      invoke-static {p0}, Lcom/samourai/wallet/util/AppUtil;->getInstance(Landroid/content/Context;)Lcom/samourai/wallet/util/AppUtil;
│  
│      move-result-object v0
│  
│      invoke-virtual {v0}, Lcom/samourai/wallet/util/AppUtil;->restartApp()V
│  
│ -    .line 356
│      throw p1
│  .end method
│  
│  .method public static synthetic lambda$onCreate$0(Lcom/samourai/wallet/LandingActivity;Landroid/view/View;)V
│      .locals 0
│  
│      .line 93
├── smali_classes2/com/samourai/wallet/MainActivity2$3.smali
│ @@ -295,11 +295,10 @@
│      invoke-virtual {v2}, Landroid/app/ProgressDialog;->dismiss()V
│  
│      .line 323
│      iget-object v2, p0, Lcom/samourai/wallet/MainActivity2$3;->this$0:Lcom/samourai/wallet/MainActivity2;
│  
│      invoke-static {v2, v0}, Lcom/samourai/wallet/MainActivity2;->access$002(Lcom/samourai/wallet/MainActivity2;Landroid/app/ProgressDialog;)Landroid/app/ProgressDialog;
│  
│ -    .line 325
│      :cond_2
│      throw v1
│  .end method
├── smali_classes2/com/samourai/wallet/payload/PayloadUtil.smali
│ @@ -117,20 +117,20 @@
│      move-result-object v0
│  
│      .line 829
│      new-instance v1, Ljava/io/File;
│  
│      if-eqz p2, :cond_0
│  
│ -    const-string p2, "samourai.sav"+    sget-object p2, Lcom/samourai/wallet/payload/PayloadUtil;->strBackupFilename:Ljava/lang/String;
│  
│      goto :goto_0
│  
│      :cond_0
│ -    const-string p2, "samourai.dat"+    sget-object p2, Lcom/samourai/wallet/payload/PayloadUtil;->strFilename:Ljava/lang/String;
│  
│      :goto_0
│      invoke-direct {v1, v0, p2}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
│  
│      .line 831
│      new-instance p2, Ljava/lang/StringBuilder;
│  
│ @@ -835,15 +835,14 @@
│      goto :goto_1
│  
│      :catchall_0
│      move-exception p1
│  
│      invoke-virtual {v0}, Ljava/io/Writer;->close()V
│  
│ -    .line 1037
│      throw p1
│      :try_end_2
│      .catchall {:try_start_2 .. :try_end_2} :catchall_1
│  
│      .line 1044
│      :cond_2
│      :goto_1
│ @@ -996,15 +995,14 @@
│  
│      :catchall_0
│      move-exception p1
│  
│      .line 812
│      invoke-virtual {p2}, Ljava/io/Writer;->close()V
│  
│ -    .line 813
│      throw p1
│      :try_end_2
│      .catchall {:try_start_2 .. :try_end_2} :catchall_1
│  
│      .line 824
│      :cond_2
│      :goto_0
│ @@ -1117,15 +1115,14 @@
│      goto :goto_0
│  
│      :catchall_0
│      move-exception p1
│  
│      invoke-virtual {p2}, Ljava/io/Writer;->close()V
│  
│ -    .line 904
│      throw p1
│      :try_end_2
│      .catchall {:try_start_2 .. :try_end_2} :catchall_1
│  
│      .line 906
│      :cond_1
│      :goto_0
│ @@ -1214,27 +1211,25 @@
│      :catchall_0
│      move-exception p2
│  
│      .line 993
│      :try_start_5
│      invoke-virtual {p1}, Ljava/io/OutputStream;->close()V
│  
│ -    .line 994
│      throw p2
│      :try_end_5
│      .catchall {:try_start_5 .. :try_end_5} :catchall_1
│  
│      :catchall_1
│      move-exception p1
│  
│      .line 996
│      :try_start_6
│      invoke-virtual {v0}, Ljava/io/InputStream;->close()V
│  
│ -    .line 997
│      throw p1
│      :try_end_6
│      .catchall {:try_start_6 .. :try_end_6} :catchall_2
│  
│      :catchall_2
│      move-exception p1
│  
│ @@ -1716,15 +1711,14 @@
│  
│      invoke-static {p2, v3, v2}, Landroid/widget/Toast;->makeText(Landroid/content/Context;II)Landroid/widget/Toast;
│  
│      move-result-object p2
│  
│      invoke-virtual {p2}, Landroid/widget/Toast;->show()V
│  
│ -    .line 1075
│      throw p1
│  .end method
│  
│  .method public getPayload()Lorg/json/JSONObject;
│      .locals 8
│  
│      .line 305
│ @@ -5151,28 +5145,26 @@
│      :goto_0
│      if-nez v0, :cond_0
│  
│      monitor-exit p0
│  
│      return-void
│  
│ -    .line 466
│      :cond_0
│      :try_start_3
│      throw p1
│      :try_end_3
│      .catchall {:try_start_3 .. :try_end_3} :catchall_2
│  
│      :catch_1
│      nop
│  
│      :goto_1
│      if-nez v0, :cond_1
│  
│ -    .line 464
│      monitor-exit p0
│  
│      return-void
│  
│      .line 469
│      :cond_1
│      monitor-exit p0
├── smali_classes2/com/samourai/wallet/receivers/SMSReceiver$1.smali
│ @@ -198,15 +198,15 @@
│      .line 125
│      invoke-virtual {v0}, Lorg/bitcoinj/crypto/MnemonicException$MnemonicLengthException;->printStackTrace()V
│      :try_end_1
│      .catchall {:try_start_1 .. :try_end_1} :catchall_0
│  
│      goto :goto_1
│  
│ -    .line 130+    .line 129
│      :goto_0
│      throw v0
│  
│      :cond_1
│      :goto_1
│      const/4 v0, 0x0
├── smali_classes2/com/samourai/wallet/util/RootUtil.smali
│ @@ -199,25 +199,23 @@
│      move-object v2, v1
│  
│      :goto_0
│      if-eqz v2, :cond_3
│  
│      invoke-virtual {v2}, Ljava/lang/Process;->destroy()V
│  
│ -    .line 73
│      :cond_3
│      throw v0
│  
│      :catch_1
│      move-object v2, v1
│  
│      :goto_1
│      if-eqz v2, :cond_4
│  
│ -    .line 71
│      invoke-virtual {v2}, Ljava/lang/Process;->destroy()V
│  
│      :cond_4
│      return v0
│  .end method
│  
│  .method public static getInstance()Lcom/samourai/wallet/util/RootUtil;
├── smali_classes2/com/samourai/wallet/util/WebUtil.smali
│ @@ -189,15 +189,14 @@
│      goto :goto_0
│  
│      :catchall_0
│      move-exception p1
│  
│      invoke-virtual {v2}, Ljava/net/HttpURLConnection;->disconnect()V
│  
│ -    .line 255
│      throw p1
│  
│      :cond_1
│      return-object v2
│  .end method
│  
│  .method public static getAPIUrl(Landroid/content/Context;)Ljava/lang/String;
│ @@ -718,15 +717,14 @@
│      goto/16 :goto_0
│  
│      :catchall_0
│      move-exception p1
│  
│      invoke-virtual {v2}, Ljava/net/HttpURLConnection;->disconnect()V
│  
│ -    .line 202
│      throw p1
│  
│      .line 205
│      :cond_1
│      new-instance p1, Ljava/lang/Exception;
│  
│      new-instance p2, Ljava/lang/StringBuilder;
│ @@ -1164,15 +1162,14 @@
│      goto/16 :goto_0
│  
│      :catchall_0
│      move-exception p1
│  
│      invoke-virtual {v2}, Ljava/net/HttpURLConnection;->disconnect()V
│  
│ -    .line 153
│      throw p1
│  
│      .line 156
│      :cond_2
│      new-instance p1, Ljava/lang/Exception;
│  
│      new-instance p2, Ljava/lang/StringBuilder;
├── smali_classes2/com/samourai/wallet/send/boost/CPFPTask$3.smali
│ @@ -472,15 +472,15 @@
│  
│      invoke-virtual {p2, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
│      :try_end_1
│      .catchall {:try_start_1 .. :try_end_1} :catchall_0
│  
│      goto :goto_1
│  
│ -    .line 323+    .line 322
│      :goto_0
│      throw p1
│  
│      :cond_4
│      :goto_1
│      return-void
│  .end method
├── smali_classes2/com/samourai/wallet/send/boost/CPFPTask$2.smali
│ @@ -283,10 +283,9 @@
│      invoke-interface {p1}, Landroid/content/DialogInterface;->dismiss()V
│  
│      return-void
│  
│      :goto_1
│      invoke-interface {p1}, Landroid/content/DialogInterface;->dismiss()V
│  
│ -    .line 350
│      throw p2
│  .end method
├── smali_classes2/com/samourai/wallet/send/boost/RBFTask$5.smali
│ @@ -187,15 +187,15 @@
│  
│      invoke-virtual {p2, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
│      :try_end_1
│      .catchall {:try_start_1 .. :try_end_1} :catchall_0
│  
│      goto :goto_1
│  
│ -    .line 486+    .line 485
│      :goto_0
│      throw p1
│  
│      :cond_1
│      :goto_1
│      return-void
│  .end method
├── smali_classes2/com/samourai/wallet/paynym/paynymDetails/PayNymDetailsActivity.smali
│ @@ -3412,15 +3412,15 @@
│      invoke-static {}, Landroid/os/Looper;->loop()V
│  
│      .line 483
│      invoke-direct {p0, p1}, Lcom/samourai/wallet/paynym/paynymDetails/PayNymDetailsActivity;->doUpdatePayNymInfo(Ljava/lang/String;)V
│  
│      return-void
│  
│ -    .line 480+    .line 479
│      :goto_1
│      throw p1
│  .end method
│  
│  .method private loadTxes()V
│      .locals 2
├── smali_classes2/com/samourai/wallet/JSONRPC/JSONRPC.smali
│ @@ -269,27 +269,28 @@
│      .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_3
│      .catch Lorg/apache/http/ParseException; {:try_start_0 .. :try_end_0} :catch_2
│      .catch Lorg/json/JSONException; {:try_start_0 .. :try_end_0} :catch_1
│      .catchall {:try_start_0 .. :try_end_0} :catchall_0
│  
│      const/16 p3, 0xc8
│  
│ -    if-eq p2, p3, :cond_1+    if-eq p2, p3, :cond_2
│  
│      .line 315
│ +    :cond_1
│      invoke-virtual {v0}, Lorg/apache/http/impl/client/DefaultHttpClient;->getConnectionManager()Lorg/apache/http/conn/ClientConnectionManager;
│  
│      move-result-object p1
│  
│      invoke-interface {p1}, Lorg/apache/http/conn/ClientConnectionManager;->shutdown()V
│  
│      return-object v1
│  
│      .line 283
│ -    :cond_1+    :cond_2
│      :try_start_1
│      new-instance p2, Ljava/lang/StringBuilder;
│  
│      invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
│  
│      .line 284
│      new-instance p3, Ljava/io/BufferedReader;
│ @@ -317,23 +318,23 @@
│      .line 286
│      :goto_0
│      :try_start_2
│      invoke-virtual {p3}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
│  
│      move-result-object p1
│  
│ -    if-eqz p1, :cond_2+    if-eqz p1, :cond_3
│  
│      .line 287
│      invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      goto :goto_0
│  
│      .line 289
│ -    :cond_2+    :cond_3
│      invoke-virtual {p3}, Ljava/io/BufferedReader;->close()V
│      :try_end_2
│      .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_0
│      .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_2 .. :try_end_2} :catch_4
│      .catch Lorg/apache/http/ParseException; {:try_start_2 .. :try_end_2} :catch_2
│      .catch Lorg/json/JSONException; {:try_start_2 .. :try_end_2} :catch_1
│      .catchall {:try_start_2 .. :try_end_2} :catchall_0
│ @@ -349,15 +350,15 @@
│  
│      .line 294
│      :goto_1
│      invoke-virtual {p2}, Ljava/lang/StringBuilder;->length()I
│  
│      move-result p1
│  
│ -    if-lez p1, :cond_3+    if-lez p1, :cond_1
│  
│      .line 295
│      new-instance p1, Lorg/json/JSONObject;
│  
│      invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
│  
│      move-result-object p2
│ @@ -375,23 +376,14 @@
│  
│      move-result-object p2
│  
│      invoke-interface {p2}, Lorg/apache/http/conn/ClientConnectionManager;->shutdown()V
│  
│      goto :goto_3
│  
│ -    :cond_3-    invoke-virtual {v0}, Lorg/apache/http/impl/client/DefaultHttpClient;->getConnectionManager()Lorg/apache/http/conn/ClientConnectionManager;--    move-result-object p1--    invoke-interface {p1}, Lorg/apache/http/conn/ClientConnectionManager;->shutdown()V--    return-object v1-
│      :catchall_0
│      move-exception p1
│  
│      goto :goto_4
│  
│      :catch_1
│      move-exception p1
│ @@ -442,15 +434,14 @@
│      :goto_4
│      invoke-virtual {v0}, Lorg/apache/http/impl/client/DefaultHttpClient;->getConnectionManager()Lorg/apache/http/conn/ClientConnectionManager;
│  
│      move-result-object p2
│  
│      invoke-interface {p2}, Lorg/apache/http/conn/ClientConnectionManager;->shutdown()V
│  
│ -    .line 316
│      throw p1
│  .end method
│  
│  
│  # virtual methods
│  .method public getBalance(Ljava/lang/String;)Ljava/lang/Double;
│      .locals 4
├── smali_classes2/com/samourai/wallet/home/BalanceActivity$PoWTask.smali
│ @@ -265,15 +265,19 @@
│      .line 1398
│      invoke-virtual {v1, v2}, Lcom/samourai/wallet/home/BalanceActivity;->getString(I)Ljava/lang/String;
│  
│      move-result-object v1
│  
│      invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    const-string v1, "\nBlock hash:"+    const-string v1, "\n"++    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;++    const-string v1, "Block hash:"
│  
│      invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      iget-object v1, p0, Lcom/samourai/wallet/home/BalanceActivity$PoWTask;->strBlockHash:Ljava/lang/String;
│  
│      invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
├── smali_classes2/com/samourai/wallet/prng/PRNGFixes$LinuxPRNGSecureRandom.smali
│ @@ -405,10 +405,9 @@
│      :goto_1
│      return-void
│  
│      .line 223
│      :goto_2
│      iput-boolean v0, p0, Lcom/samourai/wallet/prng/PRNGFixes$LinuxPRNGSecureRandom;->mSeeded:Z
│  
│ -    .line 224
│      throw p1
│  .end method
├── smali_classes2/com/samourai/wallet/ricochet/RicochetMeta.smali
│ @@ -314,20 +314,20 @@
│  
│      invoke-virtual {v9}, Lcom/samourai/wallet/SamouraiWallet;->isTestNet()Z
│  
│      move-result v9
│  
│      if-eqz v9, :cond_3
│  
│ -    const-string v9, "tb1qkymumss6zj0rxy9l3v5vqxqwwffy8jjsyhrkrg"+    sget-object v9, Lcom/samourai/wallet/ricochet/RicochetMeta;->TESTNET_NLOCKTIME_SAMOURAI_RICOCHET_TX_FEE_ADDRESS:Ljava/lang/String;
│  
│      goto :goto_1
│  
│      :cond_3
│ -    const-string v9, "bc1q7r5tq0ewfr9rux6n5kwau0085u3rme8g9gs9vr"+    sget-object v9, Lcom/samourai/wallet/ricochet/RicochetMeta;->SAMOURAI_NLOCKTIME_RICOCHET_TX_FEE_ADDRESS:Ljava/lang/String;
│  
│      :goto_1
│      invoke-virtual {v11, v9, v6}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│      goto :goto_3
│  
│      .line 588
│ @@ -338,20 +338,20 @@
│  
│      invoke-virtual {v9}, Lcom/samourai/wallet/SamouraiWallet;->isTestNet()Z
│  
│      move-result v9
│  
│      if-eqz v9, :cond_5
│  
│ -    const-string v9, "tb1qkymumss6zj0rxy9l3v5vqxqwwffy8jjsyhrkrg"+    sget-object v9, Lcom/samourai/wallet/ricochet/RicochetMeta;->TESTNET_SAMOURAI_RICOCHET_TX_FEE_ADDRESS:Ljava/lang/String;
│  
│      goto :goto_2
│  
│      :cond_5
│ -    const-string v9, "bc1qvfguqt483c6v9apxh6e9y2q4k97nvymhn5p7pr"+    sget-object v9, Lcom/samourai/wallet/ricochet/RicochetMeta;->SAMOURAI_RICOCHET_TX_FEE_ADDRESS:Ljava/lang/String;
│  
│      :goto_2
│      invoke-virtual {v11, v9, v6}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
│  
│      .line 590
│      :goto_3
│      invoke-virtual {v6}, Ljava/math/BigInteger;->longValue()J
├── smali_classes2/com/samourai/wallet/bip47/BIP47Add$2.smali
│ @@ -209,11 +209,11 @@
│  
│      .line 157
│      :goto_0
│      invoke-static {}, Landroid/os/Looper;->loop()V
│  
│      return-void
│  
│ -    .line 155+    .line 154
│      :goto_1
│      throw v0
│  .end method
├── smali_classes2/com/samourai/wallet/api/APIFactory.smali
│ @@ -8307,15 +8307,19 @@
│  
│      new-instance v3, Ljava/lang/StringBuilder;
│  
│      invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
│  
│      invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│ -    const-string v1, "fees?at="+    const-string v1, "fees"++    invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;++    const-string v1, "?at="
│  
│      invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
│  
│      invoke-virtual {p0}, Lcom/samourai/wallet/api/APIFactory;->getAccessToken()Ljava/lang/String;
│  
│      move-result-object v1
│  
│ @@ -8403,14 +8407,16 @@
│  
│      .line 1472
│      :goto_3
│      monitor-exit p0
│  
│      throw v0
│  
│ +    nop+
│      :array_0
│      .array-data 4
│          0x2
│          0x6
│          0x18
│      .end array-data
│  .end method
├── smali_classes2/com/samourai/codescanner/Utils.smali
│ @@ -540,15 +540,14 @@
│      invoke-virtual {p0}, Lcom/google/zxing/MultiFormatReader;->reset()V
│  
│      return-object p1
│  
│      :goto_0
│      invoke-virtual {p0}, Lcom/google/zxing/MultiFormatReader;->reset()V
│  
│ -    .line 348
│      throw p1
│  .end method
│  
│  .method public static disableAutoFocus(Landroid/hardware/Camera$Parameters;)V
│      .locals 3
│      .param p0    # Landroid/hardware/Camera$Parameters;
│          .annotation build Landroidx/annotation/NonNull;
├── smali_classes2/com/samourai/codescanner/CodeScannerView.smali
│ @@ -671,15 +671,14 @@
│  
│      :goto_2
│      if-eqz v7, :cond_4
│  
│      .line 195
│      invoke-virtual {v7}, Landroid/content/res/TypedArray;->recycle()V
│  
│ -    .line 197
│      :cond_4
│      throw v0
│  .end method
│  
│  .method private performLayout(II)V
│      .locals 6
├── smali_classes2/com/samourai/codescanner/Decoder$DecoderThread.smali
│ @@ -189,10 +189,10 @@
│      :try_end_5
│      .catch Lcom/google/zxing/ReaderException; {:try_start_5 .. :try_end_5} :catch_0
│      .catchall {:try_start_5 .. :try_end_5} :catchall_1
│  
│      :catchall_1
│      move-exception v0
│  
│ -    .line 145+    .line 143
│      throw v0
│  .end method

Verdict Explained

Not verifiable: The provided Open Source Code could not be verified to match the app released on Google Play

This verdict means that the provider did share some source code but that we could not verify that this source code matches the released app. This might be due to the source being released later than the app or due to the provided instructions on how to compile the app not being sufficient or due to the provider excluding parts from the public source code. In any case, the result is a discrepancy between the app we can create and the app we can find on GooglePlay and any discrepancy might leak your backup to the server on purpose or by accident.

As we cannot verify that the source provided is the source the app was compiled from, this category is only slightly better than closed source but for now we have hope projects come around and fix verifiability issues.

The app cannot be independently verified. If the provider puts your funds at risk on purpose or by accident, you will probably not know about the issue before people start losing money. If the provider is more criminally inclined he might have collected all the backups of all the wallets, ready to be emptied at the press of a button. The app might have a formidable track record but out of distress or change in management turns out to be evil from some point on, with nobody outside ever knowing before it is too late.