--- /home/hans/code/fdroid/data/tmp/com.mobiperf_1050.apk +++ /home/hans/code/fdroid/data/tmp/sigcp_com.mobiperf_1050.apk ├── zipinfo {} │ @@ -1,51 +1,51 @@ │ -Zip file size: 409854 bytes, number of entries: 49 │ +Zip file size: 409450 bytes, number of entries: 49 │ -rw---- 2.0 fat 4202 bl defN 14-Sep-17 06:28 META-INF/MANIFEST.MF │ -rw---- 2.0 fat 4323 bl defN 14-Sep-17 06:28 META-INF/84483E44.SF │ -rw---- 2.0 fat 1332 bl defN 14-Sep-17 06:28 META-INF/84483E44.RSA │ --rw---- 2.0 fat 620 bX defN 14-Sep-17 06:06 res/drawable/ic_tab_results_icon.xml │ --rw---- 2.0 fat 620 bl defN 14-Sep-17 06:06 res/drawable/ic_tab_schedules.xml │ --rw---- 2.0 fat 620 bl defN 14-Sep-17 06:06 res/drawable/ic_tab_user_measurement.xml │ --rw---- 1.0 fat 6642 b- stor 14-Sep-17 06:06 res/drawable/icon.png │ --rw---- 1.0 fat 710 b- stor 14-Sep-17 06:06 res/drawable/icon_statusbar.png │ --rw---- 1.0 fat 155259 b- stor 14-Sep-17 06:06 res/drawable/splashscreen.jpg │ --rw---- 1.0 fat 84 b- stor 14-Sep-17 06:06 res/drawable/whiteline.png │ --rw---- 2.0 fat 1976 bl defN 14-Sep-17 06:06 res/layout/about.xml │ --rw---- 2.0 fat 912 bl defN 14-Sep-17 06:06 res/layout/console.xml │ --rw---- 2.0 fat 564 bl defN 14-Sep-17 06:06 res/layout/list_item.xml │ --rw---- 2.0 fat 1536 bl defN 14-Sep-17 06:06 res/layout/main.xml │ --rw---- 2.0 fat 8372 bl defN 14-Sep-17 06:06 res/layout/measurement_creation_main.xml │ --rw---- 2.0 fat 1220 bl defN 14-Sep-17 06:06 res/layout/measurement_schedule.xml │ --rw---- 2.0 fat 1872 bl defN 14-Sep-17 06:06 res/layout/results.xml │ --rw---- 2.0 fat 444 bl defN 14-Sep-17 06:06 res/layout/spinner_layout.xml │ --rw---- 2.0 fat 864 bl defN 14-Sep-17 06:06 res/layout/splash_screen.xml │ --rw---- 2.0 fat 888 bl defN 14-Sep-17 06:06 res/menu/main_menu.xml │ --rw---- 2.0 fat 428 bl defN 14-Sep-17 06:06 res/menu/scheduler_console_context_menu.xml │ --rw---- 2.0 fat 1596 bl defN 14-Sep-17 06:06 res/xml/preference.xml │ --rw---- 2.0 fat 6020 bl defN 14-Sep-17 06:06 AndroidManifest.xml │ --rw---- 1.0 fat 12644 b- stor 14-Sep-17 06:06 resources.arsc │ --rw---- 1.0 fat 1555 b- stor 14-Sep-17 06:06 res/drawable-hdpi/ic_tab_results_icon_selected.png │ --rw---- 1.0 fat 1625 b- stor 14-Sep-17 06:06 res/drawable-hdpi/ic_tab_results_icon_unselected.png │ --rw---- 1.0 fat 1600 b- stor 14-Sep-17 06:06 res/drawable-hdpi/ic_tab_schedules_selected.png │ --rw---- 1.0 fat 1633 b- stor 14-Sep-17 06:06 res/drawable-hdpi/ic_tab_schedules_unselected.png │ --rw---- 1.0 fat 1938 b- stor 14-Sep-17 06:06 res/drawable-hdpi/ic_tab_user_measurement_selected.png │ --rw---- 1.0 fat 1425 b- stor 14-Sep-17 06:06 res/drawable-hdpi/ic_tab_user_measurement_unselected.png │ --rw---- 1.0 fat 6642 b- stor 14-Sep-17 06:06 res/drawable-hdpi/icon.png │ --rw---- 1.0 fat 710 b- stor 14-Sep-17 06:06 res/drawable-hdpi/icon_statusbar.png │ --rw---- 1.0 fat 1555 b- stor 14-Sep-17 06:06 res/drawable-ldpi/ic_tab_results_icon_selected.png │ --rw---- 1.0 fat 1625 b- stor 14-Sep-17 06:06 res/drawable-ldpi/ic_tab_results_icon_unselected.png │ --rw---- 1.0 fat 1600 b- stor 14-Sep-17 06:06 res/drawable-ldpi/ic_tab_schedules_selected.png │ --rw---- 1.0 fat 1633 b- stor 14-Sep-17 06:06 res/drawable-ldpi/ic_tab_schedules_unselected.png │ --rw---- 1.0 fat 1938 b- stor 14-Sep-17 06:06 res/drawable-ldpi/ic_tab_user_measurement_selected.png │ --rw---- 1.0 fat 1425 b- stor 14-Sep-17 06:06 res/drawable-ldpi/ic_tab_user_measurement_unselected.png │ --rw---- 1.0 fat 6642 b- stor 14-Sep-17 06:06 res/drawable-ldpi/icon.png │ --rw---- 1.0 fat 710 b- stor 14-Sep-17 06:06 res/drawable-ldpi/icon_statusbar.png │ --rw---- 1.0 fat 1555 b- stor 14-Sep-17 06:06 res/drawable-mdpi/ic_tab_results_icon_selected.png │ --rw---- 1.0 fat 1625 b- stor 14-Sep-17 06:06 res/drawable-mdpi/ic_tab_results_icon_unselected.png │ --rw---- 1.0 fat 1600 b- stor 14-Sep-17 06:06 res/drawable-mdpi/ic_tab_schedules_selected.png │ --rw---- 1.0 fat 1633 b- stor 14-Sep-17 06:06 res/drawable-mdpi/ic_tab_schedules_unselected.png │ --rw---- 1.0 fat 1938 b- stor 14-Sep-17 06:06 res/drawable-mdpi/ic_tab_user_measurement_selected.png │ --rw---- 1.0 fat 1425 b- stor 14-Sep-17 06:06 res/drawable-mdpi/ic_tab_user_measurement_unselected.png │ --rw---- 1.0 fat 6642 b- stor 14-Sep-17 06:06 res/drawable-mdpi/icon.png │ --rw---- 1.0 fat 710 b- stor 14-Sep-17 06:06 res/drawable-mdpi/icon_statusbar.png │ --rw---- 2.0 fat 536488 bl defN 14-Sep-17 06:06 classes.dex │ -49 files, 801620 bytes uncompressed, 402218 bytes compressed: 49.8% │ +-rw---- 2.0 fat 5832 bX defN 08-Jan-01 00:00 AndroidManifest.xml │ +-rw---- 1.0 fat 1503 b- stor 08-Jan-01 00:00 res/drawable-hdpi-v4/ic_tab_results_icon_selected.png │ +-rw---- 1.0 fat 1560 b- stor 08-Jan-01 00:00 res/drawable-hdpi-v4/ic_tab_results_icon_unselected.png │ +-rw---- 1.0 fat 1600 b- stor 08-Jan-01 00:00 res/drawable-hdpi-v4/ic_tab_schedules_selected.png │ +-rw---- 1.0 fat 1633 b- stor 08-Jan-01 00:00 res/drawable-hdpi-v4/ic_tab_schedules_unselected.png │ +-rw---- 1.0 fat 1891 b- stor 08-Jan-01 00:00 res/drawable-hdpi-v4/ic_tab_user_measurement_selected.png │ +-rw---- 1.0 fat 1425 b- stor 08-Jan-01 00:00 res/drawable-hdpi-v4/ic_tab_user_measurement_unselected.png │ +-rw---- 1.0 fat 6664 b- stor 08-Jan-01 00:00 res/drawable-hdpi-v4/icon.png │ +-rw---- 1.0 fat 700 b- stor 08-Jan-01 00:00 res/drawable-hdpi-v4/icon_statusbar.png │ +-rw---- 1.0 fat 1503 b- stor 08-Jan-01 00:00 res/drawable-ldpi-v4/ic_tab_results_icon_selected.png │ +-rw---- 1.0 fat 1560 b- stor 08-Jan-01 00:00 res/drawable-ldpi-v4/ic_tab_results_icon_unselected.png │ +-rw---- 1.0 fat 1600 b- stor 08-Jan-01 00:00 res/drawable-ldpi-v4/ic_tab_schedules_selected.png │ +-rw---- 1.0 fat 1633 b- stor 08-Jan-01 00:00 res/drawable-ldpi-v4/ic_tab_schedules_unselected.png │ +-rw---- 1.0 fat 1891 b- stor 08-Jan-01 00:00 res/drawable-ldpi-v4/ic_tab_user_measurement_selected.png │ +-rw---- 1.0 fat 1425 b- stor 08-Jan-01 00:00 res/drawable-ldpi-v4/ic_tab_user_measurement_unselected.png │ +-rw---- 1.0 fat 6664 b- stor 08-Jan-01 00:00 res/drawable-ldpi-v4/icon.png │ +-rw---- 1.0 fat 700 b- stor 08-Jan-01 00:00 res/drawable-ldpi-v4/icon_statusbar.png │ +-rw---- 1.0 fat 1503 b- stor 08-Jan-01 00:00 res/drawable-mdpi-v4/ic_tab_results_icon_selected.png │ +-rw---- 1.0 fat 1560 b- stor 08-Jan-01 00:00 res/drawable-mdpi-v4/ic_tab_results_icon_unselected.png │ +-rw---- 1.0 fat 1600 b- stor 08-Jan-01 00:00 res/drawable-mdpi-v4/ic_tab_schedules_selected.png │ +-rw---- 1.0 fat 1633 b- stor 08-Jan-01 00:00 res/drawable-mdpi-v4/ic_tab_schedules_unselected.png │ +-rw---- 1.0 fat 1891 b- stor 08-Jan-01 00:00 res/drawable-mdpi-v4/ic_tab_user_measurement_selected.png │ +-rw---- 1.0 fat 1425 b- stor 08-Jan-01 00:00 res/drawable-mdpi-v4/ic_tab_user_measurement_unselected.png │ +-rw---- 1.0 fat 6664 b- stor 08-Jan-01 00:00 res/drawable-mdpi-v4/icon.png │ +-rw---- 1.0 fat 700 b- stor 08-Jan-01 00:00 res/drawable-mdpi-v4/icon_statusbar.png │ +-rw---- 2.0 fat 620 bl defN 08-Jan-01 00:00 res/drawable/ic_tab_results_icon.xml │ +-rw---- 2.0 fat 620 bl defN 08-Jan-01 00:00 res/drawable/ic_tab_schedules.xml │ +-rw---- 2.0 fat 620 bl defN 08-Jan-01 00:00 res/drawable/ic_tab_user_measurement.xml │ +-rw---- 1.0 fat 6664 b- stor 08-Jan-01 00:00 res/drawable/icon.png │ +-rw---- 1.0 fat 700 b- stor 08-Jan-01 00:00 res/drawable/icon_statusbar.png │ +-rw---- 1.0 fat 155259 b- stor 08-Jan-01 00:00 res/drawable/splashscreen.jpg │ +-rw---- 1.0 fat 84 b- stor 08-Jan-01 00:00 res/drawable/whiteline.png │ +-rw---- 2.0 fat 1976 bl defN 08-Jan-01 00:00 res/layout/about.xml │ +-rw---- 2.0 fat 912 bl defN 08-Jan-01 00:00 res/layout/console.xml │ +-rw---- 2.0 fat 564 bl defN 08-Jan-01 00:00 res/layout/list_item.xml │ +-rw---- 2.0 fat 1536 bl defN 08-Jan-01 00:00 res/layout/main.xml │ +-rw---- 2.0 fat 8372 bl defN 08-Jan-01 00:00 res/layout/measurement_creation_main.xml │ +-rw---- 2.0 fat 1220 bl defN 08-Jan-01 00:00 res/layout/measurement_schedule.xml │ +-rw---- 2.0 fat 1872 bl defN 08-Jan-01 00:00 res/layout/results.xml │ +-rw---- 2.0 fat 444 bl defN 08-Jan-01 00:00 res/layout/spinner_layout.xml │ +-rw---- 2.0 fat 864 bl defN 08-Jan-01 00:00 res/layout/splash_screen.xml │ +-rw---- 2.0 fat 888 bl defN 08-Jan-01 00:00 res/menu/main_menu.xml │ +-rw---- 2.0 fat 428 bl defN 08-Jan-01 00:00 res/menu/scheduler_console_context_menu.xml │ +-rw---- 2.0 fat 1596 bl defN 08-Jan-01 00:00 res/xml/preference.xml │ +-rw---- 1.0 fat 12960 b- stor 08-Jan-01 00:00 resources.arsc │ +-rw---- 2.0 fat 463576 bl defN 08-Jan-01 00:00 classes.dex │ +49 files, 728392 bytes uncompressed, 401798 bytes compressed: 44.8% ├── AndroidManifest.xml │ @@ -1,9 +1,9 @@ │ │ - │ @@ -36,9 +36,8 @@ │ │ │ │ │ - ├── res/drawable-mdpi-v4/icon.png ├── sng │ │ @@ -1,45 +1,45 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 76; height: 77; bitdepth: 8; │ │ using color alpha; │ │ } │ │ IMAGE { │ │ pixels hex │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 eef1f149 e3e5e776 e3e5e776 e0e4e77d d2d6dabb d2d5d7bd ccd1d5de ccd1d5de d1d3d7cd d2d6d7bb e0e2e68e e3e5e776 e3e5e776 eeeeee4c ffffff05 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ececef51 e2e4e67c ccd0d3f4 d9dbdeff dadddfff f0f1f1ff fffefeff fffefeff fffefeff fffefeff fffffeff fffefeff fffefeff fffefeff fffefeff fffefeff f2f2f2ff dcdfe1ff d9dcdeff cdd1d5ff e0e4e482 e9ecec5d ffffff10 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 efeff341 dcdfe191 d1d4d6ff dee0e2ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fefdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff e4e6e7ff d3d6d9ff d3d7dac7 eaeeee4a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff08 eef2f23d caced0f9 dde0e1ff fcfcfbff fcfcfbff fcfcfcff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fcfcfcff fcfcfcff fcfcfbff e2e4e6ff cbcfd1ff e7e7e96a f5f5f519 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 efefef50 c6caceff edeeefff fafafaff fafafaff fbfbfcff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfcfcff fafafaff fafafaff f4f5f5ff c7cccfff e0e1e38a ffffff11 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f3ffff15 c3c8cbf7 ecedeeff f9f9f9ff f9f9f9ff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff f9f9f9ff f9f9f9ff f3f4f4ff c2c7caff f7f7f720 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff02 caced0d0 e3e5e6ff f7f8f7ff f7f7f7ff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff f7f8f7ff f7f8f7ff e9ebecff c5c9cde2 ffffff02 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 bdc3c7f9 f2f3f2ff f6f6f5ff fafafaff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fafbfcff f6f6f5ff f4f5f5ff bdc2c6fc f0f3f342 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d2d7d9b7 d5d7dafc f3f4f3ff f6f6f5ff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff f8f9f9ff f3f4f4ff e4e6e7ff caced1cb ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 cbcfd3c3 e4e5e6ff f2f2f1ff f8f9f9ff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fafbfcff dcdedfff 9ea3a8ff 9ea3a8ff 8a8f96ff 848a91ff 82898fff 82898fff 82898fff 82898fff 838990ff 878d94ff 9ea3a7ff 9ea3a8ff b6babeff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff f8f9f9ff f2f2f1ff e5e6e7ff cbcfd1c4 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d0d2d5b7 e0e2e4ff f0f1f0ff f8f9f9ff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff acb0b5ff 9ea3a7ff 848a90ff 848a91ff 848a90ff 848a91ff 848a90ff 848a91ff 575c63ff 393c40ff 393b3fff 484b50ff 83898fff 848a91ff 848a90ff 848a90ff 848a90ff 848a90ff 979ba1ff a9adb2ff f2f3f4ff fafbfcff fafbfbff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfbff f0f1f0ff e9eaeaff c6cbcdd6 ffffff06 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d3d6d9a7 e4e6e6ff eeefefff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff d9dbdeff a6abafff 868c93ff 868b93ff 868c93ff 6d7278ff 3a3c40ff 2e3134ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 17181bff 3a3c40ff 4c5055ff 868c93ff 868b93ff 868c93ff a1a5abff d8daddff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff eeefefff eeeeeeff c0c3c7f5 ffffff0b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d5d9dc99 e2e3e4ff ecededff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff dadcdfff a2a6acff 888e95ff 888e94ff 6e7378ff 3e4143ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2e3139ff 585d6bff 585d6bff 30343bff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 313235ff 686d72ff 888e94ff 888e94ff a2a6abff d8dadcff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff ecededff ecededff c6c9cdf6 ffffff08 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d7dbdd8d dadddeff ebecebff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff bdc0c4ff 8a9096ff 898f96ff 6d7277ff 2f3134ff 020202ff 020202ff 020202ff 2a2d33ff 4f545fff 626876ff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e96abff 8e97abff 8e96abff 8e97abff 656b7aff 4f545fff 2e3139ff 020202ff 020202ff 020202ff 111214ff 585c60ff 8a9096ff 898f96ff a3a8adff f8f9faff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff ebececff ebecebff cbced0c5 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e4e6e87b cfd3d5ff e9ebe9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9faff f8f9fbff f8f9faff f8f9fbff dbdee0ff 9ba0a6ff 8c9298ff 71767aff 2e3134ff 020202ff 020202ff 22242aff 535864ff 8b94a7ff 8b94a8ff 8b94a7ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff bec3ceff bec3ceff 8e96aaff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a7ff 8b94a8ff 545966ff 212429ff 020202ff 020202ff 1b1d1eff 70757aff 8c9298ff 8c9298ff dcdee0ff f8f9faff f8f9fbff f8f9faff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff e9ebe9ff dcdedfff dbdddf81 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f7f7f720 c6c9ccff e7e9e8ff f3f5f5ff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff dddfe2ff 8e949aff 8e949bff 5a5e63ff 020202ff 020202ff 282b31ff 6c7382ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff ffffffff ffffffff 9097aaff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 7f7884ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 717887ff 2b2d35ff 020202ff 020202ff 323539ff 8d9399ff 8e949bff c5c9ccff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff e8e9e9ff cccfd1ff e8e8ea57 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff0a b8bcc1ff e5e7e6ff ebecedff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff c0c4c8ff 90969bff 868b91ff 2c2e30ff 020202ff 1b1d21ff 656b79ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff ffffffff ffffffff 8e96a7ff 878fa2ff 878fa2ff 878fa2ff 8f858fff 42393cff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 656b79ff 1b1d21ff 020202ff 171819ff 7b8085ff 90969bff a3a8adff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f2f3f5ff e5e7e6ff bdc2c4ff ffffff12 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e2e5e56b e2e4e3ff e7e8e8ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff bcbfc3ff 91979dff 81868cff 0f0f10ff 020202ff 474b56ff 858d9fff 858d9fff 858d9fff a2a7b5ff 9da2b2ff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858da0ff ffffffff ffffffff 8c93a4ff 858da0ff 858d9fff 858da0ff a66756ff 4a4f5aff 858d9fff 858da0ff 858d9fff 8f96a7ff b7bbc5ff 868ea1ff 858d9fff 858da0ff 484d58ff 020202ff 020202ff 82878dff 91979dff a3a7adff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff e9ebeaff e3e5e4ff caced0c4 ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f4f4f42f c2c7c9ff e2e4e3ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff c1c5c9ff 949a9fff 8a8f94ff 020202ff 080a0aff 666c7aff 838b9cff 838b9cff 838b9cff c0c4ccff ffffffff ecedf0ff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff ffffffff ffffffff 8a91a2ff 838b9cff 838b9cff 84899aff af5f42ff 666c7bff 838b9cff 838b9cff 838b9cff d5d7ddff ffffffff d8dbe0ff 838b9cff 838b9cff 828b9cff 666c7bff 080a0bff 020202ff 858b8fff 949a9fff a3a8adff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff e3e5e4ff c7caccff e9e9ec51 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b5babeff e0e2e0ff e7e8e9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff e9ebedff 969da1ff 93999dff 020202ff 050506ff 808799ff 818899ff 808899ff 818899ff 808799ff 808799ff fdfdfdff ffffffff c7cad1ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff ffffffff ffffffff 878e9fff 818899ff 808799ff a66552ff af5f41ff 646a78ff 808799ff 818899ff 9095a5ff ffffffff ffffffff 818899ff 808799ff 818899ff 808899ff 818899ff 808799ff 050506ff 020202ff 90979bff 969da1ff b6bbbeff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f5f6f6ff e0e2e0ff bbbfc3ff ffffff02 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 e9ecec50 c5c9cbff e0e3e2ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff 989ea3ff 989ea3ff 0f0f10ff 020202ff 7d8495ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff bcbfc8ff ffffffff fdfdfdff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff ffffffff ffffffff 868d9cff 7e8596ff 7e8596ff ad5f43ff 763e29ff 666b79ff 7e8596ff 7e8596ff eaebeeff ffffffff bec1c9ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7d8495ff 020202ff 020202ff 989ea3ff 989ea3ff ecedefff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff e3e4e4ff dbdeddff e9ecec50 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 bcc0c4f0 dbdeddff eff1f2ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff a0a6aaff 9ba1a5ff 292a2cff 020202ff 798090ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 7c8393ff 7c8393ff 7c8393ff f2f2f4ff ffffffff cfd1d7ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff ffffffff ffffffff 838a99ff 7c8393ff 8f7373ff ae5e40ff 34180dff 727887ff 7b8293ff bec1c9ff ffffffff ffffffff 7f8696ff 7c8393ff 7b8293ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 797f90ff 020202ff 0d0f0fff 9ba1a5ff 9ca2a6ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f4f5f6ff dbdeddff bec2c5ff ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 e9ecec50 c7caccff e0e2e1ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff b1b5b8ff 9da3a6ff 404244ff 020202ff 757b8bff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 999da9ff ffffffff fdfdfdff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 9499a5ff 9499a5ff 7b8191ff 797f8fff a7614aff ae5e40ff 2c130aff 797f8fff 797f8fff f8f8f9ff ffffffff b7bac3ff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 767c8bff 020202ff 333536ff 9da3a6ff acb0b3ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff e1e3e3ff d6d8d7ff e3e6e95b ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 c0c3c7d9 d8dadaff ebecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff 9fa4a8ff 9fa4a8ff 050505ff 626875ff 767c8cff 757c8cff 767c8cff 767d8cff 767c8cff 767d8cff 767c8cff 767c8cff 767c8cff 767c8cff 767c8cff cbcdd3ff ffffffff dcdee2ff 767c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767d8cff 757c8cff 767d8cff ae5e40ff ae5e40ff 2c130aff 767d8cff c8cbd0ff ffffffff f2f2f4ff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 626875ff 020202ff 8d9195ff 9fa4a8ff eaecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f2f3f5ff d8dadaff bdc1c4f4 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 f3f3f32b bec2c4ff dadcdbff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff abafb3ff a1a6aaff 1f2021ff 4a4f59ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737988ff 737989ff 737988ff 858b99ff e0e1e4ff 8e939fff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff a3624dff ae5e3fff af5e3fff 241611ff 737989ff 7f8593ff d0d2d7ff 969ba5ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 4a4e59ff 0a0a0aff a1a6aaff a1a5aaff f3f4f5ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff dedfe0ff c5c9caff e4e7ea54 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 dee0e36c d1d3d3ff dfe0e0ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f0f1f3ff a3a8acff 92979bff 020202ff 6e7584ff 707686ff 707686ff 767c8aff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff ad5e40ff ae5d3fff ae5d3fff 3f3e46ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 767c8aff 707686ff 707686ff 6f7585ff 020202ff 616467ff a3a8acff dddfe1ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff e7e8e8ff d5d7d6ff cccfd2ae ffffff00 ffffff00 │ │ -ffffff00 ffffff00 b9bdc1f7 d3d5d5ff f0f1f3ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff b0b4b7ff a4a9adff 060606ff 686e7bff 6d7382ff 6d7382ff a5a8b1ff ffffffff c4c6ccff 707684ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 91665fff ae5d3fff ae5d3fff ae5d3fff 595e6bff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff b5b8bfff ffffffff c1c4caff 6d7382ff 6d7382ff 686d7bff 050505ff a5aaaeff a5aaaeff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff d4d6d6ff babec1ff ffffff04 ffffff00 │ │ -ffffff00 f7f7f721 bcc0c2ff d6d9d8ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff edeef1ff a7abafff a6aaaeff 1b1d21ff 6c717eff 6c717dff 6c717eff c5c7cbff ffffffff ffffffff fafafbff a3a6aeff 6c717eff 6c717dff 6c717eff 6b717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff ab5e41ff ae5d3fff ae5d3fff ae5d3fff 575c67ff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717eff 6c717eff 6c717dff 6c717eff 6c717dff 91959eff e9eaecff ffffffff ffffffff e3e4e6ff 6c717dff 6b707eff 6c717eff 1e2022ff 85898cff a7abafff ecedf0ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff dcdedeff c1c5c6ff e2e2e561 ffffff00 │ │ -ffffff00 dbdddf71 c8cbcbff dcdedeff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f4ff dadcdfff a9adb0ff 212222ff 676c78ff 686e7aff 696e7aff 686e7aff 696e7aff 9fa3aaff f1f1f2ff ffffffff ffffffff dadcdfff 848992ff 686e7aff 686e7aff 686e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 726b72ff ae5c3fff ae5c3fff ae5d3fff 954e33ff 565b66ff 696e7aff 686e7aff 696e7aff 686e7aff 686e7aff 686e7aff 686e7aff 686e7aff 7e838cff cacbd0ff ffffffff ffffffff f4f5f5ff b6b9beff 696e7aff 686e7aff 696e7aff 686e7aff 656b77ff 020202ff a9adb0ff babec1ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff dfe1e2ff cfd1d0ff d4d8da89 ffffff00 │ │ -ffffff00 c7cacdc0 cdcfd0ff e8eaecff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff abafb2ff a8acafff 0a0b0dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff babdc2ff f6f6f7ff ffffffff ffffffff aaadb3ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff ac5c40ff ae5c3fff ae5c3fff ae5c3fff 572b1bff 5d626dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 92969eff ffffffff ffffffff fcfcfcff c4c6caff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 0c0d0fff a6aaadff abafb2ff eff0f2ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff cdcfd0ff b3b7bbff ffffff00 │ │ -ffffff00 b4b8bbff cccfcfff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f0f1f4ff f1f2f4ff ebecefff aeb2b5ff a5a8abff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff d4d5d8ff fdfdfdff 696e79ff 626874ff 626874ff 626874ff 636974ff 626874ff 636974ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 636772ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff f2f2f3ff e4e4e7ff 646a75ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 707376ff aeb2b5ff e8eaedff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff cfd1d0ff b9bdbfff ffffff0b │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 eef1f149 e3e5e776 e3e5e776 e0e4e77d d2d6dabb d2d5d7bd ccd1d5de ccd1d5de d1d3d7cd d2d6d7bb e0e2e68e e3e5e776 e3e5e776 eeeeee4c ffffff05 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ececef51 e2e4e67c ccd0d3f4 d9dbdeff dadddfff f0f1f1ff fffefeff fffefeff fffefeff fffefeff fffffeff fffefeff fffefeff fffefeff fffefeff fffefeff f2f2f2ff dcdfe1ff d9dcdeff cdd1d5ff e0e4e482 e9ecec5d ffffff10 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 efeff341 dcdfe191 d1d4d6ff dee0e2ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fefdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff e4e6e7ff d3d6d9ff d3d7dac7 eaeeee4a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff08 eef2f23d caced0f9 dde0e1ff fcfcfbff fcfcfbff fcfcfcff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fcfcfcff fcfcfcff fcfcfbff e2e4e6ff cbcfd1ff e7e7e96a f5f5f519 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 efefef50 c6caceff edeeefff fafafaff fafafaff fbfbfcff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfcfcff fafafaff fafafaff f4f5f5ff c7cccfff e0e1e38a ffffff11 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 f3ffff15 c3c8cbf7 ecedeeff f9f9f9ff f9f9f9ff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff f9f9f9ff f9f9f9ff f3f4f4ff c2c7caff f7f7f720 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff02 caced0d0 e3e5e6ff f7f8f7ff f7f7f7ff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff f7f8f7ff f7f8f7ff e9ebecff c5c9cde2 ffffff02 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 bdc3c7f9 f2f3f2ff f6f6f5ff fafafaff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fafbfcff f6f6f5ff f4f5f5ff bdc2c6fc f0f3f342 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d2d7d9b7 d5d7dafc f3f4f3ff f6f6f5ff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff f8f9f9ff f3f4f4ff e4e6e7ff caced1cb 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 cbcfd3c3 e4e5e6ff f2f2f1ff f8f9f9ff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fafbfcff dcdedfff 9ea3a8ff 9ea3a8ff 8a8f96ff 848a91ff 82898fff 82898fff 82898fff 82898fff 838990ff 878d94ff 9ea3a7ff 9ea3a8ff b6babeff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff f8f9f9ff f2f2f1ff e5e6e7ff cbcfd1c4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d0d2d5b7 e0e2e4ff f0f1f0ff f8f9f9ff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff acb0b5ff 9ea3a7ff 848a90ff 848a91ff 848a90ff 848a91ff 848a90ff 848a91ff 575c63ff 393c40ff 393b3fff 484b50ff 83898fff 848a91ff 848a90ff 848a90ff 848a90ff 848a90ff 979ba1ff a9adb2ff f2f3f4ff fafbfcff fafbfbff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfbff f0f1f0ff e9eaeaff c6cbcdd6 ffffff06 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d3d6d9a7 e4e6e6ff eeefefff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff d9dbdeff a6abafff 868c93ff 868b93ff 868c93ff 6d7278ff 3a3c40ff 2e3134ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 17181bff 3a3c40ff 4c5055ff 868c93ff 868b93ff 868c93ff a1a5abff d8daddff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff eeefefff eeeeeeff c0c3c7f5 ffffff0b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d5d9dc99 e2e3e4ff ecededff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff dadcdfff a2a6acff 888e95ff 888e94ff 6e7378ff 3e4143ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2e3139ff 585d6bff 585d6bff 30343bff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 313235ff 686d72ff 888e94ff 888e94ff a2a6abff d8dadcff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff ecededff ecededff c6c9cdf6 ffffff08 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d7dbdd8d dadddeff ebecebff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff bdc0c4ff 8a9096ff 898f96ff 6d7277ff 2f3134ff 020202ff 020202ff 020202ff 2a2d33ff 4f545fff 626876ff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e96abff 8e97abff 8e96abff 8e97abff 656b7aff 4f545fff 2e3139ff 020202ff 020202ff 020202ff 111214ff 585c60ff 8a9096ff 898f96ff a3a8adff f8f9faff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff ebececff ebecebff cbced0c5 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 e4e6e87b cfd3d5ff e9ebe9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9faff f8f9fbff f8f9faff f8f9fbff dbdee0ff 9ba0a6ff 8c9298ff 71767aff 2e3134ff 020202ff 020202ff 22242aff 535864ff 8b94a7ff 8b94a8ff 8b94a7ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff bec3ceff bec3ceff 8e96aaff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a7ff 8b94a8ff 545966ff 212429ff 020202ff 020202ff 1b1d1eff 70757aff 8c9298ff 8c9298ff dcdee0ff f8f9faff f8f9fbff f8f9faff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff e9ebe9ff dcdedfff dbdddf81 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 f7f7f720 c6c9ccff e7e9e8ff f3f5f5ff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff dddfe2ff 8e949aff 8e949bff 5a5e63ff 020202ff 020202ff 282b31ff 6c7382ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff ffffffff ffffffff 9097aaff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 7f7884ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 717887ff 2b2d35ff 020202ff 020202ff 323539ff 8d9399ff 8e949bff c5c9ccff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff e8e9e9ff cccfd1ff e8e8ea57 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 ffffff0a b8bcc1ff e5e7e6ff ebecedff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff c0c4c8ff 90969bff 868b91ff 2c2e30ff 020202ff 1b1d21ff 656b79ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff ffffffff ffffffff 8e96a7ff 878fa2ff 878fa2ff 878fa2ff 8f858fff 42393cff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 656b79ff 1b1d21ff 020202ff 171819ff 7b8085ff 90969bff a3a8adff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f2f3f5ff e5e7e6ff bdc2c4ff ffffff12 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 e2e5e56b e2e4e3ff e7e8e8ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff bcbfc3ff 91979dff 81868cff 0f0f10ff 020202ff 474b56ff 858d9fff 858d9fff 858d9fff a2a7b5ff 9da2b2ff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858da0ff ffffffff ffffffff 8c93a4ff 858da0ff 858d9fff 858da0ff a66756ff 4a4f5aff 858d9fff 858da0ff 858d9fff 8f96a7ff b7bbc5ff 868ea1ff 858d9fff 858da0ff 484d58ff 020202ff 020202ff 82878dff 91979dff a3a7adff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff e9ebeaff e3e5e4ff caced0c4 ffffff01 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 f4f4f42f c2c7c9ff e2e4e3ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff c1c5c9ff 949a9fff 8a8f94ff 020202ff 080a0aff 666c7aff 838b9cff 838b9cff 838b9cff c0c4ccff ffffffff ecedf0ff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff ffffffff ffffffff 8a91a2ff 838b9cff 838b9cff 84899aff af5f42ff 666c7bff 838b9cff 838b9cff 838b9cff d5d7ddff ffffffff d8dbe0ff 838b9cff 838b9cff 828b9cff 666c7bff 080a0bff 020202ff 858b8fff 949a9fff a3a8adff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff e3e5e4ff c7caccff e9e9ec51 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 b5babeff e0e2e0ff e7e8e9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff e9ebedff 969da1ff 93999dff 020202ff 050506ff 808799ff 818899ff 808899ff 818899ff 808799ff 808799ff fdfdfdff ffffffff c7cad1ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff ffffffff ffffffff 878e9fff 818899ff 808799ff a66552ff af5f41ff 646a78ff 808799ff 818899ff 9095a5ff ffffffff ffffffff 818899ff 808799ff 818899ff 808899ff 818899ff 808799ff 050506ff 020202ff 90979bff 969da1ff b6bbbeff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f5f6f6ff e0e2e0ff bbbfc3ff ffffff02 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 e9ecec50 c5c9cbff e0e3e2ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff 989ea3ff 989ea3ff 0f0f10ff 020202ff 7d8495ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff bcbfc8ff ffffffff fdfdfdff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff ffffffff ffffffff 868d9cff 7e8596ff 7e8596ff ad5f43ff 763e29ff 666b79ff 7e8596ff 7e8596ff eaebeeff ffffffff bec1c9ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7d8495ff 020202ff 020202ff 989ea3ff 989ea3ff ecedefff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff e3e4e4ff dbdeddff e9ecec50 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 bcc0c4f0 dbdeddff eff1f2ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff a0a6aaff 9ba1a5ff 292a2cff 020202ff 798090ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 7c8393ff 7c8393ff 7c8393ff f2f2f4ff ffffffff cfd1d7ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff ffffffff ffffffff 838a99ff 7c8393ff 8f7373ff ae5e40ff 34180dff 727887ff 7b8293ff bec1c9ff ffffffff ffffffff 7f8696ff 7c8393ff 7b8293ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 797f90ff 020202ff 0d0f0fff 9ba1a5ff 9ca2a6ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f4f5f6ff dbdeddff bec2c5ff 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 e9ecec50 c7caccff e0e2e1ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff b1b5b8ff 9da3a6ff 404244ff 020202ff 757b8bff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 999da9ff ffffffff fdfdfdff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 9499a5ff 9499a5ff 7b8191ff 797f8fff a7614aff ae5e40ff 2c130aff 797f8fff 797f8fff f8f8f9ff ffffffff b7bac3ff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 767c8bff 020202ff 333536ff 9da3a6ff acb0b3ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff e1e3e3ff d6d8d7ff e3e6e95b 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 c0c3c7d9 d8dadaff ebecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff 9fa4a8ff 9fa4a8ff 050505ff 626875ff 767c8cff 757c8cff 767c8cff 767d8cff 767c8cff 767d8cff 767c8cff 767c8cff 767c8cff 767c8cff 767c8cff cbcdd3ff ffffffff dcdee2ff 767c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767d8cff 757c8cff 767d8cff ae5e40ff ae5e40ff 2c130aff 767d8cff c8cbd0ff ffffffff f2f2f4ff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 626875ff 020202ff 8d9195ff 9fa4a8ff eaecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f2f3f5ff d8dadaff bdc1c4f4 00000000 00000000 00000000 │ │ +00000000 00000000 f3f3f32b bec2c4ff dadcdbff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff abafb3ff a1a6aaff 1f2021ff 4a4f59ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737988ff 737989ff 737988ff 858b99ff e0e1e4ff 8e939fff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff a3624dff ae5e3fff af5e3fff 241611ff 737989ff 7f8593ff d0d2d7ff 969ba5ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 4a4e59ff 0a0a0aff a1a6aaff a1a5aaff f3f4f5ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff dedfe0ff c5c9caff e4e7ea54 00000000 00000000 │ │ +00000000 00000000 dee0e36c d1d3d3ff dfe0e0ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f0f1f3ff a3a8acff 92979bff 020202ff 6e7584ff 707686ff 707686ff 767c8aff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff ad5e40ff ae5d3fff ae5d3fff 3f3e46ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 767c8aff 707686ff 707686ff 6f7585ff 020202ff 616467ff a3a8acff dddfe1ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff e7e8e8ff d5d7d6ff cccfd2ae 00000000 00000000 │ │ +00000000 00000000 b9bdc1f7 d3d5d5ff f0f1f3ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff b0b4b7ff a4a9adff 060606ff 686e7bff 6d7382ff 6d7382ff a5a8b1ff ffffffff c4c6ccff 707684ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 91665fff ae5d3fff ae5d3fff ae5d3fff 595e6bff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff b5b8bfff ffffffff c1c4caff 6d7382ff 6d7382ff 686d7bff 050505ff a5aaaeff a5aaaeff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff d4d6d6ff babec1ff ffffff04 00000000 │ │ +00000000 f7f7f721 bcc0c2ff d6d9d8ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff edeef1ff a7abafff a6aaaeff 1b1d21ff 6c717eff 6c717dff 6c717eff c5c7cbff ffffffff ffffffff fafafbff a3a6aeff 6c717eff 6c717dff 6c717eff 6b717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff ab5e41ff ae5d3fff ae5d3fff ae5d3fff 575c67ff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717eff 6c717eff 6c717dff 6c717eff 6c717dff 91959eff e9eaecff ffffffff ffffffff e3e4e6ff 6c717dff 6b707eff 6c717eff 1e2022ff 85898cff a7abafff ecedf0ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff dcdedeff c1c5c6ff e2e2e561 00000000 │ │ +00000000 dbdddf71 c8cbcbff dcdedeff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f4ff dadcdfff a9adb0ff 212222ff 676c78ff 686e7aff 696e7aff 686e7aff 696e7aff 9fa3aaff f1f1f2ff ffffffff ffffffff dadcdfff 848992ff 686e7aff 686e7aff 686e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 726b72ff ae5c3fff ae5c3fff ae5d3fff 954e33ff 565b66ff 696e7aff 686e7aff 696e7aff 686e7aff 686e7aff 686e7aff 686e7aff 686e7aff 7e838cff cacbd0ff ffffffff ffffffff f4f5f5ff b6b9beff 696e7aff 686e7aff 696e7aff 686e7aff 656b77ff 020202ff a9adb0ff babec1ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff dfe1e2ff cfd1d0ff d4d8da89 00000000 │ │ +00000000 c7cacdc0 cdcfd0ff e8eaecff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff abafb2ff a8acafff 0a0b0dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff babdc2ff f6f6f7ff ffffffff ffffffff aaadb3ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff ac5c40ff ae5c3fff ae5c3fff ae5c3fff 572b1bff 5d626dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 92969eff ffffffff ffffffff fcfcfcff c4c6caff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 0c0d0fff a6aaadff abafb2ff eff0f2ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff cdcfd0ff b3b7bbff 00000000 │ │ +00000000 b4b8bbff cccfcfff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f0f1f4ff f1f2f4ff ebecefff aeb2b5ff a5a8abff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff d4d5d8ff fdfdfdff 696e79ff 626874ff 626874ff 626874ff 636974ff 626874ff 636974ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 636772ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff f2f2f3ff e4e4e7ff 646a75ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 707376ff aeb2b5ff e8eaedff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff cfd1d0ff b9bdbfff ffffff0b │ │ ffffff09 b8bcbfff d2d4d5ff f0f1f3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff f0f1f3ff e7e9ebff b1b5b7ff 333536ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6570ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 915f52ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 5f6671ff 5f6571ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 030303ff b1b5b7ff ced0d3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff dadbdcff b9bdc0ff e5e8e857 │ │ e1e4e45f b8bcbeff d8dadbff eff0f2ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff eff0f2ff cbcfd1ff b2b6b8ff 080a0bff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c616eff 5c606dff 5c616eff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5e616cff ae5c3fff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 220d07ff 5c606dff 5c606dff 5c606dff 5c616eff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 07070aff adb0b3ff b2b6b8ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff d8dadaff c6c8c9ff d7dbdd79 │ │ d6d8dc7b c1c4c6ff d7d9daff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff b4b8baff aeb2b4ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 5e5e67ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 353034ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff a9adafff b4b8baff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff e1e3e5ff c6c9caff d7d9dd79 │ │ d6d8da7b c6c9c9ff dadcdeff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff b7bbbdff aaaeb0ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 555a66ff 565b66ff 555a66ff 555b66ff 555a66ff 555b66ff 0d0f12ff f3eeedff f5efedff f5efedff f5efedff b15d30ff ae5c3eff 464b54ff 555a66ff 555b66ff 565a66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff abafb1ff b7bbbdff e9ebeeff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff ecedf1ff c5c9c9ff c1c4c6b9 │ │ d3d5d992 c4c7c8ff e1e3e5ff edeef2ff edeff2ff edeef2ff edeff2ff edeef2ff e9ebeeff b8bcbeff b0b4b6ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 545862ff 535861ff 545862ff 535861ff 535862ff 535861ff 333435ff f6f7f9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff b4663dff 464a53ff 535862ff 535861ff 535862ff 535861ff 545862ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 7b7d80ff b8bcbeff e5e7eaff edeef2ff edeff2ff edeef2ff edeff2ff edeef2ff edeff2ff c3c7c8ff b4b8bcef │ │ c1c3c7bc c2c5c6ff eaecefff eceef1ff edeef1ff eceef1ff edeef1ff eceef1ff e6e8ebff bbbec0ff aeb1b3ff 0d0f10ff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565fff 51565eff 51565fff 51565eff 51565eff 444850ff eff0f1ff f5f6f8ff f5f6f7ff f5f6f8ff f5f6f7ff f5f6f8ff f5f6f7ff f5f6f8ff 404247ff 51565fff 51565eff 51565fff 51565eff 51565fff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 17181bff 656768ff bbbec0ff e5e7eaff eceef1ff edeef1ff eceef1ff edeef1ff eceef1ff edeef1ff c2c4c6ff adb2b6ff │ │ bec2c4bd c0c3c4ff ecedf1ff ecedf1ff ecedf1ff ebedf1ff ecedf1ff ebedf1ff e5e7eaff bdc1c2ff a3a6a7ff 020202ff 020202ff 1c1e21ff c5c6caff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff 4d515aff 4d515aff 4d515aff 4d515aff 4d515bff 4d515aff 4d515bff 4d515aff 4d515bff 4d515aff 4d515bff 3b3c3fff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff 353636ff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff ced0d1ff ced0d1ff ced0d1ff ced0d1ff ced0d1ff cecfd1ff ced0d1ff cecfd1ff 1e2125ff 020202ff 020202ff 0a0a0aff bdc1c2ff e5e7eaff ebedf1ff ecedf1ff ebedf1ff ecedf1ff ecedf1ff ecedf1ff c0c3c4ff acb0b5ff │ │ @@ -47,39 +47,39 @@ │ │ bcc0c4bd bdc0c1ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff e4e7e9ff c1c4c5ff a9acadff 020202ff 020202ff 020202ff 828282ff 8a8a8aff 8a8a8aff 8a8a8aff a3a6a8ff a3a6a8ff a3a6a8ff a3a6a8ff 474a53ff 474a53ff 474a53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 393b3cff e6e9edff e7eaeeff e6e9edff e7eaeeff e6e9edff e7eaeeff e6e9edff e7eaeeff 333435ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474a53ff 474a53ff 474a53ff a4a6a9ff a4a6a8ff a4a6a9ff a4a6a8ff 8b8b8bff 8b8b8bff 8b8b8bff 8b8b8bff 020202ff 020202ff 020202ff 060606ff c1c4c5ff e4e7eaff eaecf0ff ebedf0ff eaecf0ff ebedf0ff eaecf0ff ebedf0ff bdc0c1ff aaaeb2ff │ │ bec0c4bd bbbec0ff e7eaeeff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff e5e8ebff c3c6c7ff b6b9baff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 222428ff 3b3f46ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 42454bff e2e6eaff e2e6eaff e2e6eaff e3e6ebff e2e6eaff e3e6ebff e2e6eaff e3e6ebff 373a3fff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 3b3f46ff 292b30ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b5c5dff c3c6c7ff e4e7eaff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff bbbec0ff a9adb1ff │ │ cfd2d48f babdbfff dcdfe2ff e9ecf0ff e9ecf0ff e9ecf0ff e9ecf0ff e9ecf0ff e6e9ecff c5c9c9ff b9bbbbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2b2d31ff 303339ff 42454bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 242628ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 656769ff 3d4046ff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 373a40ff 2b2d32ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 8c8e8fff c5c9c9ff e4e7eaff e9ecefff e9ecf0ff e9ecefff e9ecf0ff e9ecefff e9ecf0ff b9bdbfff acb0b5f2 │ │ d3d6d87b b8bcbeff d3d6d9ff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff c7cacbff babdbdff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0c0d0fff 2d3033ff 2e3035ff 3c4046ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3e4148ff 3d4046ff 242629ff a4a7acff dadee3ff dadee4ff a5a7acff 4e5052ff 393c42ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3e4047ff 2e3135ff 2e3135ff 161719ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff bbbdbeff c7cacbff e6e8ebff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff e6e9ecff b8bcbeff bec0c4bb │ │ d1d3d67b b4b8bbff caced1ff e8ebefff e8ebefff e8ebefff e8ecefff e8ebefff e8ecefff caccccff c4c6c6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0a0b0dff 2b2d32ff 2e3137ff 303237ff 2e3137ff 2e3135ff 020203ff 010202ff 2d3035ff 303237ff 2e3137ff 303237ff 2b2d32ff 121415ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff bec0c0ff caccccff e8ecefff e8ebefff e8ecefff e8ebefff e8ecefff e8ebefff d7daddff b7babdff d3d5d779 │ │ d6dbdd70 abafb3ff c9cdd0ff e7eaeeff e8ebefff e7eaeeff e8ebefff e7eaeeff e8ebefff d1d4d4ff cccfcfff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff c7c9caff cccfceff e8ebefff e7eaeeff e8ebefff e7eaeeff e8ebefff e7eaeeff c9ccd0ff b3b7b9ff d3d5d779 │ │ f4f4f418 a8acafff bdc0c3ff e7eaedff e7eaeeff e7eaedff e7eaeeff e7eaedff e7eaeeff e3e7e9ff ced0d0ff 0f1010ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ced0d0ff dadcdeff e7eaeeff e7eaedff e7eaeeff e7eaedff e7eaeeff e7eaedff c8cbcdff a9aeb1ff d9d9dd72 │ │ -ffffff00 a5a9aeff b1b5b8ff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e3e7eaff d1d3d2ff c8cacaff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 777877ff d1d3d2ff e3e7eaff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff babec1ff a7abafff ffffff00 │ │ -ffffff00 babdc1bc b0b4b7ff dde0e5ff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff d3d5d5ff cfd1d0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cccfcdff d3d5d5ff e5e8ecff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff b0b4b6ff a2a6abff ffffff00 │ │ -ffffff00 d4d6db71 adb1b4ff c4c7caff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff dde0e2ff d5d7d6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff d4d6d6ff d6d8d6ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff d1d4d9ff aeb2b5ff cfd1d58b ffffff00 │ │ -ffffff00 eaeaea3d a2a7acff b8bcbfff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e4e7eaff d7d9d9ff caccccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b0b2b2ff d7d9d9ff e3e7e9ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff c0c4c8ff a7abafff d6d8da6f ffffff00 │ │ -ffffff00 ffffff00 9ea4a8ff aaaeb1ff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff dadbdbff dadcdbff 080a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 626c79ff 919fb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 060606ff dadcdbff dadbdbff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff acb1b5ff a1a5aaff ffffff0d ffffff00 │ │ -ffffff00 ffffff00 cfd1d380 a8adb0ff c2c6caff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e6e9ff dbdeddff b6b8b8ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7c889bff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7d7d7dff dbdeddff e1e3e6ff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff d1d4d8ff a9adb0ff b6babec4 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ebf0f034 9ea4a8ff aeb2b6ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff dee0e0ff dedfdfff 141414ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 758397ff adc1deff adc1deff a3b7d3ff a8bbd8ff adc1deff adc1deff acc0ddff a0b2cdff adc1deff adc1deff adc1deff 90a1baff adc1deff adc1deff adc1deff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0f0f0fff dedfdfff dee0e0ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff b6bbbeff a1a5aaff dde0e35b ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 acb0b5d7 a4a9aeff d1d5daff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e2e5eaff e0e3e1ff d5d7d6ff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 707f95ff a4b9daff 92a5c2ff 0e1217ff 06070bff a4b9daff a0b5d4ff 000000ff 000000ff 9eb2d1ff a4b9daff 11151bff 181d25ff 899bb6ff a4b9daff a4b9daff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a0a1a0ff e0e3e1ff e1e4e7ff e3e6eaff e2e5eaff e3e6eaff e2e5eaff e3e6eaff e2e5eaff dfe3e7ff a4a9adff 9ba1a6ff ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 e2e2e250 9fa4a8ff b0b5b9ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e4e5ff e3e4e4ff 747474ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 6a7a92ff 9cb2d5ff 7f92afff 303846ff 1d222cff 9cb2d5ff 94aacbff 010202ff 58647bff 95aaccff 9cb2d5ff 000000ff 889bbaff 627187ff 9cb2d5ff 9cb2d5ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 3f403fff e3e4e4ff e2e4e4ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff b5babeff a2a7abff d4d6d971 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 a2a6abed a2a6abff d4d7dcff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e5e7e6ff e5e7e6ff 1d1e1dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 65748fff 94aad0ff 788babff 222834ff 161b25ff 94aad0ff 8ca1c6ff 010202ff 434f61ff 8da2c7ff 94aad0ff 000000ff 7d90b1ff 5f6f8aff 94aad0ff 94aad0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 141414ff e5e7e6ff e5e7e6ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff dfe2e7ff a2a6abff 9a9fa4ff f4f4f418 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 e0e4e74b 9ca2a6ff acb1b5ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e1e5e8ff e8e9e8ff e8e9e9ff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5f6f8cff 8da3ccff 8094bbff 060a0fff 131721ff 8da3ccff 8aa0c9ff 131822ff 000102ff 889dc5ff 8da3ccff 303949ff 000000ff 7a8db2ff 8da3ccff 8da3ccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0d0d0dff d5d7d6ff e8e9e9ff e4e7e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff aeb3b7ff 9ea4a8ff d2d4d483 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 a2a7acea 9ea4a7ff caced2ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e6e8e9ff ebecebff e2e3e2ff 0d0d0dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b6a88ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 959696ff ebecebff e7e9eaff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff d8dce0ff 9ea4a7ff 989da2ff ffffff09 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e3e3e740 989da2ff 9fa4a8ff dfe2e7ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff e9ebecff ecededff d9dadaff 0a0a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 576584ff 8095c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 949494ff ecededff e9ebecff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff a7adb0ff 9ba0a5ff e5e9e944 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b8bcbfaf 9ba1a5ff a6acafff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff ebecedff eff0f0ff ebececff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff b9b9b9ff eff0f0ff ebecedff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff adb3b7ff 9ba1a5ff 989da3f7 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff03 94999fff 999fa4ff c8cdd1ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff edefefff f1f1f1ff eeeeedff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ecedecff f1f1f1ff eeeff0ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff 999fa4ff 949a9fff f1f1f125 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e7e7e740 94999eff 989ea3ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff eaeceeff f3f4f3ff eff0f0ff 686968ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5d5d5dff e8e8e9ff f3f4f3ff eef0f1ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 999fa4ff 969ba0ff e2e6e647 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e0e0e051 959ba0ff 989fa3ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff e1e4e8ff f6f6f6ff f6f6f5ff dbdbdbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cbcbcbff f6f6f6ff f6f6f5ff e3e7eaff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff 9fa5a9ff 969ca1ff b7babfb2 ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 b3b8bcb6 949a9fff 979da2ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e0e3e8ff f0f2f2ff f7f8f7ff f6f6f5ff bfbebeff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a2a2a1ff f0f0efff f7f8f7ff f1f3f3ff e1e5e8ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff a6acb0ff 949a9fff 91979cff ffffff0a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff06 959a9fff 92989dff 9ea4a8ff dce0e5ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e3e7eaff f7f7f7ff f9f9f9ff f8f8f8ff b6b6b6ff 444444ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b4b4b4ff f5f5f5ff f9f9f9ff f9f9f9ff e6e9ecff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff acb1b7ff 92989dff 90969cff ffffff0a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff09 8f959bff 90969cff 93999fff d9dde3ff dce0e6ff dce0e5ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff e8eaeeff f6f7f8ff fcfbfbff fcfbfbff e8e8e7ff a8a7a7ff 80807fff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 727272ff a7a7a7ff dededdff fcfbfbff fcfbfbff fcfbfbff e9ebeeff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e5ff dce0e6ff dbdee4ff aeb3b9ff 90969cff 8f959bff ffffff08 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff06 989da2fe 8f959bff 8f959bff d8dce1ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dce0e5ff e3e6eaff edeff1ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfcff aeaeadff 989797ff 989897ff 989797ff 989897ff 989797ff 989897ff 989797ff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff f1f2f4ff e6e9ecff dce0e5ff dcdfe5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff d8dce1ff a0a5abff 8f959bff 8f949aff ffffff05 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 b5b8bcbe 8e949aff 8e949bff bbc0c5ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff e1e5e9ff eff1f2ff f0f1f4ff fefefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fefefeff f2f3f5ff eff1f3ff e2e5e9ff dcdfe5ff dcdfe5ff dcdfe5ff dcdfe5ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff d3d7dcff 8e949bff 8e949bff 92979cf8 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 bec2c496 8d9399ff 8d9399ff b5babfff d7dbe0ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff b6bbc0ff 8d9399ff 8d9399ff bdc0c49b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d3d5d78b 92969cf4 8b9197ff 8b9097ff c6cad0ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff d1d5dbff 8c9298ff 8b9197ff 8e949af9 bcbfc29f ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 aaadb0c8 8a9096ff 898f96ff a6abb1ff d3d7dcff dadee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dadee3ff d4d8ddff b3b7bdff 898f96ff 8a9096ff 9ba0a5ea ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 caced081 92969cf3 898e94ff 888d94ff acb1b7ff d2d6dcff dadee3ff dadee3ff dadee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d4d8deff b0b5bbff 888d94ff 888d94ff 90949af6 bcbec1a4 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b9bcbea1 8e9298f9 868c93ff 868c93ff 868c93ff d0d4daff d8dce2ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d9dde3ff d4d8deff 969ca2ff 868c93ff 868c93ff 8b9096fc acafb3bf ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 c2c4c88f 8b8f95ff 858a91ff 848a91ff 848a91ff 8c9299ff d3d7ddff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d8dce2ff 9ca2a8ff 848a91ff 848a91ff 848a90ff 8b8f95ff afb1b5ba ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff09 f2f2f54c 8f9398ff 898d93ff 848a90ff 83898fff 848a90ff 8a9096ff 8a9097ff b2b7bdff d6dae0ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff c0c4caff 8b9197ff 8a9097ff 858b91ff 83898fff 83898fff 878c93ff 898d94ff d9d9dd8e ffffff0b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 989ca2ff 888c92ff 878c92ff 83898fff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 82898fff 868b92ff 888c92ff 91959bff ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 9ca0a6ff 888c92ff 878c91ff 868b91ff 868b91ff 868b91ff 868b91ff 878c91ff 878c91ff 9b9fa5ff ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ +00000000 a5a9aeff b1b5b8ff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e3e7eaff d1d3d2ff c8cacaff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 777877ff d1d3d2ff e3e7eaff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff babec1ff a7abafff 00000000 │ │ +00000000 babdc1bc b0b4b7ff dde0e5ff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff d3d5d5ff cfd1d0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cccfcdff d3d5d5ff e5e8ecff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff b0b4b6ff a2a6abff 00000000 │ │ +00000000 d4d6db71 adb1b4ff c4c7caff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff dde0e2ff d5d7d6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff d4d6d6ff d6d8d6ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff d1d4d9ff aeb2b5ff cfd1d58b 00000000 │ │ +00000000 eaeaea3d a2a7acff b8bcbfff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e4e7eaff d7d9d9ff caccccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b0b2b2ff d7d9d9ff e3e7e9ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff c0c4c8ff a7abafff d6d8da6f 00000000 │ │ +00000000 00000000 9ea4a8ff aaaeb1ff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff dadbdbff dadcdbff 080a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 626c79ff 919fb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 060606ff dadcdbff dadbdbff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff acb1b5ff a1a5aaff ffffff0d 00000000 │ │ +00000000 00000000 cfd1d380 a8adb0ff c2c6caff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e6e9ff dbdeddff b6b8b8ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7c889bff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7d7d7dff dbdeddff e1e3e6ff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff d1d4d8ff a9adb0ff b6babec4 00000000 00000000 │ │ +00000000 00000000 ebf0f034 9ea4a8ff aeb2b6ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff dee0e0ff dedfdfff 141414ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 758397ff adc1deff adc1deff a3b7d3ff a8bbd8ff adc1deff adc1deff acc0ddff a0b2cdff adc1deff adc1deff adc1deff 90a1baff adc1deff adc1deff adc1deff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0f0f0fff dedfdfff dee0e0ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff b6bbbeff a1a5aaff dde0e35b 00000000 00000000 │ │ +00000000 00000000 00000000 acb0b5d7 a4a9aeff d1d5daff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e2e5eaff e0e3e1ff d5d7d6ff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 707f95ff a4b9daff 92a5c2ff 0e1217ff 06070bff a4b9daff a0b5d4ff 000000ff 000000ff 9eb2d1ff a4b9daff 11151bff 181d25ff 899bb6ff a4b9daff a4b9daff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a0a1a0ff e0e3e1ff e1e4e7ff e3e6eaff e2e5eaff e3e6eaff e2e5eaff e3e6eaff e2e5eaff dfe3e7ff a4a9adff 9ba1a6ff 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 e2e2e250 9fa4a8ff b0b5b9ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e4e5ff e3e4e4ff 747474ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 6a7a92ff 9cb2d5ff 7f92afff 303846ff 1d222cff 9cb2d5ff 94aacbff 010202ff 58647bff 95aaccff 9cb2d5ff 000000ff 889bbaff 627187ff 9cb2d5ff 9cb2d5ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 3f403fff e3e4e4ff e2e4e4ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff b5babeff a2a7abff d4d6d971 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 a2a6abed a2a6abff d4d7dcff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e5e7e6ff e5e7e6ff 1d1e1dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 65748fff 94aad0ff 788babff 222834ff 161b25ff 94aad0ff 8ca1c6ff 010202ff 434f61ff 8da2c7ff 94aad0ff 000000ff 7d90b1ff 5f6f8aff 94aad0ff 94aad0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 141414ff e5e7e6ff e5e7e6ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff dfe2e7ff a2a6abff 9a9fa4ff f4f4f418 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 e0e4e74b 9ca2a6ff acb1b5ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e1e5e8ff e8e9e8ff e8e9e9ff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5f6f8cff 8da3ccff 8094bbff 060a0fff 131721ff 8da3ccff 8aa0c9ff 131822ff 000102ff 889dc5ff 8da3ccff 303949ff 000000ff 7a8db2ff 8da3ccff 8da3ccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0d0d0dff d5d7d6ff e8e9e9ff e4e7e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff aeb3b7ff 9ea4a8ff d2d4d483 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 a2a7acea 9ea4a7ff caced2ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e6e8e9ff ebecebff e2e3e2ff 0d0d0dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b6a88ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 959696ff ebecebff e7e9eaff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff d8dce0ff 9ea4a7ff 989da2ff ffffff09 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 e3e3e740 989da2ff 9fa4a8ff dfe2e7ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff e9ebecff ecededff d9dadaff 0a0a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 576584ff 8095c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 949494ff ecededff e9ebecff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff a7adb0ff 9ba0a5ff e5e9e944 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 b8bcbfaf 9ba1a5ff a6acafff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff ebecedff eff0f0ff ebececff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff b9b9b9ff eff0f0ff ebecedff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff adb3b7ff 9ba1a5ff 989da3f7 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 ffffff03 94999fff 999fa4ff c8cdd1ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff edefefff f1f1f1ff eeeeedff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ecedecff f1f1f1ff eeeff0ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff 999fa4ff 949a9fff f1f1f125 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 e7e7e740 94999eff 989ea3ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff eaeceeff f3f4f3ff eff0f0ff 686968ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5d5d5dff e8e8e9ff f3f4f3ff eef0f1ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 999fa4ff 969ba0ff e2e6e647 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 e0e0e051 959ba0ff 989fa3ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff e1e4e8ff f6f6f6ff f6f6f5ff dbdbdbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cbcbcbff f6f6f6ff f6f6f5ff e3e7eaff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff 9fa5a9ff 969ca1ff b7babfb2 ffffff01 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 b3b8bcb6 949a9fff 979da2ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e0e3e8ff f0f2f2ff f7f8f7ff f6f6f5ff bfbebeff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a2a2a1ff f0f0efff f7f8f7ff f1f3f3ff e1e5e8ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff a6acb0ff 949a9fff 91979cff ffffff0a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff06 959a9fff 92989dff 9ea4a8ff dce0e5ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e3e7eaff f7f7f7ff f9f9f9ff f8f8f8ff b6b6b6ff 444444ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b4b4b4ff f5f5f5ff f9f9f9ff f9f9f9ff e6e9ecff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff acb1b7ff 92989dff 90969cff ffffff0a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff09 8f959bff 90969cff 93999fff d9dde3ff dce0e6ff dce0e5ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff e8eaeeff f6f7f8ff fcfbfbff fcfbfbff e8e8e7ff a8a7a7ff 80807fff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 727272ff a7a7a7ff dededdff fcfbfbff fcfbfbff fcfbfbff e9ebeeff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e5ff dce0e6ff dbdee4ff aeb3b9ff 90969cff 8f959bff ffffff08 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff06 989da2fe 8f959bff 8f959bff d8dce1ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dce0e5ff e3e6eaff edeff1ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfcff aeaeadff 989797ff 989897ff 989797ff 989897ff 989797ff 989897ff 989797ff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff f1f2f4ff e6e9ecff dce0e5ff dcdfe5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff d8dce1ff a0a5abff 8f959bff 8f949aff ffffff05 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 b5b8bcbe 8e949aff 8e949bff bbc0c5ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff e1e5e9ff eff1f2ff f0f1f4ff fefefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fefefeff f2f3f5ff eff1f3ff e2e5e9ff dcdfe5ff dcdfe5ff dcdfe5ff dcdfe5ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff d3d7dcff 8e949bff 8e949bff 92979cf8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 bec2c496 8d9399ff 8d9399ff b5babfff d7dbe0ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff b6bbc0ff 8d9399ff 8d9399ff bdc0c49b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d3d5d78b 92969cf4 8b9197ff 8b9097ff c6cad0ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff d1d5dbff 8c9298ff 8b9197ff 8e949af9 bcbfc29f 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 aaadb0c8 8a9096ff 898f96ff a6abb1ff d3d7dcff dadee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dadee3ff d4d8ddff b3b7bdff 898f96ff 8a9096ff 9ba0a5ea 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 caced081 92969cf3 898e94ff 888d94ff acb1b7ff d2d6dcff dadee3ff dadee3ff dadee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d4d8deff b0b5bbff 888d94ff 888d94ff 90949af6 bcbec1a4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 b9bcbea1 8e9298f9 868c93ff 868c93ff 868c93ff d0d4daff d8dce2ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d9dde3ff d4d8deff 969ca2ff 868c93ff 868c93ff 8b9096fc acafb3bf 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 c2c4c88f 8b8f95ff 858a91ff 848a91ff 848a91ff 8c9299ff d3d7ddff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d8dce2ff 9ca2a8ff 848a91ff 848a91ff 848a90ff 8b8f95ff afb1b5ba ffffff01 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff09 f2f2f54c 8f9398ff 898d93ff 848a90ff 83898fff 848a90ff 8a9096ff 8a9097ff b2b7bdff d6dae0ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff c0c4caff 8b9197ff 8a9097ff 858b91ff 83898fff 83898fff 878c93ff 898d94ff d9d9dd8e ffffff0b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 989ca2ff 888c92ff 878c92ff 83898fff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 82898fff 868b92ff 888c92ff 91959bff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 9ca0a6ff 888c92ff 878c91ff 868b91ff 868b91ff 868b91ff 868b91ff 878c91ff 878c91ff 9b9fa5ff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ } ├── res/drawable-mdpi-v4/ic_tab_results_icon_selected.png ├── sng │ │ @@ -1,108 +1,72 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 48; height: 48; bitdepth: 8; │ │ using color palette; │ │ } │ │ PLTE { │ │ ( 0, 0, 0) # rgb = (0x00,0x00,0x00) grey0 │ │ - (154,154,154) # rgb = (0x9a,0x9a,0x9a) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ - (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ - (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ - (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ - (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ - (202,202,202) # rgb = (0xca,0xca,0xca) │ │ - (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (206,206,206) # rgb = (0xce,0xce,0xce) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ - (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ (206,206,206) # rgb = (0xce,0xce,0xce) │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (153,153,153) # rgb = (0x99,0x99,0x99) grey60 │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (160,160,160) # rgb = (0xa0,0xa0,0xa0) │ │ (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ - (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ - (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ - (174,174,174) # rgb = (0xae,0xae,0xae) │ │ - (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ - (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ - (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ - (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ - (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ - (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ - (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ - (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ - (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ (142,142,142) # rgb = (0x8e,0x8e,0x8e) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (168,168,168) # rgb = (0xa8,0xa8,0xa8) grey66 │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ - (166,166,166) # rgb = (0xa6,0xa6,0xa6) grey65 │ │ - (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ - (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ - (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ - (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ - (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ @@ -124,22 +88,17 @@ │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (158,158,158) # rgb = (0x9e,0x9e,0x9e) grey62 │ │ (160,160,160) # rgb = (0xa0,0xa0,0xa0) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ - (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ - (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ - (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ @@ -152,21 +111,17 @@ │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (168,168,168) # rgb = (0xa8,0xa8,0xa8) grey66 │ │ - (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ @@ -179,64 +134,109 @@ │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (157,157,157) # rgb = (0x9d,0x9d,0x9d) │ │ (150,150,150) # rgb = (0x96,0x96,0x96) grey59 │ │ (149,149,149) # rgb = (0x95,0x95,0x95) │ │ (151,151,151) # rgb = (0x97,0x97,0x97) │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ - (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (154,154,154) # rgb = (0x9a,0x9a,0x9a) │ │ + (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ + (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ + (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ + (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ + (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ + (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ + (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ + (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ + (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ + (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ + (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ + (174,174,174) # rgb = (0xae,0xae,0xae) │ │ + (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ + (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ + (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ + (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ + (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ + (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ + (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ + (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ + (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ + (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ + (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ + (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ + (166,166,166) # rgb = (0xa6,0xa6,0xa6) grey65 │ │ + (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ + (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ + (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ + (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ + (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ + (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ + (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ + (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ + (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ + (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ + (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ + (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ + (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ + (168,168,168) # rgb = (0xa8,0xa8,0xa8) grey66 │ │ + (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ + (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ + (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ } │ │ tRNS { │ │ - 0 255 227 24 255 255 218 22 255 255 217 255 255 255 255 216 255 255 251 233 232 232 204 19 255 226 37 19 15 224 255 241 172 167 117 136 168 170 173 173 174 255 255 185 208 255 255 255 255 181 204 255 255 255 255 180 203 255 255 255 185 202 255 237 140 133 95 202 155 133 229 255 18 201 60 210 230 74 60 61 41 201 102 218 255 255 255 189 201 255 255 255 182 255 255 181 181 247 210 208 208 151 201 215 243 224 201 59 209 224 18 60 209 245 199 197 198 143 201 205 196 196 240 185 255 255 255 255 182 179 187 255 231 91 79 80 54 116 221 223 18 201 60 235 125 117 118 82 201 144 116 226 255 188 255 255 182 201 255 180 201 183 182 180 180 181 130 192 238 60 58 209 201 226 223 223 222 246 201 255 213 255} │ │ + 0 227 24 218 22 217 216 251 233 232 232 204 19 226 37 19 15 224 241 172 167 117 136 168 170 173 173 174 185 208 181 204 180 203 185 202 237 140 133 95 202 155 133 229 18 201 60 210 230 74 60 61 41 201 102 218 189 201 182 181 181 247 210 208 208 151 201 215 243 224 201 59 209 224 18 60 209 245 199 197 198 143 201 205 196 196 240 185 182 179 187 231 91 79 80 54 116 221 223 18 201 60 235 125 117 118 82 201 144 116 226 188 182 201 180 201 183 182 180 180 181 130 192 238 60 58 209 201 226 223 223 222 246 201 213} │ │ IMAGE { │ │ pixels hex │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -000000010101010101010101010101010101010101010101010101010101010101020300000000000000000000000000 │ │ -000000040405050505050505050505050505050505050505050505050505050504060700000000000000000000000000 │ │ -0000000809090909090909090909090909090909090909090909090909090909090a0700000000000000000000000000 │ │ -0000000b0c0c0c0c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0e0f0700000000000000000000000000 │ │ -000000100d11111213141414141414141414141414141414141414141414141415161700000000000000000000000000 │ │ -00000010111818191a1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1c0000000000000000000000000000 │ │ -000000101118181d17000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -0000001e0d11111f20212122000023212121212121212121212121212121212124252627282828282828282828000000 │ │ -0000001e0d110d1e292a2a2b00002c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2d2e2e2e2e2e2e2e2e2e2e2e000000 │ │ -0000001e2f0d2f1e09300431000032040505050505050505050505050505050505040404040404040404040433000000 │ │ -0000000b0e0d0e0c34353637000038090909090909090909090909090909090909090909090909090909090908000000 │ │ -0000000b0e2f2f2f393a3b3c00003d0b1e10103e3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a0e10101e35000000 │ │ -000000340c0e0e3f404141420000431e0c0e0e444545454545454545454545454545454545454545460e0e0c47000000 │ │ -000000470c0e0e1d480000000000491e0e0e0e4a00000000000000000000000000000000000000004b0e0e0c47000000 │ │ -00000047100c0c4c4d4e4f500000511e0c0c10524e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e530c0c1047000000 │ │ -000000351e0c1e09545556570000580b0c100b2e595555555555555555555555555555555555555a081e0c1e35000000 │ │ -000000091e101e4705335b5c0000580b101e473033335d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d3305351e101e09000000 │ │ -000000091e101e4708045e5f0000580b101e0b360504040404040404040404040404040404040430471e101e09000000 │ │ -000000090b1e1e0b0c0c1e60000058341e1e0b0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0e0b1e1e0b09000000 │ │ -000000360b1e1e6162636465000066471e1e1e676363636363636363636363636363636363636363681e1e0b36000000 │ │ -00000008340b0b694800000000006a470b0b0b6b00000000000000000000000000000000000000006c0b0b3408000000 │ │ -00000008470b0b6d6e00000000006a350b0b346f0000000000000000000000000000000000000000700b0b4708000000 │ │ -000000304734477172737475000076093447357778737373737373737373737373737373737373797a47344730000000 │ │ -00000030354735302a2e2e7b000076094747367c7d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d0435473530000000 │ │ -00000005094709305d7e7f8000007636473508337e2929292929292929292929292929292929295b3009470905000000 │ │ -000000040935090804335d8100007608350936305e33333333333333333333333333333333335e040809350904000000 │ │ -00000004093535473b393b82000076083535098339393939393939393939393939393939393939393435350904000000 │ │ -000000043609098485868788000076080909098986868686868686868686868686868686868686868a09093604000000 │ │ -000000040809098b8c00000000008d300909098e00000000000000000000000000000000000000007009090804000000 │ │ -0000005e0836088f9091929300009430363608959191919191919191919191919191919191919196970836085e000000 │ │ -000000333008305d5a569899000094050808059a56565656565656565656565656565656565656595b30083033000000 │ │ -0000003330083033299b2a9c00009d040830049e7c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a9b293330083033000000 │ │ -0000005d0530055e5b297c9f0000a0043030045b292929292929292929292929292929292929299e330530055d000000 │ │ -00000047100c0c101e0b47a10000a05e303004470b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b300530045b000000 │ │ -000000a2a3a4a4a4a4a3a5a60000a033050505a7a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a80505045b000000 │ │ -0000000000000000000000000000a033040404a90000000000000000000000000000000000000000700404049e000000 │ │ -0000000000000000000000000000a033040404aa0000000000000000000000000000000000000000ab0404049e000000 │ │ -0000000000000000000000000000ac33045e33adaeafafafafafafafafafafafafafafafafafaeb0b15e045e7e000000 │ │ -0000000000000000000000000000b25d5e335b7d9ab3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b39a2e29335e3329000000 │ │ -0000000000000000000000000000b25b33339e9b7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d2a295d333329000000 │ │ -0000000000000000000000000000b25b33335b297c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c299e5d335d7f000000 │ │ -0000000000000000000000000000b43ab5b5b53a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3ab5b5b5b53b000000 │ │ +000000878787878787878787878787878787878787878787878787878787878787010200000000000000000000000000 │ │ +000000888889898989898989898989898989898989898989898989898989898988030400000000000000000000000000 │ │ +0000008a8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b050400000000000000000000000000 │ │ +0000008c8d8d8d8d8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8f060400000000000000000000000000 │ │ +000000908e9191070809090909090909090909090909090909090909090909090a0b0c00000000000000000000000000 │ │ +000000909192920d0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f100000000000000000000000000000 │ │ +00000090919292110c000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +000000938e9191121314141500001614141414141414141414141414141414141718191a1b1b1b1b1b1b1b1b1b000000 │ │ +000000938e918e939495951c00001d959595959595959595959595959595959595969797979797979797979797000000 │ │ +00000093988e98938b99881e00001f88898989898989898989898989898989898988888888888888888888889a000000 │ │ +0000008c8f8e8f8d9b9c9d200000218b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a000000 │ │ +0000008c8f9898989e9fa0220000238c939090a19f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f8f9090939c000000 │ │ +0000009b8d8f8f2425262627000028938d8f8f292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2b8f8f8da2000000 │ │ +000000a28d8f8f112c00000000002d938f8f8f2e00000000000000000000000000000000000000002f8f8f8da2000000 │ │ +000000a2908d8d3031323334000035938d8d90363232323232323232323232323232323232323232378d8d90a2000000 │ │ +0000009c938d938ba3a4a5380000398c8d908c97a6a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a78a938d939c000000 │ │ +0000008b939093a2899aa83a0000398c9093a2999a9aa9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a99a899c9390938b000000 │ │ +0000008b939093a28a88aa3b0000398c90938c9d8988888888888888888888888888888888888899a29390938b000000 │ │ +0000008b8c93938c8d8d933c0000399b93938c8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f8c93938c8b000000 │ │ +0000009d8c93933d3e3f4041000042a2939393433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4493938c9d000000 │ │ +0000008a9b8c8c452c000000000046a28c8c8c470000000000000000000000000000000000000000488c8c9b8a000000 │ │ +0000008aa28c8c494a0000000000469c8c8c9b4b00000000000000000000000000000000000000004c8c8ca28a000000 │ │ +00000099a29ba24d4e4f50510000528b9ba29c53544f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5556a29ba299000000 │ │ +000000999ca29c99959797570000528ba2a29dabac97979797979797979797979797979797979796889ca29c99000000 │ │ +000000898ba28b99a9adae580000529da29c8a9aad949494949494949494949494949494949494a8998ba28b89000000 │ │ +000000888b9c8b8a889aa9590000528a9c8b9d99aa9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9aaa888a8b9c8b88000000 │ │ +000000888b9c9ca2a09ea05a0000528a9c9c8baf9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9b9c9c8b88000000 │ │ +000000889d8b8b5b5c5d5e5f0000528a8b8b8b605d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d618b8b9d88000000 │ │ +000000888a8b8b6263000000000064998b8b8b6500000000000000000000000000000000000000004c8b8b8a88000000 │ │ +000000aa8a9d8a666768696a00006b999d9d8a6c686868686868686868686868686868686868686d6e8a9d8aaa000000 │ │ +0000009a998a99a9a7a5b06f00006b898a8a89b1a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a8998a999a000000 │ │ +0000009a998a999a94b29570000071888a9988b3ab9595959595959595959595959595959595b2949a998a999a000000 │ │ +000000a9899989aaa894ab7200007388999988a894949494949494949494949494949494949494b39a899989a9000000 │ │ +000000a2908d8d90938ca274000073aa999988a28c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c99899988a8000000 │ │ +0000007576777777777678790000739a8989897a76767676767676767676767676767676767676777b898988a8000000 │ │ +0000000000000000000000000000739a8888887c00000000000000000000000000000000000000004c888888b3000000 │ │ +0000000000000000000000000000739a8888887d00000000000000000000000000000000000000007e888888b3000000 │ │ +00000000000000000000000000007f9a88aa9a80818282828282828282828282828282828282818384aa88aaad000000 │ │ +000000000000000000000000000085a9aa9aa8acb1b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b197949aaa9a94000000 │ │ +000000000000000000000000000085a89a9ab3b2acacacacacacacacacacacacacacacacacacac9594a99a9a94000000 │ │ +000000000000000000000000000085a89a9aa894ababababababababababababababababababab94b3a99aa9ae000000 │ │ +0000000000000000000000000000869fb5b5b59f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fb5b5b5b5a0000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ } ├── res/drawable-mdpi-v4/ic_tab_user_measurement_selected.png ├── sng │ │ @@ -16,87 +16,61 @@ │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (153,153,153) # rgb = (0x99,0x99,0x99) grey60 │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ - (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ - (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ - (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ - (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ - (206,206,206) # rgb = (0xce,0xce,0xce) │ │ - (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ - (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ - (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ - (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ - (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ - (202,202,202) # rgb = (0xca,0xca,0xca) │ │ - (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ - (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ - (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ - (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ - (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ - (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ - (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ @@ -116,41 +90,35 @@ │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ - (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ - (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (164,164,164) # rgb = (0xa4,0xa4,0xa4) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ - (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ - (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ @@ -179,22 +147,20 @@ │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ - (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (202,202,202) # rgb = (0xca,0xca,0xca) │ │ @@ -215,30 +181,21 @@ │ │ (153,153,153) # rgb = (0x99,0x99,0x99) grey60 │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (166,166,166) # rgb = (0xa6,0xa6,0xa6) grey65 │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ - (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (174,174,174) # rgb = (0xae,0xae,0xae) │ │ - (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ - (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ - (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (206,206,206) # rgb = (0xce,0xce,0xce) │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ @@ -253,61 +210,104 @@ │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ + (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ + (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ + (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ + (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ + (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ + (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ + (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ + (206,206,206) # rgb = (0xce,0xce,0xce) │ │ + (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ + (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ + (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ + (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ + (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ + (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ + (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ + (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ + (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ + (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ + (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ + (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ + (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ + (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ + (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ + (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ + (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ + (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ + (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ + (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ + (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ + (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ + (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ + (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ + (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ + (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ + (174,174,174) # rgb = (0xae,0xae,0xae) │ │ + (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ + (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ + (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ + (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ + (172,172,172) # rgb = (0xac,0xac,0xac) │ │ } │ │ tRNS { │ │ - 0 2 1 3 7 11 5 3 196 225 226 226 168 4 205 246 255 184 12 5 29 189 250 255 255 255 229 191 163 41 185 255 255 255 255 255 255 255 239 166 54 167 255 255 255 255 255 248 151 18 6 57 174 255 255 255 255 255 146 35 53 255 255 140 28 9 41 179 141 36 22 181 255 150 201 170 195 247 255 155 195 242 232 215 165 14 193 247 255 237 175 47 180 249 220 52 181 218 56 166 216 10 175 216 150 242 194 28 151 242 233 177 181 147 15 169 255 156 167 255 255 255 158 35 10 166 193 91 123 255 142 38 137 223 175 9 28 127 247 154 40 185 255 176 8 126 240 149 37 180 177 151 232 249 172 24 180 179 5 145 229 239 172 16 178 230 151 157 231 241 179 4 60 190 158 142 235 178 213 255 164 145 247 249 171 204 255 155 118 166 204 244 170 17 116 148 24 200 237 177 9 97 158 41 201 237 241 178 8 166 202 198 212 144 44 255 255 255 239 176 174 178 235 255 255 255 159 39 255 255 255 220 156 150 149 150 34 197 187 184 184 130 1 230 196 195 197 40 222 220 220 157 9} │ │ + 0 2 1 3 7 11 5 3 196 225 226 226 168 4 205 246 184 12 5 29 189 250 229 191 163 41 185 239 166 54 167 248 151 18 6 57 174 146 35 53 140 28 9 41 179 141 36 22 181 150 201 170 195 247 155 195 242 232 215 165 14 193 247 237 175 47 180 249 220 52 181 218 56 166 216 10 175 216 150 242 194 28 151 242 233 177 181 147 15 169 156 167 158 35 10 166 193 91 123 142 38 137 223 175 9 28 127 247 154 40 185 176 8 126 240 149 37 180 177 151 232 249 172 24 180 179 5 145 229 239 172 16 178 230 151 157 231 241 179 4 60 190 158 142 235 178 213 164 145 247 249 171 204 155 118 166 204 244 170 17 116 148 24 200 237 177 9 97 158 41 201 237 241 178 8 166 202 198 212 144 44 239 176 174 178 235 159 39 220 156 150 149 150 34 197 187 184 184 130 1 230 196 195 197 40 222 220 220 157 9} │ │ IMAGE { │ │ pixels hex │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000001020103040506000000020201010102000000000000000000 │ │ 0000000000000000000000000000000000000000000000070008090a0b0a0c0601000002020200000000000000000000 │ │ -00000000000000000000000000000000000000000000000d0e0f10101010111213000000020200000000000000000000 │ │ -0000000000000000000000000006000003020000000214151617181818191a1b1c000202020102000000000200000000 │ │ -0000000000000000000000000007000d0d020201001d1e1f202122232324172526271202020207010000020200000000 │ │ -0000000000000000000000000000030601070d0128291f18242a2b2b2b2c242d2e2f3031020001010202020000000000 │ │ -000000000000000000000000000313010d321333343518242c36373737362c223817393a3b0000000202020000000000 │ │ -000000000000000000000000000d000d32013c293d19212a363737373736362c2338203e3f4000000002020200000000 │ │ -000000000000000000000000000002410d42433520212a2b36363636363636362b2338203e4445010000020100000000 │ │ -0000000000000000000000000000130246473d2038232b3636363636363636362b2c2338174849410000020200000000 │ │ -000000000000000000000000000000024a352038232c2b2b2b2b2b2b2b2b2b2b2b2b2c222d173e4b1301000000000000 │ │ -0000000000000000000000000001004c4d172d222c2b2b2b2b2b2b2b2b2b2b2b2b2b2c2a242d4e4f120d000000000000 │ │ -000000000000000002020000020050514e2d222a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2418525354020000000000 │ │ -000000000100030100010d025556575818242a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23212e25595a0000000000 │ │ -0000000002060d0703070d5b5c5d581821232a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a242d17105e0100000000 │ │ -00000000000d010d13015f603e581921222a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a23212d17614100000000 │ │ -000000000000010d0762633958203824232323232323232323232323232323232323232323232322242d646500000000 │ │ -000000000000070733664858203824232323232323232323232323232323232323232323232323232222670d00000000 │ │ -0000000000000007683e58203824232323232323232323232323232323232323232323232323232a2c696a0000000000 │ │ -000000000000026b6c58202d2422222222222222222222222222222222222222222222222222226d6e6f070000000000 │ │ -00000000010001703e172d21242424242424242424242424242424242424242424242424242424717202000d00000000 │ │ -00000000000102732e183824242424242424242424242424242424242424242424242424242474750000000000000000 │ │ -0000000003020176172a777821212121212121212121212121212121212121212121212121797a7b0000000000000000 │ │ -0000000002007c7d207e7f80812121212121212121212121212121212121212121212121748283000000000000000000 │ │ -000000000000848518868788898a213838383838383838383838383838383838383838748b8c00000000000000000000 │ │ -0000000001008d8e198f0700909192243838383838383838383838383838383838383693940102000000000000000000 │ │ -000000000702952e20960200020297982438383838383838383838383838383821999a9b000702000000000000000000 │ │ -0000000002029c17189d000207029e9fa0212d2d2d2d2d2d2d2d2d2d2d2d2d38a1a2a300020200000000000000000000 │ │ -00000000000da417a5a6000002070007a7a8382d2d2d2d2d2d2d2d2d2d2d38a9aaab0200020000000000000000000000 │ │ -0000000002acad17aeab000000010200abafb02d18181818181818181818a1b107000702000202000000000000000000 │ │ -000000000db2b317b40700000004070001abb5b6181818181818181818b7b80000000000000000000000000000000000 │ │ -0000000000b9ba4ebb0000000000000d070001bc741919191919191936bd9e0000000000000000000000000000000000 │ │ -000000000dbeba2ebfc00d0141010000000202c1c22020202020202bc3c4000000000000000000000000000000000000 │ │ -0000000007c558588ec6c7c80100020301010101c9172020202036cacb02020000000000000000000000000000000000 │ │ -00000000cccd2e2e103dcecf0700d0d1d2d2ccd3d44e1717172cd5d60200000000000000000000000000000000000000 │ │ -00000000d7d82e4ebad935dadbdcdddedfe0e135182a2c2b2be2e3000000000000000000000000000000000000000000 │ │ -0000000025e44e4e4ebad935e5e635ba4e4e4ee7e8e9eaebeaec01020000000000000000000000000000000000000000 │ │ -00000000d8ba4e4e4e2018202e58edeeeff0f0f113f2f2f20000f2010000f20000000000000000000000000000000000 │ │ -000000002e20181818f3f4f5f6f6f7abf2f201f20001f200000000000000000000000000000000000000000000000000 │ │ -00000000f8f9f9fafafbfcf2000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -00000000ab03010000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +00000000000000000000000000000000000000000000000d0e0fd2d2d2d2101112000000020200000000000000000000 │ │ +00000000000000000000000000060000030200000002131415d3d4d4d4d5161718000202020102000000000200000000 │ │ +0000000000000000000000000007000d0d02020100191ad6d7d8d9dadadbd3dc1b1c1102020207010000020200000000 │ │ +0000000000000000000000000000030601070d011d1ed6d4dbdddedededfdbe0e11f2021020001010202020000000000 │ │ +000000000000000000000000000312010d22122324e2d4dbdfe3e4e4e4e3dfd9e5d3e625260000000202020000000000 │ │ +000000000000000000000000000d000d2201271ee7d5d8dde3e4e4e4e4e3e3dfdae5d7e8282900000002020200000000 │ │ +0000000000000000000000000000022a0d2b2ce2d7d8dddee3e3e3e3e3e3e3e3dedae5d7e82d2e010000020100000000 │ │ +000000000000000000000000000012022f30e7d7e5dadee3e3e3e3e3e3e3e3e3dedfdae5d3e9312a0000020200000000 │ │ +0000000000000000000000000000000232e2d7e5dadfdededededededededededededfd9e0d3e8331201000000000000 │ │ +0000000000000000000000000001003435d3e0d9dfdedededededededededededededfdddbe0ea36110d000000000000 │ │ +00000000000000000202000002003738eae0d9dddfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdddbd4393a3b020000000000 │ │ +000000000100030100010d023c3d3eebd4dbdddfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdddad8e1dc3f400000000000 │ │ +0000000002060d0703070d414243ebd4d8dadddddddddddddddddddddddddddddddddddddddddbe0d3d2440100000000 │ │ +00000000000d010d12014546e8ebd5d8d9dddddddddddddddddddddddddddddddddddddddddddad8e0d3472a00000000 │ │ +000000000000010d074849e6ebd7e5dbdadadadadadadadadadadadadadadadadadadadadadadad9dbe04a4b00000000 │ │ +0000000000000707234ce9ebd7e5dbdadadadadadadadadadadadadadadadadadadadadadadadadad9d94d0d00000000 │ │ +00000000000000074ee8ebd7e5dbdadadadadadadadadadadadadadadadadadadadadadadadadadddf4f500000000000 │ │ +000000000000025152ebd7e0dbd9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9535455070000000000 │ │ +0000000001000156e8d3e0d8dbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb575802000d00000000 │ │ +0000000000010259e1d4e5dbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbec5a0000000000000000 │ │ +000000000302015bd3ddedeed8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8ef5c5d0000000000000000 │ │ +0000000002005e5fd7606162f0d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8ec6364000000000000000000 │ │ +0000000000006566d46768696a6bd8e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5ec6c6d00000000000000000000 │ │ +0000000001006ef1d56f0700707172dbe5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e373740102000000000000000000 │ │ +00000000070275e1d776020002027778dbe5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d8797a7b000702000000000000000000 │ │ +0000000002027cd3d47d000207027e7f80d8e0e0e0e0e0e0e0e0e0e0e0e0e0e581828300020200000000000000000000 │ │ +00000000000d84d385860000020700078788e5e0e0e0e0e0e0e0e0e0e0e0e5898a8b0200020000000000000000000000 │ │ +00000000028c8dd38e8b0000000102008b8f90e0d4d4d4d4d4d4d4d4d4d4819107000702000202000000000000000000 │ │ +000000000d92f2d39307000000040700018b9495d4d4d4d4d4d4d4d4d496970000000000000000000000000000000000 │ │ +000000000098f3ea990000000000000d0700019aecd5d5d5d5d5d5d5e39b7e0000000000000000000000000000000000 │ │ +000000000d9cf3e19d9e0d012a0100000002029fa0d7d7d7d7d7d7dea1a2000000000000000000000000000000000000 │ │ +0000000007a3ebebf1a4a5a60100020301010101a7d3d7d7d7d7e3a8a902020000000000000000000000000000000000 │ │ +00000000aaabe1e1d2e7acad0700aeafb0b0aab1b2ead3d3d3dfb3b40200000000000000000000000000000000000000 │ │ +00000000f4f5e1eaf3f6e2b5b6b7b8b9f7f8f9e2d4dddfdedebabb000000000000000000000000000000000000000000 │ │ +00000000dcfaeaeaeaf3f6e2fbfce2f3eaeaeabcbdbebfc0bfc101020000000000000000000000000000000000000000 │ │ +00000000f5f3eaeaead7d4d7e1ebc2c3c4c5c5c612c7c7c70000c7010000c70000000000000000000000000000000000 │ │ +00000000e1d7d4d4d4c8c9cacbcbcc8bc7c701c70001c700000000000000000000000000000000000000000000000000 │ │ +00000000cdcececfcfd0d1c7000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +000000008b03010000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ } ├── res/drawable-mdpi-v4/ic_tab_results_icon_unselected.png ├── sng │ │ @@ -1,37 +1,26 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 48; height: 48; bitdepth: 8; │ │ using color palette; │ │ } │ │ PLTE { │ │ ( 0, 0, 0) # rgb = (0x00,0x00,0x00) grey0 │ │ - (144,144,144) # rgb = (0x90,0x90,0x90) │ │ (157,157,157) # rgb = (0x9d,0x9d,0x9d) │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ - (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (228,228,228) # rgb = (0xe4,0xe4,0xe4) │ │ - (230,230,230) # rgb = (0xe6,0xe6,0xe6) │ │ - (231,231,231) # rgb = (0xe7,0xe7,0xe7) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ - (236,236,236) # rgb = (0xec,0xec,0xec) │ │ - (240,240,240) # rgb = (0xf0,0xf0,0xf0) grey94 │ │ - (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ - (247,247,247) # rgb = (0xf7,0xf7,0xf7) grey97 │ │ - (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (251,251,251) # rgb = (0xfb,0xfb,0xfb) │ │ (251,251,251) # rgb = (0xfb,0xfb,0xfb) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (234,234,234) # rgb = (0xea,0xea,0xea) │ │ (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (255,255,255) # rgb = (0xff,0xff,0xff) grey100 │ │ (238,238,238) # rgb = (0xee,0xee,0xee) │ │ (239,239,239) # rgb = (0xef,0xef,0xef) │ │ (235,235,235) # rgb = (0xeb,0xeb,0xeb) grey92 │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ @@ -40,71 +29,44 @@ │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (160,160,160) # rgb = (0xa0,0xa0,0xa0) │ │ (158,158,158) # rgb = (0x9e,0x9e,0x9e) grey62 │ │ - (239,239,239) # rgb = (0xef,0xef,0xef) │ │ - (202,202,202) # rgb = (0xca,0xca,0xca) │ │ - (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ - (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (243,243,243) # rgb = (0xf3,0xf3,0xf3) │ │ - (235,235,235) # rgb = (0xeb,0xeb,0xeb) grey92 │ │ - (229,229,229) # rgb = (0xe5,0xe5,0xe5) grey90 │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ - (227,227,227) # rgb = (0xe3,0xe3,0xe3) grey89 │ │ - (226,226,226) # rgb = (0xe2,0xe2,0xe2) │ │ - (244,244,244) # rgb = (0xf4,0xf4,0xf4) │ │ - (234,234,234) # rgb = (0xea,0xea,0xea) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ - (232,232,232) # rgb = (0xe8,0xe8,0xe8) grey91 │ │ - (246,246,246) # rgb = (0xf6,0xf6,0xf6) │ │ - (245,245,245) # rgb = (0xf5,0xf5,0xf5) grey96 │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ - (242,242,242) # rgb = (0xf2,0xf2,0xf2) grey95 │ │ (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ (250,250,250) # rgb = (0xfa,0xfa,0xfa) grey98 │ │ (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ (247,247,247) # rgb = (0xf7,0xf7,0xf7) grey97 │ │ (222,222,222) # rgb = (0xde,0xde,0xde) grey87 │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (250,250,250) # rgb = (0xfa,0xfa,0xfa) grey98 │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ - (238,238,238) # rgb = (0xee,0xee,0xee) │ │ (240,240,240) # rgb = (0xf0,0xf0,0xf0) grey94 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ (238,238,238) # rgb = (0xee,0xee,0xee) │ │ - (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ (233,233,233) # rgb = (0xe9,0xe9,0xe9) │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (228,228,228) # rgb = (0xe4,0xe4,0xe4) │ │ - (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ - (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ - (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ - (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ - (225,225,225) # rgb = (0xe1,0xe1,0xe1) │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (233,233,233) # rgb = (0xe9,0xe9,0xe9) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ (245,245,245) # rgb = (0xf5,0xf5,0xf5) grey96 │ │ (244,244,244) # rgb = (0xf4,0xf4,0xf4) │ │ (243,243,243) # rgb = (0xf3,0xf3,0xf3) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ @@ -124,26 +86,17 @@ │ │ (156,156,156) # rgb = (0x9c,0x9c,0x9c) grey61 │ │ (155,155,155) # rgb = (0x9b,0x9b,0x9b) │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (158,158,158) # rgb = (0x9e,0x9e,0x9e) grey62 │ │ (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ - (206,206,206) # rgb = (0xce,0xce,0xce) │ │ - (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ - (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ - (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ - (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ - (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ - (222,222,222) # rgb = (0xde,0xde,0xde) grey87 │ │ - (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ (242,242,242) # rgb = (0xf2,0xf2,0xf2) grey95 │ │ (239,239,239) # rgb = (0xef,0xef,0xef) │ │ @@ -159,27 +112,18 @@ │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (164,164,164) # rgb = (0xa4,0xa4,0xa4) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ - (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ - (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ - (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (223,223,223) # rgb = (0xdf,0xdf,0xdf) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ (232,232,232) # rgb = (0xe8,0xe8,0xe8) grey91 │ │ (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ (234,234,234) # rgb = (0xea,0xea,0xea) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ @@ -187,68 +131,124 @@ │ │ (231,231,231) # rgb = (0xe7,0xe7,0xe7) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (147,147,147) # rgb = (0x93,0x93,0x93) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ + (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ + (144,144,144) # rgb = (0x90,0x90,0x90) │ │ + (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ + (228,228,228) # rgb = (0xe4,0xe4,0xe4) │ │ + (230,230,230) # rgb = (0xe6,0xe6,0xe6) │ │ + (231,231,231) # rgb = (0xe7,0xe7,0xe7) │ │ + (236,236,236) # rgb = (0xec,0xec,0xec) │ │ + (240,240,240) # rgb = (0xf0,0xf0,0xf0) grey94 │ │ + (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ + (247,247,247) # rgb = (0xf7,0xf7,0xf7) grey97 │ │ + (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ + (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ + (239,239,239) # rgb = (0xef,0xef,0xef) │ │ + (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ + (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ + (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ + (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ + (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ + (243,243,243) # rgb = (0xf3,0xf3,0xf3) │ │ + (235,235,235) # rgb = (0xeb,0xeb,0xeb) grey92 │ │ + (229,229,229) # rgb = (0xe5,0xe5,0xe5) grey90 │ │ + (227,227,227) # rgb = (0xe3,0xe3,0xe3) grey89 │ │ + (226,226,226) # rgb = (0xe2,0xe2,0xe2) │ │ + (244,244,244) # rgb = (0xf4,0xf4,0xf4) │ │ + (234,234,234) # rgb = (0xea,0xea,0xea) │ │ + (232,232,232) # rgb = (0xe8,0xe8,0xe8) grey91 │ │ + (246,246,246) # rgb = (0xf6,0xf6,0xf6) │ │ + (245,245,245) # rgb = (0xf5,0xf5,0xf5) grey96 │ │ + (242,242,242) # rgb = (0xf2,0xf2,0xf2) grey95 │ │ + (238,238,238) # rgb = (0xee,0xee,0xee) │ │ + (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ + (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ + (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ + (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ + (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ + (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ + (225,225,225) # rgb = (0xe1,0xe1,0xe1) │ │ + (233,233,233) # rgb = (0xe9,0xe9,0xe9) │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (206,206,206) # rgb = (0xce,0xce,0xce) │ │ + (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ + (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ + (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ + (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ + (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ + (222,222,222) # rgb = (0xde,0xde,0xde) grey87 │ │ + (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ + (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ + (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ + (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ + (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ + (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ + (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ + (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ + (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ + (223,223,223) # rgb = (0xdf,0xdf,0xdf) │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ - (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ } │ │ tRNS { │ │ - 0 255 224 22 255 214 21 255 255 255 214 255 255 255 214 255 255 251 233 232 232 202 19 255 226 37 19 15 224 241 171 165 166 116 133 166 167 169 169 169 255 255 255 255 182 206 255 255 255 255 255 255 177 202 255 255 255 255 201 255 255 255 182 200 255 237 140 133 133 93 200 155 229 255 224 18 60 210 255 230 74 60 60 39 101 218 255 255 255 186 255 255 177 255 177 200 255 179 200 247 210 208 208 149 215 208 243 18 59 209 224 18 200 60 209 245 198 196 196 140 200 204 195 240 255 181 255 255 255 255 255 255 177 200 255 255 177 184 200 231 91 79 79 52 116 221 223 18 200 60 209 235 125 116 80 200 144 115 226 255 255 184 255 255 255 255 177 255 255 177 200 255 180 200 181 180 181 128 200 192 238 60 58 209 225 221 246 255 255 200 255 255 200 212} │ │ + 0 224 22 214 21 214 214 251 233 232 232 202 19 226 37 19 15 224 241 171 165 166 116 133 166 167 169 169 169 182 206 177 202 201 182 200 237 140 133 133 93 200 155 229 224 18 60 210 230 74 60 60 39 101 218 186 177 177 200 179 200 247 210 208 208 149 215 208 243 18 59 209 224 18 200 60 209 245 198 196 196 140 200 204 195 240 181 177 200 177 184 200 231 91 79 79 52 116 221 223 18 200 60 209 235 125 116 80 200 144 115 226 184 177 177 200 180 200 181 180 181 128 200 192 238 60 58 209 225 221 246 200 200 212} │ │ IMAGE { │ │ pixels hex │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -000000010101010101010101010101010101010101010101010101010101010101020300000000000000000000000000 │ │ -000000040404040404040404040404040404040404040404040404040404040404050600000000000000000000000000 │ │ -0000000708090909090909090909090909090909090909090909090909090909080a0600000000000000000000000000 │ │ -0000000b0c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c0e0600000000000000000000000000 │ │ -0000000c0f10101112131313131313131313131313131313131313131313131314151600000000000000000000000000 │ │ -0000000d10171718191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1b0000000000000000000000000000 │ │ -0000000d1017171c16000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -0000000d1017171d1e1f2021000022202020202020202020202020202020202023242526262727272727272727000000 │ │ -0000000d10171028292a2b2c00002d2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2e2f30303030303030303030000000 │ │ -0000000d1017103132093334000035333333333333333333333333333333333333330707070707070707073637000000 │ │ -0000000c0f100f380c0b393400003a390b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b323b000000 │ │ -000000283c0f0f3c3c3d313e00003f0d3131313d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d313131400b000000 │ │ -000000283c0f0f4142434445000046383c0f0f474343434343434343434343434343434343434343480f0f3d28000000 │ │ -000000493d3c3c4a4b00000000003f313c3c3c4c00000000000000000000000000000000000000004d3c3c3d49000000 │ │ -0000004e383d3d4f5051525300003f403d3d38545151515151515151515151515151515151515151553d3d384e000000 │ │ -0000000b313831095657585900003f0d38380d5a575757575757575757575757575757575757575b373138310b000000 │ │ -0000000b313831490837045c00003f0d3838283b365d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d37084e4038310b000000 │ │ -00000032403140493b07375e00005f0c3131286033363636363636363636363636363636363607094e40314032000000 │ │ -000000390d40400c284e39610000622840400d284e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e490c40400d39000000 │ │ -000000600c0d0d6364656667000062490d0d0d6869696969696969696969696969696969696969696a0d0d0c60000000 │ │ -000000600c0d0d1c6b000000000062490d0d0d6c00000000000000000000000000000000000000006d0d0d0c60000000 │ │ -0000003b280c0c6e6f0000000000704e0c0c0c710000000000000000000000000000000000000000720c0c283b000000 │ │ -0000000949282873747576770000780b28284e797a75757575757575757575757575757575757a7a7b49284909000000 │ │ -00000009492849087c2a2b7d0000780b2828327e7f80808080808080808080808080808080802a81364e284909000000 │ │ -000000084e494e3b0482838400008532494960378687878787878787878787878787878787878204090b494e08000000 │ │ -000000330b4e4e3933360488000085394e4e32083637373737373737373737373737373737373633600b4e0b33000000 │ │ -00000007320b0b3228280b8900008a600b0b0b492828282828282828282828282828282828282828320b0b3207000000 │ │ -00000007320b0b8b8c8d8e8f00008a600b0b0b908d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d910b0b3207000000 │ │ -0000003639323292930000000000943b3232329500000000000000000000000000000000000000009632323936000000 │ │ -00000037603939979899999a00009b093939609c999999999999999999999999999999999999999d9e39396037000000 │ │ -0000005d3b603b829f56a0a100009b08606033a256565656565656565656565656565656565656a3833b603b5d000000 │ │ -0000005d3b603b3687a4a5a600009b0860600786a7a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a4873709603b5d000000 │ │ -00000004093b09078687a7a90000aa333b3b33ab828383838383838383838383838383838383878636093b0904000000 │ │ -0000003660393960083336ac0000ad0709090808333333333333333333333333333333333333330833090908ab000000 │ │ -000000aeafafafafafafb0b10000b236080808b3afafafafafafafafafafafafafafafafafafafafb408083386000000 │ │ -0000000000000000000000000000b236080808b500000000000000000000000000000000000000007208083386000000 │ │ -0000000000000000000000000000b237333333b60000000000000000000000000000000000000000b733330782000000 │ │ -0000000000000000000000000000b25d07075db8b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ba36073687000000 │ │ -0000000000000000000000000000b25d0707abbb8080808080808080808080808080808080808081bc37073687000000 │ │ -0000000000000000000000000000bd043636aba4bebebfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbea5875d363783000000 │ │ -0000000000000000000000000000c0ab37370487bcbca7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7bc83ab5d375dbc000000 │ │ -0000000000000000000000000000c1603232323239393939393939393939393939393939393939393232323208000000 │ │ +000000868686868686868686868686868686868686868686868686868686868686010200000000000000000000000000 │ │ +000000878787878787878787878787878787878787878787878787878787878787030400000000000000000000000000 │ │ +00000088898a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a89050400000000000000000000000000 │ │ +0000008b8c8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8c060400000000000000000000000000 │ │ +0000008c8e8f8f070809090909090909090909090909090909090909090909090a0b0c00000000000000000000000000 │ │ +0000008d8f90900d0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f100000000000000000000000000000 │ │ +0000008d8f9090110c000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +0000008d8f90901213141516000017151515151515151515151515151515151518191a1b1b1c1c1c1c1c1c1c1c000000 │ │ +0000008d8f908f919293941d00001e949494949494949494949494949494949494959697979797979797979797000000 │ │ +0000008d8f908f98998a9a1f0000209a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8888888888888888889b9c000000 │ │ +0000008c8e8f8e9d8c8b9e1f0000219e8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b999f000000 │ │ +00000091a08e8ea0a0a198220000238d989898a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1989898a28b000000 │ │ +00000091a08e8e24252627280000299da08e8e2a26262626262626262626262626262626262626262b8e8ea191000000 │ │ +000000a3a1a0a02c2d00000000002398a0a0a02e00000000000000000000000000000000000000002fa0a0a1a3000000 │ │ +000000a49da1a13031323334000023a2a1a19d35323232323232323232323232323232323232323236a1a19da4000000 │ │ +0000008b989d988aa5a6a7370000238d9d9d8da8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a99c989d988b000000 │ │ +0000008b989d98a3899c87380000238d9d9d919f9baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa9c89a4a29d988b000000 │ │ +00000099a298a2a39f889c3900003a8c989891ab9a9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b888aa4a298a299000000 │ │ +0000009e8da2a28c91a49e3b00003c91a2a28d91a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a38ca2a28d9e000000 │ │ +000000ab8c8d8d3d3e3f404100003ca38d8d8d424343434343434343434343434343434343434343448d8d8cab000000 │ │ +000000ab8c8d8d114500000000003ca38d8d8d460000000000000000000000000000000000000000478d8d8cab000000 │ │ +0000009f918c8c484900000000004aa48c8c8c4b00000000000000000000000000000000000000004c8c8c919f000000 │ │ +0000008aa391914d4e4f50510000528b9191a453544f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f545455a391a38a000000 │ │ +0000008aa391a389ac9394560000528b919199adaeafafafafafafafafafafafafafafafafaf93b09ba491a38a000000 │ │ +00000089a4a3a49f87b1b25700005899a3a3ab9cb3b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b1878a8ba3a489000000 │ │ +0000009a8ba4a49e9a9b87590000589ea4a499899b9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9b9aab8ba48b9a000000 │ │ +00000088998b8b9991918b5a00005bab8b8b8ba39191919191919191919191919191919191919191998b8b9988000000 │ │ +00000088998b8b5c5d5e5f6000005bab8b8b8b615e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e628b8b9988000000 │ │ +0000009b9e999963640000000000659f9999996600000000000000000000000000000000000000006799999e9b000000 │ │ +0000009cab9e9e68696a6a6b00006c8a9e9eab6d6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6e6f9e9eab9c000000 │ │ +000000aa9fab9fb1b5a5b67000006c89abab9ab7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5b8b29fab9faa000000 │ │ +000000aa9fab9f9bb4b9ba7100006c89abab88b3bbbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcb9b49c8aab9faa000000 │ │ +000000878a9f8a88b3b4bb720000739a9f9f9abdb1b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b4b39b8a9f8a87000000 │ │ +0000009bab9e9eab899a9b74000075888a8a89899a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a899a8a8a89bd000000 │ │ +00000076777777777777787900007a9b8989897b77777777777777777777777777777777777777777c89899ab3000000 │ │ +00000000000000000000000000007a9b8989897d00000000000000000000000000000000000000004c89899ab3000000 │ │ +00000000000000000000000000007a9c9a9a9a7e00000000000000000000000000000000000000007f9a9a88b1000000 │ │ +00000000000000000000000000007aaa8888aa808181818181818181818181818181818181818181829b889bb4000000 │ │ +00000000000000000000000000007aaa8888bdbeafafafafafafafafafafafafafafafafafafafb0bf9c889bb4000000 │ │ +000000000000000000000000000083879b9bbdb9c0c0c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c0bab4aa9b9cb2000000 │ │ +000000000000000000000000000084bd9c9c87b4bfbfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfb2bdaa9caabf000000 │ │ +000000000000000000000000000085ab999999999e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9999999989000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ } ├── res/drawable-mdpi-v4/icon_statusbar.png ├── sng │ │ @@ -1,32 +1,32 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 24; height: 24; bitdepth: 8; │ │ using grayscale alpha; │ │ } │ │ IMAGE { │ │ pixels hex │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 4d2b 9285 c1ae c6bf c6c1 c6af 9088 5834 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 4d38 deb7 faff fdff fdff fdff fdff fdff fdff fbff dcc0 633b ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 7776 f7fe fdff fdff f6ff edff e6ff e6ff edff f6ff fdff fdff f7ff 9e84 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ac91 faff fcff f9ff c6ff 67ff 1aff 1fff 1fff 12ff 63ff c5ff f9ff fcff faff e6be 0001 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 9d5e f7ff faff eaff 79ff 68ff 9eff afff c6ff c8ff a8ff 9eff 67ff 70ff e4ff faff f8ff 9e69 ff00 ff00 ff00 │ │ -ff00 ff00 3025 ecf3 f9ff f0ff 6fff 88ff b9ff beff a9ff c3ff c5ff 9aff b7ff bbff 87ff 6cff eaff f9ff edfa 4827 ff00 ff00 │ │ -ff00 ff00 988b f8ff f9ff 93ff 84ff 9fff a2ff ebff a1ff a9ff 9fff 77ff ecff a3ff 9fff 82ff 8cff f9ff f9ff 9791 ff00 ff00 │ │ -ff00 0004 e4ec f7ff e6ff 77ff b9ff a3ff 94ff 94ff 94ff 94ff 98ff 84ff 94ff 94ff a1ff bbff 74ff dfff f7ff e4f5 2008 ff00 │ │ -ff00 4044 ecff f6ff bdff 82ff 88ff ceff 94ff 88ff 88ff 88ff aaff 61ff 88ff 8fff d1ff 88ff 82ff b0ff f6ff edff 624e ff00 │ │ -ff00 846e efff f1ff 96ff 7cff 7cff 7cff 7cff 7cff 7cff 92ff bcff 66ff 7cff 7cff 7cff 7cff 7cff 91ff f0ff f2ff 8278 ff00 │ │ -ff00 7f83 f3ff f0ff 67ff 9fff bcff 9dff 6eff 6fff 66ff f0ff f2ff 65ff 6eff 6eff 9dff bcff a1ff 2bff efff f4ff 7998 ff00 │ │ -ff00 7c7f f1ff efff 62ff 24ff 38ff 4eff 52ff 60ff 5dff d6ff dbff 5aff 60ff 54ff 4fff 39ff 25ff 36ff efff f3ff 7794 ff00 │ │ -ff00 7769 e9ff f0ff 77ff 00ff 00ff 00ff 00ff 00ff 16ff 13ff 13ff 17ff 00ff 00ff 00ff 00ff 00ff 70ff efff ebff 776d ff00 │ │ -ff00 3e2d ddff f0ff dfff 00ff 00ff 00ff 00ff 00ff 01ff 01ff 01ff 01ff 00ff 00ff 00ff 00ff 00ff dcff f0ff e0ff 3d3b ff00 │ │ -ff00 0002 d5d7 efff edff 2cff 00ff 00ff 00ff 00ff c5ff cbff caff c7ff 00ff 00ff 00ff 00ff 28ff edff efff d5e4 0004 ff00 │ │ -ff00 ff00 696b e7ff edff d0ff 12ff 00ff 00ff 00ff 86ff 77ff 85ff 9bff 00ff 00ff 00ff 10ff c8ff edff e8ff 7b76 ff00 ff00 │ │ -ff00 ff00 1e11 c9e4 ecff ecff b0ff 10ff 00ff 00ff 77ff 7aff 7aff 7aff 00ff 00ff 0fff a3ff ecff ecff c9ec 2614 ff00 ff00 │ │ -ff00 ff00 ff00 4a2d d3ff ebff ecff d4ff 2cff 04ff 00ff 00ff 00ff 00ff 00ff 2bff d2ff edff ebff d5ff 7134 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 aa42 d0fe eaff eaff edff f6ff 8fff 57ff 55ff 8eff f5ff eeff eaff eaff d4ff aa42 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 443c abe5 e2ff e8ff e8ff eaff eaff eaff eaff e8ff e8ff e4ff abe8 4040 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 1716 8577 c3e9 d2ff e0ff e8ff e8ff e2ff d2ff c1f1 847c 1518 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 4d2b 9285 c1ae c6bf c6c1 c6af 9088 5834 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 4d38 deb7 faff fdff fdff fdff fdff fdff fdff fbff dcc0 633b 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 7776 f7fe fdff fdff f6ff edff e6ff e6ff edff f6ff fdff fdff f7ff 9e84 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 ac91 faff fcff f9ff c6ff 67ff 1aff 1fff 1fff 12ff 63ff c5ff f9ff fcff faff e6be 0001 0000 0000 0000 │ │ +0000 0000 0000 9d5e f7ff faff eaff 79ff 68ff 9eff afff c6ff c8ff a8ff 9eff 67ff 70ff e4ff faff f8ff 9e69 0000 0000 0000 │ │ +0000 0000 3025 ecf3 f9ff f0ff 6fff 88ff b9ff beff a9ff c3ff c5ff 9aff b7ff bbff 87ff 6cff eaff f9ff edfa 4827 0000 0000 │ │ +0000 0000 988b f8ff f9ff 93ff 84ff 9fff a2ff ebff a1ff a9ff 9fff 77ff ecff a3ff 9fff 82ff 8cff f9ff f9ff 9791 0000 0000 │ │ +0000 0004 e4ec f7ff e6ff 77ff b9ff a3ff 94ff 94ff 94ff 94ff 98ff 84ff 94ff 94ff a1ff bbff 74ff dfff f7ff e4f5 2008 0000 │ │ +0000 4044 ecff f6ff bdff 82ff 88ff ceff 94ff 88ff 88ff 88ff aaff 61ff 88ff 8fff d1ff 88ff 82ff b0ff f6ff edff 624e 0000 │ │ +0000 846e efff f1ff 96ff 7cff 7cff 7cff 7cff 7cff 7cff 92ff bcff 66ff 7cff 7cff 7cff 7cff 7cff 91ff f0ff f2ff 8278 0000 │ │ +0000 7f83 f3ff f0ff 67ff 9fff bcff 9dff 6eff 6fff 66ff f0ff f2ff 65ff 6eff 6eff 9dff bcff a1ff 2bff efff f4ff 7998 0000 │ │ +0000 7c7f f1ff efff 62ff 24ff 38ff 4eff 52ff 60ff 5dff d6ff dbff 5aff 60ff 54ff 4fff 39ff 25ff 36ff efff f3ff 7794 0000 │ │ +0000 7769 e9ff f0ff 77ff 00ff 00ff 00ff 00ff 00ff 16ff 13ff 13ff 17ff 00ff 00ff 00ff 00ff 00ff 70ff efff ebff 776d 0000 │ │ +0000 3e2d ddff f0ff dfff 00ff 00ff 00ff 00ff 00ff 01ff 01ff 01ff 01ff 00ff 00ff 00ff 00ff 00ff dcff f0ff e0ff 3d3b 0000 │ │ +0000 0002 d5d7 efff edff 2cff 00ff 00ff 00ff 00ff c5ff cbff caff c7ff 00ff 00ff 00ff 00ff 28ff edff efff d5e4 0004 0000 │ │ +0000 0000 696b e7ff edff d0ff 12ff 00ff 00ff 00ff 86ff 77ff 85ff 9bff 00ff 00ff 00ff 10ff c8ff edff e8ff 7b76 0000 0000 │ │ +0000 0000 1e11 c9e4 ecff ecff b0ff 10ff 00ff 00ff 77ff 7aff 7aff 7aff 00ff 00ff 0fff a3ff ecff ecff c9ec 2614 0000 0000 │ │ +0000 0000 0000 4a2d d3ff ebff ecff d4ff 2cff 04ff 00ff 00ff 00ff 00ff 00ff 2bff d2ff edff ebff d5ff 7134 0000 0000 0000 │ │ +0000 0000 0000 0000 aa42 d0fe eaff eaff edff f6ff 8fff 57ff 55ff 8eff f5ff eeff eaff eaff d4ff aa42 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 443c abe5 e2ff e8ff e8ff eaff eaff eaff eaff e8ff e8ff e4ff abe8 4040 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 1716 8577 c3e9 d2ff e0ff e8ff e8ff e2ff d2ff c1f1 847c 1518 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ } ├── res/drawable-hdpi-v4/ic_tab_results_icon_unselected.png ├── sng │ │ @@ -1,37 +1,26 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 48; height: 48; bitdepth: 8; │ │ using color palette; │ │ } │ │ PLTE { │ │ ( 0, 0, 0) # rgb = (0x00,0x00,0x00) grey0 │ │ - (144,144,144) # rgb = (0x90,0x90,0x90) │ │ (157,157,157) # rgb = (0x9d,0x9d,0x9d) │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ - (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (228,228,228) # rgb = (0xe4,0xe4,0xe4) │ │ - (230,230,230) # rgb = (0xe6,0xe6,0xe6) │ │ - (231,231,231) # rgb = (0xe7,0xe7,0xe7) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ - (236,236,236) # rgb = (0xec,0xec,0xec) │ │ - (240,240,240) # rgb = (0xf0,0xf0,0xf0) grey94 │ │ - (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ - (247,247,247) # rgb = (0xf7,0xf7,0xf7) grey97 │ │ - (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (251,251,251) # rgb = (0xfb,0xfb,0xfb) │ │ (251,251,251) # rgb = (0xfb,0xfb,0xfb) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (234,234,234) # rgb = (0xea,0xea,0xea) │ │ (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (255,255,255) # rgb = (0xff,0xff,0xff) grey100 │ │ (238,238,238) # rgb = (0xee,0xee,0xee) │ │ (239,239,239) # rgb = (0xef,0xef,0xef) │ │ (235,235,235) # rgb = (0xeb,0xeb,0xeb) grey92 │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ @@ -40,71 +29,44 @@ │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (160,160,160) # rgb = (0xa0,0xa0,0xa0) │ │ (158,158,158) # rgb = (0x9e,0x9e,0x9e) grey62 │ │ - (239,239,239) # rgb = (0xef,0xef,0xef) │ │ - (202,202,202) # rgb = (0xca,0xca,0xca) │ │ - (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ - (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (243,243,243) # rgb = (0xf3,0xf3,0xf3) │ │ - (235,235,235) # rgb = (0xeb,0xeb,0xeb) grey92 │ │ - (229,229,229) # rgb = (0xe5,0xe5,0xe5) grey90 │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ - (227,227,227) # rgb = (0xe3,0xe3,0xe3) grey89 │ │ - (226,226,226) # rgb = (0xe2,0xe2,0xe2) │ │ - (244,244,244) # rgb = (0xf4,0xf4,0xf4) │ │ - (234,234,234) # rgb = (0xea,0xea,0xea) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ - (232,232,232) # rgb = (0xe8,0xe8,0xe8) grey91 │ │ - (246,246,246) # rgb = (0xf6,0xf6,0xf6) │ │ - (245,245,245) # rgb = (0xf5,0xf5,0xf5) grey96 │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ - (242,242,242) # rgb = (0xf2,0xf2,0xf2) grey95 │ │ (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ (250,250,250) # rgb = (0xfa,0xfa,0xfa) grey98 │ │ (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ (247,247,247) # rgb = (0xf7,0xf7,0xf7) grey97 │ │ (222,222,222) # rgb = (0xde,0xde,0xde) grey87 │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (250,250,250) # rgb = (0xfa,0xfa,0xfa) grey98 │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ - (238,238,238) # rgb = (0xee,0xee,0xee) │ │ (240,240,240) # rgb = (0xf0,0xf0,0xf0) grey94 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ (238,238,238) # rgb = (0xee,0xee,0xee) │ │ - (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ (233,233,233) # rgb = (0xe9,0xe9,0xe9) │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (228,228,228) # rgb = (0xe4,0xe4,0xe4) │ │ - (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ - (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ - (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ - (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ - (225,225,225) # rgb = (0xe1,0xe1,0xe1) │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (233,233,233) # rgb = (0xe9,0xe9,0xe9) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ (245,245,245) # rgb = (0xf5,0xf5,0xf5) grey96 │ │ (244,244,244) # rgb = (0xf4,0xf4,0xf4) │ │ (243,243,243) # rgb = (0xf3,0xf3,0xf3) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ @@ -124,26 +86,17 @@ │ │ (156,156,156) # rgb = (0x9c,0x9c,0x9c) grey61 │ │ (155,155,155) # rgb = (0x9b,0x9b,0x9b) │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (158,158,158) # rgb = (0x9e,0x9e,0x9e) grey62 │ │ (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ - (206,206,206) # rgb = (0xce,0xce,0xce) │ │ - (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ - (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ - (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ - (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ - (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ - (222,222,222) # rgb = (0xde,0xde,0xde) grey87 │ │ - (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ (242,242,242) # rgb = (0xf2,0xf2,0xf2) grey95 │ │ (239,239,239) # rgb = (0xef,0xef,0xef) │ │ @@ -159,27 +112,18 @@ │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (164,164,164) # rgb = (0xa4,0xa4,0xa4) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ - (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ - (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ - (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (223,223,223) # rgb = (0xdf,0xdf,0xdf) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ (232,232,232) # rgb = (0xe8,0xe8,0xe8) grey91 │ │ (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ (234,234,234) # rgb = (0xea,0xea,0xea) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ @@ -187,68 +131,124 @@ │ │ (231,231,231) # rgb = (0xe7,0xe7,0xe7) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (147,147,147) # rgb = (0x93,0x93,0x93) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ + (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ + (144,144,144) # rgb = (0x90,0x90,0x90) │ │ + (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ + (228,228,228) # rgb = (0xe4,0xe4,0xe4) │ │ + (230,230,230) # rgb = (0xe6,0xe6,0xe6) │ │ + (231,231,231) # rgb = (0xe7,0xe7,0xe7) │ │ + (236,236,236) # rgb = (0xec,0xec,0xec) │ │ + (240,240,240) # rgb = (0xf0,0xf0,0xf0) grey94 │ │ + (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ + (247,247,247) # rgb = (0xf7,0xf7,0xf7) grey97 │ │ + (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ + (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ + (239,239,239) # rgb = (0xef,0xef,0xef) │ │ + (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ + (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ + (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ + (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ + (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ + (243,243,243) # rgb = (0xf3,0xf3,0xf3) │ │ + (235,235,235) # rgb = (0xeb,0xeb,0xeb) grey92 │ │ + (229,229,229) # rgb = (0xe5,0xe5,0xe5) grey90 │ │ + (227,227,227) # rgb = (0xe3,0xe3,0xe3) grey89 │ │ + (226,226,226) # rgb = (0xe2,0xe2,0xe2) │ │ + (244,244,244) # rgb = (0xf4,0xf4,0xf4) │ │ + (234,234,234) # rgb = (0xea,0xea,0xea) │ │ + (232,232,232) # rgb = (0xe8,0xe8,0xe8) grey91 │ │ + (246,246,246) # rgb = (0xf6,0xf6,0xf6) │ │ + (245,245,245) # rgb = (0xf5,0xf5,0xf5) grey96 │ │ + (242,242,242) # rgb = (0xf2,0xf2,0xf2) grey95 │ │ + (238,238,238) # rgb = (0xee,0xee,0xee) │ │ + (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ + (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ + (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ + (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ + (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ + (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ + (225,225,225) # rgb = (0xe1,0xe1,0xe1) │ │ + (233,233,233) # rgb = (0xe9,0xe9,0xe9) │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (206,206,206) # rgb = (0xce,0xce,0xce) │ │ + (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ + (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ + (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ + (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ + (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ + (222,222,222) # rgb = (0xde,0xde,0xde) grey87 │ │ + (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ + (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ + (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ + (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ + (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ + (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ + (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ + (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ + (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ + (223,223,223) # rgb = (0xdf,0xdf,0xdf) │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ - (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ } │ │ tRNS { │ │ - 0 255 224 22 255 214 21 255 255 255 214 255 255 255 214 255 255 251 233 232 232 202 19 255 226 37 19 15 224 241 171 165 166 116 133 166 167 169 169 169 255 255 255 255 182 206 255 255 255 255 255 255 177 202 255 255 255 255 201 255 255 255 182 200 255 237 140 133 133 93 200 155 229 255 224 18 60 210 255 230 74 60 60 39 101 218 255 255 255 186 255 255 177 255 177 200 255 179 200 247 210 208 208 149 215 208 243 18 59 209 224 18 200 60 209 245 198 196 196 140 200 204 195 240 255 181 255 255 255 255 255 255 177 200 255 255 177 184 200 231 91 79 79 52 116 221 223 18 200 60 209 235 125 116 80 200 144 115 226 255 255 184 255 255 255 255 177 255 255 177 200 255 180 200 181 180 181 128 200 192 238 60 58 209 225 221 246 255 255 200 255 255 200 212} │ │ + 0 224 22 214 21 214 214 251 233 232 232 202 19 226 37 19 15 224 241 171 165 166 116 133 166 167 169 169 169 182 206 177 202 201 182 200 237 140 133 133 93 200 155 229 224 18 60 210 230 74 60 60 39 101 218 186 177 177 200 179 200 247 210 208 208 149 215 208 243 18 59 209 224 18 200 60 209 245 198 196 196 140 200 204 195 240 181 177 200 177 184 200 231 91 79 79 52 116 221 223 18 200 60 209 235 125 116 80 200 144 115 226 184 177 177 200 180 200 181 180 181 128 200 192 238 60 58 209 225 221 246 200 200 212} │ │ IMAGE { │ │ pixels hex │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -000000010101010101010101010101010101010101010101010101010101010101020300000000000000000000000000 │ │ -000000040404040404040404040404040404040404040404040404040404040404050600000000000000000000000000 │ │ -0000000708090909090909090909090909090909090909090909090909090909080a0600000000000000000000000000 │ │ -0000000b0c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c0e0600000000000000000000000000 │ │ -0000000c0f10101112131313131313131313131313131313131313131313131314151600000000000000000000000000 │ │ -0000000d10171718191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1b0000000000000000000000000000 │ │ -0000000d1017171c16000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -0000000d1017171d1e1f2021000022202020202020202020202020202020202023242526262727272727272727000000 │ │ -0000000d10171028292a2b2c00002d2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2e2f30303030303030303030000000 │ │ -0000000d1017103132093334000035333333333333333333333333333333333333330707070707070707073637000000 │ │ -0000000c0f100f380c0b393400003a390b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b323b000000 │ │ -000000283c0f0f3c3c3d313e00003f0d3131313d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d313131400b000000 │ │ -000000283c0f0f4142434445000046383c0f0f474343434343434343434343434343434343434343480f0f3d28000000 │ │ -000000493d3c3c4a4b00000000003f313c3c3c4c00000000000000000000000000000000000000004d3c3c3d49000000 │ │ -0000004e383d3d4f5051525300003f403d3d38545151515151515151515151515151515151515151553d3d384e000000 │ │ -0000000b313831095657585900003f0d38380d5a575757575757575757575757575757575757575b373138310b000000 │ │ -0000000b313831490837045c00003f0d3838283b365d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d37084e4038310b000000 │ │ -00000032403140493b07375e00005f0c3131286033363636363636363636363636363636363607094e40314032000000 │ │ -000000390d40400c284e39610000622840400d284e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e490c40400d39000000 │ │ -000000600c0d0d6364656667000062490d0d0d6869696969696969696969696969696969696969696a0d0d0c60000000 │ │ -000000600c0d0d1c6b000000000062490d0d0d6c00000000000000000000000000000000000000006d0d0d0c60000000 │ │ -0000003b280c0c6e6f0000000000704e0c0c0c710000000000000000000000000000000000000000720c0c283b000000 │ │ -0000000949282873747576770000780b28284e797a75757575757575757575757575757575757a7a7b49284909000000 │ │ -00000009492849087c2a2b7d0000780b2828327e7f80808080808080808080808080808080802a81364e284909000000 │ │ -000000084e494e3b0482838400008532494960378687878787878787878787878787878787878204090b494e08000000 │ │ -000000330b4e4e3933360488000085394e4e32083637373737373737373737373737373737373633600b4e0b33000000 │ │ -00000007320b0b3228280b8900008a600b0b0b492828282828282828282828282828282828282828320b0b3207000000 │ │ -00000007320b0b8b8c8d8e8f00008a600b0b0b908d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d910b0b3207000000 │ │ -0000003639323292930000000000943b3232329500000000000000000000000000000000000000009632323936000000 │ │ -00000037603939979899999a00009b093939609c999999999999999999999999999999999999999d9e39396037000000 │ │ -0000005d3b603b829f56a0a100009b08606033a256565656565656565656565656565656565656a3833b603b5d000000 │ │ -0000005d3b603b3687a4a5a600009b0860600786a7a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a4873709603b5d000000 │ │ -00000004093b09078687a7a90000aa333b3b33ab828383838383838383838383838383838383878636093b0904000000 │ │ -0000003660393960083336ac0000ad0709090808333333333333333333333333333333333333330833090908ab000000 │ │ -000000aeafafafafafafb0b10000b236080808b3afafafafafafafafafafafafafafafafafafafafb408083386000000 │ │ -0000000000000000000000000000b236080808b500000000000000000000000000000000000000007208083386000000 │ │ -0000000000000000000000000000b237333333b60000000000000000000000000000000000000000b733330782000000 │ │ -0000000000000000000000000000b25d07075db8b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ba36073687000000 │ │ -0000000000000000000000000000b25d0707abbb8080808080808080808080808080808080808081bc37073687000000 │ │ -0000000000000000000000000000bd043636aba4bebebfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbea5875d363783000000 │ │ -0000000000000000000000000000c0ab37370487bcbca7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7bc83ab5d375dbc000000 │ │ -0000000000000000000000000000c1603232323239393939393939393939393939393939393939393232323208000000 │ │ +000000868686868686868686868686868686868686868686868686868686868686010200000000000000000000000000 │ │ +000000878787878787878787878787878787878787878787878787878787878787030400000000000000000000000000 │ │ +00000088898a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a89050400000000000000000000000000 │ │ +0000008b8c8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8c060400000000000000000000000000 │ │ +0000008c8e8f8f070809090909090909090909090909090909090909090909090a0b0c00000000000000000000000000 │ │ +0000008d8f90900d0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f100000000000000000000000000000 │ │ +0000008d8f9090110c000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +0000008d8f90901213141516000017151515151515151515151515151515151518191a1b1b1c1c1c1c1c1c1c1c000000 │ │ +0000008d8f908f919293941d00001e949494949494949494949494949494949494959697979797979797979797000000 │ │ +0000008d8f908f98998a9a1f0000209a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8888888888888888889b9c000000 │ │ +0000008c8e8f8e9d8c8b9e1f0000219e8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b999f000000 │ │ +00000091a08e8ea0a0a198220000238d989898a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1989898a28b000000 │ │ +00000091a08e8e24252627280000299da08e8e2a26262626262626262626262626262626262626262b8e8ea191000000 │ │ +000000a3a1a0a02c2d00000000002398a0a0a02e00000000000000000000000000000000000000002fa0a0a1a3000000 │ │ +000000a49da1a13031323334000023a2a1a19d35323232323232323232323232323232323232323236a1a19da4000000 │ │ +0000008b989d988aa5a6a7370000238d9d9d8da8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a99c989d988b000000 │ │ +0000008b989d98a3899c87380000238d9d9d919f9baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa9c89a4a29d988b000000 │ │ +00000099a298a2a39f889c3900003a8c989891ab9a9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b888aa4a298a299000000 │ │ +0000009e8da2a28c91a49e3b00003c91a2a28d91a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a38ca2a28d9e000000 │ │ +000000ab8c8d8d3d3e3f404100003ca38d8d8d424343434343434343434343434343434343434343448d8d8cab000000 │ │ +000000ab8c8d8d114500000000003ca38d8d8d460000000000000000000000000000000000000000478d8d8cab000000 │ │ +0000009f918c8c484900000000004aa48c8c8c4b00000000000000000000000000000000000000004c8c8c919f000000 │ │ +0000008aa391914d4e4f50510000528b9191a453544f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f545455a391a38a000000 │ │ +0000008aa391a389ac9394560000528b919199adaeafafafafafafafafafafafafafafafafaf93b09ba491a38a000000 │ │ +00000089a4a3a49f87b1b25700005899a3a3ab9cb3b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b1878a8ba3a489000000 │ │ +0000009a8ba4a49e9a9b87590000589ea4a499899b9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9b9aab8ba48b9a000000 │ │ +00000088998b8b9991918b5a00005bab8b8b8ba39191919191919191919191919191919191919191998b8b9988000000 │ │ +00000088998b8b5c5d5e5f6000005bab8b8b8b615e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e628b8b9988000000 │ │ +0000009b9e999963640000000000659f9999996600000000000000000000000000000000000000006799999e9b000000 │ │ +0000009cab9e9e68696a6a6b00006c8a9e9eab6d6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6e6f9e9eab9c000000 │ │ +000000aa9fab9fb1b5a5b67000006c89abab9ab7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5b8b29fab9faa000000 │ │ +000000aa9fab9f9bb4b9ba7100006c89abab88b3bbbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcb9b49c8aab9faa000000 │ │ +000000878a9f8a88b3b4bb720000739a9f9f9abdb1b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b4b39b8a9f8a87000000 │ │ +0000009bab9e9eab899a9b74000075888a8a89899a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a899a8a8a89bd000000 │ │ +00000076777777777777787900007a9b8989897b77777777777777777777777777777777777777777c89899ab3000000 │ │ +00000000000000000000000000007a9b8989897d00000000000000000000000000000000000000004c89899ab3000000 │ │ +00000000000000000000000000007a9c9a9a9a7e00000000000000000000000000000000000000007f9a9a88b1000000 │ │ +00000000000000000000000000007aaa8888aa808181818181818181818181818181818181818181829b889bb4000000 │ │ +00000000000000000000000000007aaa8888bdbeafafafafafafafafafafafafafafafafafafafb0bf9c889bb4000000 │ │ +000000000000000000000000000083879b9bbdb9c0c0c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c0bab4aa9b9cb2000000 │ │ +000000000000000000000000000084bd9c9c87b4bfbfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfb2bdaa9caabf000000 │ │ +000000000000000000000000000085ab999999999e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9999999989000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ } ├── res/drawable-hdpi-v4/icon_statusbar.png ├── sng │ │ @@ -1,32 +1,32 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 24; height: 24; bitdepth: 8; │ │ using grayscale alpha; │ │ } │ │ IMAGE { │ │ pixels hex │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 4d2b 9285 c1ae c6bf c6c1 c6af 9088 5834 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 4d38 deb7 faff fdff fdff fdff fdff fdff fdff fbff dcc0 633b ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 7776 f7fe fdff fdff f6ff edff e6ff e6ff edff f6ff fdff fdff f7ff 9e84 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ac91 faff fcff f9ff c6ff 67ff 1aff 1fff 1fff 12ff 63ff c5ff f9ff fcff faff e6be 0001 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 9d5e f7ff faff eaff 79ff 68ff 9eff afff c6ff c8ff a8ff 9eff 67ff 70ff e4ff faff f8ff 9e69 ff00 ff00 ff00 │ │ -ff00 ff00 3025 ecf3 f9ff f0ff 6fff 88ff b9ff beff a9ff c3ff c5ff 9aff b7ff bbff 87ff 6cff eaff f9ff edfa 4827 ff00 ff00 │ │ -ff00 ff00 988b f8ff f9ff 93ff 84ff 9fff a2ff ebff a1ff a9ff 9fff 77ff ecff a3ff 9fff 82ff 8cff f9ff f9ff 9791 ff00 ff00 │ │ -ff00 0004 e4ec f7ff e6ff 77ff b9ff a3ff 94ff 94ff 94ff 94ff 98ff 84ff 94ff 94ff a1ff bbff 74ff dfff f7ff e4f5 2008 ff00 │ │ -ff00 4044 ecff f6ff bdff 82ff 88ff ceff 94ff 88ff 88ff 88ff aaff 61ff 88ff 8fff d1ff 88ff 82ff b0ff f6ff edff 624e ff00 │ │ -ff00 846e efff f1ff 96ff 7cff 7cff 7cff 7cff 7cff 7cff 92ff bcff 66ff 7cff 7cff 7cff 7cff 7cff 91ff f0ff f2ff 8278 ff00 │ │ -ff00 7f83 f3ff f0ff 67ff 9fff bcff 9dff 6eff 6fff 66ff f0ff f2ff 65ff 6eff 6eff 9dff bcff a1ff 2bff efff f4ff 7998 ff00 │ │ -ff00 7c7f f1ff efff 62ff 24ff 38ff 4eff 52ff 60ff 5dff d6ff dbff 5aff 60ff 54ff 4fff 39ff 25ff 36ff efff f3ff 7794 ff00 │ │ -ff00 7769 e9ff f0ff 77ff 00ff 00ff 00ff 00ff 00ff 16ff 13ff 13ff 17ff 00ff 00ff 00ff 00ff 00ff 70ff efff ebff 776d ff00 │ │ -ff00 3e2d ddff f0ff dfff 00ff 00ff 00ff 00ff 00ff 01ff 01ff 01ff 01ff 00ff 00ff 00ff 00ff 00ff dcff f0ff e0ff 3d3b ff00 │ │ -ff00 0002 d5d7 efff edff 2cff 00ff 00ff 00ff 00ff c5ff cbff caff c7ff 00ff 00ff 00ff 00ff 28ff edff efff d5e4 0004 ff00 │ │ -ff00 ff00 696b e7ff edff d0ff 12ff 00ff 00ff 00ff 86ff 77ff 85ff 9bff 00ff 00ff 00ff 10ff c8ff edff e8ff 7b76 ff00 ff00 │ │ -ff00 ff00 1e11 c9e4 ecff ecff b0ff 10ff 00ff 00ff 77ff 7aff 7aff 7aff 00ff 00ff 0fff a3ff ecff ecff c9ec 2614 ff00 ff00 │ │ -ff00 ff00 ff00 4a2d d3ff ebff ecff d4ff 2cff 04ff 00ff 00ff 00ff 00ff 00ff 2bff d2ff edff ebff d5ff 7134 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 aa42 d0fe eaff eaff edff f6ff 8fff 57ff 55ff 8eff f5ff eeff eaff eaff d4ff aa42 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 443c abe5 e2ff e8ff e8ff eaff eaff eaff eaff e8ff e8ff e4ff abe8 4040 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 1716 8577 c3e9 d2ff e0ff e8ff e8ff e2ff d2ff c1f1 847c 1518 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 4d2b 9285 c1ae c6bf c6c1 c6af 9088 5834 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 4d38 deb7 faff fdff fdff fdff fdff fdff fdff fbff dcc0 633b 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 7776 f7fe fdff fdff f6ff edff e6ff e6ff edff f6ff fdff fdff f7ff 9e84 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 ac91 faff fcff f9ff c6ff 67ff 1aff 1fff 1fff 12ff 63ff c5ff f9ff fcff faff e6be 0001 0000 0000 0000 │ │ +0000 0000 0000 9d5e f7ff faff eaff 79ff 68ff 9eff afff c6ff c8ff a8ff 9eff 67ff 70ff e4ff faff f8ff 9e69 0000 0000 0000 │ │ +0000 0000 3025 ecf3 f9ff f0ff 6fff 88ff b9ff beff a9ff c3ff c5ff 9aff b7ff bbff 87ff 6cff eaff f9ff edfa 4827 0000 0000 │ │ +0000 0000 988b f8ff f9ff 93ff 84ff 9fff a2ff ebff a1ff a9ff 9fff 77ff ecff a3ff 9fff 82ff 8cff f9ff f9ff 9791 0000 0000 │ │ +0000 0004 e4ec f7ff e6ff 77ff b9ff a3ff 94ff 94ff 94ff 94ff 98ff 84ff 94ff 94ff a1ff bbff 74ff dfff f7ff e4f5 2008 0000 │ │ +0000 4044 ecff f6ff bdff 82ff 88ff ceff 94ff 88ff 88ff 88ff aaff 61ff 88ff 8fff d1ff 88ff 82ff b0ff f6ff edff 624e 0000 │ │ +0000 846e efff f1ff 96ff 7cff 7cff 7cff 7cff 7cff 7cff 92ff bcff 66ff 7cff 7cff 7cff 7cff 7cff 91ff f0ff f2ff 8278 0000 │ │ +0000 7f83 f3ff f0ff 67ff 9fff bcff 9dff 6eff 6fff 66ff f0ff f2ff 65ff 6eff 6eff 9dff bcff a1ff 2bff efff f4ff 7998 0000 │ │ +0000 7c7f f1ff efff 62ff 24ff 38ff 4eff 52ff 60ff 5dff d6ff dbff 5aff 60ff 54ff 4fff 39ff 25ff 36ff efff f3ff 7794 0000 │ │ +0000 7769 e9ff f0ff 77ff 00ff 00ff 00ff 00ff 00ff 16ff 13ff 13ff 17ff 00ff 00ff 00ff 00ff 00ff 70ff efff ebff 776d 0000 │ │ +0000 3e2d ddff f0ff dfff 00ff 00ff 00ff 00ff 00ff 01ff 01ff 01ff 01ff 00ff 00ff 00ff 00ff 00ff dcff f0ff e0ff 3d3b 0000 │ │ +0000 0002 d5d7 efff edff 2cff 00ff 00ff 00ff 00ff c5ff cbff caff c7ff 00ff 00ff 00ff 00ff 28ff edff efff d5e4 0004 0000 │ │ +0000 0000 696b e7ff edff d0ff 12ff 00ff 00ff 00ff 86ff 77ff 85ff 9bff 00ff 00ff 00ff 10ff c8ff edff e8ff 7b76 0000 0000 │ │ +0000 0000 1e11 c9e4 ecff ecff b0ff 10ff 00ff 00ff 77ff 7aff 7aff 7aff 00ff 00ff 0fff a3ff ecff ecff c9ec 2614 0000 0000 │ │ +0000 0000 0000 4a2d d3ff ebff ecff d4ff 2cff 04ff 00ff 00ff 00ff 00ff 00ff 2bff d2ff edff ebff d5ff 7134 0000 0000 0000 │ │ +0000 0000 0000 0000 aa42 d0fe eaff eaff edff f6ff 8fff 57ff 55ff 8eff f5ff eeff eaff eaff d4ff aa42 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 443c abe5 e2ff e8ff e8ff eaff eaff eaff eaff e8ff e8ff e4ff abe8 4040 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 1716 8577 c3e9 d2ff e0ff e8ff e8ff e2ff d2ff c1f1 847c 1518 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ } ├── res/drawable-hdpi-v4/ic_tab_user_measurement_selected.png ├── sng │ │ @@ -16,87 +16,61 @@ │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (153,153,153) # rgb = (0x99,0x99,0x99) grey60 │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ - (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ - (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ - (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ - (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ - (206,206,206) # rgb = (0xce,0xce,0xce) │ │ - (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ - (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ - (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ - (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ - (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ - (202,202,202) # rgb = (0xca,0xca,0xca) │ │ - (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ - (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ - (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ - (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ - (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ - (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ - (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ @@ -116,41 +90,35 @@ │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ - (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ - (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (164,164,164) # rgb = (0xa4,0xa4,0xa4) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ - (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ - (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ @@ -179,22 +147,20 @@ │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ - (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (202,202,202) # rgb = (0xca,0xca,0xca) │ │ @@ -215,30 +181,21 @@ │ │ (153,153,153) # rgb = (0x99,0x99,0x99) grey60 │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (166,166,166) # rgb = (0xa6,0xa6,0xa6) grey65 │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ - (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (174,174,174) # rgb = (0xae,0xae,0xae) │ │ - (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ - (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ - (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (206,206,206) # rgb = (0xce,0xce,0xce) │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ @@ -253,61 +210,104 @@ │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ + (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ + (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ + (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ + (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ + (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ + (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ + (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ + (206,206,206) # rgb = (0xce,0xce,0xce) │ │ + (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ + (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ + (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ + (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ + (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ + (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ + (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ + (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ + (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ + (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ + (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ + (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ + (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ + (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ + (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ + (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ + (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ + (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ + (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ + (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ + (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ + (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ + (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ + (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ + (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ + (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ + (174,174,174) # rgb = (0xae,0xae,0xae) │ │ + (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ + (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ + (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ + (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ + (172,172,172) # rgb = (0xac,0xac,0xac) │ │ } │ │ tRNS { │ │ - 0 2 1 3 7 11 5 3 196 225 226 226 168 4 205 246 255 184 12 5 29 189 250 255 255 255 229 191 163 41 185 255 255 255 255 255 255 255 239 166 54 167 255 255 255 255 255 248 151 18 6 57 174 255 255 255 255 255 146 35 53 255 255 140 28 9 41 179 141 36 22 181 255 150 201 170 195 247 255 155 195 242 232 215 165 14 193 247 255 237 175 47 180 249 220 52 181 218 56 166 216 10 175 216 150 242 194 28 151 242 233 177 181 147 15 169 255 156 167 255 255 255 158 35 10 166 193 91 123 255 142 38 137 223 175 9 28 127 247 154 40 185 255 176 8 126 240 149 37 180 177 151 232 249 172 24 180 179 5 145 229 239 172 16 178 230 151 157 231 241 179 4 60 190 158 142 235 178 213 255 164 145 247 249 171 204 255 155 118 166 204 244 170 17 116 148 24 200 237 177 9 97 158 41 201 237 241 178 8 166 202 198 212 144 44 255 255 255 239 176 174 178 235 255 255 255 159 39 255 255 255 220 156 150 149 150 34 197 187 184 184 130 1 230 196 195 197 40 222 220 220 157 9} │ │ + 0 2 1 3 7 11 5 3 196 225 226 226 168 4 205 246 184 12 5 29 189 250 229 191 163 41 185 239 166 54 167 248 151 18 6 57 174 146 35 53 140 28 9 41 179 141 36 22 181 150 201 170 195 247 155 195 242 232 215 165 14 193 247 237 175 47 180 249 220 52 181 218 56 166 216 10 175 216 150 242 194 28 151 242 233 177 181 147 15 169 156 167 158 35 10 166 193 91 123 142 38 137 223 175 9 28 127 247 154 40 185 176 8 126 240 149 37 180 177 151 232 249 172 24 180 179 5 145 229 239 172 16 178 230 151 157 231 241 179 4 60 190 158 142 235 178 213 164 145 247 249 171 204 155 118 166 204 244 170 17 116 148 24 200 237 177 9 97 158 41 201 237 241 178 8 166 202 198 212 144 44 239 176 174 178 235 159 39 220 156 150 149 150 34 197 187 184 184 130 1 230 196 195 197 40 222 220 220 157 9} │ │ IMAGE { │ │ pixels hex │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000001020103040506000000020201010102000000000000000000 │ │ 0000000000000000000000000000000000000000000000070008090a0b0a0c0601000002020200000000000000000000 │ │ -00000000000000000000000000000000000000000000000d0e0f10101010111213000000020200000000000000000000 │ │ -0000000000000000000000000006000003020000000214151617181818191a1b1c000202020102000000000200000000 │ │ -0000000000000000000000000007000d0d020201001d1e1f202122232324172526271202020207010000020200000000 │ │ -0000000000000000000000000000030601070d0128291f18242a2b2b2b2c242d2e2f3031020001010202020000000000 │ │ -000000000000000000000000000313010d321333343518242c36373737362c223817393a3b0000000202020000000000 │ │ -000000000000000000000000000d000d32013c293d19212a363737373736362c2338203e3f4000000002020200000000 │ │ -000000000000000000000000000002410d42433520212a2b36363636363636362b2338203e4445010000020100000000 │ │ -0000000000000000000000000000130246473d2038232b3636363636363636362b2c2338174849410000020200000000 │ │ -000000000000000000000000000000024a352038232c2b2b2b2b2b2b2b2b2b2b2b2b2c222d173e4b1301000000000000 │ │ -0000000000000000000000000001004c4d172d222c2b2b2b2b2b2b2b2b2b2b2b2b2b2c2a242d4e4f120d000000000000 │ │ -000000000000000002020000020050514e2d222a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2418525354020000000000 │ │ -000000000100030100010d025556575818242a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23212e25595a0000000000 │ │ -0000000002060d0703070d5b5c5d581821232a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a242d17105e0100000000 │ │ -00000000000d010d13015f603e581921222a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a23212d17614100000000 │ │ -000000000000010d0762633958203824232323232323232323232323232323232323232323232322242d646500000000 │ │ -000000000000070733664858203824232323232323232323232323232323232323232323232323232222670d00000000 │ │ -0000000000000007683e58203824232323232323232323232323232323232323232323232323232a2c696a0000000000 │ │ -000000000000026b6c58202d2422222222222222222222222222222222222222222222222222226d6e6f070000000000 │ │ -00000000010001703e172d21242424242424242424242424242424242424242424242424242424717202000d00000000 │ │ -00000000000102732e183824242424242424242424242424242424242424242424242424242474750000000000000000 │ │ -0000000003020176172a777821212121212121212121212121212121212121212121212121797a7b0000000000000000 │ │ -0000000002007c7d207e7f80812121212121212121212121212121212121212121212121748283000000000000000000 │ │ -000000000000848518868788898a213838383838383838383838383838383838383838748b8c00000000000000000000 │ │ -0000000001008d8e198f0700909192243838383838383838383838383838383838383693940102000000000000000000 │ │ -000000000702952e20960200020297982438383838383838383838383838383821999a9b000702000000000000000000 │ │ -0000000002029c17189d000207029e9fa0212d2d2d2d2d2d2d2d2d2d2d2d2d38a1a2a300020200000000000000000000 │ │ -00000000000da417a5a6000002070007a7a8382d2d2d2d2d2d2d2d2d2d2d38a9aaab0200020000000000000000000000 │ │ -0000000002acad17aeab000000010200abafb02d18181818181818181818a1b107000702000202000000000000000000 │ │ -000000000db2b317b40700000004070001abb5b6181818181818181818b7b80000000000000000000000000000000000 │ │ -0000000000b9ba4ebb0000000000000d070001bc741919191919191936bd9e0000000000000000000000000000000000 │ │ -000000000dbeba2ebfc00d0141010000000202c1c22020202020202bc3c4000000000000000000000000000000000000 │ │ -0000000007c558588ec6c7c80100020301010101c9172020202036cacb02020000000000000000000000000000000000 │ │ -00000000cccd2e2e103dcecf0700d0d1d2d2ccd3d44e1717172cd5d60200000000000000000000000000000000000000 │ │ -00000000d7d82e4ebad935dadbdcdddedfe0e135182a2c2b2be2e3000000000000000000000000000000000000000000 │ │ -0000000025e44e4e4ebad935e5e635ba4e4e4ee7e8e9eaebeaec01020000000000000000000000000000000000000000 │ │ -00000000d8ba4e4e4e2018202e58edeeeff0f0f113f2f2f20000f2010000f20000000000000000000000000000000000 │ │ -000000002e20181818f3f4f5f6f6f7abf2f201f20001f200000000000000000000000000000000000000000000000000 │ │ -00000000f8f9f9fafafbfcf2000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -00000000ab03010000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +00000000000000000000000000000000000000000000000d0e0fd2d2d2d2101112000000020200000000000000000000 │ │ +00000000000000000000000000060000030200000002131415d3d4d4d4d5161718000202020102000000000200000000 │ │ +0000000000000000000000000007000d0d02020100191ad6d7d8d9dadadbd3dc1b1c1102020207010000020200000000 │ │ +0000000000000000000000000000030601070d011d1ed6d4dbdddedededfdbe0e11f2021020001010202020000000000 │ │ +000000000000000000000000000312010d22122324e2d4dbdfe3e4e4e4e3dfd9e5d3e625260000000202020000000000 │ │ +000000000000000000000000000d000d2201271ee7d5d8dde3e4e4e4e4e3e3dfdae5d7e8282900000002020200000000 │ │ +0000000000000000000000000000022a0d2b2ce2d7d8dddee3e3e3e3e3e3e3e3dedae5d7e82d2e010000020100000000 │ │ +000000000000000000000000000012022f30e7d7e5dadee3e3e3e3e3e3e3e3e3dedfdae5d3e9312a0000020200000000 │ │ +0000000000000000000000000000000232e2d7e5dadfdededededededededededededfd9e0d3e8331201000000000000 │ │ +0000000000000000000000000001003435d3e0d9dfdedededededededededededededfdddbe0ea36110d000000000000 │ │ +00000000000000000202000002003738eae0d9dddfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdddbd4393a3b020000000000 │ │ +000000000100030100010d023c3d3eebd4dbdddfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdddad8e1dc3f400000000000 │ │ +0000000002060d0703070d414243ebd4d8dadddddddddddddddddddddddddddddddddddddddddbe0d3d2440100000000 │ │ +00000000000d010d12014546e8ebd5d8d9dddddddddddddddddddddddddddddddddddddddddddad8e0d3472a00000000 │ │ +000000000000010d074849e6ebd7e5dbdadadadadadadadadadadadadadadadadadadadadadadad9dbe04a4b00000000 │ │ +0000000000000707234ce9ebd7e5dbdadadadadadadadadadadadadadadadadadadadadadadadadad9d94d0d00000000 │ │ +00000000000000074ee8ebd7e5dbdadadadadadadadadadadadadadadadadadadadadadadadadadddf4f500000000000 │ │ +000000000000025152ebd7e0dbd9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9535455070000000000 │ │ +0000000001000156e8d3e0d8dbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb575802000d00000000 │ │ +0000000000010259e1d4e5dbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbec5a0000000000000000 │ │ +000000000302015bd3ddedeed8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8ef5c5d0000000000000000 │ │ +0000000002005e5fd7606162f0d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8ec6364000000000000000000 │ │ +0000000000006566d46768696a6bd8e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5ec6c6d00000000000000000000 │ │ +0000000001006ef1d56f0700707172dbe5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e373740102000000000000000000 │ │ +00000000070275e1d776020002027778dbe5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d8797a7b000702000000000000000000 │ │ +0000000002027cd3d47d000207027e7f80d8e0e0e0e0e0e0e0e0e0e0e0e0e0e581828300020200000000000000000000 │ │ +00000000000d84d385860000020700078788e5e0e0e0e0e0e0e0e0e0e0e0e5898a8b0200020000000000000000000000 │ │ +00000000028c8dd38e8b0000000102008b8f90e0d4d4d4d4d4d4d4d4d4d4819107000702000202000000000000000000 │ │ +000000000d92f2d39307000000040700018b9495d4d4d4d4d4d4d4d4d496970000000000000000000000000000000000 │ │ +000000000098f3ea990000000000000d0700019aecd5d5d5d5d5d5d5e39b7e0000000000000000000000000000000000 │ │ +000000000d9cf3e19d9e0d012a0100000002029fa0d7d7d7d7d7d7dea1a2000000000000000000000000000000000000 │ │ +0000000007a3ebebf1a4a5a60100020301010101a7d3d7d7d7d7e3a8a902020000000000000000000000000000000000 │ │ +00000000aaabe1e1d2e7acad0700aeafb0b0aab1b2ead3d3d3dfb3b40200000000000000000000000000000000000000 │ │ +00000000f4f5e1eaf3f6e2b5b6b7b8b9f7f8f9e2d4dddfdedebabb000000000000000000000000000000000000000000 │ │ +00000000dcfaeaeaeaf3f6e2fbfce2f3eaeaeabcbdbebfc0bfc101020000000000000000000000000000000000000000 │ │ +00000000f5f3eaeaead7d4d7e1ebc2c3c4c5c5c612c7c7c70000c7010000c70000000000000000000000000000000000 │ │ +00000000e1d7d4d4d4c8c9cacbcbcc8bc7c701c70001c700000000000000000000000000000000000000000000000000 │ │ +00000000cdcececfcfd0d1c7000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +000000008b03010000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ } ├── res/drawable-hdpi-v4/icon.png ├── sng │ │ @@ -1,45 +1,45 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 76; height: 77; bitdepth: 8; │ │ using color alpha; │ │ } │ │ IMAGE { │ │ pixels hex │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 eef1f149 e3e5e776 e3e5e776 e0e4e77d d2d6dabb d2d5d7bd ccd1d5de ccd1d5de d1d3d7cd d2d6d7bb e0e2e68e e3e5e776 e3e5e776 eeeeee4c ffffff05 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ececef51 e2e4e67c ccd0d3f4 d9dbdeff dadddfff f0f1f1ff fffefeff fffefeff fffefeff fffefeff fffffeff fffefeff fffefeff fffefeff fffefeff fffefeff f2f2f2ff dcdfe1ff d9dcdeff cdd1d5ff e0e4e482 e9ecec5d ffffff10 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 efeff341 dcdfe191 d1d4d6ff dee0e2ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fefdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff e4e6e7ff d3d6d9ff d3d7dac7 eaeeee4a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff08 eef2f23d caced0f9 dde0e1ff fcfcfbff fcfcfbff fcfcfcff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fcfcfcff fcfcfcff fcfcfbff e2e4e6ff cbcfd1ff e7e7e96a f5f5f519 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 efefef50 c6caceff edeeefff fafafaff fafafaff fbfbfcff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfcfcff fafafaff fafafaff f4f5f5ff c7cccfff e0e1e38a ffffff11 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f3ffff15 c3c8cbf7 ecedeeff f9f9f9ff f9f9f9ff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff f9f9f9ff f9f9f9ff f3f4f4ff c2c7caff f7f7f720 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff02 caced0d0 e3e5e6ff f7f8f7ff f7f7f7ff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff f7f8f7ff f7f8f7ff e9ebecff c5c9cde2 ffffff02 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 bdc3c7f9 f2f3f2ff f6f6f5ff fafafaff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fafbfcff f6f6f5ff f4f5f5ff bdc2c6fc f0f3f342 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d2d7d9b7 d5d7dafc f3f4f3ff f6f6f5ff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff f8f9f9ff f3f4f4ff e4e6e7ff caced1cb ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 cbcfd3c3 e4e5e6ff f2f2f1ff f8f9f9ff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fafbfcff dcdedfff 9ea3a8ff 9ea3a8ff 8a8f96ff 848a91ff 82898fff 82898fff 82898fff 82898fff 838990ff 878d94ff 9ea3a7ff 9ea3a8ff b6babeff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff f8f9f9ff f2f2f1ff e5e6e7ff cbcfd1c4 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d0d2d5b7 e0e2e4ff f0f1f0ff f8f9f9ff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff acb0b5ff 9ea3a7ff 848a90ff 848a91ff 848a90ff 848a91ff 848a90ff 848a91ff 575c63ff 393c40ff 393b3fff 484b50ff 83898fff 848a91ff 848a90ff 848a90ff 848a90ff 848a90ff 979ba1ff a9adb2ff f2f3f4ff fafbfcff fafbfbff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfbff f0f1f0ff e9eaeaff c6cbcdd6 ffffff06 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d3d6d9a7 e4e6e6ff eeefefff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff d9dbdeff a6abafff 868c93ff 868b93ff 868c93ff 6d7278ff 3a3c40ff 2e3134ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 17181bff 3a3c40ff 4c5055ff 868c93ff 868b93ff 868c93ff a1a5abff d8daddff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff eeefefff eeeeeeff c0c3c7f5 ffffff0b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d5d9dc99 e2e3e4ff ecededff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff dadcdfff a2a6acff 888e95ff 888e94ff 6e7378ff 3e4143ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2e3139ff 585d6bff 585d6bff 30343bff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 313235ff 686d72ff 888e94ff 888e94ff a2a6abff d8dadcff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff ecededff ecededff c6c9cdf6 ffffff08 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d7dbdd8d dadddeff ebecebff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff bdc0c4ff 8a9096ff 898f96ff 6d7277ff 2f3134ff 020202ff 020202ff 020202ff 2a2d33ff 4f545fff 626876ff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e96abff 8e97abff 8e96abff 8e97abff 656b7aff 4f545fff 2e3139ff 020202ff 020202ff 020202ff 111214ff 585c60ff 8a9096ff 898f96ff a3a8adff f8f9faff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff ebececff ebecebff cbced0c5 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e4e6e87b cfd3d5ff e9ebe9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9faff f8f9fbff f8f9faff f8f9fbff dbdee0ff 9ba0a6ff 8c9298ff 71767aff 2e3134ff 020202ff 020202ff 22242aff 535864ff 8b94a7ff 8b94a8ff 8b94a7ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff bec3ceff bec3ceff 8e96aaff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a7ff 8b94a8ff 545966ff 212429ff 020202ff 020202ff 1b1d1eff 70757aff 8c9298ff 8c9298ff dcdee0ff f8f9faff f8f9fbff f8f9faff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff e9ebe9ff dcdedfff dbdddf81 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f7f7f720 c6c9ccff e7e9e8ff f3f5f5ff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff dddfe2ff 8e949aff 8e949bff 5a5e63ff 020202ff 020202ff 282b31ff 6c7382ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff ffffffff ffffffff 9097aaff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 7f7884ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 717887ff 2b2d35ff 020202ff 020202ff 323539ff 8d9399ff 8e949bff c5c9ccff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff e8e9e9ff cccfd1ff e8e8ea57 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff0a b8bcc1ff e5e7e6ff ebecedff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff c0c4c8ff 90969bff 868b91ff 2c2e30ff 020202ff 1b1d21ff 656b79ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff ffffffff ffffffff 8e96a7ff 878fa2ff 878fa2ff 878fa2ff 8f858fff 42393cff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 656b79ff 1b1d21ff 020202ff 171819ff 7b8085ff 90969bff a3a8adff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f2f3f5ff e5e7e6ff bdc2c4ff ffffff12 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e2e5e56b e2e4e3ff e7e8e8ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff bcbfc3ff 91979dff 81868cff 0f0f10ff 020202ff 474b56ff 858d9fff 858d9fff 858d9fff a2a7b5ff 9da2b2ff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858da0ff ffffffff ffffffff 8c93a4ff 858da0ff 858d9fff 858da0ff a66756ff 4a4f5aff 858d9fff 858da0ff 858d9fff 8f96a7ff b7bbc5ff 868ea1ff 858d9fff 858da0ff 484d58ff 020202ff 020202ff 82878dff 91979dff a3a7adff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff e9ebeaff e3e5e4ff caced0c4 ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f4f4f42f c2c7c9ff e2e4e3ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff c1c5c9ff 949a9fff 8a8f94ff 020202ff 080a0aff 666c7aff 838b9cff 838b9cff 838b9cff c0c4ccff ffffffff ecedf0ff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff ffffffff ffffffff 8a91a2ff 838b9cff 838b9cff 84899aff af5f42ff 666c7bff 838b9cff 838b9cff 838b9cff d5d7ddff ffffffff d8dbe0ff 838b9cff 838b9cff 828b9cff 666c7bff 080a0bff 020202ff 858b8fff 949a9fff a3a8adff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff e3e5e4ff c7caccff e9e9ec51 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b5babeff e0e2e0ff e7e8e9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff e9ebedff 969da1ff 93999dff 020202ff 050506ff 808799ff 818899ff 808899ff 818899ff 808799ff 808799ff fdfdfdff ffffffff c7cad1ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff ffffffff ffffffff 878e9fff 818899ff 808799ff a66552ff af5f41ff 646a78ff 808799ff 818899ff 9095a5ff ffffffff ffffffff 818899ff 808799ff 818899ff 808899ff 818899ff 808799ff 050506ff 020202ff 90979bff 969da1ff b6bbbeff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f5f6f6ff e0e2e0ff bbbfc3ff ffffff02 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 e9ecec50 c5c9cbff e0e3e2ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff 989ea3ff 989ea3ff 0f0f10ff 020202ff 7d8495ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff bcbfc8ff ffffffff fdfdfdff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff ffffffff ffffffff 868d9cff 7e8596ff 7e8596ff ad5f43ff 763e29ff 666b79ff 7e8596ff 7e8596ff eaebeeff ffffffff bec1c9ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7d8495ff 020202ff 020202ff 989ea3ff 989ea3ff ecedefff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff e3e4e4ff dbdeddff e9ecec50 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 bcc0c4f0 dbdeddff eff1f2ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff a0a6aaff 9ba1a5ff 292a2cff 020202ff 798090ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 7c8393ff 7c8393ff 7c8393ff f2f2f4ff ffffffff cfd1d7ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff ffffffff ffffffff 838a99ff 7c8393ff 8f7373ff ae5e40ff 34180dff 727887ff 7b8293ff bec1c9ff ffffffff ffffffff 7f8696ff 7c8393ff 7b8293ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 797f90ff 020202ff 0d0f0fff 9ba1a5ff 9ca2a6ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f4f5f6ff dbdeddff bec2c5ff ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 e9ecec50 c7caccff e0e2e1ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff b1b5b8ff 9da3a6ff 404244ff 020202ff 757b8bff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 999da9ff ffffffff fdfdfdff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 9499a5ff 9499a5ff 7b8191ff 797f8fff a7614aff ae5e40ff 2c130aff 797f8fff 797f8fff f8f8f9ff ffffffff b7bac3ff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 767c8bff 020202ff 333536ff 9da3a6ff acb0b3ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff e1e3e3ff d6d8d7ff e3e6e95b ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 c0c3c7d9 d8dadaff ebecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff 9fa4a8ff 9fa4a8ff 050505ff 626875ff 767c8cff 757c8cff 767c8cff 767d8cff 767c8cff 767d8cff 767c8cff 767c8cff 767c8cff 767c8cff 767c8cff cbcdd3ff ffffffff dcdee2ff 767c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767d8cff 757c8cff 767d8cff ae5e40ff ae5e40ff 2c130aff 767d8cff c8cbd0ff ffffffff f2f2f4ff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 626875ff 020202ff 8d9195ff 9fa4a8ff eaecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f2f3f5ff d8dadaff bdc1c4f4 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 f3f3f32b bec2c4ff dadcdbff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff abafb3ff a1a6aaff 1f2021ff 4a4f59ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737988ff 737989ff 737988ff 858b99ff e0e1e4ff 8e939fff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff a3624dff ae5e3fff af5e3fff 241611ff 737989ff 7f8593ff d0d2d7ff 969ba5ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 4a4e59ff 0a0a0aff a1a6aaff a1a5aaff f3f4f5ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff dedfe0ff c5c9caff e4e7ea54 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 dee0e36c d1d3d3ff dfe0e0ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f0f1f3ff a3a8acff 92979bff 020202ff 6e7584ff 707686ff 707686ff 767c8aff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff ad5e40ff ae5d3fff ae5d3fff 3f3e46ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 767c8aff 707686ff 707686ff 6f7585ff 020202ff 616467ff a3a8acff dddfe1ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff e7e8e8ff d5d7d6ff cccfd2ae ffffff00 ffffff00 │ │ -ffffff00 ffffff00 b9bdc1f7 d3d5d5ff f0f1f3ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff b0b4b7ff a4a9adff 060606ff 686e7bff 6d7382ff 6d7382ff a5a8b1ff ffffffff c4c6ccff 707684ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 91665fff ae5d3fff ae5d3fff ae5d3fff 595e6bff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff b5b8bfff ffffffff c1c4caff 6d7382ff 6d7382ff 686d7bff 050505ff a5aaaeff a5aaaeff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff d4d6d6ff babec1ff ffffff04 ffffff00 │ │ -ffffff00 f7f7f721 bcc0c2ff d6d9d8ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff edeef1ff a7abafff a6aaaeff 1b1d21ff 6c717eff 6c717dff 6c717eff c5c7cbff ffffffff ffffffff fafafbff a3a6aeff 6c717eff 6c717dff 6c717eff 6b717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff ab5e41ff ae5d3fff ae5d3fff ae5d3fff 575c67ff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717eff 6c717eff 6c717dff 6c717eff 6c717dff 91959eff e9eaecff ffffffff ffffffff e3e4e6ff 6c717dff 6b707eff 6c717eff 1e2022ff 85898cff a7abafff ecedf0ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff dcdedeff c1c5c6ff e2e2e561 ffffff00 │ │ -ffffff00 dbdddf71 c8cbcbff dcdedeff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f4ff dadcdfff a9adb0ff 212222ff 676c78ff 686e7aff 696e7aff 686e7aff 696e7aff 9fa3aaff f1f1f2ff ffffffff ffffffff dadcdfff 848992ff 686e7aff 686e7aff 686e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 726b72ff ae5c3fff ae5c3fff ae5d3fff 954e33ff 565b66ff 696e7aff 686e7aff 696e7aff 686e7aff 686e7aff 686e7aff 686e7aff 686e7aff 7e838cff cacbd0ff ffffffff ffffffff f4f5f5ff b6b9beff 696e7aff 686e7aff 696e7aff 686e7aff 656b77ff 020202ff a9adb0ff babec1ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff dfe1e2ff cfd1d0ff d4d8da89 ffffff00 │ │ -ffffff00 c7cacdc0 cdcfd0ff e8eaecff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff abafb2ff a8acafff 0a0b0dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff babdc2ff f6f6f7ff ffffffff ffffffff aaadb3ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff ac5c40ff ae5c3fff ae5c3fff ae5c3fff 572b1bff 5d626dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 92969eff ffffffff ffffffff fcfcfcff c4c6caff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 0c0d0fff a6aaadff abafb2ff eff0f2ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff cdcfd0ff b3b7bbff ffffff00 │ │ -ffffff00 b4b8bbff cccfcfff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f0f1f4ff f1f2f4ff ebecefff aeb2b5ff a5a8abff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff d4d5d8ff fdfdfdff 696e79ff 626874ff 626874ff 626874ff 636974ff 626874ff 636974ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 636772ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff f2f2f3ff e4e4e7ff 646a75ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 707376ff aeb2b5ff e8eaedff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff cfd1d0ff b9bdbfff ffffff0b │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 eef1f149 e3e5e776 e3e5e776 e0e4e77d d2d6dabb d2d5d7bd ccd1d5de ccd1d5de d1d3d7cd d2d6d7bb e0e2e68e e3e5e776 e3e5e776 eeeeee4c ffffff05 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ececef51 e2e4e67c ccd0d3f4 d9dbdeff dadddfff f0f1f1ff fffefeff fffefeff fffefeff fffefeff fffffeff fffefeff fffefeff fffefeff fffefeff fffefeff f2f2f2ff dcdfe1ff d9dcdeff cdd1d5ff e0e4e482 e9ecec5d ffffff10 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 efeff341 dcdfe191 d1d4d6ff dee0e2ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fefdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff e4e6e7ff d3d6d9ff d3d7dac7 eaeeee4a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff08 eef2f23d caced0f9 dde0e1ff fcfcfbff fcfcfbff fcfcfcff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fcfcfcff fcfcfcff fcfcfbff e2e4e6ff cbcfd1ff e7e7e96a f5f5f519 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 efefef50 c6caceff edeeefff fafafaff fafafaff fbfbfcff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfcfcff fafafaff fafafaff f4f5f5ff c7cccfff e0e1e38a ffffff11 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 f3ffff15 c3c8cbf7 ecedeeff f9f9f9ff f9f9f9ff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff f9f9f9ff f9f9f9ff f3f4f4ff c2c7caff f7f7f720 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff02 caced0d0 e3e5e6ff f7f8f7ff f7f7f7ff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff f7f8f7ff f7f8f7ff e9ebecff c5c9cde2 ffffff02 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 bdc3c7f9 f2f3f2ff f6f6f5ff fafafaff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fafbfcff f6f6f5ff f4f5f5ff bdc2c6fc f0f3f342 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d2d7d9b7 d5d7dafc f3f4f3ff f6f6f5ff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff f8f9f9ff f3f4f4ff e4e6e7ff caced1cb 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 cbcfd3c3 e4e5e6ff f2f2f1ff f8f9f9ff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fafbfcff dcdedfff 9ea3a8ff 9ea3a8ff 8a8f96ff 848a91ff 82898fff 82898fff 82898fff 82898fff 838990ff 878d94ff 9ea3a7ff 9ea3a8ff b6babeff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff f8f9f9ff f2f2f1ff e5e6e7ff cbcfd1c4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d0d2d5b7 e0e2e4ff f0f1f0ff f8f9f9ff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff acb0b5ff 9ea3a7ff 848a90ff 848a91ff 848a90ff 848a91ff 848a90ff 848a91ff 575c63ff 393c40ff 393b3fff 484b50ff 83898fff 848a91ff 848a90ff 848a90ff 848a90ff 848a90ff 979ba1ff a9adb2ff f2f3f4ff fafbfcff fafbfbff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfbff f0f1f0ff e9eaeaff c6cbcdd6 ffffff06 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d3d6d9a7 e4e6e6ff eeefefff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff d9dbdeff a6abafff 868c93ff 868b93ff 868c93ff 6d7278ff 3a3c40ff 2e3134ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 17181bff 3a3c40ff 4c5055ff 868c93ff 868b93ff 868c93ff a1a5abff d8daddff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff eeefefff eeeeeeff c0c3c7f5 ffffff0b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d5d9dc99 e2e3e4ff ecededff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff dadcdfff a2a6acff 888e95ff 888e94ff 6e7378ff 3e4143ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2e3139ff 585d6bff 585d6bff 30343bff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 313235ff 686d72ff 888e94ff 888e94ff a2a6abff d8dadcff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff ecededff ecededff c6c9cdf6 ffffff08 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d7dbdd8d dadddeff ebecebff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff bdc0c4ff 8a9096ff 898f96ff 6d7277ff 2f3134ff 020202ff 020202ff 020202ff 2a2d33ff 4f545fff 626876ff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e96abff 8e97abff 8e96abff 8e97abff 656b7aff 4f545fff 2e3139ff 020202ff 020202ff 020202ff 111214ff 585c60ff 8a9096ff 898f96ff a3a8adff f8f9faff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff ebececff ebecebff cbced0c5 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 e4e6e87b cfd3d5ff e9ebe9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9faff f8f9fbff f8f9faff f8f9fbff dbdee0ff 9ba0a6ff 8c9298ff 71767aff 2e3134ff 020202ff 020202ff 22242aff 535864ff 8b94a7ff 8b94a8ff 8b94a7ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff bec3ceff bec3ceff 8e96aaff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a7ff 8b94a8ff 545966ff 212429ff 020202ff 020202ff 1b1d1eff 70757aff 8c9298ff 8c9298ff dcdee0ff f8f9faff f8f9fbff f8f9faff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff e9ebe9ff dcdedfff dbdddf81 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 f7f7f720 c6c9ccff e7e9e8ff f3f5f5ff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff dddfe2ff 8e949aff 8e949bff 5a5e63ff 020202ff 020202ff 282b31ff 6c7382ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff ffffffff ffffffff 9097aaff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 7f7884ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 717887ff 2b2d35ff 020202ff 020202ff 323539ff 8d9399ff 8e949bff c5c9ccff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff e8e9e9ff cccfd1ff e8e8ea57 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 ffffff0a b8bcc1ff e5e7e6ff ebecedff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff c0c4c8ff 90969bff 868b91ff 2c2e30ff 020202ff 1b1d21ff 656b79ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff ffffffff ffffffff 8e96a7ff 878fa2ff 878fa2ff 878fa2ff 8f858fff 42393cff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 656b79ff 1b1d21ff 020202ff 171819ff 7b8085ff 90969bff a3a8adff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f2f3f5ff e5e7e6ff bdc2c4ff ffffff12 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 e2e5e56b e2e4e3ff e7e8e8ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff bcbfc3ff 91979dff 81868cff 0f0f10ff 020202ff 474b56ff 858d9fff 858d9fff 858d9fff a2a7b5ff 9da2b2ff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858da0ff ffffffff ffffffff 8c93a4ff 858da0ff 858d9fff 858da0ff a66756ff 4a4f5aff 858d9fff 858da0ff 858d9fff 8f96a7ff b7bbc5ff 868ea1ff 858d9fff 858da0ff 484d58ff 020202ff 020202ff 82878dff 91979dff a3a7adff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff e9ebeaff e3e5e4ff caced0c4 ffffff01 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 f4f4f42f c2c7c9ff e2e4e3ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff c1c5c9ff 949a9fff 8a8f94ff 020202ff 080a0aff 666c7aff 838b9cff 838b9cff 838b9cff c0c4ccff ffffffff ecedf0ff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff ffffffff ffffffff 8a91a2ff 838b9cff 838b9cff 84899aff af5f42ff 666c7bff 838b9cff 838b9cff 838b9cff d5d7ddff ffffffff d8dbe0ff 838b9cff 838b9cff 828b9cff 666c7bff 080a0bff 020202ff 858b8fff 949a9fff a3a8adff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff e3e5e4ff c7caccff e9e9ec51 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 b5babeff e0e2e0ff e7e8e9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff e9ebedff 969da1ff 93999dff 020202ff 050506ff 808799ff 818899ff 808899ff 818899ff 808799ff 808799ff fdfdfdff ffffffff c7cad1ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff ffffffff ffffffff 878e9fff 818899ff 808799ff a66552ff af5f41ff 646a78ff 808799ff 818899ff 9095a5ff ffffffff ffffffff 818899ff 808799ff 818899ff 808899ff 818899ff 808799ff 050506ff 020202ff 90979bff 969da1ff b6bbbeff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f5f6f6ff e0e2e0ff bbbfc3ff ffffff02 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 e9ecec50 c5c9cbff e0e3e2ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff 989ea3ff 989ea3ff 0f0f10ff 020202ff 7d8495ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff bcbfc8ff ffffffff fdfdfdff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff ffffffff ffffffff 868d9cff 7e8596ff 7e8596ff ad5f43ff 763e29ff 666b79ff 7e8596ff 7e8596ff eaebeeff ffffffff bec1c9ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7d8495ff 020202ff 020202ff 989ea3ff 989ea3ff ecedefff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff e3e4e4ff dbdeddff e9ecec50 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 bcc0c4f0 dbdeddff eff1f2ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff a0a6aaff 9ba1a5ff 292a2cff 020202ff 798090ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 7c8393ff 7c8393ff 7c8393ff f2f2f4ff ffffffff cfd1d7ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff ffffffff ffffffff 838a99ff 7c8393ff 8f7373ff ae5e40ff 34180dff 727887ff 7b8293ff bec1c9ff ffffffff ffffffff 7f8696ff 7c8393ff 7b8293ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 797f90ff 020202ff 0d0f0fff 9ba1a5ff 9ca2a6ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f4f5f6ff dbdeddff bec2c5ff 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 e9ecec50 c7caccff e0e2e1ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff b1b5b8ff 9da3a6ff 404244ff 020202ff 757b8bff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 999da9ff ffffffff fdfdfdff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 9499a5ff 9499a5ff 7b8191ff 797f8fff a7614aff ae5e40ff 2c130aff 797f8fff 797f8fff f8f8f9ff ffffffff b7bac3ff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 767c8bff 020202ff 333536ff 9da3a6ff acb0b3ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff e1e3e3ff d6d8d7ff e3e6e95b 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 c0c3c7d9 d8dadaff ebecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff 9fa4a8ff 9fa4a8ff 050505ff 626875ff 767c8cff 757c8cff 767c8cff 767d8cff 767c8cff 767d8cff 767c8cff 767c8cff 767c8cff 767c8cff 767c8cff cbcdd3ff ffffffff dcdee2ff 767c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767d8cff 757c8cff 767d8cff ae5e40ff ae5e40ff 2c130aff 767d8cff c8cbd0ff ffffffff f2f2f4ff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 626875ff 020202ff 8d9195ff 9fa4a8ff eaecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f2f3f5ff d8dadaff bdc1c4f4 00000000 00000000 00000000 │ │ +00000000 00000000 f3f3f32b bec2c4ff dadcdbff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff abafb3ff a1a6aaff 1f2021ff 4a4f59ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737988ff 737989ff 737988ff 858b99ff e0e1e4ff 8e939fff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff a3624dff ae5e3fff af5e3fff 241611ff 737989ff 7f8593ff d0d2d7ff 969ba5ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 4a4e59ff 0a0a0aff a1a6aaff a1a5aaff f3f4f5ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff dedfe0ff c5c9caff e4e7ea54 00000000 00000000 │ │ +00000000 00000000 dee0e36c d1d3d3ff dfe0e0ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f0f1f3ff a3a8acff 92979bff 020202ff 6e7584ff 707686ff 707686ff 767c8aff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff ad5e40ff ae5d3fff ae5d3fff 3f3e46ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 767c8aff 707686ff 707686ff 6f7585ff 020202ff 616467ff a3a8acff dddfe1ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff e7e8e8ff d5d7d6ff cccfd2ae 00000000 00000000 │ │ +00000000 00000000 b9bdc1f7 d3d5d5ff f0f1f3ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff b0b4b7ff a4a9adff 060606ff 686e7bff 6d7382ff 6d7382ff a5a8b1ff ffffffff c4c6ccff 707684ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 91665fff ae5d3fff ae5d3fff ae5d3fff 595e6bff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff b5b8bfff ffffffff c1c4caff 6d7382ff 6d7382ff 686d7bff 050505ff a5aaaeff a5aaaeff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff d4d6d6ff babec1ff ffffff04 00000000 │ │ +00000000 f7f7f721 bcc0c2ff d6d9d8ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff edeef1ff a7abafff a6aaaeff 1b1d21ff 6c717eff 6c717dff 6c717eff c5c7cbff ffffffff ffffffff fafafbff a3a6aeff 6c717eff 6c717dff 6c717eff 6b717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff ab5e41ff ae5d3fff ae5d3fff ae5d3fff 575c67ff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717eff 6c717eff 6c717dff 6c717eff 6c717dff 91959eff e9eaecff ffffffff ffffffff e3e4e6ff 6c717dff 6b707eff 6c717eff 1e2022ff 85898cff a7abafff ecedf0ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff dcdedeff c1c5c6ff e2e2e561 00000000 │ │ +00000000 dbdddf71 c8cbcbff dcdedeff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f4ff dadcdfff a9adb0ff 212222ff 676c78ff 686e7aff 696e7aff 686e7aff 696e7aff 9fa3aaff f1f1f2ff ffffffff ffffffff dadcdfff 848992ff 686e7aff 686e7aff 686e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 726b72ff ae5c3fff ae5c3fff ae5d3fff 954e33ff 565b66ff 696e7aff 686e7aff 696e7aff 686e7aff 686e7aff 686e7aff 686e7aff 686e7aff 7e838cff cacbd0ff ffffffff ffffffff f4f5f5ff b6b9beff 696e7aff 686e7aff 696e7aff 686e7aff 656b77ff 020202ff a9adb0ff babec1ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff dfe1e2ff cfd1d0ff d4d8da89 00000000 │ │ +00000000 c7cacdc0 cdcfd0ff e8eaecff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff abafb2ff a8acafff 0a0b0dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff babdc2ff f6f6f7ff ffffffff ffffffff aaadb3ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff ac5c40ff ae5c3fff ae5c3fff ae5c3fff 572b1bff 5d626dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 92969eff ffffffff ffffffff fcfcfcff c4c6caff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 0c0d0fff a6aaadff abafb2ff eff0f2ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff cdcfd0ff b3b7bbff 00000000 │ │ +00000000 b4b8bbff cccfcfff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f0f1f4ff f1f2f4ff ebecefff aeb2b5ff a5a8abff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff d4d5d8ff fdfdfdff 696e79ff 626874ff 626874ff 626874ff 636974ff 626874ff 636974ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 636772ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff f2f2f3ff e4e4e7ff 646a75ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 707376ff aeb2b5ff e8eaedff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff cfd1d0ff b9bdbfff ffffff0b │ │ ffffff09 b8bcbfff d2d4d5ff f0f1f3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff f0f1f3ff e7e9ebff b1b5b7ff 333536ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6570ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 915f52ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 5f6671ff 5f6571ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 030303ff b1b5b7ff ced0d3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff dadbdcff b9bdc0ff e5e8e857 │ │ e1e4e45f b8bcbeff d8dadbff eff0f2ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff eff0f2ff cbcfd1ff b2b6b8ff 080a0bff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c616eff 5c606dff 5c616eff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5e616cff ae5c3fff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 220d07ff 5c606dff 5c606dff 5c606dff 5c616eff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 07070aff adb0b3ff b2b6b8ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff d8dadaff c6c8c9ff d7dbdd79 │ │ d6d8dc7b c1c4c6ff d7d9daff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff b4b8baff aeb2b4ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 5e5e67ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 353034ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff a9adafff b4b8baff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff e1e3e5ff c6c9caff d7d9dd79 │ │ d6d8da7b c6c9c9ff dadcdeff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff b7bbbdff aaaeb0ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 555a66ff 565b66ff 555a66ff 555b66ff 555a66ff 555b66ff 0d0f12ff f3eeedff f5efedff f5efedff f5efedff b15d30ff ae5c3eff 464b54ff 555a66ff 555b66ff 565a66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff abafb1ff b7bbbdff e9ebeeff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff ecedf1ff c5c9c9ff c1c4c6b9 │ │ d3d5d992 c4c7c8ff e1e3e5ff edeef2ff edeff2ff edeef2ff edeff2ff edeef2ff e9ebeeff b8bcbeff b0b4b6ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 545862ff 535861ff 545862ff 535861ff 535862ff 535861ff 333435ff f6f7f9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff b4663dff 464a53ff 535862ff 535861ff 535862ff 535861ff 545862ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 7b7d80ff b8bcbeff e5e7eaff edeef2ff edeff2ff edeef2ff edeff2ff edeef2ff edeff2ff c3c7c8ff b4b8bcef │ │ c1c3c7bc c2c5c6ff eaecefff eceef1ff edeef1ff eceef1ff edeef1ff eceef1ff e6e8ebff bbbec0ff aeb1b3ff 0d0f10ff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565fff 51565eff 51565fff 51565eff 51565eff 444850ff eff0f1ff f5f6f8ff f5f6f7ff f5f6f8ff f5f6f7ff f5f6f8ff f5f6f7ff f5f6f8ff 404247ff 51565fff 51565eff 51565fff 51565eff 51565fff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 17181bff 656768ff bbbec0ff e5e7eaff eceef1ff edeef1ff eceef1ff edeef1ff eceef1ff edeef1ff c2c4c6ff adb2b6ff │ │ bec2c4bd c0c3c4ff ecedf1ff ecedf1ff ecedf1ff ebedf1ff ecedf1ff ebedf1ff e5e7eaff bdc1c2ff a3a6a7ff 020202ff 020202ff 1c1e21ff c5c6caff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff 4d515aff 4d515aff 4d515aff 4d515aff 4d515bff 4d515aff 4d515bff 4d515aff 4d515bff 4d515aff 4d515bff 3b3c3fff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff 353636ff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff ced0d1ff ced0d1ff ced0d1ff ced0d1ff ced0d1ff cecfd1ff ced0d1ff cecfd1ff 1e2125ff 020202ff 020202ff 0a0a0aff bdc1c2ff e5e7eaff ebedf1ff ecedf1ff ebedf1ff ecedf1ff ecedf1ff ecedf1ff c0c3c4ff acb0b5ff │ │ @@ -47,39 +47,39 @@ │ │ bcc0c4bd bdc0c1ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff e4e7e9ff c1c4c5ff a9acadff 020202ff 020202ff 020202ff 828282ff 8a8a8aff 8a8a8aff 8a8a8aff a3a6a8ff a3a6a8ff a3a6a8ff a3a6a8ff 474a53ff 474a53ff 474a53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 393b3cff e6e9edff e7eaeeff e6e9edff e7eaeeff e6e9edff e7eaeeff e6e9edff e7eaeeff 333435ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474a53ff 474a53ff 474a53ff a4a6a9ff a4a6a8ff a4a6a9ff a4a6a8ff 8b8b8bff 8b8b8bff 8b8b8bff 8b8b8bff 020202ff 020202ff 020202ff 060606ff c1c4c5ff e4e7eaff eaecf0ff ebedf0ff eaecf0ff ebedf0ff eaecf0ff ebedf0ff bdc0c1ff aaaeb2ff │ │ bec0c4bd bbbec0ff e7eaeeff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff e5e8ebff c3c6c7ff b6b9baff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 222428ff 3b3f46ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 42454bff e2e6eaff e2e6eaff e2e6eaff e3e6ebff e2e6eaff e3e6ebff e2e6eaff e3e6ebff 373a3fff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 3b3f46ff 292b30ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b5c5dff c3c6c7ff e4e7eaff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff bbbec0ff a9adb1ff │ │ cfd2d48f babdbfff dcdfe2ff e9ecf0ff e9ecf0ff e9ecf0ff e9ecf0ff e9ecf0ff e6e9ecff c5c9c9ff b9bbbbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2b2d31ff 303339ff 42454bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 242628ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 656769ff 3d4046ff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 373a40ff 2b2d32ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 8c8e8fff c5c9c9ff e4e7eaff e9ecefff e9ecf0ff e9ecefff e9ecf0ff e9ecefff e9ecf0ff b9bdbfff acb0b5f2 │ │ d3d6d87b b8bcbeff d3d6d9ff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff c7cacbff babdbdff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0c0d0fff 2d3033ff 2e3035ff 3c4046ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3e4148ff 3d4046ff 242629ff a4a7acff dadee3ff dadee4ff a5a7acff 4e5052ff 393c42ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3e4047ff 2e3135ff 2e3135ff 161719ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff bbbdbeff c7cacbff e6e8ebff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff e6e9ecff b8bcbeff bec0c4bb │ │ d1d3d67b b4b8bbff caced1ff e8ebefff e8ebefff e8ebefff e8ecefff e8ebefff e8ecefff caccccff c4c6c6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0a0b0dff 2b2d32ff 2e3137ff 303237ff 2e3137ff 2e3135ff 020203ff 010202ff 2d3035ff 303237ff 2e3137ff 303237ff 2b2d32ff 121415ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff bec0c0ff caccccff e8ecefff e8ebefff e8ecefff e8ebefff e8ecefff e8ebefff d7daddff b7babdff d3d5d779 │ │ d6dbdd70 abafb3ff c9cdd0ff e7eaeeff e8ebefff e7eaeeff e8ebefff e7eaeeff e8ebefff d1d4d4ff cccfcfff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff c7c9caff cccfceff e8ebefff e7eaeeff e8ebefff e7eaeeff e8ebefff e7eaeeff c9ccd0ff b3b7b9ff d3d5d779 │ │ f4f4f418 a8acafff bdc0c3ff e7eaedff e7eaeeff e7eaedff e7eaeeff e7eaedff e7eaeeff e3e7e9ff ced0d0ff 0f1010ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ced0d0ff dadcdeff e7eaeeff e7eaedff e7eaeeff e7eaedff e7eaeeff e7eaedff c8cbcdff a9aeb1ff d9d9dd72 │ │ -ffffff00 a5a9aeff b1b5b8ff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e3e7eaff d1d3d2ff c8cacaff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 777877ff d1d3d2ff e3e7eaff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff babec1ff a7abafff ffffff00 │ │ -ffffff00 babdc1bc b0b4b7ff dde0e5ff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff d3d5d5ff cfd1d0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cccfcdff d3d5d5ff e5e8ecff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff b0b4b6ff a2a6abff ffffff00 │ │ -ffffff00 d4d6db71 adb1b4ff c4c7caff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff dde0e2ff d5d7d6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff d4d6d6ff d6d8d6ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff d1d4d9ff aeb2b5ff cfd1d58b ffffff00 │ │ -ffffff00 eaeaea3d a2a7acff b8bcbfff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e4e7eaff d7d9d9ff caccccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b0b2b2ff d7d9d9ff e3e7e9ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff c0c4c8ff a7abafff d6d8da6f ffffff00 │ │ -ffffff00 ffffff00 9ea4a8ff aaaeb1ff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff dadbdbff dadcdbff 080a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 626c79ff 919fb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 060606ff dadcdbff dadbdbff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff acb1b5ff a1a5aaff ffffff0d ffffff00 │ │ -ffffff00 ffffff00 cfd1d380 a8adb0ff c2c6caff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e6e9ff dbdeddff b6b8b8ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7c889bff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7d7d7dff dbdeddff e1e3e6ff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff d1d4d8ff a9adb0ff b6babec4 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ebf0f034 9ea4a8ff aeb2b6ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff dee0e0ff dedfdfff 141414ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 758397ff adc1deff adc1deff a3b7d3ff a8bbd8ff adc1deff adc1deff acc0ddff a0b2cdff adc1deff adc1deff adc1deff 90a1baff adc1deff adc1deff adc1deff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0f0f0fff dedfdfff dee0e0ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff b6bbbeff a1a5aaff dde0e35b ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 acb0b5d7 a4a9aeff d1d5daff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e2e5eaff e0e3e1ff d5d7d6ff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 707f95ff a4b9daff 92a5c2ff 0e1217ff 06070bff a4b9daff a0b5d4ff 000000ff 000000ff 9eb2d1ff a4b9daff 11151bff 181d25ff 899bb6ff a4b9daff a4b9daff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a0a1a0ff e0e3e1ff e1e4e7ff e3e6eaff e2e5eaff e3e6eaff e2e5eaff e3e6eaff e2e5eaff dfe3e7ff a4a9adff 9ba1a6ff ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 e2e2e250 9fa4a8ff b0b5b9ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e4e5ff e3e4e4ff 747474ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 6a7a92ff 9cb2d5ff 7f92afff 303846ff 1d222cff 9cb2d5ff 94aacbff 010202ff 58647bff 95aaccff 9cb2d5ff 000000ff 889bbaff 627187ff 9cb2d5ff 9cb2d5ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 3f403fff e3e4e4ff e2e4e4ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff b5babeff a2a7abff d4d6d971 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 a2a6abed a2a6abff d4d7dcff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e5e7e6ff e5e7e6ff 1d1e1dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 65748fff 94aad0ff 788babff 222834ff 161b25ff 94aad0ff 8ca1c6ff 010202ff 434f61ff 8da2c7ff 94aad0ff 000000ff 7d90b1ff 5f6f8aff 94aad0ff 94aad0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 141414ff e5e7e6ff e5e7e6ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff dfe2e7ff a2a6abff 9a9fa4ff f4f4f418 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 e0e4e74b 9ca2a6ff acb1b5ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e1e5e8ff e8e9e8ff e8e9e9ff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5f6f8cff 8da3ccff 8094bbff 060a0fff 131721ff 8da3ccff 8aa0c9ff 131822ff 000102ff 889dc5ff 8da3ccff 303949ff 000000ff 7a8db2ff 8da3ccff 8da3ccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0d0d0dff d5d7d6ff e8e9e9ff e4e7e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff aeb3b7ff 9ea4a8ff d2d4d483 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 a2a7acea 9ea4a7ff caced2ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e6e8e9ff ebecebff e2e3e2ff 0d0d0dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b6a88ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 959696ff ebecebff e7e9eaff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff d8dce0ff 9ea4a7ff 989da2ff ffffff09 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e3e3e740 989da2ff 9fa4a8ff dfe2e7ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff e9ebecff ecededff d9dadaff 0a0a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 576584ff 8095c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 949494ff ecededff e9ebecff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff a7adb0ff 9ba0a5ff e5e9e944 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b8bcbfaf 9ba1a5ff a6acafff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff ebecedff eff0f0ff ebececff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff b9b9b9ff eff0f0ff ebecedff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff adb3b7ff 9ba1a5ff 989da3f7 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff03 94999fff 999fa4ff c8cdd1ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff edefefff f1f1f1ff eeeeedff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ecedecff f1f1f1ff eeeff0ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff 999fa4ff 949a9fff f1f1f125 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e7e7e740 94999eff 989ea3ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff eaeceeff f3f4f3ff eff0f0ff 686968ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5d5d5dff e8e8e9ff f3f4f3ff eef0f1ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 999fa4ff 969ba0ff e2e6e647 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e0e0e051 959ba0ff 989fa3ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff e1e4e8ff f6f6f6ff f6f6f5ff dbdbdbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cbcbcbff f6f6f6ff f6f6f5ff e3e7eaff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff 9fa5a9ff 969ca1ff b7babfb2 ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 b3b8bcb6 949a9fff 979da2ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e0e3e8ff f0f2f2ff f7f8f7ff f6f6f5ff bfbebeff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a2a2a1ff f0f0efff f7f8f7ff f1f3f3ff e1e5e8ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff a6acb0ff 949a9fff 91979cff ffffff0a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff06 959a9fff 92989dff 9ea4a8ff dce0e5ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e3e7eaff f7f7f7ff f9f9f9ff f8f8f8ff b6b6b6ff 444444ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b4b4b4ff f5f5f5ff f9f9f9ff f9f9f9ff e6e9ecff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff acb1b7ff 92989dff 90969cff ffffff0a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff09 8f959bff 90969cff 93999fff d9dde3ff dce0e6ff dce0e5ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff e8eaeeff f6f7f8ff fcfbfbff fcfbfbff e8e8e7ff a8a7a7ff 80807fff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 727272ff a7a7a7ff dededdff fcfbfbff fcfbfbff fcfbfbff e9ebeeff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e5ff dce0e6ff dbdee4ff aeb3b9ff 90969cff 8f959bff ffffff08 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff06 989da2fe 8f959bff 8f959bff d8dce1ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dce0e5ff e3e6eaff edeff1ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfcff aeaeadff 989797ff 989897ff 989797ff 989897ff 989797ff 989897ff 989797ff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff f1f2f4ff e6e9ecff dce0e5ff dcdfe5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff d8dce1ff a0a5abff 8f959bff 8f949aff ffffff05 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 b5b8bcbe 8e949aff 8e949bff bbc0c5ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff e1e5e9ff eff1f2ff f0f1f4ff fefefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fefefeff f2f3f5ff eff1f3ff e2e5e9ff dcdfe5ff dcdfe5ff dcdfe5ff dcdfe5ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff d3d7dcff 8e949bff 8e949bff 92979cf8 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 bec2c496 8d9399ff 8d9399ff b5babfff d7dbe0ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff b6bbc0ff 8d9399ff 8d9399ff bdc0c49b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d3d5d78b 92969cf4 8b9197ff 8b9097ff c6cad0ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff d1d5dbff 8c9298ff 8b9197ff 8e949af9 bcbfc29f ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 aaadb0c8 8a9096ff 898f96ff a6abb1ff d3d7dcff dadee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dadee3ff d4d8ddff b3b7bdff 898f96ff 8a9096ff 9ba0a5ea ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 caced081 92969cf3 898e94ff 888d94ff acb1b7ff d2d6dcff dadee3ff dadee3ff dadee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d4d8deff b0b5bbff 888d94ff 888d94ff 90949af6 bcbec1a4 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b9bcbea1 8e9298f9 868c93ff 868c93ff 868c93ff d0d4daff d8dce2ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d9dde3ff d4d8deff 969ca2ff 868c93ff 868c93ff 8b9096fc acafb3bf ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 c2c4c88f 8b8f95ff 858a91ff 848a91ff 848a91ff 8c9299ff d3d7ddff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d8dce2ff 9ca2a8ff 848a91ff 848a91ff 848a90ff 8b8f95ff afb1b5ba ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff09 f2f2f54c 8f9398ff 898d93ff 848a90ff 83898fff 848a90ff 8a9096ff 8a9097ff b2b7bdff d6dae0ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff c0c4caff 8b9197ff 8a9097ff 858b91ff 83898fff 83898fff 878c93ff 898d94ff d9d9dd8e ffffff0b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 989ca2ff 888c92ff 878c92ff 83898fff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 82898fff 868b92ff 888c92ff 91959bff ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 9ca0a6ff 888c92ff 878c91ff 868b91ff 868b91ff 868b91ff 868b91ff 878c91ff 878c91ff 9b9fa5ff ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ +00000000 a5a9aeff b1b5b8ff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e3e7eaff d1d3d2ff c8cacaff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 777877ff d1d3d2ff e3e7eaff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff babec1ff a7abafff 00000000 │ │ +00000000 babdc1bc b0b4b7ff dde0e5ff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff d3d5d5ff cfd1d0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cccfcdff d3d5d5ff e5e8ecff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff b0b4b6ff a2a6abff 00000000 │ │ +00000000 d4d6db71 adb1b4ff c4c7caff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff dde0e2ff d5d7d6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff d4d6d6ff d6d8d6ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff d1d4d9ff aeb2b5ff cfd1d58b 00000000 │ │ +00000000 eaeaea3d a2a7acff b8bcbfff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e4e7eaff d7d9d9ff caccccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b0b2b2ff d7d9d9ff e3e7e9ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff c0c4c8ff a7abafff d6d8da6f 00000000 │ │ +00000000 00000000 9ea4a8ff aaaeb1ff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff dadbdbff dadcdbff 080a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 626c79ff 919fb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 060606ff dadcdbff dadbdbff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff acb1b5ff a1a5aaff ffffff0d 00000000 │ │ +00000000 00000000 cfd1d380 a8adb0ff c2c6caff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e6e9ff dbdeddff b6b8b8ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7c889bff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7d7d7dff dbdeddff e1e3e6ff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff d1d4d8ff a9adb0ff b6babec4 00000000 00000000 │ │ +00000000 00000000 ebf0f034 9ea4a8ff aeb2b6ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff dee0e0ff dedfdfff 141414ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 758397ff adc1deff adc1deff a3b7d3ff a8bbd8ff adc1deff adc1deff acc0ddff a0b2cdff adc1deff adc1deff adc1deff 90a1baff adc1deff adc1deff adc1deff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0f0f0fff dedfdfff dee0e0ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff b6bbbeff a1a5aaff dde0e35b 00000000 00000000 │ │ +00000000 00000000 00000000 acb0b5d7 a4a9aeff d1d5daff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e2e5eaff e0e3e1ff d5d7d6ff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 707f95ff a4b9daff 92a5c2ff 0e1217ff 06070bff a4b9daff a0b5d4ff 000000ff 000000ff 9eb2d1ff a4b9daff 11151bff 181d25ff 899bb6ff a4b9daff a4b9daff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a0a1a0ff e0e3e1ff e1e4e7ff e3e6eaff e2e5eaff e3e6eaff e2e5eaff e3e6eaff e2e5eaff dfe3e7ff a4a9adff 9ba1a6ff 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 e2e2e250 9fa4a8ff b0b5b9ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e4e5ff e3e4e4ff 747474ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 6a7a92ff 9cb2d5ff 7f92afff 303846ff 1d222cff 9cb2d5ff 94aacbff 010202ff 58647bff 95aaccff 9cb2d5ff 000000ff 889bbaff 627187ff 9cb2d5ff 9cb2d5ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 3f403fff e3e4e4ff e2e4e4ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff b5babeff a2a7abff d4d6d971 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 a2a6abed a2a6abff d4d7dcff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e5e7e6ff e5e7e6ff 1d1e1dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 65748fff 94aad0ff 788babff 222834ff 161b25ff 94aad0ff 8ca1c6ff 010202ff 434f61ff 8da2c7ff 94aad0ff 000000ff 7d90b1ff 5f6f8aff 94aad0ff 94aad0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 141414ff e5e7e6ff e5e7e6ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff dfe2e7ff a2a6abff 9a9fa4ff f4f4f418 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 e0e4e74b 9ca2a6ff acb1b5ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e1e5e8ff e8e9e8ff e8e9e9ff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5f6f8cff 8da3ccff 8094bbff 060a0fff 131721ff 8da3ccff 8aa0c9ff 131822ff 000102ff 889dc5ff 8da3ccff 303949ff 000000ff 7a8db2ff 8da3ccff 8da3ccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0d0d0dff d5d7d6ff e8e9e9ff e4e7e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff aeb3b7ff 9ea4a8ff d2d4d483 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 a2a7acea 9ea4a7ff caced2ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e6e8e9ff ebecebff e2e3e2ff 0d0d0dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b6a88ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 959696ff ebecebff e7e9eaff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff d8dce0ff 9ea4a7ff 989da2ff ffffff09 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 e3e3e740 989da2ff 9fa4a8ff dfe2e7ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff e9ebecff ecededff d9dadaff 0a0a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 576584ff 8095c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 949494ff ecededff e9ebecff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff a7adb0ff 9ba0a5ff e5e9e944 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 b8bcbfaf 9ba1a5ff a6acafff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff ebecedff eff0f0ff ebececff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff b9b9b9ff eff0f0ff ebecedff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff adb3b7ff 9ba1a5ff 989da3f7 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 ffffff03 94999fff 999fa4ff c8cdd1ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff edefefff f1f1f1ff eeeeedff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ecedecff f1f1f1ff eeeff0ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff 999fa4ff 949a9fff f1f1f125 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 e7e7e740 94999eff 989ea3ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff eaeceeff f3f4f3ff eff0f0ff 686968ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5d5d5dff e8e8e9ff f3f4f3ff eef0f1ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 999fa4ff 969ba0ff e2e6e647 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 e0e0e051 959ba0ff 989fa3ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff e1e4e8ff f6f6f6ff f6f6f5ff dbdbdbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cbcbcbff f6f6f6ff f6f6f5ff e3e7eaff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff 9fa5a9ff 969ca1ff b7babfb2 ffffff01 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 b3b8bcb6 949a9fff 979da2ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e0e3e8ff f0f2f2ff f7f8f7ff f6f6f5ff bfbebeff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a2a2a1ff f0f0efff f7f8f7ff f1f3f3ff e1e5e8ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff a6acb0ff 949a9fff 91979cff ffffff0a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff06 959a9fff 92989dff 9ea4a8ff dce0e5ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e3e7eaff f7f7f7ff f9f9f9ff f8f8f8ff b6b6b6ff 444444ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b4b4b4ff f5f5f5ff f9f9f9ff f9f9f9ff e6e9ecff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff acb1b7ff 92989dff 90969cff ffffff0a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff09 8f959bff 90969cff 93999fff d9dde3ff dce0e6ff dce0e5ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff e8eaeeff f6f7f8ff fcfbfbff fcfbfbff e8e8e7ff a8a7a7ff 80807fff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 727272ff a7a7a7ff dededdff fcfbfbff fcfbfbff fcfbfbff e9ebeeff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e5ff dce0e6ff dbdee4ff aeb3b9ff 90969cff 8f959bff ffffff08 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff06 989da2fe 8f959bff 8f959bff d8dce1ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dce0e5ff e3e6eaff edeff1ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfcff aeaeadff 989797ff 989897ff 989797ff 989897ff 989797ff 989897ff 989797ff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff f1f2f4ff e6e9ecff dce0e5ff dcdfe5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff d8dce1ff a0a5abff 8f959bff 8f949aff ffffff05 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 b5b8bcbe 8e949aff 8e949bff bbc0c5ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff e1e5e9ff eff1f2ff f0f1f4ff fefefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fefefeff f2f3f5ff eff1f3ff e2e5e9ff dcdfe5ff dcdfe5ff dcdfe5ff dcdfe5ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff d3d7dcff 8e949bff 8e949bff 92979cf8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 bec2c496 8d9399ff 8d9399ff b5babfff d7dbe0ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff b6bbc0ff 8d9399ff 8d9399ff bdc0c49b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d3d5d78b 92969cf4 8b9197ff 8b9097ff c6cad0ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff d1d5dbff 8c9298ff 8b9197ff 8e949af9 bcbfc29f 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 aaadb0c8 8a9096ff 898f96ff a6abb1ff d3d7dcff dadee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dadee3ff d4d8ddff b3b7bdff 898f96ff 8a9096ff 9ba0a5ea 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 caced081 92969cf3 898e94ff 888d94ff acb1b7ff d2d6dcff dadee3ff dadee3ff dadee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d4d8deff b0b5bbff 888d94ff 888d94ff 90949af6 bcbec1a4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 b9bcbea1 8e9298f9 868c93ff 868c93ff 868c93ff d0d4daff d8dce2ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d9dde3ff d4d8deff 969ca2ff 868c93ff 868c93ff 8b9096fc acafb3bf 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 c2c4c88f 8b8f95ff 858a91ff 848a91ff 848a91ff 8c9299ff d3d7ddff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d8dce2ff 9ca2a8ff 848a91ff 848a91ff 848a90ff 8b8f95ff afb1b5ba ffffff01 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff09 f2f2f54c 8f9398ff 898d93ff 848a90ff 83898fff 848a90ff 8a9096ff 8a9097ff b2b7bdff d6dae0ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff c0c4caff 8b9197ff 8a9097ff 858b91ff 83898fff 83898fff 878c93ff 898d94ff d9d9dd8e ffffff0b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 989ca2ff 888c92ff 878c92ff 83898fff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 82898fff 868b92ff 888c92ff 91959bff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 9ca0a6ff 888c92ff 878c91ff 868b91ff 868b91ff 868b91ff 868b91ff 878c91ff 878c91ff 9b9fa5ff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ } ├── res/drawable-hdpi-v4/ic_tab_results_icon_selected.png ├── sng │ │ @@ -1,108 +1,72 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 48; height: 48; bitdepth: 8; │ │ using color palette; │ │ } │ │ PLTE { │ │ ( 0, 0, 0) # rgb = (0x00,0x00,0x00) grey0 │ │ - (154,154,154) # rgb = (0x9a,0x9a,0x9a) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ - (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ - (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ - (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ - (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ - (202,202,202) # rgb = (0xca,0xca,0xca) │ │ - (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (206,206,206) # rgb = (0xce,0xce,0xce) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ - (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ (206,206,206) # rgb = (0xce,0xce,0xce) │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (153,153,153) # rgb = (0x99,0x99,0x99) grey60 │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (160,160,160) # rgb = (0xa0,0xa0,0xa0) │ │ (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ - (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ - (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ - (174,174,174) # rgb = (0xae,0xae,0xae) │ │ - (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ - (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ - (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ - (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ - (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ - (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ - (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ - (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ - (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ (142,142,142) # rgb = (0x8e,0x8e,0x8e) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (168,168,168) # rgb = (0xa8,0xa8,0xa8) grey66 │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ - (166,166,166) # rgb = (0xa6,0xa6,0xa6) grey65 │ │ - (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ - (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ - (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ - (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ - (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ @@ -124,22 +88,17 @@ │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (158,158,158) # rgb = (0x9e,0x9e,0x9e) grey62 │ │ (160,160,160) # rgb = (0xa0,0xa0,0xa0) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ - (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ - (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ - (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ @@ -152,21 +111,17 @@ │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (168,168,168) # rgb = (0xa8,0xa8,0xa8) grey66 │ │ - (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ @@ -179,64 +134,109 @@ │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (157,157,157) # rgb = (0x9d,0x9d,0x9d) │ │ (150,150,150) # rgb = (0x96,0x96,0x96) grey59 │ │ (149,149,149) # rgb = (0x95,0x95,0x95) │ │ (151,151,151) # rgb = (0x97,0x97,0x97) │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ - (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (154,154,154) # rgb = (0x9a,0x9a,0x9a) │ │ + (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ + (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ + (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ + (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ + (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ + (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ + (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ + (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ + (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ + (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ + (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ + (174,174,174) # rgb = (0xae,0xae,0xae) │ │ + (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ + (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ + (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ + (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ + (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ + (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ + (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ + (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ + (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ + (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ + (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ + (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ + (166,166,166) # rgb = (0xa6,0xa6,0xa6) grey65 │ │ + (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ + (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ + (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ + (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ + (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ + (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ + (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ + (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ + (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ + (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ + (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ + (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ + (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ + (168,168,168) # rgb = (0xa8,0xa8,0xa8) grey66 │ │ + (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ + (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ + (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ } │ │ tRNS { │ │ - 0 255 227 24 255 255 218 22 255 255 217 255 255 255 255 216 255 255 251 233 232 232 204 19 255 226 37 19 15 224 255 241 172 167 117 136 168 170 173 173 174 255 255 185 208 255 255 255 255 181 204 255 255 255 255 180 203 255 255 255 185 202 255 237 140 133 95 202 155 133 229 255 18 201 60 210 230 74 60 61 41 201 102 218 255 255 255 189 201 255 255 255 182 255 255 181 181 247 210 208 208 151 201 215 243 224 201 59 209 224 18 60 209 245 199 197 198 143 201 205 196 196 240 185 255 255 255 255 182 179 187 255 231 91 79 80 54 116 221 223 18 201 60 235 125 117 118 82 201 144 116 226 255 188 255 255 182 201 255 180 201 183 182 180 180 181 130 192 238 60 58 209 201 226 223 223 222 246 201 255 213 255} │ │ + 0 227 24 218 22 217 216 251 233 232 232 204 19 226 37 19 15 224 241 172 167 117 136 168 170 173 173 174 185 208 181 204 180 203 185 202 237 140 133 95 202 155 133 229 18 201 60 210 230 74 60 61 41 201 102 218 189 201 182 181 181 247 210 208 208 151 201 215 243 224 201 59 209 224 18 60 209 245 199 197 198 143 201 205 196 196 240 185 182 179 187 231 91 79 80 54 116 221 223 18 201 60 235 125 117 118 82 201 144 116 226 188 182 201 180 201 183 182 180 180 181 130 192 238 60 58 209 201 226 223 223 222 246 201 213} │ │ IMAGE { │ │ pixels hex │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -000000010101010101010101010101010101010101010101010101010101010101020300000000000000000000000000 │ │ -000000040405050505050505050505050505050505050505050505050505050504060700000000000000000000000000 │ │ -0000000809090909090909090909090909090909090909090909090909090909090a0700000000000000000000000000 │ │ -0000000b0c0c0c0c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0e0f0700000000000000000000000000 │ │ -000000100d11111213141414141414141414141414141414141414141414141415161700000000000000000000000000 │ │ -00000010111818191a1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1c0000000000000000000000000000 │ │ -000000101118181d17000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -0000001e0d11111f20212122000023212121212121212121212121212121212124252627282828282828282828000000 │ │ -0000001e0d110d1e292a2a2b00002c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2d2e2e2e2e2e2e2e2e2e2e2e000000 │ │ -0000001e2f0d2f1e09300431000032040505050505050505050505050505050505040404040404040404040433000000 │ │ -0000000b0e0d0e0c34353637000038090909090909090909090909090909090909090909090909090909090908000000 │ │ -0000000b0e2f2f2f393a3b3c00003d0b1e10103e3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a0e10101e35000000 │ │ -000000340c0e0e3f404141420000431e0c0e0e444545454545454545454545454545454545454545460e0e0c47000000 │ │ -000000470c0e0e1d480000000000491e0e0e0e4a00000000000000000000000000000000000000004b0e0e0c47000000 │ │ -00000047100c0c4c4d4e4f500000511e0c0c10524e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e530c0c1047000000 │ │ -000000351e0c1e09545556570000580b0c100b2e595555555555555555555555555555555555555a081e0c1e35000000 │ │ -000000091e101e4705335b5c0000580b101e473033335d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d3305351e101e09000000 │ │ -000000091e101e4708045e5f0000580b101e0b360504040404040404040404040404040404040430471e101e09000000 │ │ -000000090b1e1e0b0c0c1e60000058341e1e0b0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0e0b1e1e0b09000000 │ │ -000000360b1e1e6162636465000066471e1e1e676363636363636363636363636363636363636363681e1e0b36000000 │ │ -00000008340b0b694800000000006a470b0b0b6b00000000000000000000000000000000000000006c0b0b3408000000 │ │ -00000008470b0b6d6e00000000006a350b0b346f0000000000000000000000000000000000000000700b0b4708000000 │ │ -000000304734477172737475000076093447357778737373737373737373737373737373737373797a47344730000000 │ │ -00000030354735302a2e2e7b000076094747367c7d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d0435473530000000 │ │ -00000005094709305d7e7f8000007636473508337e2929292929292929292929292929292929295b3009470905000000 │ │ -000000040935090804335d8100007608350936305e33333333333333333333333333333333335e040809350904000000 │ │ -00000004093535473b393b82000076083535098339393939393939393939393939393939393939393435350904000000 │ │ -000000043609098485868788000076080909098986868686868686868686868686868686868686868a09093604000000 │ │ -000000040809098b8c00000000008d300909098e00000000000000000000000000000000000000007009090804000000 │ │ -0000005e0836088f9091929300009430363608959191919191919191919191919191919191919196970836085e000000 │ │ -000000333008305d5a569899000094050808059a56565656565656565656565656565656565656595b30083033000000 │ │ -0000003330083033299b2a9c00009d040830049e7c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a9b293330083033000000 │ │ -0000005d0530055e5b297c9f0000a0043030045b292929292929292929292929292929292929299e330530055d000000 │ │ -00000047100c0c101e0b47a10000a05e303004470b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b300530045b000000 │ │ -000000a2a3a4a4a4a4a3a5a60000a033050505a7a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a80505045b000000 │ │ -0000000000000000000000000000a033040404a90000000000000000000000000000000000000000700404049e000000 │ │ -0000000000000000000000000000a033040404aa0000000000000000000000000000000000000000ab0404049e000000 │ │ -0000000000000000000000000000ac33045e33adaeafafafafafafafafafafafafafafafafafaeb0b15e045e7e000000 │ │ -0000000000000000000000000000b25d5e335b7d9ab3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b39a2e29335e3329000000 │ │ -0000000000000000000000000000b25b33339e9b7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d2a295d333329000000 │ │ -0000000000000000000000000000b25b33335b297c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c299e5d335d7f000000 │ │ -0000000000000000000000000000b43ab5b5b53a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3ab5b5b5b53b000000 │ │ +000000878787878787878787878787878787878787878787878787878787878787010200000000000000000000000000 │ │ +000000888889898989898989898989898989898989898989898989898989898988030400000000000000000000000000 │ │ +0000008a8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b050400000000000000000000000000 │ │ +0000008c8d8d8d8d8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8f060400000000000000000000000000 │ │ +000000908e9191070809090909090909090909090909090909090909090909090a0b0c00000000000000000000000000 │ │ +000000909192920d0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f100000000000000000000000000000 │ │ +00000090919292110c000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +000000938e9191121314141500001614141414141414141414141414141414141718191a1b1b1b1b1b1b1b1b1b000000 │ │ +000000938e918e939495951c00001d959595959595959595959595959595959595969797979797979797979797000000 │ │ +00000093988e98938b99881e00001f88898989898989898989898989898989898988888888888888888888889a000000 │ │ +0000008c8f8e8f8d9b9c9d200000218b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a000000 │ │ +0000008c8f9898989e9fa0220000238c939090a19f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f8f9090939c000000 │ │ +0000009b8d8f8f2425262627000028938d8f8f292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2b8f8f8da2000000 │ │ +000000a28d8f8f112c00000000002d938f8f8f2e00000000000000000000000000000000000000002f8f8f8da2000000 │ │ +000000a2908d8d3031323334000035938d8d90363232323232323232323232323232323232323232378d8d90a2000000 │ │ +0000009c938d938ba3a4a5380000398c8d908c97a6a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a78a938d939c000000 │ │ +0000008b939093a2899aa83a0000398c9093a2999a9aa9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a99a899c9390938b000000 │ │ +0000008b939093a28a88aa3b0000398c90938c9d8988888888888888888888888888888888888899a29390938b000000 │ │ +0000008b8c93938c8d8d933c0000399b93938c8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f8c93938c8b000000 │ │ +0000009d8c93933d3e3f4041000042a2939393433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4493938c9d000000 │ │ +0000008a9b8c8c452c000000000046a28c8c8c470000000000000000000000000000000000000000488c8c9b8a000000 │ │ +0000008aa28c8c494a0000000000469c8c8c9b4b00000000000000000000000000000000000000004c8c8ca28a000000 │ │ +00000099a29ba24d4e4f50510000528b9ba29c53544f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5556a29ba299000000 │ │ +000000999ca29c99959797570000528ba2a29dabac97979797979797979797979797979797979796889ca29c99000000 │ │ +000000898ba28b99a9adae580000529da29c8a9aad949494949494949494949494949494949494a8998ba28b89000000 │ │ +000000888b9c8b8a889aa9590000528a9c8b9d99aa9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9aaa888a8b9c8b88000000 │ │ +000000888b9c9ca2a09ea05a0000528a9c9c8baf9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9b9c9c8b88000000 │ │ +000000889d8b8b5b5c5d5e5f0000528a8b8b8b605d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d618b8b9d88000000 │ │ +000000888a8b8b6263000000000064998b8b8b6500000000000000000000000000000000000000004c8b8b8a88000000 │ │ +000000aa8a9d8a666768696a00006b999d9d8a6c686868686868686868686868686868686868686d6e8a9d8aaa000000 │ │ +0000009a998a99a9a7a5b06f00006b898a8a89b1a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a8998a999a000000 │ │ +0000009a998a999a94b29570000071888a9988b3ab9595959595959595959595959595959595b2949a998a999a000000 │ │ +000000a9899989aaa894ab7200007388999988a894949494949494949494949494949494949494b39a899989a9000000 │ │ +000000a2908d8d90938ca274000073aa999988a28c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c99899988a8000000 │ │ +0000007576777777777678790000739a8989897a76767676767676767676767676767676767676777b898988a8000000 │ │ +0000000000000000000000000000739a8888887c00000000000000000000000000000000000000004c888888b3000000 │ │ +0000000000000000000000000000739a8888887d00000000000000000000000000000000000000007e888888b3000000 │ │ +00000000000000000000000000007f9a88aa9a80818282828282828282828282828282828282818384aa88aaad000000 │ │ +000000000000000000000000000085a9aa9aa8acb1b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b197949aaa9a94000000 │ │ +000000000000000000000000000085a89a9ab3b2acacacacacacacacacacacacacacacacacacac9594a99a9a94000000 │ │ +000000000000000000000000000085a89a9aa894ababababababababababababababababababab94b3a99aa9ae000000 │ │ +0000000000000000000000000000869fb5b5b59f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fb5b5b5b5a0000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ } ├── res/drawable/icon.png ├── sng │ │ @@ -1,45 +1,45 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 76; height: 77; bitdepth: 8; │ │ using color alpha; │ │ } │ │ IMAGE { │ │ pixels hex │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 eef1f149 e3e5e776 e3e5e776 e0e4e77d d2d6dabb d2d5d7bd ccd1d5de ccd1d5de d1d3d7cd d2d6d7bb e0e2e68e e3e5e776 e3e5e776 eeeeee4c ffffff05 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ececef51 e2e4e67c ccd0d3f4 d9dbdeff dadddfff f0f1f1ff fffefeff fffefeff fffefeff fffefeff fffffeff fffefeff fffefeff fffefeff fffefeff fffefeff f2f2f2ff dcdfe1ff d9dcdeff cdd1d5ff e0e4e482 e9ecec5d ffffff10 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 efeff341 dcdfe191 d1d4d6ff dee0e2ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fefdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff e4e6e7ff d3d6d9ff d3d7dac7 eaeeee4a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff08 eef2f23d caced0f9 dde0e1ff fcfcfbff fcfcfbff fcfcfcff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fcfcfcff fcfcfcff fcfcfbff e2e4e6ff cbcfd1ff e7e7e96a f5f5f519 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 efefef50 c6caceff edeeefff fafafaff fafafaff fbfbfcff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfcfcff fafafaff fafafaff f4f5f5ff c7cccfff e0e1e38a ffffff11 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f3ffff15 c3c8cbf7 ecedeeff f9f9f9ff f9f9f9ff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff f9f9f9ff f9f9f9ff f3f4f4ff c2c7caff f7f7f720 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff02 caced0d0 e3e5e6ff f7f8f7ff f7f7f7ff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff f7f8f7ff f7f8f7ff e9ebecff c5c9cde2 ffffff02 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 bdc3c7f9 f2f3f2ff f6f6f5ff fafafaff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fafbfcff f6f6f5ff f4f5f5ff bdc2c6fc f0f3f342 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d2d7d9b7 d5d7dafc f3f4f3ff f6f6f5ff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff f8f9f9ff f3f4f4ff e4e6e7ff caced1cb ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 cbcfd3c3 e4e5e6ff f2f2f1ff f8f9f9ff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fafbfcff dcdedfff 9ea3a8ff 9ea3a8ff 8a8f96ff 848a91ff 82898fff 82898fff 82898fff 82898fff 838990ff 878d94ff 9ea3a7ff 9ea3a8ff b6babeff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff f8f9f9ff f2f2f1ff e5e6e7ff cbcfd1c4 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d0d2d5b7 e0e2e4ff f0f1f0ff f8f9f9ff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff acb0b5ff 9ea3a7ff 848a90ff 848a91ff 848a90ff 848a91ff 848a90ff 848a91ff 575c63ff 393c40ff 393b3fff 484b50ff 83898fff 848a91ff 848a90ff 848a90ff 848a90ff 848a90ff 979ba1ff a9adb2ff f2f3f4ff fafbfcff fafbfbff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfbff f0f1f0ff e9eaeaff c6cbcdd6 ffffff06 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d3d6d9a7 e4e6e6ff eeefefff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff d9dbdeff a6abafff 868c93ff 868b93ff 868c93ff 6d7278ff 3a3c40ff 2e3134ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 17181bff 3a3c40ff 4c5055ff 868c93ff 868b93ff 868c93ff a1a5abff d8daddff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff eeefefff eeeeeeff c0c3c7f5 ffffff0b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d5d9dc99 e2e3e4ff ecededff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff dadcdfff a2a6acff 888e95ff 888e94ff 6e7378ff 3e4143ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2e3139ff 585d6bff 585d6bff 30343bff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 313235ff 686d72ff 888e94ff 888e94ff a2a6abff d8dadcff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff ecededff ecededff c6c9cdf6 ffffff08 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d7dbdd8d dadddeff ebecebff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff bdc0c4ff 8a9096ff 898f96ff 6d7277ff 2f3134ff 020202ff 020202ff 020202ff 2a2d33ff 4f545fff 626876ff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e96abff 8e97abff 8e96abff 8e97abff 656b7aff 4f545fff 2e3139ff 020202ff 020202ff 020202ff 111214ff 585c60ff 8a9096ff 898f96ff a3a8adff f8f9faff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff ebececff ebecebff cbced0c5 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e4e6e87b cfd3d5ff e9ebe9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9faff f8f9fbff f8f9faff f8f9fbff dbdee0ff 9ba0a6ff 8c9298ff 71767aff 2e3134ff 020202ff 020202ff 22242aff 535864ff 8b94a7ff 8b94a8ff 8b94a7ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff bec3ceff bec3ceff 8e96aaff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a7ff 8b94a8ff 545966ff 212429ff 020202ff 020202ff 1b1d1eff 70757aff 8c9298ff 8c9298ff dcdee0ff f8f9faff f8f9fbff f8f9faff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff e9ebe9ff dcdedfff dbdddf81 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f7f7f720 c6c9ccff e7e9e8ff f3f5f5ff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff dddfe2ff 8e949aff 8e949bff 5a5e63ff 020202ff 020202ff 282b31ff 6c7382ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff ffffffff ffffffff 9097aaff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 7f7884ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 717887ff 2b2d35ff 020202ff 020202ff 323539ff 8d9399ff 8e949bff c5c9ccff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff e8e9e9ff cccfd1ff e8e8ea57 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff0a b8bcc1ff e5e7e6ff ebecedff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff c0c4c8ff 90969bff 868b91ff 2c2e30ff 020202ff 1b1d21ff 656b79ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff ffffffff ffffffff 8e96a7ff 878fa2ff 878fa2ff 878fa2ff 8f858fff 42393cff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 656b79ff 1b1d21ff 020202ff 171819ff 7b8085ff 90969bff a3a8adff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f2f3f5ff e5e7e6ff bdc2c4ff ffffff12 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e2e5e56b e2e4e3ff e7e8e8ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff bcbfc3ff 91979dff 81868cff 0f0f10ff 020202ff 474b56ff 858d9fff 858d9fff 858d9fff a2a7b5ff 9da2b2ff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858da0ff ffffffff ffffffff 8c93a4ff 858da0ff 858d9fff 858da0ff a66756ff 4a4f5aff 858d9fff 858da0ff 858d9fff 8f96a7ff b7bbc5ff 868ea1ff 858d9fff 858da0ff 484d58ff 020202ff 020202ff 82878dff 91979dff a3a7adff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff e9ebeaff e3e5e4ff caced0c4 ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f4f4f42f c2c7c9ff e2e4e3ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff c1c5c9ff 949a9fff 8a8f94ff 020202ff 080a0aff 666c7aff 838b9cff 838b9cff 838b9cff c0c4ccff ffffffff ecedf0ff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff ffffffff ffffffff 8a91a2ff 838b9cff 838b9cff 84899aff af5f42ff 666c7bff 838b9cff 838b9cff 838b9cff d5d7ddff ffffffff d8dbe0ff 838b9cff 838b9cff 828b9cff 666c7bff 080a0bff 020202ff 858b8fff 949a9fff a3a8adff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff e3e5e4ff c7caccff e9e9ec51 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b5babeff e0e2e0ff e7e8e9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff e9ebedff 969da1ff 93999dff 020202ff 050506ff 808799ff 818899ff 808899ff 818899ff 808799ff 808799ff fdfdfdff ffffffff c7cad1ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff ffffffff ffffffff 878e9fff 818899ff 808799ff a66552ff af5f41ff 646a78ff 808799ff 818899ff 9095a5ff ffffffff ffffffff 818899ff 808799ff 818899ff 808899ff 818899ff 808799ff 050506ff 020202ff 90979bff 969da1ff b6bbbeff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f5f6f6ff e0e2e0ff bbbfc3ff ffffff02 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 e9ecec50 c5c9cbff e0e3e2ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff 989ea3ff 989ea3ff 0f0f10ff 020202ff 7d8495ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff bcbfc8ff ffffffff fdfdfdff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff ffffffff ffffffff 868d9cff 7e8596ff 7e8596ff ad5f43ff 763e29ff 666b79ff 7e8596ff 7e8596ff eaebeeff ffffffff bec1c9ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7d8495ff 020202ff 020202ff 989ea3ff 989ea3ff ecedefff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff e3e4e4ff dbdeddff e9ecec50 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 bcc0c4f0 dbdeddff eff1f2ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff a0a6aaff 9ba1a5ff 292a2cff 020202ff 798090ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 7c8393ff 7c8393ff 7c8393ff f2f2f4ff ffffffff cfd1d7ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff ffffffff ffffffff 838a99ff 7c8393ff 8f7373ff ae5e40ff 34180dff 727887ff 7b8293ff bec1c9ff ffffffff ffffffff 7f8696ff 7c8393ff 7b8293ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 797f90ff 020202ff 0d0f0fff 9ba1a5ff 9ca2a6ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f4f5f6ff dbdeddff bec2c5ff ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 e9ecec50 c7caccff e0e2e1ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff b1b5b8ff 9da3a6ff 404244ff 020202ff 757b8bff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 999da9ff ffffffff fdfdfdff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 9499a5ff 9499a5ff 7b8191ff 797f8fff a7614aff ae5e40ff 2c130aff 797f8fff 797f8fff f8f8f9ff ffffffff b7bac3ff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 767c8bff 020202ff 333536ff 9da3a6ff acb0b3ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff e1e3e3ff d6d8d7ff e3e6e95b ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 c0c3c7d9 d8dadaff ebecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff 9fa4a8ff 9fa4a8ff 050505ff 626875ff 767c8cff 757c8cff 767c8cff 767d8cff 767c8cff 767d8cff 767c8cff 767c8cff 767c8cff 767c8cff 767c8cff cbcdd3ff ffffffff dcdee2ff 767c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767d8cff 757c8cff 767d8cff ae5e40ff ae5e40ff 2c130aff 767d8cff c8cbd0ff ffffffff f2f2f4ff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 626875ff 020202ff 8d9195ff 9fa4a8ff eaecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f2f3f5ff d8dadaff bdc1c4f4 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 f3f3f32b bec2c4ff dadcdbff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff abafb3ff a1a6aaff 1f2021ff 4a4f59ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737988ff 737989ff 737988ff 858b99ff e0e1e4ff 8e939fff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff a3624dff ae5e3fff af5e3fff 241611ff 737989ff 7f8593ff d0d2d7ff 969ba5ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 4a4e59ff 0a0a0aff a1a6aaff a1a5aaff f3f4f5ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff dedfe0ff c5c9caff e4e7ea54 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 dee0e36c d1d3d3ff dfe0e0ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f0f1f3ff a3a8acff 92979bff 020202ff 6e7584ff 707686ff 707686ff 767c8aff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff ad5e40ff ae5d3fff ae5d3fff 3f3e46ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 767c8aff 707686ff 707686ff 6f7585ff 020202ff 616467ff a3a8acff dddfe1ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff e7e8e8ff d5d7d6ff cccfd2ae ffffff00 ffffff00 │ │ -ffffff00 ffffff00 b9bdc1f7 d3d5d5ff f0f1f3ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff b0b4b7ff a4a9adff 060606ff 686e7bff 6d7382ff 6d7382ff a5a8b1ff ffffffff c4c6ccff 707684ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 91665fff ae5d3fff ae5d3fff ae5d3fff 595e6bff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff b5b8bfff ffffffff c1c4caff 6d7382ff 6d7382ff 686d7bff 050505ff a5aaaeff a5aaaeff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff d4d6d6ff babec1ff ffffff04 ffffff00 │ │ -ffffff00 f7f7f721 bcc0c2ff d6d9d8ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff edeef1ff a7abafff a6aaaeff 1b1d21ff 6c717eff 6c717dff 6c717eff c5c7cbff ffffffff ffffffff fafafbff a3a6aeff 6c717eff 6c717dff 6c717eff 6b717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff ab5e41ff ae5d3fff ae5d3fff ae5d3fff 575c67ff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717eff 6c717eff 6c717dff 6c717eff 6c717dff 91959eff e9eaecff ffffffff ffffffff e3e4e6ff 6c717dff 6b707eff 6c717eff 1e2022ff 85898cff a7abafff ecedf0ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff dcdedeff c1c5c6ff e2e2e561 ffffff00 │ │ -ffffff00 dbdddf71 c8cbcbff dcdedeff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f4ff dadcdfff a9adb0ff 212222ff 676c78ff 686e7aff 696e7aff 686e7aff 696e7aff 9fa3aaff f1f1f2ff ffffffff ffffffff dadcdfff 848992ff 686e7aff 686e7aff 686e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 726b72ff ae5c3fff ae5c3fff ae5d3fff 954e33ff 565b66ff 696e7aff 686e7aff 696e7aff 686e7aff 686e7aff 686e7aff 686e7aff 686e7aff 7e838cff cacbd0ff ffffffff ffffffff f4f5f5ff b6b9beff 696e7aff 686e7aff 696e7aff 686e7aff 656b77ff 020202ff a9adb0ff babec1ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff dfe1e2ff cfd1d0ff d4d8da89 ffffff00 │ │ -ffffff00 c7cacdc0 cdcfd0ff e8eaecff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff abafb2ff a8acafff 0a0b0dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff babdc2ff f6f6f7ff ffffffff ffffffff aaadb3ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff ac5c40ff ae5c3fff ae5c3fff ae5c3fff 572b1bff 5d626dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 92969eff ffffffff ffffffff fcfcfcff c4c6caff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 0c0d0fff a6aaadff abafb2ff eff0f2ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff cdcfd0ff b3b7bbff ffffff00 │ │ -ffffff00 b4b8bbff cccfcfff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f0f1f4ff f1f2f4ff ebecefff aeb2b5ff a5a8abff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff d4d5d8ff fdfdfdff 696e79ff 626874ff 626874ff 626874ff 636974ff 626874ff 636974ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 636772ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff f2f2f3ff e4e4e7ff 646a75ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 707376ff aeb2b5ff e8eaedff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff cfd1d0ff b9bdbfff ffffff0b │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 eef1f149 e3e5e776 e3e5e776 e0e4e77d d2d6dabb d2d5d7bd ccd1d5de ccd1d5de d1d3d7cd d2d6d7bb e0e2e68e e3e5e776 e3e5e776 eeeeee4c ffffff05 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ececef51 e2e4e67c ccd0d3f4 d9dbdeff dadddfff f0f1f1ff fffefeff fffefeff fffefeff fffefeff fffffeff fffefeff fffefeff fffefeff fffefeff fffefeff f2f2f2ff dcdfe1ff d9dcdeff cdd1d5ff e0e4e482 e9ecec5d ffffff10 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 efeff341 dcdfe191 d1d4d6ff dee0e2ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fefdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff e4e6e7ff d3d6d9ff d3d7dac7 eaeeee4a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff08 eef2f23d caced0f9 dde0e1ff fcfcfbff fcfcfbff fcfcfcff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fcfcfcff fcfcfcff fcfcfbff e2e4e6ff cbcfd1ff e7e7e96a f5f5f519 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 efefef50 c6caceff edeeefff fafafaff fafafaff fbfbfcff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfcfcff fafafaff fafafaff f4f5f5ff c7cccfff e0e1e38a ffffff11 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 f3ffff15 c3c8cbf7 ecedeeff f9f9f9ff f9f9f9ff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff f9f9f9ff f9f9f9ff f3f4f4ff c2c7caff f7f7f720 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff02 caced0d0 e3e5e6ff f7f8f7ff f7f7f7ff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff f7f8f7ff f7f8f7ff e9ebecff c5c9cde2 ffffff02 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 bdc3c7f9 f2f3f2ff f6f6f5ff fafafaff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fafbfcff f6f6f5ff f4f5f5ff bdc2c6fc f0f3f342 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d2d7d9b7 d5d7dafc f3f4f3ff f6f6f5ff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff f8f9f9ff f3f4f4ff e4e6e7ff caced1cb 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 cbcfd3c3 e4e5e6ff f2f2f1ff f8f9f9ff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fafbfcff dcdedfff 9ea3a8ff 9ea3a8ff 8a8f96ff 848a91ff 82898fff 82898fff 82898fff 82898fff 838990ff 878d94ff 9ea3a7ff 9ea3a8ff b6babeff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff f8f9f9ff f2f2f1ff e5e6e7ff cbcfd1c4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d0d2d5b7 e0e2e4ff f0f1f0ff f8f9f9ff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff acb0b5ff 9ea3a7ff 848a90ff 848a91ff 848a90ff 848a91ff 848a90ff 848a91ff 575c63ff 393c40ff 393b3fff 484b50ff 83898fff 848a91ff 848a90ff 848a90ff 848a90ff 848a90ff 979ba1ff a9adb2ff f2f3f4ff fafbfcff fafbfbff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfbff f0f1f0ff e9eaeaff c6cbcdd6 ffffff06 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d3d6d9a7 e4e6e6ff eeefefff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff d9dbdeff a6abafff 868c93ff 868b93ff 868c93ff 6d7278ff 3a3c40ff 2e3134ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 17181bff 3a3c40ff 4c5055ff 868c93ff 868b93ff 868c93ff a1a5abff d8daddff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff eeefefff eeeeeeff c0c3c7f5 ffffff0b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d5d9dc99 e2e3e4ff ecededff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff dadcdfff a2a6acff 888e95ff 888e94ff 6e7378ff 3e4143ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2e3139ff 585d6bff 585d6bff 30343bff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 313235ff 686d72ff 888e94ff 888e94ff a2a6abff d8dadcff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff ecededff ecededff c6c9cdf6 ffffff08 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d7dbdd8d dadddeff ebecebff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff bdc0c4ff 8a9096ff 898f96ff 6d7277ff 2f3134ff 020202ff 020202ff 020202ff 2a2d33ff 4f545fff 626876ff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e96abff 8e97abff 8e96abff 8e97abff 656b7aff 4f545fff 2e3139ff 020202ff 020202ff 020202ff 111214ff 585c60ff 8a9096ff 898f96ff a3a8adff f8f9faff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff ebececff ebecebff cbced0c5 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 e4e6e87b cfd3d5ff e9ebe9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9faff f8f9fbff f8f9faff f8f9fbff dbdee0ff 9ba0a6ff 8c9298ff 71767aff 2e3134ff 020202ff 020202ff 22242aff 535864ff 8b94a7ff 8b94a8ff 8b94a7ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff bec3ceff bec3ceff 8e96aaff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a7ff 8b94a8ff 545966ff 212429ff 020202ff 020202ff 1b1d1eff 70757aff 8c9298ff 8c9298ff dcdee0ff f8f9faff f8f9fbff f8f9faff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff e9ebe9ff dcdedfff dbdddf81 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 f7f7f720 c6c9ccff e7e9e8ff f3f5f5ff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff dddfe2ff 8e949aff 8e949bff 5a5e63ff 020202ff 020202ff 282b31ff 6c7382ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff ffffffff ffffffff 9097aaff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 7f7884ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 717887ff 2b2d35ff 020202ff 020202ff 323539ff 8d9399ff 8e949bff c5c9ccff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff e8e9e9ff cccfd1ff e8e8ea57 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 ffffff0a b8bcc1ff e5e7e6ff ebecedff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff c0c4c8ff 90969bff 868b91ff 2c2e30ff 020202ff 1b1d21ff 656b79ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff ffffffff ffffffff 8e96a7ff 878fa2ff 878fa2ff 878fa2ff 8f858fff 42393cff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 656b79ff 1b1d21ff 020202ff 171819ff 7b8085ff 90969bff a3a8adff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f2f3f5ff e5e7e6ff bdc2c4ff ffffff12 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 e2e5e56b e2e4e3ff e7e8e8ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff bcbfc3ff 91979dff 81868cff 0f0f10ff 020202ff 474b56ff 858d9fff 858d9fff 858d9fff a2a7b5ff 9da2b2ff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858da0ff ffffffff ffffffff 8c93a4ff 858da0ff 858d9fff 858da0ff a66756ff 4a4f5aff 858d9fff 858da0ff 858d9fff 8f96a7ff b7bbc5ff 868ea1ff 858d9fff 858da0ff 484d58ff 020202ff 020202ff 82878dff 91979dff a3a7adff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff e9ebeaff e3e5e4ff caced0c4 ffffff01 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 f4f4f42f c2c7c9ff e2e4e3ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff c1c5c9ff 949a9fff 8a8f94ff 020202ff 080a0aff 666c7aff 838b9cff 838b9cff 838b9cff c0c4ccff ffffffff ecedf0ff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff ffffffff ffffffff 8a91a2ff 838b9cff 838b9cff 84899aff af5f42ff 666c7bff 838b9cff 838b9cff 838b9cff d5d7ddff ffffffff d8dbe0ff 838b9cff 838b9cff 828b9cff 666c7bff 080a0bff 020202ff 858b8fff 949a9fff a3a8adff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff e3e5e4ff c7caccff e9e9ec51 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 b5babeff e0e2e0ff e7e8e9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff e9ebedff 969da1ff 93999dff 020202ff 050506ff 808799ff 818899ff 808899ff 818899ff 808799ff 808799ff fdfdfdff ffffffff c7cad1ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff ffffffff ffffffff 878e9fff 818899ff 808799ff a66552ff af5f41ff 646a78ff 808799ff 818899ff 9095a5ff ffffffff ffffffff 818899ff 808799ff 818899ff 808899ff 818899ff 808799ff 050506ff 020202ff 90979bff 969da1ff b6bbbeff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f5f6f6ff e0e2e0ff bbbfc3ff ffffff02 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 e9ecec50 c5c9cbff e0e3e2ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff 989ea3ff 989ea3ff 0f0f10ff 020202ff 7d8495ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff bcbfc8ff ffffffff fdfdfdff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff ffffffff ffffffff 868d9cff 7e8596ff 7e8596ff ad5f43ff 763e29ff 666b79ff 7e8596ff 7e8596ff eaebeeff ffffffff bec1c9ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7d8495ff 020202ff 020202ff 989ea3ff 989ea3ff ecedefff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff e3e4e4ff dbdeddff e9ecec50 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 bcc0c4f0 dbdeddff eff1f2ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff a0a6aaff 9ba1a5ff 292a2cff 020202ff 798090ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 7c8393ff 7c8393ff 7c8393ff f2f2f4ff ffffffff cfd1d7ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff ffffffff ffffffff 838a99ff 7c8393ff 8f7373ff ae5e40ff 34180dff 727887ff 7b8293ff bec1c9ff ffffffff ffffffff 7f8696ff 7c8393ff 7b8293ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 797f90ff 020202ff 0d0f0fff 9ba1a5ff 9ca2a6ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f4f5f6ff dbdeddff bec2c5ff 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 e9ecec50 c7caccff e0e2e1ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff b1b5b8ff 9da3a6ff 404244ff 020202ff 757b8bff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 999da9ff ffffffff fdfdfdff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 9499a5ff 9499a5ff 7b8191ff 797f8fff a7614aff ae5e40ff 2c130aff 797f8fff 797f8fff f8f8f9ff ffffffff b7bac3ff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 767c8bff 020202ff 333536ff 9da3a6ff acb0b3ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff e1e3e3ff d6d8d7ff e3e6e95b 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 c0c3c7d9 d8dadaff ebecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff 9fa4a8ff 9fa4a8ff 050505ff 626875ff 767c8cff 757c8cff 767c8cff 767d8cff 767c8cff 767d8cff 767c8cff 767c8cff 767c8cff 767c8cff 767c8cff cbcdd3ff ffffffff dcdee2ff 767c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767d8cff 757c8cff 767d8cff ae5e40ff ae5e40ff 2c130aff 767d8cff c8cbd0ff ffffffff f2f2f4ff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 626875ff 020202ff 8d9195ff 9fa4a8ff eaecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f2f3f5ff d8dadaff bdc1c4f4 00000000 00000000 00000000 │ │ +00000000 00000000 f3f3f32b bec2c4ff dadcdbff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff abafb3ff a1a6aaff 1f2021ff 4a4f59ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737988ff 737989ff 737988ff 858b99ff e0e1e4ff 8e939fff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff a3624dff ae5e3fff af5e3fff 241611ff 737989ff 7f8593ff d0d2d7ff 969ba5ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 4a4e59ff 0a0a0aff a1a6aaff a1a5aaff f3f4f5ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff dedfe0ff c5c9caff e4e7ea54 00000000 00000000 │ │ +00000000 00000000 dee0e36c d1d3d3ff dfe0e0ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f0f1f3ff a3a8acff 92979bff 020202ff 6e7584ff 707686ff 707686ff 767c8aff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff ad5e40ff ae5d3fff ae5d3fff 3f3e46ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 767c8aff 707686ff 707686ff 6f7585ff 020202ff 616467ff a3a8acff dddfe1ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff e7e8e8ff d5d7d6ff cccfd2ae 00000000 00000000 │ │ +00000000 00000000 b9bdc1f7 d3d5d5ff f0f1f3ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff b0b4b7ff a4a9adff 060606ff 686e7bff 6d7382ff 6d7382ff a5a8b1ff ffffffff c4c6ccff 707684ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 91665fff ae5d3fff ae5d3fff ae5d3fff 595e6bff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff b5b8bfff ffffffff c1c4caff 6d7382ff 6d7382ff 686d7bff 050505ff a5aaaeff a5aaaeff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff d4d6d6ff babec1ff ffffff04 00000000 │ │ +00000000 f7f7f721 bcc0c2ff d6d9d8ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff edeef1ff a7abafff a6aaaeff 1b1d21ff 6c717eff 6c717dff 6c717eff c5c7cbff ffffffff ffffffff fafafbff a3a6aeff 6c717eff 6c717dff 6c717eff 6b717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff ab5e41ff ae5d3fff ae5d3fff ae5d3fff 575c67ff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717eff 6c717eff 6c717dff 6c717eff 6c717dff 91959eff e9eaecff ffffffff ffffffff e3e4e6ff 6c717dff 6b707eff 6c717eff 1e2022ff 85898cff a7abafff ecedf0ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff dcdedeff c1c5c6ff e2e2e561 00000000 │ │ +00000000 dbdddf71 c8cbcbff dcdedeff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f4ff dadcdfff a9adb0ff 212222ff 676c78ff 686e7aff 696e7aff 686e7aff 696e7aff 9fa3aaff f1f1f2ff ffffffff ffffffff dadcdfff 848992ff 686e7aff 686e7aff 686e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 726b72ff ae5c3fff ae5c3fff ae5d3fff 954e33ff 565b66ff 696e7aff 686e7aff 696e7aff 686e7aff 686e7aff 686e7aff 686e7aff 686e7aff 7e838cff cacbd0ff ffffffff ffffffff f4f5f5ff b6b9beff 696e7aff 686e7aff 696e7aff 686e7aff 656b77ff 020202ff a9adb0ff babec1ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff dfe1e2ff cfd1d0ff d4d8da89 00000000 │ │ +00000000 c7cacdc0 cdcfd0ff e8eaecff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff abafb2ff a8acafff 0a0b0dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff babdc2ff f6f6f7ff ffffffff ffffffff aaadb3ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff ac5c40ff ae5c3fff ae5c3fff ae5c3fff 572b1bff 5d626dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 92969eff ffffffff ffffffff fcfcfcff c4c6caff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 0c0d0fff a6aaadff abafb2ff eff0f2ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff cdcfd0ff b3b7bbff 00000000 │ │ +00000000 b4b8bbff cccfcfff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f0f1f4ff f1f2f4ff ebecefff aeb2b5ff a5a8abff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff d4d5d8ff fdfdfdff 696e79ff 626874ff 626874ff 626874ff 636974ff 626874ff 636974ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 636772ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff f2f2f3ff e4e4e7ff 646a75ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 707376ff aeb2b5ff e8eaedff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff cfd1d0ff b9bdbfff ffffff0b │ │ ffffff09 b8bcbfff d2d4d5ff f0f1f3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff f0f1f3ff e7e9ebff b1b5b7ff 333536ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6570ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 915f52ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 5f6671ff 5f6571ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 030303ff b1b5b7ff ced0d3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff dadbdcff b9bdc0ff e5e8e857 │ │ e1e4e45f b8bcbeff d8dadbff eff0f2ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff eff0f2ff cbcfd1ff b2b6b8ff 080a0bff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c616eff 5c606dff 5c616eff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5e616cff ae5c3fff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 220d07ff 5c606dff 5c606dff 5c606dff 5c616eff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 07070aff adb0b3ff b2b6b8ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff d8dadaff c6c8c9ff d7dbdd79 │ │ d6d8dc7b c1c4c6ff d7d9daff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff b4b8baff aeb2b4ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 5e5e67ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 353034ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff a9adafff b4b8baff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff e1e3e5ff c6c9caff d7d9dd79 │ │ d6d8da7b c6c9c9ff dadcdeff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff b7bbbdff aaaeb0ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 555a66ff 565b66ff 555a66ff 555b66ff 555a66ff 555b66ff 0d0f12ff f3eeedff f5efedff f5efedff f5efedff b15d30ff ae5c3eff 464b54ff 555a66ff 555b66ff 565a66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff abafb1ff b7bbbdff e9ebeeff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff ecedf1ff c5c9c9ff c1c4c6b9 │ │ d3d5d992 c4c7c8ff e1e3e5ff edeef2ff edeff2ff edeef2ff edeff2ff edeef2ff e9ebeeff b8bcbeff b0b4b6ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 545862ff 535861ff 545862ff 535861ff 535862ff 535861ff 333435ff f6f7f9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff b4663dff 464a53ff 535862ff 535861ff 535862ff 535861ff 545862ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 7b7d80ff b8bcbeff e5e7eaff edeef2ff edeff2ff edeef2ff edeff2ff edeef2ff edeff2ff c3c7c8ff b4b8bcef │ │ c1c3c7bc c2c5c6ff eaecefff eceef1ff edeef1ff eceef1ff edeef1ff eceef1ff e6e8ebff bbbec0ff aeb1b3ff 0d0f10ff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565fff 51565eff 51565fff 51565eff 51565eff 444850ff eff0f1ff f5f6f8ff f5f6f7ff f5f6f8ff f5f6f7ff f5f6f8ff f5f6f7ff f5f6f8ff 404247ff 51565fff 51565eff 51565fff 51565eff 51565fff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 17181bff 656768ff bbbec0ff e5e7eaff eceef1ff edeef1ff eceef1ff edeef1ff eceef1ff edeef1ff c2c4c6ff adb2b6ff │ │ bec2c4bd c0c3c4ff ecedf1ff ecedf1ff ecedf1ff ebedf1ff ecedf1ff ebedf1ff e5e7eaff bdc1c2ff a3a6a7ff 020202ff 020202ff 1c1e21ff c5c6caff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff 4d515aff 4d515aff 4d515aff 4d515aff 4d515bff 4d515aff 4d515bff 4d515aff 4d515bff 4d515aff 4d515bff 3b3c3fff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff 353636ff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff ced0d1ff ced0d1ff ced0d1ff ced0d1ff ced0d1ff cecfd1ff ced0d1ff cecfd1ff 1e2125ff 020202ff 020202ff 0a0a0aff bdc1c2ff e5e7eaff ebedf1ff ecedf1ff ebedf1ff ecedf1ff ecedf1ff ecedf1ff c0c3c4ff acb0b5ff │ │ @@ -47,39 +47,39 @@ │ │ bcc0c4bd bdc0c1ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff e4e7e9ff c1c4c5ff a9acadff 020202ff 020202ff 020202ff 828282ff 8a8a8aff 8a8a8aff 8a8a8aff a3a6a8ff a3a6a8ff a3a6a8ff a3a6a8ff 474a53ff 474a53ff 474a53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 393b3cff e6e9edff e7eaeeff e6e9edff e7eaeeff e6e9edff e7eaeeff e6e9edff e7eaeeff 333435ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474a53ff 474a53ff 474a53ff a4a6a9ff a4a6a8ff a4a6a9ff a4a6a8ff 8b8b8bff 8b8b8bff 8b8b8bff 8b8b8bff 020202ff 020202ff 020202ff 060606ff c1c4c5ff e4e7eaff eaecf0ff ebedf0ff eaecf0ff ebedf0ff eaecf0ff ebedf0ff bdc0c1ff aaaeb2ff │ │ bec0c4bd bbbec0ff e7eaeeff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff e5e8ebff c3c6c7ff b6b9baff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 222428ff 3b3f46ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 42454bff e2e6eaff e2e6eaff e2e6eaff e3e6ebff e2e6eaff e3e6ebff e2e6eaff e3e6ebff 373a3fff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 3b3f46ff 292b30ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b5c5dff c3c6c7ff e4e7eaff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff bbbec0ff a9adb1ff │ │ cfd2d48f babdbfff dcdfe2ff e9ecf0ff e9ecf0ff e9ecf0ff e9ecf0ff e9ecf0ff e6e9ecff c5c9c9ff b9bbbbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2b2d31ff 303339ff 42454bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 242628ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 656769ff 3d4046ff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 373a40ff 2b2d32ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 8c8e8fff c5c9c9ff e4e7eaff e9ecefff e9ecf0ff e9ecefff e9ecf0ff e9ecefff e9ecf0ff b9bdbfff acb0b5f2 │ │ d3d6d87b b8bcbeff d3d6d9ff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff c7cacbff babdbdff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0c0d0fff 2d3033ff 2e3035ff 3c4046ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3e4148ff 3d4046ff 242629ff a4a7acff dadee3ff dadee4ff a5a7acff 4e5052ff 393c42ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3e4047ff 2e3135ff 2e3135ff 161719ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff bbbdbeff c7cacbff e6e8ebff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff e6e9ecff b8bcbeff bec0c4bb │ │ d1d3d67b b4b8bbff caced1ff e8ebefff e8ebefff e8ebefff e8ecefff e8ebefff e8ecefff caccccff c4c6c6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0a0b0dff 2b2d32ff 2e3137ff 303237ff 2e3137ff 2e3135ff 020203ff 010202ff 2d3035ff 303237ff 2e3137ff 303237ff 2b2d32ff 121415ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff bec0c0ff caccccff e8ecefff e8ebefff e8ecefff e8ebefff e8ecefff e8ebefff d7daddff b7babdff d3d5d779 │ │ d6dbdd70 abafb3ff c9cdd0ff e7eaeeff e8ebefff e7eaeeff e8ebefff e7eaeeff e8ebefff d1d4d4ff cccfcfff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff c7c9caff cccfceff e8ebefff e7eaeeff e8ebefff e7eaeeff e8ebefff e7eaeeff c9ccd0ff b3b7b9ff d3d5d779 │ │ f4f4f418 a8acafff bdc0c3ff e7eaedff e7eaeeff e7eaedff e7eaeeff e7eaedff e7eaeeff e3e7e9ff ced0d0ff 0f1010ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ced0d0ff dadcdeff e7eaeeff e7eaedff e7eaeeff e7eaedff e7eaeeff e7eaedff c8cbcdff a9aeb1ff d9d9dd72 │ │ -ffffff00 a5a9aeff b1b5b8ff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e3e7eaff d1d3d2ff c8cacaff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 777877ff d1d3d2ff e3e7eaff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff babec1ff a7abafff ffffff00 │ │ -ffffff00 babdc1bc b0b4b7ff dde0e5ff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff d3d5d5ff cfd1d0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cccfcdff d3d5d5ff e5e8ecff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff b0b4b6ff a2a6abff ffffff00 │ │ -ffffff00 d4d6db71 adb1b4ff c4c7caff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff dde0e2ff d5d7d6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff d4d6d6ff d6d8d6ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff d1d4d9ff aeb2b5ff cfd1d58b ffffff00 │ │ -ffffff00 eaeaea3d a2a7acff b8bcbfff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e4e7eaff d7d9d9ff caccccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b0b2b2ff d7d9d9ff e3e7e9ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff c0c4c8ff a7abafff d6d8da6f ffffff00 │ │ -ffffff00 ffffff00 9ea4a8ff aaaeb1ff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff dadbdbff dadcdbff 080a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 626c79ff 919fb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 060606ff dadcdbff dadbdbff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff acb1b5ff a1a5aaff ffffff0d ffffff00 │ │ -ffffff00 ffffff00 cfd1d380 a8adb0ff c2c6caff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e6e9ff dbdeddff b6b8b8ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7c889bff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7d7d7dff dbdeddff e1e3e6ff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff d1d4d8ff a9adb0ff b6babec4 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ebf0f034 9ea4a8ff aeb2b6ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff dee0e0ff dedfdfff 141414ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 758397ff adc1deff adc1deff a3b7d3ff a8bbd8ff adc1deff adc1deff acc0ddff a0b2cdff adc1deff adc1deff adc1deff 90a1baff adc1deff adc1deff adc1deff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0f0f0fff dedfdfff dee0e0ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff b6bbbeff a1a5aaff dde0e35b ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 acb0b5d7 a4a9aeff d1d5daff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e2e5eaff e0e3e1ff d5d7d6ff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 707f95ff a4b9daff 92a5c2ff 0e1217ff 06070bff a4b9daff a0b5d4ff 000000ff 000000ff 9eb2d1ff a4b9daff 11151bff 181d25ff 899bb6ff a4b9daff a4b9daff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a0a1a0ff e0e3e1ff e1e4e7ff e3e6eaff e2e5eaff e3e6eaff e2e5eaff e3e6eaff e2e5eaff dfe3e7ff a4a9adff 9ba1a6ff ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 e2e2e250 9fa4a8ff b0b5b9ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e4e5ff e3e4e4ff 747474ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 6a7a92ff 9cb2d5ff 7f92afff 303846ff 1d222cff 9cb2d5ff 94aacbff 010202ff 58647bff 95aaccff 9cb2d5ff 000000ff 889bbaff 627187ff 9cb2d5ff 9cb2d5ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 3f403fff e3e4e4ff e2e4e4ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff b5babeff a2a7abff d4d6d971 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 a2a6abed a2a6abff d4d7dcff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e5e7e6ff e5e7e6ff 1d1e1dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 65748fff 94aad0ff 788babff 222834ff 161b25ff 94aad0ff 8ca1c6ff 010202ff 434f61ff 8da2c7ff 94aad0ff 000000ff 7d90b1ff 5f6f8aff 94aad0ff 94aad0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 141414ff e5e7e6ff e5e7e6ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff dfe2e7ff a2a6abff 9a9fa4ff f4f4f418 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 e0e4e74b 9ca2a6ff acb1b5ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e1e5e8ff e8e9e8ff e8e9e9ff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5f6f8cff 8da3ccff 8094bbff 060a0fff 131721ff 8da3ccff 8aa0c9ff 131822ff 000102ff 889dc5ff 8da3ccff 303949ff 000000ff 7a8db2ff 8da3ccff 8da3ccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0d0d0dff d5d7d6ff e8e9e9ff e4e7e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff aeb3b7ff 9ea4a8ff d2d4d483 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 a2a7acea 9ea4a7ff caced2ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e6e8e9ff ebecebff e2e3e2ff 0d0d0dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b6a88ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 959696ff ebecebff e7e9eaff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff d8dce0ff 9ea4a7ff 989da2ff ffffff09 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e3e3e740 989da2ff 9fa4a8ff dfe2e7ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff e9ebecff ecededff d9dadaff 0a0a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 576584ff 8095c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 949494ff ecededff e9ebecff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff a7adb0ff 9ba0a5ff e5e9e944 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b8bcbfaf 9ba1a5ff a6acafff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff ebecedff eff0f0ff ebececff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff b9b9b9ff eff0f0ff ebecedff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff adb3b7ff 9ba1a5ff 989da3f7 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff03 94999fff 999fa4ff c8cdd1ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff edefefff f1f1f1ff eeeeedff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ecedecff f1f1f1ff eeeff0ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff 999fa4ff 949a9fff f1f1f125 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e7e7e740 94999eff 989ea3ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff eaeceeff f3f4f3ff eff0f0ff 686968ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5d5d5dff e8e8e9ff f3f4f3ff eef0f1ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 999fa4ff 969ba0ff e2e6e647 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e0e0e051 959ba0ff 989fa3ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff e1e4e8ff f6f6f6ff f6f6f5ff dbdbdbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cbcbcbff f6f6f6ff f6f6f5ff e3e7eaff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff 9fa5a9ff 969ca1ff b7babfb2 ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 b3b8bcb6 949a9fff 979da2ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e0e3e8ff f0f2f2ff f7f8f7ff f6f6f5ff bfbebeff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a2a2a1ff f0f0efff f7f8f7ff f1f3f3ff e1e5e8ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff a6acb0ff 949a9fff 91979cff ffffff0a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff06 959a9fff 92989dff 9ea4a8ff dce0e5ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e3e7eaff f7f7f7ff f9f9f9ff f8f8f8ff b6b6b6ff 444444ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b4b4b4ff f5f5f5ff f9f9f9ff f9f9f9ff e6e9ecff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff acb1b7ff 92989dff 90969cff ffffff0a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff09 8f959bff 90969cff 93999fff d9dde3ff dce0e6ff dce0e5ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff e8eaeeff f6f7f8ff fcfbfbff fcfbfbff e8e8e7ff a8a7a7ff 80807fff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 727272ff a7a7a7ff dededdff fcfbfbff fcfbfbff fcfbfbff e9ebeeff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e5ff dce0e6ff dbdee4ff aeb3b9ff 90969cff 8f959bff ffffff08 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff06 989da2fe 8f959bff 8f959bff d8dce1ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dce0e5ff e3e6eaff edeff1ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfcff aeaeadff 989797ff 989897ff 989797ff 989897ff 989797ff 989897ff 989797ff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff f1f2f4ff e6e9ecff dce0e5ff dcdfe5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff d8dce1ff a0a5abff 8f959bff 8f949aff ffffff05 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 b5b8bcbe 8e949aff 8e949bff bbc0c5ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff e1e5e9ff eff1f2ff f0f1f4ff fefefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fefefeff f2f3f5ff eff1f3ff e2e5e9ff dcdfe5ff dcdfe5ff dcdfe5ff dcdfe5ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff d3d7dcff 8e949bff 8e949bff 92979cf8 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 bec2c496 8d9399ff 8d9399ff b5babfff d7dbe0ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff b6bbc0ff 8d9399ff 8d9399ff bdc0c49b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d3d5d78b 92969cf4 8b9197ff 8b9097ff c6cad0ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff d1d5dbff 8c9298ff 8b9197ff 8e949af9 bcbfc29f ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 aaadb0c8 8a9096ff 898f96ff a6abb1ff d3d7dcff dadee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dadee3ff d4d8ddff b3b7bdff 898f96ff 8a9096ff 9ba0a5ea ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 caced081 92969cf3 898e94ff 888d94ff acb1b7ff d2d6dcff dadee3ff dadee3ff dadee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d4d8deff b0b5bbff 888d94ff 888d94ff 90949af6 bcbec1a4 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b9bcbea1 8e9298f9 868c93ff 868c93ff 868c93ff d0d4daff d8dce2ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d9dde3ff d4d8deff 969ca2ff 868c93ff 868c93ff 8b9096fc acafb3bf ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 c2c4c88f 8b8f95ff 858a91ff 848a91ff 848a91ff 8c9299ff d3d7ddff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d8dce2ff 9ca2a8ff 848a91ff 848a91ff 848a90ff 8b8f95ff afb1b5ba ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff09 f2f2f54c 8f9398ff 898d93ff 848a90ff 83898fff 848a90ff 8a9096ff 8a9097ff b2b7bdff d6dae0ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff c0c4caff 8b9197ff 8a9097ff 858b91ff 83898fff 83898fff 878c93ff 898d94ff d9d9dd8e ffffff0b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 989ca2ff 888c92ff 878c92ff 83898fff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 82898fff 868b92ff 888c92ff 91959bff ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 9ca0a6ff 888c92ff 878c91ff 868b91ff 868b91ff 868b91ff 868b91ff 878c91ff 878c91ff 9b9fa5ff ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ +00000000 a5a9aeff b1b5b8ff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e3e7eaff d1d3d2ff c8cacaff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 777877ff d1d3d2ff e3e7eaff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff babec1ff a7abafff 00000000 │ │ +00000000 babdc1bc b0b4b7ff dde0e5ff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff d3d5d5ff cfd1d0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cccfcdff d3d5d5ff e5e8ecff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff b0b4b6ff a2a6abff 00000000 │ │ +00000000 d4d6db71 adb1b4ff c4c7caff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff dde0e2ff d5d7d6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff d4d6d6ff d6d8d6ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff d1d4d9ff aeb2b5ff cfd1d58b 00000000 │ │ +00000000 eaeaea3d a2a7acff b8bcbfff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e4e7eaff d7d9d9ff caccccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b0b2b2ff d7d9d9ff e3e7e9ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff c0c4c8ff a7abafff d6d8da6f 00000000 │ │ +00000000 00000000 9ea4a8ff aaaeb1ff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff dadbdbff dadcdbff 080a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 626c79ff 919fb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 060606ff dadcdbff dadbdbff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff acb1b5ff a1a5aaff ffffff0d 00000000 │ │ +00000000 00000000 cfd1d380 a8adb0ff c2c6caff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e6e9ff dbdeddff b6b8b8ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7c889bff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7d7d7dff dbdeddff e1e3e6ff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff d1d4d8ff a9adb0ff b6babec4 00000000 00000000 │ │ +00000000 00000000 ebf0f034 9ea4a8ff aeb2b6ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff dee0e0ff dedfdfff 141414ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 758397ff adc1deff adc1deff a3b7d3ff a8bbd8ff adc1deff adc1deff acc0ddff a0b2cdff adc1deff adc1deff adc1deff 90a1baff adc1deff adc1deff adc1deff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0f0f0fff dedfdfff dee0e0ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff b6bbbeff a1a5aaff dde0e35b 00000000 00000000 │ │ +00000000 00000000 00000000 acb0b5d7 a4a9aeff d1d5daff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e2e5eaff e0e3e1ff d5d7d6ff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 707f95ff a4b9daff 92a5c2ff 0e1217ff 06070bff a4b9daff a0b5d4ff 000000ff 000000ff 9eb2d1ff a4b9daff 11151bff 181d25ff 899bb6ff a4b9daff a4b9daff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a0a1a0ff e0e3e1ff e1e4e7ff e3e6eaff e2e5eaff e3e6eaff e2e5eaff e3e6eaff e2e5eaff dfe3e7ff a4a9adff 9ba1a6ff 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 e2e2e250 9fa4a8ff b0b5b9ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e4e5ff e3e4e4ff 747474ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 6a7a92ff 9cb2d5ff 7f92afff 303846ff 1d222cff 9cb2d5ff 94aacbff 010202ff 58647bff 95aaccff 9cb2d5ff 000000ff 889bbaff 627187ff 9cb2d5ff 9cb2d5ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 3f403fff e3e4e4ff e2e4e4ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff b5babeff a2a7abff d4d6d971 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 a2a6abed a2a6abff d4d7dcff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e5e7e6ff e5e7e6ff 1d1e1dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 65748fff 94aad0ff 788babff 222834ff 161b25ff 94aad0ff 8ca1c6ff 010202ff 434f61ff 8da2c7ff 94aad0ff 000000ff 7d90b1ff 5f6f8aff 94aad0ff 94aad0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 141414ff e5e7e6ff e5e7e6ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff dfe2e7ff a2a6abff 9a9fa4ff f4f4f418 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 e0e4e74b 9ca2a6ff acb1b5ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e1e5e8ff e8e9e8ff e8e9e9ff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5f6f8cff 8da3ccff 8094bbff 060a0fff 131721ff 8da3ccff 8aa0c9ff 131822ff 000102ff 889dc5ff 8da3ccff 303949ff 000000ff 7a8db2ff 8da3ccff 8da3ccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0d0d0dff d5d7d6ff e8e9e9ff e4e7e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff aeb3b7ff 9ea4a8ff d2d4d483 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 a2a7acea 9ea4a7ff caced2ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e6e8e9ff ebecebff e2e3e2ff 0d0d0dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b6a88ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 959696ff ebecebff e7e9eaff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff d8dce0ff 9ea4a7ff 989da2ff ffffff09 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 e3e3e740 989da2ff 9fa4a8ff dfe2e7ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff e9ebecff ecededff d9dadaff 0a0a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 576584ff 8095c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 949494ff ecededff e9ebecff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff a7adb0ff 9ba0a5ff e5e9e944 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 b8bcbfaf 9ba1a5ff a6acafff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff ebecedff eff0f0ff ebececff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff b9b9b9ff eff0f0ff ebecedff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff adb3b7ff 9ba1a5ff 989da3f7 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 ffffff03 94999fff 999fa4ff c8cdd1ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff edefefff f1f1f1ff eeeeedff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ecedecff f1f1f1ff eeeff0ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff 999fa4ff 949a9fff f1f1f125 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 e7e7e740 94999eff 989ea3ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff eaeceeff f3f4f3ff eff0f0ff 686968ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5d5d5dff e8e8e9ff f3f4f3ff eef0f1ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 999fa4ff 969ba0ff e2e6e647 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 e0e0e051 959ba0ff 989fa3ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff e1e4e8ff f6f6f6ff f6f6f5ff dbdbdbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cbcbcbff f6f6f6ff f6f6f5ff e3e7eaff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff 9fa5a9ff 969ca1ff b7babfb2 ffffff01 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 b3b8bcb6 949a9fff 979da2ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e0e3e8ff f0f2f2ff f7f8f7ff f6f6f5ff bfbebeff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a2a2a1ff f0f0efff f7f8f7ff f1f3f3ff e1e5e8ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff a6acb0ff 949a9fff 91979cff ffffff0a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff06 959a9fff 92989dff 9ea4a8ff dce0e5ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e3e7eaff f7f7f7ff f9f9f9ff f8f8f8ff b6b6b6ff 444444ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b4b4b4ff f5f5f5ff f9f9f9ff f9f9f9ff e6e9ecff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff acb1b7ff 92989dff 90969cff ffffff0a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff09 8f959bff 90969cff 93999fff d9dde3ff dce0e6ff dce0e5ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff e8eaeeff f6f7f8ff fcfbfbff fcfbfbff e8e8e7ff a8a7a7ff 80807fff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 727272ff a7a7a7ff dededdff fcfbfbff fcfbfbff fcfbfbff e9ebeeff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e5ff dce0e6ff dbdee4ff aeb3b9ff 90969cff 8f959bff ffffff08 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff06 989da2fe 8f959bff 8f959bff d8dce1ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dce0e5ff e3e6eaff edeff1ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfcff aeaeadff 989797ff 989897ff 989797ff 989897ff 989797ff 989897ff 989797ff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff f1f2f4ff e6e9ecff dce0e5ff dcdfe5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff d8dce1ff a0a5abff 8f959bff 8f949aff ffffff05 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 b5b8bcbe 8e949aff 8e949bff bbc0c5ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff e1e5e9ff eff1f2ff f0f1f4ff fefefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fefefeff f2f3f5ff eff1f3ff e2e5e9ff dcdfe5ff dcdfe5ff dcdfe5ff dcdfe5ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff d3d7dcff 8e949bff 8e949bff 92979cf8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 bec2c496 8d9399ff 8d9399ff b5babfff d7dbe0ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff b6bbc0ff 8d9399ff 8d9399ff bdc0c49b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d3d5d78b 92969cf4 8b9197ff 8b9097ff c6cad0ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff d1d5dbff 8c9298ff 8b9197ff 8e949af9 bcbfc29f 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 aaadb0c8 8a9096ff 898f96ff a6abb1ff d3d7dcff dadee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dadee3ff d4d8ddff b3b7bdff 898f96ff 8a9096ff 9ba0a5ea 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 caced081 92969cf3 898e94ff 888d94ff acb1b7ff d2d6dcff dadee3ff dadee3ff dadee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d4d8deff b0b5bbff 888d94ff 888d94ff 90949af6 bcbec1a4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 b9bcbea1 8e9298f9 868c93ff 868c93ff 868c93ff d0d4daff d8dce2ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d9dde3ff d4d8deff 969ca2ff 868c93ff 868c93ff 8b9096fc acafb3bf 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 c2c4c88f 8b8f95ff 858a91ff 848a91ff 848a91ff 8c9299ff d3d7ddff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d8dce2ff 9ca2a8ff 848a91ff 848a91ff 848a90ff 8b8f95ff afb1b5ba ffffff01 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff09 f2f2f54c 8f9398ff 898d93ff 848a90ff 83898fff 848a90ff 8a9096ff 8a9097ff b2b7bdff d6dae0ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff c0c4caff 8b9197ff 8a9097ff 858b91ff 83898fff 83898fff 878c93ff 898d94ff d9d9dd8e ffffff0b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 989ca2ff 888c92ff 878c92ff 83898fff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 82898fff 868b92ff 888c92ff 91959bff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 9ca0a6ff 888c92ff 878c91ff 868b91ff 868b91ff 868b91ff 868b91ff 878c91ff 878c91ff 9b9fa5ff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ } ├── res/drawable/icon_statusbar.png ├── sng │ │ @@ -1,32 +1,32 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 24; height: 24; bitdepth: 8; │ │ using grayscale alpha; │ │ } │ │ IMAGE { │ │ pixels hex │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 4d2b 9285 c1ae c6bf c6c1 c6af 9088 5834 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 4d38 deb7 faff fdff fdff fdff fdff fdff fdff fbff dcc0 633b ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 7776 f7fe fdff fdff f6ff edff e6ff e6ff edff f6ff fdff fdff f7ff 9e84 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ac91 faff fcff f9ff c6ff 67ff 1aff 1fff 1fff 12ff 63ff c5ff f9ff fcff faff e6be 0001 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 9d5e f7ff faff eaff 79ff 68ff 9eff afff c6ff c8ff a8ff 9eff 67ff 70ff e4ff faff f8ff 9e69 ff00 ff00 ff00 │ │ -ff00 ff00 3025 ecf3 f9ff f0ff 6fff 88ff b9ff beff a9ff c3ff c5ff 9aff b7ff bbff 87ff 6cff eaff f9ff edfa 4827 ff00 ff00 │ │ -ff00 ff00 988b f8ff f9ff 93ff 84ff 9fff a2ff ebff a1ff a9ff 9fff 77ff ecff a3ff 9fff 82ff 8cff f9ff f9ff 9791 ff00 ff00 │ │ -ff00 0004 e4ec f7ff e6ff 77ff b9ff a3ff 94ff 94ff 94ff 94ff 98ff 84ff 94ff 94ff a1ff bbff 74ff dfff f7ff e4f5 2008 ff00 │ │ -ff00 4044 ecff f6ff bdff 82ff 88ff ceff 94ff 88ff 88ff 88ff aaff 61ff 88ff 8fff d1ff 88ff 82ff b0ff f6ff edff 624e ff00 │ │ -ff00 846e efff f1ff 96ff 7cff 7cff 7cff 7cff 7cff 7cff 92ff bcff 66ff 7cff 7cff 7cff 7cff 7cff 91ff f0ff f2ff 8278 ff00 │ │ -ff00 7f83 f3ff f0ff 67ff 9fff bcff 9dff 6eff 6fff 66ff f0ff f2ff 65ff 6eff 6eff 9dff bcff a1ff 2bff efff f4ff 7998 ff00 │ │ -ff00 7c7f f1ff efff 62ff 24ff 38ff 4eff 52ff 60ff 5dff d6ff dbff 5aff 60ff 54ff 4fff 39ff 25ff 36ff efff f3ff 7794 ff00 │ │ -ff00 7769 e9ff f0ff 77ff 00ff 00ff 00ff 00ff 00ff 16ff 13ff 13ff 17ff 00ff 00ff 00ff 00ff 00ff 70ff efff ebff 776d ff00 │ │ -ff00 3e2d ddff f0ff dfff 00ff 00ff 00ff 00ff 00ff 01ff 01ff 01ff 01ff 00ff 00ff 00ff 00ff 00ff dcff f0ff e0ff 3d3b ff00 │ │ -ff00 0002 d5d7 efff edff 2cff 00ff 00ff 00ff 00ff c5ff cbff caff c7ff 00ff 00ff 00ff 00ff 28ff edff efff d5e4 0004 ff00 │ │ -ff00 ff00 696b e7ff edff d0ff 12ff 00ff 00ff 00ff 86ff 77ff 85ff 9bff 00ff 00ff 00ff 10ff c8ff edff e8ff 7b76 ff00 ff00 │ │ -ff00 ff00 1e11 c9e4 ecff ecff b0ff 10ff 00ff 00ff 77ff 7aff 7aff 7aff 00ff 00ff 0fff a3ff ecff ecff c9ec 2614 ff00 ff00 │ │ -ff00 ff00 ff00 4a2d d3ff ebff ecff d4ff 2cff 04ff 00ff 00ff 00ff 00ff 00ff 2bff d2ff edff ebff d5ff 7134 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 aa42 d0fe eaff eaff edff f6ff 8fff 57ff 55ff 8eff f5ff eeff eaff eaff d4ff aa42 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 443c abe5 e2ff e8ff e8ff eaff eaff eaff eaff e8ff e8ff e4ff abe8 4040 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 1716 8577 c3e9 d2ff e0ff e8ff e8ff e2ff d2ff c1f1 847c 1518 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 4d2b 9285 c1ae c6bf c6c1 c6af 9088 5834 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 4d38 deb7 faff fdff fdff fdff fdff fdff fdff fbff dcc0 633b 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 7776 f7fe fdff fdff f6ff edff e6ff e6ff edff f6ff fdff fdff f7ff 9e84 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 ac91 faff fcff f9ff c6ff 67ff 1aff 1fff 1fff 12ff 63ff c5ff f9ff fcff faff e6be 0001 0000 0000 0000 │ │ +0000 0000 0000 9d5e f7ff faff eaff 79ff 68ff 9eff afff c6ff c8ff a8ff 9eff 67ff 70ff e4ff faff f8ff 9e69 0000 0000 0000 │ │ +0000 0000 3025 ecf3 f9ff f0ff 6fff 88ff b9ff beff a9ff c3ff c5ff 9aff b7ff bbff 87ff 6cff eaff f9ff edfa 4827 0000 0000 │ │ +0000 0000 988b f8ff f9ff 93ff 84ff 9fff a2ff ebff a1ff a9ff 9fff 77ff ecff a3ff 9fff 82ff 8cff f9ff f9ff 9791 0000 0000 │ │ +0000 0004 e4ec f7ff e6ff 77ff b9ff a3ff 94ff 94ff 94ff 94ff 98ff 84ff 94ff 94ff a1ff bbff 74ff dfff f7ff e4f5 2008 0000 │ │ +0000 4044 ecff f6ff bdff 82ff 88ff ceff 94ff 88ff 88ff 88ff aaff 61ff 88ff 8fff d1ff 88ff 82ff b0ff f6ff edff 624e 0000 │ │ +0000 846e efff f1ff 96ff 7cff 7cff 7cff 7cff 7cff 7cff 92ff bcff 66ff 7cff 7cff 7cff 7cff 7cff 91ff f0ff f2ff 8278 0000 │ │ +0000 7f83 f3ff f0ff 67ff 9fff bcff 9dff 6eff 6fff 66ff f0ff f2ff 65ff 6eff 6eff 9dff bcff a1ff 2bff efff f4ff 7998 0000 │ │ +0000 7c7f f1ff efff 62ff 24ff 38ff 4eff 52ff 60ff 5dff d6ff dbff 5aff 60ff 54ff 4fff 39ff 25ff 36ff efff f3ff 7794 0000 │ │ +0000 7769 e9ff f0ff 77ff 00ff 00ff 00ff 00ff 00ff 16ff 13ff 13ff 17ff 00ff 00ff 00ff 00ff 00ff 70ff efff ebff 776d 0000 │ │ +0000 3e2d ddff f0ff dfff 00ff 00ff 00ff 00ff 00ff 01ff 01ff 01ff 01ff 00ff 00ff 00ff 00ff 00ff dcff f0ff e0ff 3d3b 0000 │ │ +0000 0002 d5d7 efff edff 2cff 00ff 00ff 00ff 00ff c5ff cbff caff c7ff 00ff 00ff 00ff 00ff 28ff edff efff d5e4 0004 0000 │ │ +0000 0000 696b e7ff edff d0ff 12ff 00ff 00ff 00ff 86ff 77ff 85ff 9bff 00ff 00ff 00ff 10ff c8ff edff e8ff 7b76 0000 0000 │ │ +0000 0000 1e11 c9e4 ecff ecff b0ff 10ff 00ff 00ff 77ff 7aff 7aff 7aff 00ff 00ff 0fff a3ff ecff ecff c9ec 2614 0000 0000 │ │ +0000 0000 0000 4a2d d3ff ebff ecff d4ff 2cff 04ff 00ff 00ff 00ff 00ff 00ff 2bff d2ff edff ebff d5ff 7134 0000 0000 0000 │ │ +0000 0000 0000 0000 aa42 d0fe eaff eaff edff f6ff 8fff 57ff 55ff 8eff f5ff eeff eaff eaff d4ff aa42 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 443c abe5 e2ff e8ff e8ff eaff eaff eaff eaff e8ff e8ff e4ff abe8 4040 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 1716 8577 c3e9 d2ff e0ff e8ff e8ff e2ff d2ff c1f1 847c 1518 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ } ├── res/drawable-ldpi-v4/ic_tab_user_measurement_selected.png ├── sng │ │ @@ -16,87 +16,61 @@ │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (153,153,153) # rgb = (0x99,0x99,0x99) grey60 │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ - (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ - (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ - (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ - (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ - (206,206,206) # rgb = (0xce,0xce,0xce) │ │ - (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ - (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ - (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ - (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ - (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ - (202,202,202) # rgb = (0xca,0xca,0xca) │ │ - (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ - (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ - (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ - (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ - (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ - (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ - (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ @@ -116,41 +90,35 @@ │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ - (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ - (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (164,164,164) # rgb = (0xa4,0xa4,0xa4) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ - (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ - (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ @@ -179,22 +147,20 @@ │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ - (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (202,202,202) # rgb = (0xca,0xca,0xca) │ │ @@ -215,30 +181,21 @@ │ │ (153,153,153) # rgb = (0x99,0x99,0x99) grey60 │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (166,166,166) # rgb = (0xa6,0xa6,0xa6) grey65 │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ - (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (174,174,174) # rgb = (0xae,0xae,0xae) │ │ - (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ - (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ - (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (206,206,206) # rgb = (0xce,0xce,0xce) │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ @@ -253,61 +210,104 @@ │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ + (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ + (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ + (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ + (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ + (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ + (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ + (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ + (206,206,206) # rgb = (0xce,0xce,0xce) │ │ + (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ + (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ + (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ + (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ + (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ + (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ + (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ + (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ + (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ + (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ + (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ + (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ + (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ + (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ + (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ + (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ + (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ + (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ + (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ + (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ + (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ + (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ + (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ + (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ + (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ + (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ + (174,174,174) # rgb = (0xae,0xae,0xae) │ │ + (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ + (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ + (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ + (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ + (172,172,172) # rgb = (0xac,0xac,0xac) │ │ } │ │ tRNS { │ │ - 0 2 1 3 7 11 5 3 196 225 226 226 168 4 205 246 255 184 12 5 29 189 250 255 255 255 229 191 163 41 185 255 255 255 255 255 255 255 239 166 54 167 255 255 255 255 255 248 151 18 6 57 174 255 255 255 255 255 146 35 53 255 255 140 28 9 41 179 141 36 22 181 255 150 201 170 195 247 255 155 195 242 232 215 165 14 193 247 255 237 175 47 180 249 220 52 181 218 56 166 216 10 175 216 150 242 194 28 151 242 233 177 181 147 15 169 255 156 167 255 255 255 158 35 10 166 193 91 123 255 142 38 137 223 175 9 28 127 247 154 40 185 255 176 8 126 240 149 37 180 177 151 232 249 172 24 180 179 5 145 229 239 172 16 178 230 151 157 231 241 179 4 60 190 158 142 235 178 213 255 164 145 247 249 171 204 255 155 118 166 204 244 170 17 116 148 24 200 237 177 9 97 158 41 201 237 241 178 8 166 202 198 212 144 44 255 255 255 239 176 174 178 235 255 255 255 159 39 255 255 255 220 156 150 149 150 34 197 187 184 184 130 1 230 196 195 197 40 222 220 220 157 9} │ │ + 0 2 1 3 7 11 5 3 196 225 226 226 168 4 205 246 184 12 5 29 189 250 229 191 163 41 185 239 166 54 167 248 151 18 6 57 174 146 35 53 140 28 9 41 179 141 36 22 181 150 201 170 195 247 155 195 242 232 215 165 14 193 247 237 175 47 180 249 220 52 181 218 56 166 216 10 175 216 150 242 194 28 151 242 233 177 181 147 15 169 156 167 158 35 10 166 193 91 123 142 38 137 223 175 9 28 127 247 154 40 185 176 8 126 240 149 37 180 177 151 232 249 172 24 180 179 5 145 229 239 172 16 178 230 151 157 231 241 179 4 60 190 158 142 235 178 213 164 145 247 249 171 204 155 118 166 204 244 170 17 116 148 24 200 237 177 9 97 158 41 201 237 241 178 8 166 202 198 212 144 44 239 176 174 178 235 159 39 220 156 150 149 150 34 197 187 184 184 130 1 230 196 195 197 40 222 220 220 157 9} │ │ IMAGE { │ │ pixels hex │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000001020103040506000000020201010102000000000000000000 │ │ 0000000000000000000000000000000000000000000000070008090a0b0a0c0601000002020200000000000000000000 │ │ -00000000000000000000000000000000000000000000000d0e0f10101010111213000000020200000000000000000000 │ │ -0000000000000000000000000006000003020000000214151617181818191a1b1c000202020102000000000200000000 │ │ -0000000000000000000000000007000d0d020201001d1e1f202122232324172526271202020207010000020200000000 │ │ -0000000000000000000000000000030601070d0128291f18242a2b2b2b2c242d2e2f3031020001010202020000000000 │ │ -000000000000000000000000000313010d321333343518242c36373737362c223817393a3b0000000202020000000000 │ │ -000000000000000000000000000d000d32013c293d19212a363737373736362c2338203e3f4000000002020200000000 │ │ -000000000000000000000000000002410d42433520212a2b36363636363636362b2338203e4445010000020100000000 │ │ -0000000000000000000000000000130246473d2038232b3636363636363636362b2c2338174849410000020200000000 │ │ -000000000000000000000000000000024a352038232c2b2b2b2b2b2b2b2b2b2b2b2b2c222d173e4b1301000000000000 │ │ -0000000000000000000000000001004c4d172d222c2b2b2b2b2b2b2b2b2b2b2b2b2b2c2a242d4e4f120d000000000000 │ │ -000000000000000002020000020050514e2d222a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2418525354020000000000 │ │ -000000000100030100010d025556575818242a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23212e25595a0000000000 │ │ -0000000002060d0703070d5b5c5d581821232a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a242d17105e0100000000 │ │ -00000000000d010d13015f603e581921222a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a23212d17614100000000 │ │ -000000000000010d0762633958203824232323232323232323232323232323232323232323232322242d646500000000 │ │ -000000000000070733664858203824232323232323232323232323232323232323232323232323232222670d00000000 │ │ -0000000000000007683e58203824232323232323232323232323232323232323232323232323232a2c696a0000000000 │ │ -000000000000026b6c58202d2422222222222222222222222222222222222222222222222222226d6e6f070000000000 │ │ -00000000010001703e172d21242424242424242424242424242424242424242424242424242424717202000d00000000 │ │ -00000000000102732e183824242424242424242424242424242424242424242424242424242474750000000000000000 │ │ -0000000003020176172a777821212121212121212121212121212121212121212121212121797a7b0000000000000000 │ │ -0000000002007c7d207e7f80812121212121212121212121212121212121212121212121748283000000000000000000 │ │ -000000000000848518868788898a213838383838383838383838383838383838383838748b8c00000000000000000000 │ │ -0000000001008d8e198f0700909192243838383838383838383838383838383838383693940102000000000000000000 │ │ -000000000702952e20960200020297982438383838383838383838383838383821999a9b000702000000000000000000 │ │ -0000000002029c17189d000207029e9fa0212d2d2d2d2d2d2d2d2d2d2d2d2d38a1a2a300020200000000000000000000 │ │ -00000000000da417a5a6000002070007a7a8382d2d2d2d2d2d2d2d2d2d2d38a9aaab0200020000000000000000000000 │ │ -0000000002acad17aeab000000010200abafb02d18181818181818181818a1b107000702000202000000000000000000 │ │ -000000000db2b317b40700000004070001abb5b6181818181818181818b7b80000000000000000000000000000000000 │ │ -0000000000b9ba4ebb0000000000000d070001bc741919191919191936bd9e0000000000000000000000000000000000 │ │ -000000000dbeba2ebfc00d0141010000000202c1c22020202020202bc3c4000000000000000000000000000000000000 │ │ -0000000007c558588ec6c7c80100020301010101c9172020202036cacb02020000000000000000000000000000000000 │ │ -00000000cccd2e2e103dcecf0700d0d1d2d2ccd3d44e1717172cd5d60200000000000000000000000000000000000000 │ │ -00000000d7d82e4ebad935dadbdcdddedfe0e135182a2c2b2be2e3000000000000000000000000000000000000000000 │ │ -0000000025e44e4e4ebad935e5e635ba4e4e4ee7e8e9eaebeaec01020000000000000000000000000000000000000000 │ │ -00000000d8ba4e4e4e2018202e58edeeeff0f0f113f2f2f20000f2010000f20000000000000000000000000000000000 │ │ -000000002e20181818f3f4f5f6f6f7abf2f201f20001f200000000000000000000000000000000000000000000000000 │ │ -00000000f8f9f9fafafbfcf2000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -00000000ab03010000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +00000000000000000000000000000000000000000000000d0e0fd2d2d2d2101112000000020200000000000000000000 │ │ +00000000000000000000000000060000030200000002131415d3d4d4d4d5161718000202020102000000000200000000 │ │ +0000000000000000000000000007000d0d02020100191ad6d7d8d9dadadbd3dc1b1c1102020207010000020200000000 │ │ +0000000000000000000000000000030601070d011d1ed6d4dbdddedededfdbe0e11f2021020001010202020000000000 │ │ +000000000000000000000000000312010d22122324e2d4dbdfe3e4e4e4e3dfd9e5d3e625260000000202020000000000 │ │ +000000000000000000000000000d000d2201271ee7d5d8dde3e4e4e4e4e3e3dfdae5d7e8282900000002020200000000 │ │ +0000000000000000000000000000022a0d2b2ce2d7d8dddee3e3e3e3e3e3e3e3dedae5d7e82d2e010000020100000000 │ │ +000000000000000000000000000012022f30e7d7e5dadee3e3e3e3e3e3e3e3e3dedfdae5d3e9312a0000020200000000 │ │ +0000000000000000000000000000000232e2d7e5dadfdededededededededededededfd9e0d3e8331201000000000000 │ │ +0000000000000000000000000001003435d3e0d9dfdedededededededededededededfdddbe0ea36110d000000000000 │ │ +00000000000000000202000002003738eae0d9dddfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdddbd4393a3b020000000000 │ │ +000000000100030100010d023c3d3eebd4dbdddfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdddad8e1dc3f400000000000 │ │ +0000000002060d0703070d414243ebd4d8dadddddddddddddddddddddddddddddddddddddddddbe0d3d2440100000000 │ │ +00000000000d010d12014546e8ebd5d8d9dddddddddddddddddddddddddddddddddddddddddddad8e0d3472a00000000 │ │ +000000000000010d074849e6ebd7e5dbdadadadadadadadadadadadadadadadadadadadadadadad9dbe04a4b00000000 │ │ +0000000000000707234ce9ebd7e5dbdadadadadadadadadadadadadadadadadadadadadadadadadad9d94d0d00000000 │ │ +00000000000000074ee8ebd7e5dbdadadadadadadadadadadadadadadadadadadadadadadadadadddf4f500000000000 │ │ +000000000000025152ebd7e0dbd9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9535455070000000000 │ │ +0000000001000156e8d3e0d8dbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb575802000d00000000 │ │ +0000000000010259e1d4e5dbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbec5a0000000000000000 │ │ +000000000302015bd3ddedeed8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8ef5c5d0000000000000000 │ │ +0000000002005e5fd7606162f0d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8ec6364000000000000000000 │ │ +0000000000006566d46768696a6bd8e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5ec6c6d00000000000000000000 │ │ +0000000001006ef1d56f0700707172dbe5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e373740102000000000000000000 │ │ +00000000070275e1d776020002027778dbe5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d8797a7b000702000000000000000000 │ │ +0000000002027cd3d47d000207027e7f80d8e0e0e0e0e0e0e0e0e0e0e0e0e0e581828300020200000000000000000000 │ │ +00000000000d84d385860000020700078788e5e0e0e0e0e0e0e0e0e0e0e0e5898a8b0200020000000000000000000000 │ │ +00000000028c8dd38e8b0000000102008b8f90e0d4d4d4d4d4d4d4d4d4d4819107000702000202000000000000000000 │ │ +000000000d92f2d39307000000040700018b9495d4d4d4d4d4d4d4d4d496970000000000000000000000000000000000 │ │ +000000000098f3ea990000000000000d0700019aecd5d5d5d5d5d5d5e39b7e0000000000000000000000000000000000 │ │ +000000000d9cf3e19d9e0d012a0100000002029fa0d7d7d7d7d7d7dea1a2000000000000000000000000000000000000 │ │ +0000000007a3ebebf1a4a5a60100020301010101a7d3d7d7d7d7e3a8a902020000000000000000000000000000000000 │ │ +00000000aaabe1e1d2e7acad0700aeafb0b0aab1b2ead3d3d3dfb3b40200000000000000000000000000000000000000 │ │ +00000000f4f5e1eaf3f6e2b5b6b7b8b9f7f8f9e2d4dddfdedebabb000000000000000000000000000000000000000000 │ │ +00000000dcfaeaeaeaf3f6e2fbfce2f3eaeaeabcbdbebfc0bfc101020000000000000000000000000000000000000000 │ │ +00000000f5f3eaeaead7d4d7e1ebc2c3c4c5c5c612c7c7c70000c7010000c70000000000000000000000000000000000 │ │ +00000000e1d7d4d4d4c8c9cacbcbcc8bc7c701c70001c700000000000000000000000000000000000000000000000000 │ │ +00000000cdcececfcfd0d1c7000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +000000008b03010000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ } ├── res/drawable-ldpi-v4/icon.png ├── sng │ │ @@ -1,45 +1,45 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 76; height: 77; bitdepth: 8; │ │ using color alpha; │ │ } │ │ IMAGE { │ │ pixels hex │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 eef1f149 e3e5e776 e3e5e776 e0e4e77d d2d6dabb d2d5d7bd ccd1d5de ccd1d5de d1d3d7cd d2d6d7bb e0e2e68e e3e5e776 e3e5e776 eeeeee4c ffffff05 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ececef51 e2e4e67c ccd0d3f4 d9dbdeff dadddfff f0f1f1ff fffefeff fffefeff fffefeff fffefeff fffffeff fffefeff fffefeff fffefeff fffefeff fffefeff f2f2f2ff dcdfe1ff d9dcdeff cdd1d5ff e0e4e482 e9ecec5d ffffff10 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 efeff341 dcdfe191 d1d4d6ff dee0e2ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fefdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff e4e6e7ff d3d6d9ff d3d7dac7 eaeeee4a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff08 eef2f23d caced0f9 dde0e1ff fcfcfbff fcfcfbff fcfcfcff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fcfcfcff fcfcfcff fcfcfbff e2e4e6ff cbcfd1ff e7e7e96a f5f5f519 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 efefef50 c6caceff edeeefff fafafaff fafafaff fbfbfcff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfcfcff fafafaff fafafaff f4f5f5ff c7cccfff e0e1e38a ffffff11 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f3ffff15 c3c8cbf7 ecedeeff f9f9f9ff f9f9f9ff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff f9f9f9ff f9f9f9ff f3f4f4ff c2c7caff f7f7f720 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff02 caced0d0 e3e5e6ff f7f8f7ff f7f7f7ff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff f7f8f7ff f7f8f7ff e9ebecff c5c9cde2 ffffff02 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 bdc3c7f9 f2f3f2ff f6f6f5ff fafafaff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fafbfcff f6f6f5ff f4f5f5ff bdc2c6fc f0f3f342 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d2d7d9b7 d5d7dafc f3f4f3ff f6f6f5ff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff f8f9f9ff f3f4f4ff e4e6e7ff caced1cb ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 cbcfd3c3 e4e5e6ff f2f2f1ff f8f9f9ff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fafbfcff dcdedfff 9ea3a8ff 9ea3a8ff 8a8f96ff 848a91ff 82898fff 82898fff 82898fff 82898fff 838990ff 878d94ff 9ea3a7ff 9ea3a8ff b6babeff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff f8f9f9ff f2f2f1ff e5e6e7ff cbcfd1c4 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d0d2d5b7 e0e2e4ff f0f1f0ff f8f9f9ff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff acb0b5ff 9ea3a7ff 848a90ff 848a91ff 848a90ff 848a91ff 848a90ff 848a91ff 575c63ff 393c40ff 393b3fff 484b50ff 83898fff 848a91ff 848a90ff 848a90ff 848a90ff 848a90ff 979ba1ff a9adb2ff f2f3f4ff fafbfcff fafbfbff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfbff f0f1f0ff e9eaeaff c6cbcdd6 ffffff06 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d3d6d9a7 e4e6e6ff eeefefff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff d9dbdeff a6abafff 868c93ff 868b93ff 868c93ff 6d7278ff 3a3c40ff 2e3134ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 17181bff 3a3c40ff 4c5055ff 868c93ff 868b93ff 868c93ff a1a5abff d8daddff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff eeefefff eeeeeeff c0c3c7f5 ffffff0b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d5d9dc99 e2e3e4ff ecededff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff dadcdfff a2a6acff 888e95ff 888e94ff 6e7378ff 3e4143ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2e3139ff 585d6bff 585d6bff 30343bff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 313235ff 686d72ff 888e94ff 888e94ff a2a6abff d8dadcff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff ecededff ecededff c6c9cdf6 ffffff08 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d7dbdd8d dadddeff ebecebff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff bdc0c4ff 8a9096ff 898f96ff 6d7277ff 2f3134ff 020202ff 020202ff 020202ff 2a2d33ff 4f545fff 626876ff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e96abff 8e97abff 8e96abff 8e97abff 656b7aff 4f545fff 2e3139ff 020202ff 020202ff 020202ff 111214ff 585c60ff 8a9096ff 898f96ff a3a8adff f8f9faff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff ebececff ebecebff cbced0c5 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e4e6e87b cfd3d5ff e9ebe9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9faff f8f9fbff f8f9faff f8f9fbff dbdee0ff 9ba0a6ff 8c9298ff 71767aff 2e3134ff 020202ff 020202ff 22242aff 535864ff 8b94a7ff 8b94a8ff 8b94a7ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff bec3ceff bec3ceff 8e96aaff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a7ff 8b94a8ff 545966ff 212429ff 020202ff 020202ff 1b1d1eff 70757aff 8c9298ff 8c9298ff dcdee0ff f8f9faff f8f9fbff f8f9faff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff e9ebe9ff dcdedfff dbdddf81 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f7f7f720 c6c9ccff e7e9e8ff f3f5f5ff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff dddfe2ff 8e949aff 8e949bff 5a5e63ff 020202ff 020202ff 282b31ff 6c7382ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff ffffffff ffffffff 9097aaff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 7f7884ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 717887ff 2b2d35ff 020202ff 020202ff 323539ff 8d9399ff 8e949bff c5c9ccff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff e8e9e9ff cccfd1ff e8e8ea57 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff0a b8bcc1ff e5e7e6ff ebecedff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff c0c4c8ff 90969bff 868b91ff 2c2e30ff 020202ff 1b1d21ff 656b79ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff ffffffff ffffffff 8e96a7ff 878fa2ff 878fa2ff 878fa2ff 8f858fff 42393cff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 656b79ff 1b1d21ff 020202ff 171819ff 7b8085ff 90969bff a3a8adff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f2f3f5ff e5e7e6ff bdc2c4ff ffffff12 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e2e5e56b e2e4e3ff e7e8e8ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff bcbfc3ff 91979dff 81868cff 0f0f10ff 020202ff 474b56ff 858d9fff 858d9fff 858d9fff a2a7b5ff 9da2b2ff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858da0ff ffffffff ffffffff 8c93a4ff 858da0ff 858d9fff 858da0ff a66756ff 4a4f5aff 858d9fff 858da0ff 858d9fff 8f96a7ff b7bbc5ff 868ea1ff 858d9fff 858da0ff 484d58ff 020202ff 020202ff 82878dff 91979dff a3a7adff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff e9ebeaff e3e5e4ff caced0c4 ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 f4f4f42f c2c7c9ff e2e4e3ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff c1c5c9ff 949a9fff 8a8f94ff 020202ff 080a0aff 666c7aff 838b9cff 838b9cff 838b9cff c0c4ccff ffffffff ecedf0ff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff ffffffff ffffffff 8a91a2ff 838b9cff 838b9cff 84899aff af5f42ff 666c7bff 838b9cff 838b9cff 838b9cff d5d7ddff ffffffff d8dbe0ff 838b9cff 838b9cff 828b9cff 666c7bff 080a0bff 020202ff 858b8fff 949a9fff a3a8adff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff e3e5e4ff c7caccff e9e9ec51 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b5babeff e0e2e0ff e7e8e9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff e9ebedff 969da1ff 93999dff 020202ff 050506ff 808799ff 818899ff 808899ff 818899ff 808799ff 808799ff fdfdfdff ffffffff c7cad1ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff ffffffff ffffffff 878e9fff 818899ff 808799ff a66552ff af5f41ff 646a78ff 808799ff 818899ff 9095a5ff ffffffff ffffffff 818899ff 808799ff 818899ff 808899ff 818899ff 808799ff 050506ff 020202ff 90979bff 969da1ff b6bbbeff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f5f6f6ff e0e2e0ff bbbfc3ff ffffff02 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 e9ecec50 c5c9cbff e0e3e2ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff 989ea3ff 989ea3ff 0f0f10ff 020202ff 7d8495ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff bcbfc8ff ffffffff fdfdfdff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff ffffffff ffffffff 868d9cff 7e8596ff 7e8596ff ad5f43ff 763e29ff 666b79ff 7e8596ff 7e8596ff eaebeeff ffffffff bec1c9ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7d8495ff 020202ff 020202ff 989ea3ff 989ea3ff ecedefff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff e3e4e4ff dbdeddff e9ecec50 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 bcc0c4f0 dbdeddff eff1f2ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff a0a6aaff 9ba1a5ff 292a2cff 020202ff 798090ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 7c8393ff 7c8393ff 7c8393ff f2f2f4ff ffffffff cfd1d7ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff ffffffff ffffffff 838a99ff 7c8393ff 8f7373ff ae5e40ff 34180dff 727887ff 7b8293ff bec1c9ff ffffffff ffffffff 7f8696ff 7c8393ff 7b8293ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 797f90ff 020202ff 0d0f0fff 9ba1a5ff 9ca2a6ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f4f5f6ff dbdeddff bec2c5ff ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 e9ecec50 c7caccff e0e2e1ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff b1b5b8ff 9da3a6ff 404244ff 020202ff 757b8bff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 999da9ff ffffffff fdfdfdff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 9499a5ff 9499a5ff 7b8191ff 797f8fff a7614aff ae5e40ff 2c130aff 797f8fff 797f8fff f8f8f9ff ffffffff b7bac3ff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 767c8bff 020202ff 333536ff 9da3a6ff acb0b3ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff e1e3e3ff d6d8d7ff e3e6e95b ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 c0c3c7d9 d8dadaff ebecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff 9fa4a8ff 9fa4a8ff 050505ff 626875ff 767c8cff 757c8cff 767c8cff 767d8cff 767c8cff 767d8cff 767c8cff 767c8cff 767c8cff 767c8cff 767c8cff cbcdd3ff ffffffff dcdee2ff 767c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767d8cff 757c8cff 767d8cff ae5e40ff ae5e40ff 2c130aff 767d8cff c8cbd0ff ffffffff f2f2f4ff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 626875ff 020202ff 8d9195ff 9fa4a8ff eaecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f2f3f5ff d8dadaff bdc1c4f4 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 f3f3f32b bec2c4ff dadcdbff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff abafb3ff a1a6aaff 1f2021ff 4a4f59ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737988ff 737989ff 737988ff 858b99ff e0e1e4ff 8e939fff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff a3624dff ae5e3fff af5e3fff 241611ff 737989ff 7f8593ff d0d2d7ff 969ba5ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 4a4e59ff 0a0a0aff a1a6aaff a1a5aaff f3f4f5ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff dedfe0ff c5c9caff e4e7ea54 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 dee0e36c d1d3d3ff dfe0e0ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f0f1f3ff a3a8acff 92979bff 020202ff 6e7584ff 707686ff 707686ff 767c8aff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff ad5e40ff ae5d3fff ae5d3fff 3f3e46ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 767c8aff 707686ff 707686ff 6f7585ff 020202ff 616467ff a3a8acff dddfe1ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff e7e8e8ff d5d7d6ff cccfd2ae ffffff00 ffffff00 │ │ -ffffff00 ffffff00 b9bdc1f7 d3d5d5ff f0f1f3ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff b0b4b7ff a4a9adff 060606ff 686e7bff 6d7382ff 6d7382ff a5a8b1ff ffffffff c4c6ccff 707684ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 91665fff ae5d3fff ae5d3fff ae5d3fff 595e6bff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff b5b8bfff ffffffff c1c4caff 6d7382ff 6d7382ff 686d7bff 050505ff a5aaaeff a5aaaeff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff d4d6d6ff babec1ff ffffff04 ffffff00 │ │ -ffffff00 f7f7f721 bcc0c2ff d6d9d8ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff edeef1ff a7abafff a6aaaeff 1b1d21ff 6c717eff 6c717dff 6c717eff c5c7cbff ffffffff ffffffff fafafbff a3a6aeff 6c717eff 6c717dff 6c717eff 6b717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff ab5e41ff ae5d3fff ae5d3fff ae5d3fff 575c67ff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717eff 6c717eff 6c717dff 6c717eff 6c717dff 91959eff e9eaecff ffffffff ffffffff e3e4e6ff 6c717dff 6b707eff 6c717eff 1e2022ff 85898cff a7abafff ecedf0ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff dcdedeff c1c5c6ff e2e2e561 ffffff00 │ │ -ffffff00 dbdddf71 c8cbcbff dcdedeff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f4ff dadcdfff a9adb0ff 212222ff 676c78ff 686e7aff 696e7aff 686e7aff 696e7aff 9fa3aaff f1f1f2ff ffffffff ffffffff dadcdfff 848992ff 686e7aff 686e7aff 686e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 726b72ff ae5c3fff ae5c3fff ae5d3fff 954e33ff 565b66ff 696e7aff 686e7aff 696e7aff 686e7aff 686e7aff 686e7aff 686e7aff 686e7aff 7e838cff cacbd0ff ffffffff ffffffff f4f5f5ff b6b9beff 696e7aff 686e7aff 696e7aff 686e7aff 656b77ff 020202ff a9adb0ff babec1ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff dfe1e2ff cfd1d0ff d4d8da89 ffffff00 │ │ -ffffff00 c7cacdc0 cdcfd0ff e8eaecff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff abafb2ff a8acafff 0a0b0dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff babdc2ff f6f6f7ff ffffffff ffffffff aaadb3ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff ac5c40ff ae5c3fff ae5c3fff ae5c3fff 572b1bff 5d626dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 92969eff ffffffff ffffffff fcfcfcff c4c6caff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 0c0d0fff a6aaadff abafb2ff eff0f2ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff cdcfd0ff b3b7bbff ffffff00 │ │ -ffffff00 b4b8bbff cccfcfff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f0f1f4ff f1f2f4ff ebecefff aeb2b5ff a5a8abff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff d4d5d8ff fdfdfdff 696e79ff 626874ff 626874ff 626874ff 636974ff 626874ff 636974ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 636772ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff f2f2f3ff e4e4e7ff 646a75ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 707376ff aeb2b5ff e8eaedff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff cfd1d0ff b9bdbfff ffffff0b │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 eef1f149 e3e5e776 e3e5e776 e0e4e77d d2d6dabb d2d5d7bd ccd1d5de ccd1d5de d1d3d7cd d2d6d7bb e0e2e68e e3e5e776 e3e5e776 eeeeee4c ffffff05 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ececef51 e2e4e67c ccd0d3f4 d9dbdeff dadddfff f0f1f1ff fffefeff fffefeff fffefeff fffefeff fffffeff fffefeff fffefeff fffefeff fffefeff fffefeff f2f2f2ff dcdfe1ff d9dcdeff cdd1d5ff e0e4e482 e9ecec5d ffffff10 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 efeff341 dcdfe191 d1d4d6ff dee0e2ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fefdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff e4e6e7ff d3d6d9ff d3d7dac7 eaeeee4a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff08 eef2f23d caced0f9 dde0e1ff fcfcfbff fcfcfbff fcfcfcff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fcfcfcff fcfcfcff fcfcfbff e2e4e6ff cbcfd1ff e7e7e96a f5f5f519 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 efefef50 c6caceff edeeefff fafafaff fafafaff fbfbfcff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfdfdff fcfcfcff fafafaff fafafaff f4f5f5ff c7cccfff e0e1e38a ffffff11 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 f3ffff15 c3c8cbf7 ecedeeff f9f9f9ff f9f9f9ff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff f9f9f9ff f9f9f9ff f3f4f4ff c2c7caff f7f7f720 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff02 caced0d0 e3e5e6ff f7f8f7ff f7f7f7ff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fcfcfdff fbfcfdff fbfcfdff fbfcfdff fcfdfdff fbfcfdff fcfdfdff fbfcfdff f7f8f7ff f7f8f7ff e9ebecff c5c9cde2 ffffff02 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 bdc3c7f9 f2f3f2ff f6f6f5ff fafafaff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fafbfcff f6f6f5ff f4f5f5ff bdc2c6fc f0f3f342 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d2d7d9b7 d5d7dafc f3f4f3ff f6f6f5ff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfcff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff fbfcfdff f8f9f9ff f3f4f4ff e4e6e7ff caced1cb 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 cbcfd3c3 e4e5e6ff f2f2f1ff f8f9f9ff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fafbfcff dcdedfff 9ea3a8ff 9ea3a8ff 8a8f96ff 848a91ff 82898fff 82898fff 82898fff 82898fff 838990ff 878d94ff 9ea3a7ff 9ea3a8ff b6babeff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fafbfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff fbfcfcff f8f9f9ff f2f2f1ff e5e6e7ff cbcfd1c4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d0d2d5b7 e0e2e4ff f0f1f0ff f8f9f9ff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff acb0b5ff 9ea3a7ff 848a90ff 848a91ff 848a90ff 848a91ff 848a90ff 848a91ff 575c63ff 393c40ff 393b3fff 484b50ff 83898fff 848a91ff 848a90ff 848a90ff 848a90ff 848a90ff 979ba1ff a9adb2ff f2f3f4ff fafbfcff fafbfbff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfcff fafbfbff f0f1f0ff e9eaeaff c6cbcdd6 ffffff06 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d3d6d9a7 e4e6e6ff eeefefff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff d9dbdeff a6abafff 868c93ff 868b93ff 868c93ff 6d7278ff 3a3c40ff 2e3134ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 17181bff 3a3c40ff 4c5055ff 868c93ff 868b93ff 868c93ff a1a5abff d8daddff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff eeefefff eeeeeeff c0c3c7f5 ffffff0b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d5d9dc99 e2e3e4ff ecededff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff dadcdfff a2a6acff 888e95ff 888e94ff 6e7378ff 3e4143ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2e3139ff 585d6bff 585d6bff 30343bff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 313235ff 686d72ff 888e94ff 888e94ff a2a6abff d8dadcff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff f9fafbff ecededff ecededff c6c9cdf6 ffffff08 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d7dbdd8d dadddeff ebecebff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff bdc0c4ff 8a9096ff 898f96ff 6d7277ff 2f3134ff 020202ff 020202ff 020202ff 2a2d33ff 4f545fff 626876ff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e97abff 8e96abff 8e97abff 8e96abff 8e97abff 656b7aff 4f545fff 2e3139ff 020202ff 020202ff 020202ff 111214ff 585c60ff 8a9096ff 898f96ff a3a8adff f8f9faff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff f8f9fbff f9fafbff ebececff ebecebff cbced0c5 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 e4e6e87b cfd3d5ff e9ebe9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9faff f8f9fbff f8f9faff f8f9fbff dbdee0ff 9ba0a6ff 8c9298ff 71767aff 2e3134ff 020202ff 020202ff 22242aff 535864ff 8b94a7ff 8b94a8ff 8b94a7ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff bec3ceff bec3ceff 8e96aaff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a8ff 8b94a7ff 8b94a8ff 545966ff 212429ff 020202ff 020202ff 1b1d1eff 70757aff 8c9298ff 8c9298ff dcdee0ff f8f9faff f8f9fbff f8f9faff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff e9ebe9ff dcdedfff dbdddf81 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 f7f7f720 c6c9ccff e7e9e8ff f3f5f5ff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff dddfe2ff 8e949aff 8e949bff 5a5e63ff 020202ff 020202ff 282b31ff 6c7382ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff ffffffff ffffffff 9097aaff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 7f7884ff 8991a4ff 8991a4ff 8991a4ff 8991a4ff 717887ff 2b2d35ff 020202ff 020202ff 323539ff 8d9399ff 8e949bff c5c9ccff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff f8f9faff e8e9e9ff cccfd1ff e8e8ea57 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 ffffff0a b8bcc1ff e5e7e6ff ebecedff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff c0c4c8ff 90969bff 868b91ff 2c2e30ff 020202ff 1b1d21ff 656b79ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff ffffffff ffffffff 8e96a7ff 878fa2ff 878fa2ff 878fa2ff 8f858fff 42393cff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 878fa2ff 656b79ff 1b1d21ff 020202ff 171819ff 7b8085ff 90969bff a3a8adff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f8f9f9ff f2f3f5ff e5e7e6ff bdc2c4ff ffffff12 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 e2e5e56b e2e4e3ff e7e8e8ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff bcbfc3ff 91979dff 81868cff 0f0f10ff 020202ff 474b56ff 858d9fff 858d9fff 858d9fff a2a7b5ff 9da2b2ff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858d9fff 858da0ff ffffffff ffffffff 8c93a4ff 858da0ff 858d9fff 858da0ff a66756ff 4a4f5aff 858d9fff 858da0ff 858d9fff 8f96a7ff b7bbc5ff 868ea1ff 858d9fff 858da0ff 484d58ff 020202ff 020202ff 82878dff 91979dff a3a7adff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff f7f8f9ff f7f9f9ff e9ebeaff e3e5e4ff caced0c4 ffffff01 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 f4f4f42f c2c7c9ff e2e4e3ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff c1c5c9ff 949a9fff 8a8f94ff 020202ff 080a0aff 666c7aff 838b9cff 838b9cff 838b9cff c0c4ccff ffffffff ecedf0ff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff 838b9cff ffffffff ffffffff 8a91a2ff 838b9cff 838b9cff 84899aff af5f42ff 666c7bff 838b9cff 838b9cff 838b9cff d5d7ddff ffffffff d8dbe0ff 838b9cff 838b9cff 828b9cff 666c7bff 080a0bff 020202ff 858b8fff 949a9fff a3a8adff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff f7f9f9ff e3e5e4ff c7caccff e9e9ec51 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 b5babeff e0e2e0ff e7e8e9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff e9ebedff 969da1ff 93999dff 020202ff 050506ff 808799ff 818899ff 808899ff 818899ff 808799ff 808799ff fdfdfdff ffffffff c7cad1ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff 808799ff 818899ff ffffffff ffffffff 878e9fff 818899ff 808799ff a66552ff af5f41ff 646a78ff 808799ff 818899ff 9095a5ff ffffffff ffffffff 818899ff 808799ff 818899ff 808899ff 818899ff 808799ff 050506ff 020202ff 90979bff 969da1ff b6bbbeff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f6f8f9ff f5f6f6ff e0e2e0ff bbbfc3ff ffffff02 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 e9ecec50 c5c9cbff e0e3e2ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff 989ea3ff 989ea3ff 0f0f10ff 020202ff 7d8495ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff bcbfc8ff ffffffff fdfdfdff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff ffffffff ffffffff 868d9cff 7e8596ff 7e8596ff ad5f43ff 763e29ff 666b79ff 7e8596ff 7e8596ff eaebeeff ffffffff bec1c9ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7e8596ff 7d8495ff 020202ff 020202ff 989ea3ff 989ea3ff ecedefff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff f5f7f8ff e3e4e4ff dbdeddff e9ecec50 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 bcc0c4f0 dbdeddff eff1f2ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff a0a6aaff 9ba1a5ff 292a2cff 020202ff 798090ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 7c8393ff 7c8393ff 7c8393ff f2f2f4ff ffffffff cfd1d7ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff 7b8293ff 7c8393ff ffffffff ffffffff 838a99ff 7c8393ff 8f7373ff ae5e40ff 34180dff 727887ff 7b8293ff bec1c9ff ffffffff ffffffff 7f8696ff 7c8393ff 7b8293ff 7c8393ff 7c8293ff 7c8393ff 7c8293ff 7c8393ff 797f90ff 020202ff 0d0f0fff 9ba1a5ff 9ca2a6ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f4f5f6ff dbdeddff bec2c5ff 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 e9ecec50 c7caccff e0e2e1ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff b1b5b8ff 9da3a6ff 404244ff 020202ff 757b8bff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 999da9ff ffffffff fdfdfdff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 9499a5ff 9499a5ff 7b8191ff 797f8fff a7614aff ae5e40ff 2c130aff 797f8fff 797f8fff f8f8f9ff ffffffff b7bac3ff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 797f8fff 767c8bff 020202ff 333536ff 9da3a6ff acb0b3ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff f5f6f8ff e1e3e3ff d6d8d7ff e3e6e95b 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 c0c3c7d9 d8dadaff ebecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff 9fa4a8ff 9fa4a8ff 050505ff 626875ff 767c8cff 757c8cff 767c8cff 767d8cff 767c8cff 767d8cff 767c8cff 767c8cff 767c8cff 767c8cff 767c8cff cbcdd3ff ffffffff dcdee2ff 767c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767c8cff 757c8cff 767d8cff 757c8cff 767d8cff ae5e40ff ae5e40ff 2c130aff 767d8cff c8cbd0ff ffffffff f2f2f4ff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 757c8cff 767d8cff 626875ff 020202ff 8d9195ff 9fa4a8ff eaecedff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f4f5f7ff f2f3f5ff d8dadaff bdc1c4f4 00000000 00000000 00000000 │ │ +00000000 00000000 f3f3f32b bec2c4ff dadcdbff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff abafb3ff a1a6aaff 1f2021ff 4a4f59ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737988ff 737989ff 737988ff 858b99ff e0e1e4ff 8e939fff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff a3624dff ae5e3fff af5e3fff 241611ff 737989ff 7f8593ff d0d2d7ff 969ba5ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 737989ff 737988ff 4a4e59ff 0a0a0aff a1a6aaff a1a5aaff f3f4f5ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff f4f5f6ff dedfe0ff c5c9caff e4e7ea54 00000000 00000000 │ │ +00000000 00000000 dee0e36c d1d3d3ff dfe0e0ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f0f1f3ff a3a8acff 92979bff 020202ff 6e7584ff 707686ff 707686ff 767c8aff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff ad5e40ff ae5d3fff ae5d3fff 3f3e46ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 707686ff 767c8aff 707686ff 707686ff 6f7585ff 020202ff 616467ff a3a8acff dddfe1ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff f3f4f5ff e7e8e8ff d5d7d6ff cccfd2ae 00000000 00000000 │ │ +00000000 00000000 b9bdc1f7 d3d5d5ff f0f1f3ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff b0b4b7ff a4a9adff 060606ff 686e7bff 6d7382ff 6d7382ff a5a8b1ff ffffffff c4c6ccff 707684ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 91665fff ae5d3fff ae5d3fff ae5d3fff 595e6bff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff 6d7382ff 6d7382ff 6d7383ff 6d7382ff 6d7383ff 6d7382ff b5b8bfff ffffffff c1c4caff 6d7382ff 6d7382ff 686d7bff 050505ff a5aaaeff a5aaaeff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff f2f3f5ff d4d6d6ff babec1ff ffffff04 00000000 │ │ +00000000 f7f7f721 bcc0c2ff d6d9d8ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff edeef1ff a7abafff a6aaaeff 1b1d21ff 6c717eff 6c717dff 6c717eff c5c7cbff ffffffff ffffffff fafafbff a3a6aeff 6c717eff 6c717dff 6c717eff 6b717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff ab5e41ff ae5d3fff ae5d3fff ae5d3fff 575c67ff 6c717eff 6c717dff 6c717eff 6c717dff 6c717eff 6c717eff 6c717eff 6c717dff 6c717eff 6c717dff 91959eff e9eaecff ffffffff ffffffff e3e4e6ff 6c717dff 6b707eff 6c717eff 1e2022ff 85898cff a7abafff ecedf0ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff f1f2f5ff f1f3f5ff dcdedeff c1c5c6ff e2e2e561 00000000 │ │ +00000000 dbdddf71 c8cbcbff dcdedeff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f5ff f1f2f4ff dadcdfff a9adb0ff 212222ff 676c78ff 686e7aff 696e7aff 686e7aff 696e7aff 9fa3aaff f1f1f2ff ffffffff ffffffff dadcdfff 848992ff 686e7aff 686e7aff 686e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 696e7aff 686e7aff 726b72ff ae5c3fff ae5c3fff ae5d3fff 954e33ff 565b66ff 696e7aff 686e7aff 696e7aff 686e7aff 686e7aff 686e7aff 686e7aff 686e7aff 7e838cff cacbd0ff ffffffff ffffffff f4f5f5ff b6b9beff 696e7aff 686e7aff 696e7aff 686e7aff 656b77ff 020202ff a9adb0ff babec1ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff dfe1e2ff cfd1d0ff d4d8da89 00000000 │ │ +00000000 c7cacdc0 cdcfd0ff e8eaecff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff abafb2ff a8acafff 0a0b0dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff babdc2ff f6f6f7ff ffffffff ffffffff aaadb3ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff ac5c40ff ae5c3fff ae5c3fff ae5c3fff 572b1bff 5d626dff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 92969eff ffffffff ffffffff fcfcfcff c4c6caff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 656b77ff 0c0d0fff a6aaadff abafb2ff eff0f2ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff cdcfd0ff b3b7bbff 00000000 │ │ +00000000 b4b8bbff cccfcfff f1f2f4ff f1f2f4ff f1f2f4ff f1f2f4ff f0f1f4ff f1f2f4ff ebecefff aeb2b5ff a5a8abff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff d4d5d8ff fdfdfdff 696e79ff 626874ff 626874ff 626874ff 636974ff 626874ff 636974ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 636772ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff f2f2f3ff e4e4e7ff 646a75ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 626874ff 707376ff aeb2b5ff e8eaedff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff f1f2f4ff f0f1f4ff cfd1d0ff b9bdbfff ffffff0b │ │ ffffff09 b8bcbfff d2d4d5ff f0f1f3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff f0f1f3ff e7e9ebff b1b5b7ff 333536ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6570ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 915f52ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 240f07ff 5f6671ff 5f6571ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 5f6571ff 5f6671ff 030303ff b1b5b7ff ced0d3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff f0f1f3ff eff1f3ff dadbdcff b9bdc0ff e5e8e857 │ │ e1e4e45f b8bcbeff d8dadbff eff0f2ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff eff0f2ff cbcfd1ff b2b6b8ff 080a0bff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c616eff 5c606dff 5c616eff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5e616cff ae5c3fff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 220d07ff 5c606dff 5c606dff 5c606dff 5c616eff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 5c606dff 07070aff adb0b3ff b2b6b8ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff eff0f2ff eef0f2ff d8dadaff c6c8c9ff d7dbdd79 │ │ d6d8dc7b c1c4c6ff d7d9daff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff b4b8baff aeb2b4ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 5e5e67ff ae5c3fff ae5c3fff ae5c3fff ae5c3fff ae5c3fff 353034ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff 595e69ff a9adafff b4b8baff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff eef0f2ff e1e3e5ff c6c9caff d7d9dd79 │ │ d6d8da7b c6c9c9ff dadcdeff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff b7bbbdff aaaeb0ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 555a66ff 565b66ff 555a66ff 555b66ff 555a66ff 555b66ff 0d0f12ff f3eeedff f5efedff f5efedff f5efedff b15d30ff ae5c3eff 464b54ff 555a66ff 555b66ff 565a66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff 565b66ff 555b66ff abafb1ff b7bbbdff e9ebeeff edeff2ff edeff2ff edeff2ff edeff2ff edeff2ff ecedf1ff c5c9c9ff c1c4c6b9 │ │ d3d5d992 c4c7c8ff e1e3e5ff edeef2ff edeff2ff edeef2ff edeff2ff edeef2ff e9ebeeff b8bcbeff b0b4b6ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 545862ff 535861ff 545862ff 535861ff 535862ff 535861ff 333435ff f6f7f9ff f8f9fbff f8f9fbff f8f9fbff f8f9fbff f8f9fbff b4663dff 464a53ff 535862ff 535861ff 535862ff 535861ff 545862ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 535861ff 7b7d80ff b8bcbeff e5e7eaff edeef2ff edeff2ff edeef2ff edeff2ff edeef2ff edeff2ff c3c7c8ff b4b8bcef │ │ c1c3c7bc c2c5c6ff eaecefff eceef1ff edeef1ff eceef1ff edeef1ff eceef1ff e6e8ebff bbbec0ff aeb1b3ff 0d0f10ff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565fff 51565eff 51565fff 51565eff 51565eff 444850ff eff0f1ff f5f6f8ff f5f6f7ff f5f6f8ff f5f6f7ff f5f6f8ff f5f6f7ff f5f6f8ff 404247ff 51565fff 51565eff 51565fff 51565eff 51565fff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 51565eff 17181bff 656768ff bbbec0ff e5e7eaff eceef1ff edeef1ff eceef1ff edeef1ff eceef1ff edeef1ff c2c4c6ff adb2b6ff │ │ bec2c4bd c0c3c4ff ecedf1ff ecedf1ff ecedf1ff ebedf1ff ecedf1ff ebedf1ff e5e7eaff bdc1c2ff a3a6a7ff 020202ff 020202ff 1c1e21ff c5c6caff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff cecfd0ff 4d515aff 4d515aff 4d515aff 4d515aff 4d515bff 4d515aff 4d515bff 4d515aff 4d515bff 4d515aff 4d515bff 3b3c3fff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff f1f2f4ff f1f2f5ff 353636ff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff 4d515aff ced0d1ff ced0d1ff ced0d1ff ced0d1ff ced0d1ff cecfd1ff ced0d1ff cecfd1ff 1e2125ff 020202ff 020202ff 0a0a0aff bdc1c2ff e5e7eaff ebedf1ff ecedf1ff ebedf1ff ecedf1ff ecedf1ff ecedf1ff c0c3c4ff acb0b5ff │ │ @@ -47,39 +47,39 @@ │ │ bcc0c4bd bdc0c1ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff ebedf0ff e4e7e9ff c1c4c5ff a9acadff 020202ff 020202ff 020202ff 828282ff 8a8a8aff 8a8a8aff 8a8a8aff a3a6a8ff a3a6a8ff a3a6a8ff a3a6a8ff 474a53ff 474a53ff 474a53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 393b3cff e6e9edff e7eaeeff e6e9edff e7eaeeff e6e9edff e7eaeeff e6e9edff e7eaeeff 333435ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474b53ff 474a53ff 474a53ff 474a53ff 474a53ff a4a6a9ff a4a6a8ff a4a6a9ff a4a6a8ff 8b8b8bff 8b8b8bff 8b8b8bff 8b8b8bff 020202ff 020202ff 020202ff 060606ff c1c4c5ff e4e7eaff eaecf0ff ebedf0ff eaecf0ff ebedf0ff eaecf0ff ebedf0ff bdc0c1ff aaaeb2ff │ │ bec0c4bd bbbec0ff e7eaeeff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff e5e8ebff c3c6c7ff b6b9baff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 222428ff 3b3f46ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 42454bff e2e6eaff e2e6eaff e2e6eaff e3e6ebff e2e6eaff e3e6ebff e2e6eaff e3e6ebff 373a3fff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 444850ff 3b3f46ff 292b30ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b5c5dff c3c6c7ff e4e7eaff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff eaecf0ff bbbec0ff a9adb1ff │ │ cfd2d48f babdbfff dcdfe2ff e9ecf0ff e9ecf0ff e9ecf0ff e9ecf0ff e9ecf0ff e6e9ecff c5c9c9ff b9bbbbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 2b2d31ff 303339ff 42454bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 242628ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 656769ff 3d4046ff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 42464bff 373a40ff 2b2d32ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 8c8e8fff c5c9c9ff e4e7eaff e9ecefff e9ecf0ff e9ecefff e9ecf0ff e9ecefff e9ecf0ff b9bdbfff acb0b5f2 │ │ d3d6d87b b8bcbeff d3d6d9ff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff c7cacbff babdbdff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0c0d0fff 2d3033ff 2e3035ff 3c4046ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3e4148ff 3d4046ff 242629ff a4a7acff dadee3ff dadee4ff a5a7acff 4e5052ff 393c42ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3f4248ff 3e4047ff 2e3135ff 2e3135ff 161719ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff bbbdbeff c7cacbff e6e8ebff e9ecefff e9ecefff e9ecefff e9ecefff e9ecefff e6e9ecff b8bcbeff bec0c4bb │ │ d1d3d67b b4b8bbff caced1ff e8ebefff e8ebefff e8ebefff e8ecefff e8ebefff e8ecefff caccccff c4c6c6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0a0b0dff 2b2d32ff 2e3137ff 303237ff 2e3137ff 2e3135ff 020203ff 010202ff 2d3035ff 303237ff 2e3137ff 303237ff 2b2d32ff 121415ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff bec0c0ff caccccff e8ecefff e8ebefff e8ecefff e8ebefff e8ecefff e8ebefff d7daddff b7babdff d3d5d779 │ │ d6dbdd70 abafb3ff c9cdd0ff e7eaeeff e8ebefff e7eaeeff e8ebefff e7eaeeff e8ebefff d1d4d4ff cccfcfff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff c7c9caff cccfceff e8ebefff e7eaeeff e8ebefff e7eaeeff e8ebefff e7eaeeff c9ccd0ff b3b7b9ff d3d5d779 │ │ f4f4f418 a8acafff bdc0c3ff e7eaedff e7eaeeff e7eaedff e7eaeeff e7eaedff e7eaeeff e3e7e9ff ced0d0ff 0f1010ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ced0d0ff dadcdeff e7eaeeff e7eaedff e7eaeeff e7eaedff e7eaeeff e7eaedff c8cbcdff a9aeb1ff d9d9dd72 │ │ -ffffff00 a5a9aeff b1b5b8ff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e3e7eaff d1d3d2ff c8cacaff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 777877ff d1d3d2ff e3e7eaff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff babec1ff a7abafff ffffff00 │ │ -ffffff00 babdc1bc b0b4b7ff dde0e5ff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff d3d5d5ff cfd1d0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cccfcdff d3d5d5ff e5e8ecff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff b0b4b6ff a2a6abff ffffff00 │ │ -ffffff00 d4d6db71 adb1b4ff c4c7caff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff dde0e2ff d5d7d6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff d4d6d6ff d6d8d6ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff d1d4d9ff aeb2b5ff cfd1d58b ffffff00 │ │ -ffffff00 eaeaea3d a2a7acff b8bcbfff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e4e7eaff d7d9d9ff caccccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b0b2b2ff d7d9d9ff e3e7e9ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff c0c4c8ff a7abafff d6d8da6f ffffff00 │ │ -ffffff00 ffffff00 9ea4a8ff aaaeb1ff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff dadbdbff dadcdbff 080a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 626c79ff 919fb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 060606ff dadcdbff dadbdbff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff acb1b5ff a1a5aaff ffffff0d ffffff00 │ │ -ffffff00 ffffff00 cfd1d380 a8adb0ff c2c6caff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e6e9ff dbdeddff b6b8b8ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7c889bff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7d7d7dff dbdeddff e1e3e6ff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff d1d4d8ff a9adb0ff b6babec4 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ebf0f034 9ea4a8ff aeb2b6ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff dee0e0ff dedfdfff 141414ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 758397ff adc1deff adc1deff a3b7d3ff a8bbd8ff adc1deff adc1deff acc0ddff a0b2cdff adc1deff adc1deff adc1deff 90a1baff adc1deff adc1deff adc1deff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0f0f0fff dedfdfff dee0e0ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff b6bbbeff a1a5aaff dde0e35b ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 acb0b5d7 a4a9aeff d1d5daff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e2e5eaff e0e3e1ff d5d7d6ff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 707f95ff a4b9daff 92a5c2ff 0e1217ff 06070bff a4b9daff a0b5d4ff 000000ff 000000ff 9eb2d1ff a4b9daff 11151bff 181d25ff 899bb6ff a4b9daff a4b9daff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a0a1a0ff e0e3e1ff e1e4e7ff e3e6eaff e2e5eaff e3e6eaff e2e5eaff e3e6eaff e2e5eaff dfe3e7ff a4a9adff 9ba1a6ff ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 e2e2e250 9fa4a8ff b0b5b9ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e4e5ff e3e4e4ff 747474ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 6a7a92ff 9cb2d5ff 7f92afff 303846ff 1d222cff 9cb2d5ff 94aacbff 010202ff 58647bff 95aaccff 9cb2d5ff 000000ff 889bbaff 627187ff 9cb2d5ff 9cb2d5ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 3f403fff e3e4e4ff e2e4e4ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff b5babeff a2a7abff d4d6d971 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 a2a6abed a2a6abff d4d7dcff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e5e7e6ff e5e7e6ff 1d1e1dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 65748fff 94aad0ff 788babff 222834ff 161b25ff 94aad0ff 8ca1c6ff 010202ff 434f61ff 8da2c7ff 94aad0ff 000000ff 7d90b1ff 5f6f8aff 94aad0ff 94aad0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 141414ff e5e7e6ff e5e7e6ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff dfe2e7ff a2a6abff 9a9fa4ff f4f4f418 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 e0e4e74b 9ca2a6ff acb1b5ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e1e5e8ff e8e9e8ff e8e9e9ff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5f6f8cff 8da3ccff 8094bbff 060a0fff 131721ff 8da3ccff 8aa0c9ff 131822ff 000102ff 889dc5ff 8da3ccff 303949ff 000000ff 7a8db2ff 8da3ccff 8da3ccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0d0d0dff d5d7d6ff e8e9e9ff e4e7e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff aeb3b7ff 9ea4a8ff d2d4d483 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 a2a7acea 9ea4a7ff caced2ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e6e8e9ff ebecebff e2e3e2ff 0d0d0dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b6a88ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 959696ff ebecebff e7e9eaff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff d8dce0ff 9ea4a7ff 989da2ff ffffff09 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e3e3e740 989da2ff 9fa4a8ff dfe2e7ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff e9ebecff ecededff d9dadaff 0a0a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 576584ff 8095c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 949494ff ecededff e9ebecff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff a7adb0ff 9ba0a5ff e5e9e944 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b8bcbfaf 9ba1a5ff a6acafff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff ebecedff eff0f0ff ebececff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff b9b9b9ff eff0f0ff ebecedff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff adb3b7ff 9ba1a5ff 989da3f7 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff03 94999fff 999fa4ff c8cdd1ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff edefefff f1f1f1ff eeeeedff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ecedecff f1f1f1ff eeeff0ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff 999fa4ff 949a9fff f1f1f125 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e7e7e740 94999eff 989ea3ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff eaeceeff f3f4f3ff eff0f0ff 686968ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5d5d5dff e8e8e9ff f3f4f3ff eef0f1ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 999fa4ff 969ba0ff e2e6e647 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 e0e0e051 959ba0ff 989fa3ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff e1e4e8ff f6f6f6ff f6f6f5ff dbdbdbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cbcbcbff f6f6f6ff f6f6f5ff e3e7eaff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff 9fa5a9ff 969ca1ff b7babfb2 ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 b3b8bcb6 949a9fff 979da2ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e0e3e8ff f0f2f2ff f7f8f7ff f6f6f5ff bfbebeff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a2a2a1ff f0f0efff f7f8f7ff f1f3f3ff e1e5e8ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff a6acb0ff 949a9fff 91979cff ffffff0a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff06 959a9fff 92989dff 9ea4a8ff dce0e5ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e3e7eaff f7f7f7ff f9f9f9ff f8f8f8ff b6b6b6ff 444444ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b4b4b4ff f5f5f5ff f9f9f9ff f9f9f9ff e6e9ecff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff acb1b7ff 92989dff 90969cff ffffff0a ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff09 8f959bff 90969cff 93999fff d9dde3ff dce0e6ff dce0e5ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff e8eaeeff f6f7f8ff fcfbfbff fcfbfbff e8e8e7ff a8a7a7ff 80807fff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 727272ff a7a7a7ff dededdff fcfbfbff fcfbfbff fcfbfbff e9ebeeff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e5ff dce0e6ff dbdee4ff aeb3b9ff 90969cff 8f959bff ffffff08 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff06 989da2fe 8f959bff 8f959bff d8dce1ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dce0e5ff e3e6eaff edeff1ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfcff aeaeadff 989797ff 989897ff 989797ff 989897ff 989797ff 989897ff 989797ff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff f1f2f4ff e6e9ecff dce0e5ff dcdfe5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff d8dce1ff a0a5abff 8f959bff 8f949aff ffffff05 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 b5b8bcbe 8e949aff 8e949bff bbc0c5ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff e1e5e9ff eff1f2ff f0f1f4ff fefefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fefefeff f2f3f5ff eff1f3ff e2e5e9ff dcdfe5ff dcdfe5ff dcdfe5ff dcdfe5ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff d3d7dcff 8e949bff 8e949bff 92979cf8 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 bec2c496 8d9399ff 8d9399ff b5babfff d7dbe0ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff b6bbc0ff 8d9399ff 8d9399ff bdc0c49b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 d3d5d78b 92969cf4 8b9197ff 8b9097ff c6cad0ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff d1d5dbff 8c9298ff 8b9197ff 8e949af9 bcbfc29f ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 aaadb0c8 8a9096ff 898f96ff a6abb1ff d3d7dcff dadee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dadee3ff d4d8ddff b3b7bdff 898f96ff 8a9096ff 9ba0a5ea ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 caced081 92969cf3 898e94ff 888d94ff acb1b7ff d2d6dcff dadee3ff dadee3ff dadee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d4d8deff b0b5bbff 888d94ff 888d94ff 90949af6 bcbec1a4 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 b9bcbea1 8e9298f9 868c93ff 868c93ff 868c93ff d0d4daff d8dce2ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d9dde3ff d4d8deff 969ca2ff 868c93ff 868c93ff 8b9096fc acafb3bf ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff01 c2c4c88f 8b8f95ff 858a91ff 848a91ff 848a91ff 8c9299ff d3d7ddff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d8dce2ff 9ca2a8ff 848a91ff 848a91ff 848a90ff 8b8f95ff afb1b5ba ffffff01 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff09 f2f2f54c 8f9398ff 898d93ff 848a90ff 83898fff 848a90ff 8a9096ff 8a9097ff b2b7bdff d6dae0ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff c0c4caff 8b9197ff 8a9097ff 858b91ff 83898fff 83898fff 878c93ff 898d94ff d9d9dd8e ffffff0b ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 989ca2ff 888c92ff 878c92ff 83898fff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 82898fff 868b92ff 888c92ff 91959bff ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ -ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 9ca0a6ff 888c92ff 878c91ff 868b91ff 868b91ff 868b91ff 868b91ff 878c91ff 878c91ff 9b9fa5ff ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 ffffff00 │ │ +00000000 a5a9aeff b1b5b8ff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e3e7eaff d1d3d2ff c8cacaff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 777877ff d1d3d2ff e3e7eaff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff e6e9edff babec1ff a7abafff 00000000 │ │ +00000000 babdc1bc b0b4b7ff dde0e5ff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff d3d5d5ff cfd1d0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cccfcdff d3d5d5ff e5e8ecff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff e6e8edff b0b4b6ff a2a6abff 00000000 │ │ +00000000 d4d6db71 adb1b4ff c4c7caff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff dde0e2ff d5d7d6ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff d4d6d6ff d6d8d6ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff d1d4d9ff aeb2b5ff cfd1d58b 00000000 │ │ +00000000 eaeaea3d a2a7acff b8bcbfff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e4e7eaff d7d9d9ff caccccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b0b2b2ff d7d9d9ff e3e7e9ff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff e5e8ecff c0c4c8ff a7abafff d6d8da6f 00000000 │ │ +00000000 00000000 9ea4a8ff aaaeb1ff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff dadbdbff dadcdbff 080a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 626c79ff 919fb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 919fb1ff 919eb1ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 060606ff dadcdbff dadbdbff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff e4e7ebff acb1b5ff a1a5aaff ffffff0d 00000000 │ │ +00000000 00000000 cfd1d380 a8adb0ff c2c6caff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e6e9ff dbdeddff b6b8b8ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7c889bff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff b6c8e2ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 7d7d7dff dbdeddff e1e3e6ff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff e3e7ebff d1d4d8ff a9adb0ff b6babec4 00000000 00000000 │ │ +00000000 00000000 ebf0f034 9ea4a8ff aeb2b6ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff dee0e0ff dedfdfff 141414ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 758397ff adc1deff adc1deff a3b7d3ff a8bbd8ff adc1deff adc1deff acc0ddff a0b2cdff adc1deff adc1deff adc1deff 90a1baff adc1deff adc1deff adc1deff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0f0f0fff dedfdfff dee0e0ff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff e3e6ebff b6bbbeff a1a5aaff dde0e35b 00000000 00000000 │ │ +00000000 00000000 00000000 acb0b5d7 a4a9aeff d1d5daff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e3e6eaff e2e5eaff e0e3e1ff d5d7d6ff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 707f95ff a4b9daff 92a5c2ff 0e1217ff 06070bff a4b9daff a0b5d4ff 000000ff 000000ff 9eb2d1ff a4b9daff 11151bff 181d25ff 899bb6ff a4b9daff a4b9daff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a0a1a0ff e0e3e1ff e1e4e7ff e3e6eaff e2e5eaff e3e6eaff e2e5eaff e3e6eaff e2e5eaff dfe3e7ff a4a9adff 9ba1a6ff 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 e2e2e250 9fa4a8ff b0b5b9ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e4e5ff e3e4e4ff 747474ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 6a7a92ff 9cb2d5ff 7f92afff 303846ff 1d222cff 9cb2d5ff 94aacbff 010202ff 58647bff 95aaccff 9cb2d5ff 000000ff 889bbaff 627187ff 9cb2d5ff 9cb2d5ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 3f403fff e3e4e4ff e2e4e4ff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff e2e5eaff e2e5e9ff b5babeff a2a7abff d4d6d971 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 a2a6abed a2a6abff d4d7dcff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e5e7e6ff e5e7e6ff 1d1e1dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 65748fff 94aad0ff 788babff 222834ff 161b25ff 94aad0ff 8ca1c6ff 010202ff 434f61ff 8da2c7ff 94aad0ff 000000ff 7d90b1ff 5f6f8aff 94aad0ff 94aad0ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 141414ff e5e7e6ff e5e7e6ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff e1e4e9ff dfe2e7ff a2a6abff 9a9fa4ff f4f4f418 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 e0e4e74b 9ca2a6ff acb1b5ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e1e5e8ff e8e9e8ff e8e9e9ff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5f6f8cff 8da3ccff 8094bbff 060a0fff 131721ff 8da3ccff 8aa0c9ff 131822ff 000102ff 889dc5ff 8da3ccff 303949ff 000000ff 7a8db2ff 8da3ccff 8da3ccff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 0d0d0dff d5d7d6ff e8e9e9ff e4e7e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff e0e4e8ff e1e4e9ff aeb3b7ff 9ea4a8ff d2d4d483 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 a2a7acea 9ea4a7ff caced2ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e6e8e9ff ebecebff e2e3e2ff 0d0d0dff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5b6a88ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 869bc7ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 959696ff ebecebff e7e9eaff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff e0e4e8ff e0e3e8ff d8dce0ff 9ea4a7ff 989da2ff ffffff09 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 e3e3e740 989da2ff 9fa4a8ff dfe2e7ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff e9ebecff ecededff d9dadaff 0a0a0aff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 576584ff 8095c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 8094c3ff 8195c3ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff 949494ff ecededff e9ebecff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff a7adb0ff 9ba0a5ff e5e9e944 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 b8bcbfaf 9ba1a5ff a6acafff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff ebecedff eff0f0ff ebececff 050505ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 050505ff b9b9b9ff eff0f0ff ebecedff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff dfe3e8ff e0e3e8ff adb3b7ff 9ba1a5ff 989da3f7 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 ffffff03 94999fff 999fa4ff c8cdd1ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff edefefff f1f1f1ff eeeeedff 121212ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff ecedecff f1f1f1ff eeeff0ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff dfe3e8ff 999fa4ff 949a9fff f1f1f125 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 e7e7e740 94999eff 989ea3ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff eaeceeff f3f4f3ff eff0f0ff 686968ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 5d5d5dff e8e8e9ff f3f4f3ff eef0f1ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff dee2e7ff 999fa4ff 969ba0ff e2e6e647 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 e0e0e051 959ba0ff 989fa3ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff e1e4e8ff f6f6f6ff f6f6f5ff dbdbdbff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff cbcbcbff f6f6f6ff f6f6f5ff e3e7eaff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff dde2e7ff dee2e7ff 9fa5a9ff 969ca1ff b7babfb2 ffffff01 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 b3b8bcb6 949a9fff 979da2ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e0e3e8ff f0f2f2ff f7f8f7ff f6f6f5ff bfbebeff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff a2a2a1ff f0f0efff f7f8f7ff f1f3f3ff e1e5e8ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff a6acb0ff 949a9fff 91979cff ffffff0a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff06 959a9fff 92989dff 9ea4a8ff dce0e5ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dde1e6ff dde1e6ff dde1e6ff e3e7eaff f7f7f7ff f9f9f9ff f8f8f8ff b6b6b6ff 444444ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff b4b4b4ff f5f5f5ff f9f9f9ff f9f9f9ff e6e9ecff dde1e6ff dde1e6ff dde1e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff dce0e6ff dde1e6ff acb1b7ff 92989dff 90969cff ffffff0a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff09 8f959bff 90969cff 93999fff d9dde3ff dce0e6ff dce0e5ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff e8eaeeff f6f7f8ff fcfbfbff fcfbfbff e8e8e7ff a8a7a7ff 80807fff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 020202ff 727272ff a7a7a7ff dededdff fcfbfbff fcfbfbff fcfbfbff e9ebeeff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e6ff dce0e5ff dce0e6ff dbdee4ff aeb3b9ff 90969cff 8f959bff ffffff08 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff06 989da2fe 8f959bff 8f959bff d8dce1ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dce0e5ff e3e6eaff edeff1ff fdfdfdff fdfdfdff fdfdfdff fdfdfdff fdfdfcff aeaeadff 989797ff 989897ff 989797ff 989897ff 989797ff 989897ff 989797ff fdfdfcff fdfdfdff fdfdfdff fdfdfdff fdfdfdff f1f2f4ff e6e9ecff dce0e5ff dcdfe5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff dce0e5ff dcdfe5ff d8dce1ff a0a5abff 8f959bff 8f949aff ffffff05 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 b5b8bcbe 8e949aff 8e949bff bbc0c5ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff dbdfe4ff dcdfe5ff dbdfe4ff dcdfe5ff dbdfe4ff e1e5e9ff eff1f2ff f0f1f4ff fefefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fffefeff fffefdff fefefeff f2f3f5ff eff1f3ff e2e5e9ff dcdfe5ff dcdfe5ff dcdfe5ff dcdfe5ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff d3d7dcff 8e949bff 8e949bff 92979cf8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 bec2c496 8d9399ff 8d9399ff b5babfff d7dbe0ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff b6bbc0ff 8d9399ff 8d9399ff bdc0c49b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 d3d5d78b 92969cf4 8b9197ff 8b9097ff c6cad0ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdfe4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff d1d5dbff 8c9298ff 8b9197ff 8e949af9 bcbfc29f 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 aaadb0c8 8a9096ff 898f96ff a6abb1ff d3d7dcff dadee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee4ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dbdee3ff dadee3ff d4d8ddff b3b7bdff 898f96ff 8a9096ff 9ba0a5ea 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 caced081 92969cf3 898e94ff 888d94ff acb1b7ff d2d6dcff dadee3ff dadee3ff dadee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dbdee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d4d8deff b0b5bbff 888d94ff 888d94ff 90949af6 bcbec1a4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 b9bcbea1 8e9298f9 868c93ff 868c93ff 868c93ff d0d4daff d8dce2ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff dadee3ff d9dde3ff d4d8deff 969ca2ff 868c93ff 868c93ff 8b9096fc acafb3bf 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff01 c2c4c88f 8b8f95ff 858a91ff 848a91ff 848a91ff 8c9299ff d3d7ddff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d9dde3ff d8dce2ff 9ca2a8ff 848a91ff 848a91ff 848a90ff 8b8f95ff afb1b5ba ffffff01 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffff09 f2f2f54c 8f9398ff 898d93ff 848a90ff 83898fff 848a90ff 8a9096ff 8a9097ff b2b7bdff d6dae0ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff d8dce2ff d8dde3ff c0c4caff 8b9197ff 8a9097ff 858b91ff 83898fff 83898fff 878c93ff 898d94ff d9d9dd8e ffffff0b 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 989ca2ff 888c92ff 878c92ff 83898fff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 81888eff 82898fff 868b92ff 888c92ff 91959bff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ +00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 9ca0a6ff 888c92ff 878c91ff 868b91ff 868b91ff 868b91ff 868b91ff 878c91ff 878c91ff 9b9fa5ff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 │ │ } ├── res/drawable-ldpi-v4/ic_tab_results_icon_unselected.png ├── sng │ │ @@ -1,37 +1,26 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 48; height: 48; bitdepth: 8; │ │ using color palette; │ │ } │ │ PLTE { │ │ ( 0, 0, 0) # rgb = (0x00,0x00,0x00) grey0 │ │ - (144,144,144) # rgb = (0x90,0x90,0x90) │ │ (157,157,157) # rgb = (0x9d,0x9d,0x9d) │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ - (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (228,228,228) # rgb = (0xe4,0xe4,0xe4) │ │ - (230,230,230) # rgb = (0xe6,0xe6,0xe6) │ │ - (231,231,231) # rgb = (0xe7,0xe7,0xe7) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ - (236,236,236) # rgb = (0xec,0xec,0xec) │ │ - (240,240,240) # rgb = (0xf0,0xf0,0xf0) grey94 │ │ - (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ - (247,247,247) # rgb = (0xf7,0xf7,0xf7) grey97 │ │ - (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (251,251,251) # rgb = (0xfb,0xfb,0xfb) │ │ (251,251,251) # rgb = (0xfb,0xfb,0xfb) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (234,234,234) # rgb = (0xea,0xea,0xea) │ │ (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ (255,255,255) # rgb = (0xff,0xff,0xff) grey100 │ │ (238,238,238) # rgb = (0xee,0xee,0xee) │ │ (239,239,239) # rgb = (0xef,0xef,0xef) │ │ (235,235,235) # rgb = (0xeb,0xeb,0xeb) grey92 │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ @@ -40,71 +29,44 @@ │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (160,160,160) # rgb = (0xa0,0xa0,0xa0) │ │ (158,158,158) # rgb = (0x9e,0x9e,0x9e) grey62 │ │ - (239,239,239) # rgb = (0xef,0xef,0xef) │ │ - (202,202,202) # rgb = (0xca,0xca,0xca) │ │ - (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ - (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (243,243,243) # rgb = (0xf3,0xf3,0xf3) │ │ - (235,235,235) # rgb = (0xeb,0xeb,0xeb) grey92 │ │ - (229,229,229) # rgb = (0xe5,0xe5,0xe5) grey90 │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ - (227,227,227) # rgb = (0xe3,0xe3,0xe3) grey89 │ │ - (226,226,226) # rgb = (0xe2,0xe2,0xe2) │ │ - (244,244,244) # rgb = (0xf4,0xf4,0xf4) │ │ - (234,234,234) # rgb = (0xea,0xea,0xea) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ - (232,232,232) # rgb = (0xe8,0xe8,0xe8) grey91 │ │ - (246,246,246) # rgb = (0xf6,0xf6,0xf6) │ │ - (245,245,245) # rgb = (0xf5,0xf5,0xf5) grey96 │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ - (242,242,242) # rgb = (0xf2,0xf2,0xf2) grey95 │ │ (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ (250,250,250) # rgb = (0xfa,0xfa,0xfa) grey98 │ │ (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ (247,247,247) # rgb = (0xf7,0xf7,0xf7) grey97 │ │ (222,222,222) # rgb = (0xde,0xde,0xde) grey87 │ │ (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (250,250,250) # rgb = (0xfa,0xfa,0xfa) grey98 │ │ (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ - (238,238,238) # rgb = (0xee,0xee,0xee) │ │ (240,240,240) # rgb = (0xf0,0xf0,0xf0) grey94 │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ (238,238,238) # rgb = (0xee,0xee,0xee) │ │ - (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ (233,233,233) # rgb = (0xe9,0xe9,0xe9) │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (228,228,228) # rgb = (0xe4,0xe4,0xe4) │ │ - (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ - (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ - (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ - (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ - (225,225,225) # rgb = (0xe1,0xe1,0xe1) │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (233,233,233) # rgb = (0xe9,0xe9,0xe9) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ (245,245,245) # rgb = (0xf5,0xf5,0xf5) grey96 │ │ (244,244,244) # rgb = (0xf4,0xf4,0xf4) │ │ (243,243,243) # rgb = (0xf3,0xf3,0xf3) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ @@ -124,26 +86,17 @@ │ │ (156,156,156) # rgb = (0x9c,0x9c,0x9c) grey61 │ │ (155,155,155) # rgb = (0x9b,0x9b,0x9b) │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (158,158,158) # rgb = (0x9e,0x9e,0x9e) grey62 │ │ (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ - (206,206,206) # rgb = (0xce,0xce,0xce) │ │ - (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ - (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ - (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ - (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ - (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ - (222,222,222) # rgb = (0xde,0xde,0xde) grey87 │ │ - (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ (242,242,242) # rgb = (0xf2,0xf2,0xf2) grey95 │ │ (239,239,239) # rgb = (0xef,0xef,0xef) │ │ @@ -159,27 +112,18 @@ │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (164,164,164) # rgb = (0xa4,0xa4,0xa4) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ - (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ - (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ - (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ - (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ - (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ - (223,223,223) # rgb = (0xdf,0xdf,0xdf) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ (232,232,232) # rgb = (0xe8,0xe8,0xe8) grey91 │ │ (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ (234,234,234) # rgb = (0xea,0xea,0xea) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ @@ -187,68 +131,124 @@ │ │ (231,231,231) # rgb = (0xe7,0xe7,0xe7) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (147,147,147) # rgb = (0x93,0x93,0x93) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ + (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ + (144,144,144) # rgb = (0x90,0x90,0x90) │ │ + (224,224,224) # rgb = (0xe0,0xe0,0xe0) grey88 │ │ + (228,228,228) # rgb = (0xe4,0xe4,0xe4) │ │ + (230,230,230) # rgb = (0xe6,0xe6,0xe6) │ │ + (231,231,231) # rgb = (0xe7,0xe7,0xe7) │ │ + (236,236,236) # rgb = (0xec,0xec,0xec) │ │ + (240,240,240) # rgb = (0xf0,0xf0,0xf0) grey94 │ │ + (241,241,241) # rgb = (0xf1,0xf1,0xf1) │ │ + (247,247,247) # rgb = (0xf7,0xf7,0xf7) grey97 │ │ + (248,248,248) # rgb = (0xf8,0xf8,0xf8) │ │ + (249,249,249) # rgb = (0xf9,0xf9,0xf9) │ │ + (239,239,239) # rgb = (0xef,0xef,0xef) │ │ + (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ + (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ + (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ + (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ + (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ + (243,243,243) # rgb = (0xf3,0xf3,0xf3) │ │ + (235,235,235) # rgb = (0xeb,0xeb,0xeb) grey92 │ │ + (229,229,229) # rgb = (0xe5,0xe5,0xe5) grey90 │ │ + (227,227,227) # rgb = (0xe3,0xe3,0xe3) grey89 │ │ + (226,226,226) # rgb = (0xe2,0xe2,0xe2) │ │ + (244,244,244) # rgb = (0xf4,0xf4,0xf4) │ │ + (234,234,234) # rgb = (0xea,0xea,0xea) │ │ + (232,232,232) # rgb = (0xe8,0xe8,0xe8) grey91 │ │ + (246,246,246) # rgb = (0xf6,0xf6,0xf6) │ │ + (245,245,245) # rgb = (0xf5,0xf5,0xf5) grey96 │ │ + (242,242,242) # rgb = (0xf2,0xf2,0xf2) grey95 │ │ + (238,238,238) # rgb = (0xee,0xee,0xee) │ │ + (237,237,237) # rgb = (0xed,0xed,0xed) grey93 │ │ + (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ + (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ + (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ + (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ + (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ + (225,225,225) # rgb = (0xe1,0xe1,0xe1) │ │ + (233,233,233) # rgb = (0xe9,0xe9,0xe9) │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (206,206,206) # rgb = (0xce,0xce,0xce) │ │ + (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ + (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ + (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ + (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ + (219,219,219) # rgb = (0xdb,0xdb,0xdb) grey86 │ │ + (222,222,222) # rgb = (0xde,0xde,0xde) grey87 │ │ + (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ + (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ + (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ + (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ + (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ + (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ + (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ + (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ + (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ + (223,223,223) # rgb = (0xdf,0xdf,0xdf) │ │ (205,205,205) # rgb = (0xcd,0xcd,0xcd) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ - (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ } │ │ tRNS { │ │ - 0 255 224 22 255 214 21 255 255 255 214 255 255 255 214 255 255 251 233 232 232 202 19 255 226 37 19 15 224 241 171 165 166 116 133 166 167 169 169 169 255 255 255 255 182 206 255 255 255 255 255 255 177 202 255 255 255 255 201 255 255 255 182 200 255 237 140 133 133 93 200 155 229 255 224 18 60 210 255 230 74 60 60 39 101 218 255 255 255 186 255 255 177 255 177 200 255 179 200 247 210 208 208 149 215 208 243 18 59 209 224 18 200 60 209 245 198 196 196 140 200 204 195 240 255 181 255 255 255 255 255 255 177 200 255 255 177 184 200 231 91 79 79 52 116 221 223 18 200 60 209 235 125 116 80 200 144 115 226 255 255 184 255 255 255 255 177 255 255 177 200 255 180 200 181 180 181 128 200 192 238 60 58 209 225 221 246 255 255 200 255 255 200 212} │ │ + 0 224 22 214 21 214 214 251 233 232 232 202 19 226 37 19 15 224 241 171 165 166 116 133 166 167 169 169 169 182 206 177 202 201 182 200 237 140 133 133 93 200 155 229 224 18 60 210 230 74 60 60 39 101 218 186 177 177 200 179 200 247 210 208 208 149 215 208 243 18 59 209 224 18 200 60 209 245 198 196 196 140 200 204 195 240 181 177 200 177 184 200 231 91 79 79 52 116 221 223 18 200 60 209 235 125 116 80 200 144 115 226 184 177 177 200 180 200 181 180 181 128 200 192 238 60 58 209 225 221 246 200 200 212} │ │ IMAGE { │ │ pixels hex │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -000000010101010101010101010101010101010101010101010101010101010101020300000000000000000000000000 │ │ -000000040404040404040404040404040404040404040404040404040404040404050600000000000000000000000000 │ │ -0000000708090909090909090909090909090909090909090909090909090909080a0600000000000000000000000000 │ │ -0000000b0c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c0e0600000000000000000000000000 │ │ -0000000c0f10101112131313131313131313131313131313131313131313131314151600000000000000000000000000 │ │ -0000000d10171718191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1b0000000000000000000000000000 │ │ -0000000d1017171c16000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -0000000d1017171d1e1f2021000022202020202020202020202020202020202023242526262727272727272727000000 │ │ -0000000d10171028292a2b2c00002d2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2e2f30303030303030303030000000 │ │ -0000000d1017103132093334000035333333333333333333333333333333333333330707070707070707073637000000 │ │ -0000000c0f100f380c0b393400003a390b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b323b000000 │ │ -000000283c0f0f3c3c3d313e00003f0d3131313d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d313131400b000000 │ │ -000000283c0f0f4142434445000046383c0f0f474343434343434343434343434343434343434343480f0f3d28000000 │ │ -000000493d3c3c4a4b00000000003f313c3c3c4c00000000000000000000000000000000000000004d3c3c3d49000000 │ │ -0000004e383d3d4f5051525300003f403d3d38545151515151515151515151515151515151515151553d3d384e000000 │ │ -0000000b313831095657585900003f0d38380d5a575757575757575757575757575757575757575b373138310b000000 │ │ -0000000b313831490837045c00003f0d3838283b365d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d37084e4038310b000000 │ │ -00000032403140493b07375e00005f0c3131286033363636363636363636363636363636363607094e40314032000000 │ │ -000000390d40400c284e39610000622840400d284e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e490c40400d39000000 │ │ -000000600c0d0d6364656667000062490d0d0d6869696969696969696969696969696969696969696a0d0d0c60000000 │ │ -000000600c0d0d1c6b000000000062490d0d0d6c00000000000000000000000000000000000000006d0d0d0c60000000 │ │ -0000003b280c0c6e6f0000000000704e0c0c0c710000000000000000000000000000000000000000720c0c283b000000 │ │ -0000000949282873747576770000780b28284e797a75757575757575757575757575757575757a7a7b49284909000000 │ │ -00000009492849087c2a2b7d0000780b2828327e7f80808080808080808080808080808080802a81364e284909000000 │ │ -000000084e494e3b0482838400008532494960378687878787878787878787878787878787878204090b494e08000000 │ │ -000000330b4e4e3933360488000085394e4e32083637373737373737373737373737373737373633600b4e0b33000000 │ │ -00000007320b0b3228280b8900008a600b0b0b492828282828282828282828282828282828282828320b0b3207000000 │ │ -00000007320b0b8b8c8d8e8f00008a600b0b0b908d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d910b0b3207000000 │ │ -0000003639323292930000000000943b3232329500000000000000000000000000000000000000009632323936000000 │ │ -00000037603939979899999a00009b093939609c999999999999999999999999999999999999999d9e39396037000000 │ │ -0000005d3b603b829f56a0a100009b08606033a256565656565656565656565656565656565656a3833b603b5d000000 │ │ -0000005d3b603b3687a4a5a600009b0860600786a7a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a4873709603b5d000000 │ │ -00000004093b09078687a7a90000aa333b3b33ab828383838383838383838383838383838383878636093b0904000000 │ │ -0000003660393960083336ac0000ad0709090808333333333333333333333333333333333333330833090908ab000000 │ │ -000000aeafafafafafafb0b10000b236080808b3afafafafafafafafafafafafafafafafafafafafb408083386000000 │ │ -0000000000000000000000000000b236080808b500000000000000000000000000000000000000007208083386000000 │ │ -0000000000000000000000000000b237333333b60000000000000000000000000000000000000000b733330782000000 │ │ -0000000000000000000000000000b25d07075db8b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ba36073687000000 │ │ -0000000000000000000000000000b25d0707abbb8080808080808080808080808080808080808081bc37073687000000 │ │ -0000000000000000000000000000bd043636aba4bebebfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbea5875d363783000000 │ │ -0000000000000000000000000000c0ab37370487bcbca7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7bc83ab5d375dbc000000 │ │ -0000000000000000000000000000c1603232323239393939393939393939393939393939393939393232323208000000 │ │ +000000868686868686868686868686868686868686868686868686868686868686010200000000000000000000000000 │ │ +000000878787878787878787878787878787878787878787878787878787878787030400000000000000000000000000 │ │ +00000088898a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a89050400000000000000000000000000 │ │ +0000008b8c8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8c060400000000000000000000000000 │ │ +0000008c8e8f8f070809090909090909090909090909090909090909090909090a0b0c00000000000000000000000000 │ │ +0000008d8f90900d0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f100000000000000000000000000000 │ │ +0000008d8f9090110c000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +0000008d8f90901213141516000017151515151515151515151515151515151518191a1b1b1c1c1c1c1c1c1c1c000000 │ │ +0000008d8f908f919293941d00001e949494949494949494949494949494949494959697979797979797979797000000 │ │ +0000008d8f908f98998a9a1f0000209a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8888888888888888889b9c000000 │ │ +0000008c8e8f8e9d8c8b9e1f0000219e8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b999f000000 │ │ +00000091a08e8ea0a0a198220000238d989898a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1989898a28b000000 │ │ +00000091a08e8e24252627280000299da08e8e2a26262626262626262626262626262626262626262b8e8ea191000000 │ │ +000000a3a1a0a02c2d00000000002398a0a0a02e00000000000000000000000000000000000000002fa0a0a1a3000000 │ │ +000000a49da1a13031323334000023a2a1a19d35323232323232323232323232323232323232323236a1a19da4000000 │ │ +0000008b989d988aa5a6a7370000238d9d9d8da8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a99c989d988b000000 │ │ +0000008b989d98a3899c87380000238d9d9d919f9baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa9c89a4a29d988b000000 │ │ +00000099a298a2a39f889c3900003a8c989891ab9a9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b888aa4a298a299000000 │ │ +0000009e8da2a28c91a49e3b00003c91a2a28d91a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a38ca2a28d9e000000 │ │ +000000ab8c8d8d3d3e3f404100003ca38d8d8d424343434343434343434343434343434343434343448d8d8cab000000 │ │ +000000ab8c8d8d114500000000003ca38d8d8d460000000000000000000000000000000000000000478d8d8cab000000 │ │ +0000009f918c8c484900000000004aa48c8c8c4b00000000000000000000000000000000000000004c8c8c919f000000 │ │ +0000008aa391914d4e4f50510000528b9191a453544f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f545455a391a38a000000 │ │ +0000008aa391a389ac9394560000528b919199adaeafafafafafafafafafafafafafafafafaf93b09ba491a38a000000 │ │ +00000089a4a3a49f87b1b25700005899a3a3ab9cb3b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b1878a8ba3a489000000 │ │ +0000009a8ba4a49e9a9b87590000589ea4a499899b9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9b9aab8ba48b9a000000 │ │ +00000088998b8b9991918b5a00005bab8b8b8ba39191919191919191919191919191919191919191998b8b9988000000 │ │ +00000088998b8b5c5d5e5f6000005bab8b8b8b615e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e628b8b9988000000 │ │ +0000009b9e999963640000000000659f9999996600000000000000000000000000000000000000006799999e9b000000 │ │ +0000009cab9e9e68696a6a6b00006c8a9e9eab6d6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6e6f9e9eab9c000000 │ │ +000000aa9fab9fb1b5a5b67000006c89abab9ab7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5b8b29fab9faa000000 │ │ +000000aa9fab9f9bb4b9ba7100006c89abab88b3bbbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcb9b49c8aab9faa000000 │ │ +000000878a9f8a88b3b4bb720000739a9f9f9abdb1b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b4b39b8a9f8a87000000 │ │ +0000009bab9e9eab899a9b74000075888a8a89899a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a899a8a8a89bd000000 │ │ +00000076777777777777787900007a9b8989897b77777777777777777777777777777777777777777c89899ab3000000 │ │ +00000000000000000000000000007a9b8989897d00000000000000000000000000000000000000004c89899ab3000000 │ │ +00000000000000000000000000007a9c9a9a9a7e00000000000000000000000000000000000000007f9a9a88b1000000 │ │ +00000000000000000000000000007aaa8888aa808181818181818181818181818181818181818181829b889bb4000000 │ │ +00000000000000000000000000007aaa8888bdbeafafafafafafafafafafafafafafafafafafafb0bf9c889bb4000000 │ │ +000000000000000000000000000083879b9bbdb9c0c0c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c0bab4aa9b9cb2000000 │ │ +000000000000000000000000000084bd9c9c87b4bfbfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfb2bdaa9caabf000000 │ │ +000000000000000000000000000085ab999999999e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9999999989000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ } ├── res/drawable-ldpi-v4/ic_tab_results_icon_selected.png ├── sng │ │ @@ -1,108 +1,72 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 48; height: 48; bitdepth: 8; │ │ using color palette; │ │ } │ │ PLTE { │ │ ( 0, 0, 0) # rgb = (0x00,0x00,0x00) grey0 │ │ - (154,154,154) # rgb = (0x9a,0x9a,0x9a) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ - (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ - (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ - (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ - (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ - (202,202,202) # rgb = (0xca,0xca,0xca) │ │ - (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ - (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (206,206,206) # rgb = (0xce,0xce,0xce) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (221,221,221) # rgb = (0xdd,0xdd,0xdd) │ │ (220,220,220) # rgb = (0xdc,0xdc,0xdc) gainsboro │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ - (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ (206,206,206) # rgb = (0xce,0xce,0xce) │ │ (214,214,214) # rgb = (0xd6,0xd6,0xd6) grey84 │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (153,153,153) # rgb = (0x99,0x99,0x99) grey60 │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (160,160,160) # rgb = (0xa0,0xa0,0xa0) │ │ (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ - (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ - (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ - (174,174,174) # rgb = (0xae,0xae,0xae) │ │ - (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ - (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ - (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ - (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ - (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ - (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ - (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ - (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ - (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ - (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (218,218,218) # rgb = (0xda,0xda,0xda) │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ - (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ (142,142,142) # rgb = (0x8e,0x8e,0x8e) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ (169,169,169) # rgb = (0xa9,0xa9,0xa9) DarkGray │ │ (168,168,168) # rgb = (0xa8,0xa8,0xa8) grey66 │ │ (172,172,172) # rgb = (0xac,0xac,0xac) │ │ (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ (175,175,175) # rgb = (0xaf,0xaf,0xaf) │ │ (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ - (166,166,166) # rgb = (0xa6,0xa6,0xa6) grey65 │ │ - (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ - (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (174,174,174) # rgb = (0xae,0xae,0xae) │ │ (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ - (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ - (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ - (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ - (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ (216,216,216) # rgb = (0xd8,0xd8,0xd8) │ │ (217,217,217) # rgb = (0xd9,0xd9,0xd9) grey85 │ │ (215,215,215) # rgb = (0xd7,0xd7,0xd7) │ │ (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ @@ -124,22 +88,17 @@ │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (158,158,158) # rgb = (0x9e,0x9e,0x9e) grey62 │ │ (160,160,160) # rgb = (0xa0,0xa0,0xa0) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ - (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ - (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ - (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ - (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ - (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (213,213,213) # rgb = (0xd5,0xd5,0xd5) │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ @@ -152,21 +111,17 @@ │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ (170,170,170) # rgb = (0xaa,0xaa,0xaa) │ │ (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ - (168,168,168) # rgb = (0xa8,0xa8,0xa8) grey66 │ │ - (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ - (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ @@ -179,64 +134,109 @@ │ │ (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ (157,157,157) # rgb = (0x9d,0x9d,0x9d) │ │ (150,150,150) # rgb = (0x96,0x96,0x96) grey59 │ │ (149,149,149) # rgb = (0x95,0x95,0x95) │ │ (151,151,151) # rgb = (0x97,0x97,0x97) │ │ (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ - (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (154,154,154) # rgb = (0x9a,0x9a,0x9a) │ │ + (187,187,187) # rgb = (0xbb,0xbb,0xbb) │ │ + (188,188,188) # rgb = (0xbc,0xbc,0xbc) │ │ + (190,190,190) # rgb = (0xbe,0xbe,0xbe) grey │ │ + (192,192,192) # rgb = (0xc0,0xc0,0xc0) │ │ + (196,196,196) # rgb = (0xc4,0xc4,0xc4) grey77 │ │ + (199,199,199) # rgb = (0xc7,0xc7,0xc7) grey78 │ │ + (202,202,202) # rgb = (0xca,0xca,0xca) │ │ + (200,200,200) # rgb = (0xc8,0xc8,0xc8) │ │ + (198,198,198) # rgb = (0xc6,0xc6,0xc6) │ │ + (203,203,203) # rgb = (0xcb,0xcb,0xcb) │ │ + (204,204,204) # rgb = (0xcc,0xcc,0xcc) grey80 │ │ + (197,197,197) # rgb = (0xc5,0xc5,0xc5) │ │ + (180,180,180) # rgb = (0xb4,0xb4,0xb4) │ │ + (176,176,176) # rgb = (0xb0,0xb0,0xb0) grey69 │ │ + (174,174,174) # rgb = (0xae,0xae,0xae) │ │ + (171,171,171) # rgb = (0xab,0xab,0xab) grey67 │ │ + (201,201,201) # rgb = (0xc9,0xc9,0xc9) grey79 │ │ + (189,189,189) # rgb = (0xbd,0xbd,0xbd) grey74 │ │ + (185,185,185) # rgb = (0xb9,0xb9,0xb9) │ │ + (195,195,195) # rgb = (0xc3,0xc3,0xc3) │ │ + (193,193,193) # rgb = (0xc1,0xc1,0xc1) │ │ + (191,191,191) # rgb = (0xbf,0xbf,0xbf) grey75 │ │ + (210,210,210) # rgb = (0xd2,0xd2,0xd2) │ │ + (211,211,211) # rgb = (0xd3,0xd3,0xd3) LightGray │ │ + (209,209,209) # rgb = (0xd1,0xd1,0xd1) grey82 │ │ + (208,208,208) # rgb = (0xd0,0xd0,0xd0) │ │ + (194,194,194) # rgb = (0xc2,0xc2,0xc2) grey76 │ │ + (166,166,166) # rgb = (0xa6,0xa6,0xa6) grey65 │ │ + (162,162,162) # rgb = (0xa2,0xa2,0xa2) │ │ + (161,161,161) # rgb = (0xa1,0xa1,0xa1) grey63 │ │ + (163,163,163) # rgb = (0xa3,0xa3,0xa3) grey64 │ │ + (165,165,165) # rgb = (0xa5,0xa5,0xa5) │ │ + (183,183,183) # rgb = (0xb7,0xb7,0xb7) │ │ + (184,184,184) # rgb = (0xb8,0xb8,0xb8) grey72 │ │ + (186,186,186) # rgb = (0xba,0xba,0xba) grey73 │ │ + (178,178,178) # rgb = (0xb2,0xb2,0xb2) │ │ + (173,173,173) # rgb = (0xad,0xad,0xad) grey68 │ │ + (181,181,181) # rgb = (0xb5,0xb5,0xb5) grey71 │ │ + (179,179,179) # rgb = (0xb3,0xb3,0xb3) grey70 │ │ + (207,207,207) # rgb = (0xcf,0xcf,0xcf) grey81 │ │ + (159,159,159) # rgb = (0x9f,0x9f,0x9f) │ │ + (168,168,168) # rgb = (0xa8,0xa8,0xa8) grey66 │ │ + (177,177,177) # rgb = (0xb1,0xb1,0xb1) │ │ + (182,182,182) # rgb = (0xb6,0xb6,0xb6) │ │ + (167,167,167) # rgb = (0xa7,0xa7,0xa7) │ │ (212,212,212) # rgb = (0xd4,0xd4,0xd4) grey83 │ │ } │ │ tRNS { │ │ - 0 255 227 24 255 255 218 22 255 255 217 255 255 255 255 216 255 255 251 233 232 232 204 19 255 226 37 19 15 224 255 241 172 167 117 136 168 170 173 173 174 255 255 185 208 255 255 255 255 181 204 255 255 255 255 180 203 255 255 255 185 202 255 237 140 133 95 202 155 133 229 255 18 201 60 210 230 74 60 61 41 201 102 218 255 255 255 189 201 255 255 255 182 255 255 181 181 247 210 208 208 151 201 215 243 224 201 59 209 224 18 60 209 245 199 197 198 143 201 205 196 196 240 185 255 255 255 255 182 179 187 255 231 91 79 80 54 116 221 223 18 201 60 235 125 117 118 82 201 144 116 226 255 188 255 255 182 201 255 180 201 183 182 180 180 181 130 192 238 60 58 209 201 226 223 223 222 246 201 255 213 255} │ │ + 0 227 24 218 22 217 216 251 233 232 232 204 19 226 37 19 15 224 241 172 167 117 136 168 170 173 173 174 185 208 181 204 180 203 185 202 237 140 133 95 202 155 133 229 18 201 60 210 230 74 60 61 41 201 102 218 189 201 182 181 181 247 210 208 208 151 201 215 243 224 201 59 209 224 18 60 209 245 199 197 198 143 201 205 196 196 240 185 182 179 187 231 91 79 80 54 116 221 223 18 201 60 235 125 117 118 82 201 144 116 226 188 182 201 180 201 183 182 180 180 181 130 192 238 60 58 209 201 226 223 223 222 246 201 213} │ │ IMAGE { │ │ pixels hex │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -000000010101010101010101010101010101010101010101010101010101010101020300000000000000000000000000 │ │ -000000040405050505050505050505050505050505050505050505050505050504060700000000000000000000000000 │ │ -0000000809090909090909090909090909090909090909090909090909090909090a0700000000000000000000000000 │ │ -0000000b0c0c0c0c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0e0f0700000000000000000000000000 │ │ -000000100d11111213141414141414141414141414141414141414141414141415161700000000000000000000000000 │ │ -00000010111818191a1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1c0000000000000000000000000000 │ │ -000000101118181d17000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ -0000001e0d11111f20212122000023212121212121212121212121212121212124252627282828282828282828000000 │ │ -0000001e0d110d1e292a2a2b00002c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2d2e2e2e2e2e2e2e2e2e2e2e000000 │ │ -0000001e2f0d2f1e09300431000032040505050505050505050505050505050505040404040404040404040433000000 │ │ -0000000b0e0d0e0c34353637000038090909090909090909090909090909090909090909090909090909090908000000 │ │ -0000000b0e2f2f2f393a3b3c00003d0b1e10103e3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a0e10101e35000000 │ │ -000000340c0e0e3f404141420000431e0c0e0e444545454545454545454545454545454545454545460e0e0c47000000 │ │ -000000470c0e0e1d480000000000491e0e0e0e4a00000000000000000000000000000000000000004b0e0e0c47000000 │ │ -00000047100c0c4c4d4e4f500000511e0c0c10524e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e530c0c1047000000 │ │ -000000351e0c1e09545556570000580b0c100b2e595555555555555555555555555555555555555a081e0c1e35000000 │ │ -000000091e101e4705335b5c0000580b101e473033335d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d3305351e101e09000000 │ │ -000000091e101e4708045e5f0000580b101e0b360504040404040404040404040404040404040430471e101e09000000 │ │ -000000090b1e1e0b0c0c1e60000058341e1e0b0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0e0b1e1e0b09000000 │ │ -000000360b1e1e6162636465000066471e1e1e676363636363636363636363636363636363636363681e1e0b36000000 │ │ -00000008340b0b694800000000006a470b0b0b6b00000000000000000000000000000000000000006c0b0b3408000000 │ │ -00000008470b0b6d6e00000000006a350b0b346f0000000000000000000000000000000000000000700b0b4708000000 │ │ -000000304734477172737475000076093447357778737373737373737373737373737373737373797a47344730000000 │ │ -00000030354735302a2e2e7b000076094747367c7d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d0435473530000000 │ │ -00000005094709305d7e7f8000007636473508337e2929292929292929292929292929292929295b3009470905000000 │ │ -000000040935090804335d8100007608350936305e33333333333333333333333333333333335e040809350904000000 │ │ -00000004093535473b393b82000076083535098339393939393939393939393939393939393939393435350904000000 │ │ -000000043609098485868788000076080909098986868686868686868686868686868686868686868a09093604000000 │ │ -000000040809098b8c00000000008d300909098e00000000000000000000000000000000000000007009090804000000 │ │ -0000005e0836088f9091929300009430363608959191919191919191919191919191919191919196970836085e000000 │ │ -000000333008305d5a569899000094050808059a56565656565656565656565656565656565656595b30083033000000 │ │ -0000003330083033299b2a9c00009d040830049e7c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a9b293330083033000000 │ │ -0000005d0530055e5b297c9f0000a0043030045b292929292929292929292929292929292929299e330530055d000000 │ │ -00000047100c0c101e0b47a10000a05e303004470b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b300530045b000000 │ │ -000000a2a3a4a4a4a4a3a5a60000a033050505a7a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a80505045b000000 │ │ -0000000000000000000000000000a033040404a90000000000000000000000000000000000000000700404049e000000 │ │ -0000000000000000000000000000a033040404aa0000000000000000000000000000000000000000ab0404049e000000 │ │ -0000000000000000000000000000ac33045e33adaeafafafafafafafafafafafafafafafafafaeb0b15e045e7e000000 │ │ -0000000000000000000000000000b25d5e335b7d9ab3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b39a2e29335e3329000000 │ │ -0000000000000000000000000000b25b33339e9b7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d2a295d333329000000 │ │ -0000000000000000000000000000b25b33335b297c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c299e5d335d7f000000 │ │ -0000000000000000000000000000b43ab5b5b53a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3ab5b5b5b53b000000 │ │ +000000878787878787878787878787878787878787878787878787878787878787010200000000000000000000000000 │ │ +000000888889898989898989898989898989898989898989898989898989898988030400000000000000000000000000 │ │ +0000008a8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b050400000000000000000000000000 │ │ +0000008c8d8d8d8d8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8f060400000000000000000000000000 │ │ +000000908e9191070809090909090909090909090909090909090909090909090a0b0c00000000000000000000000000 │ │ +000000909192920d0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f100000000000000000000000000000 │ │ +00000090919292110c000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ +000000938e9191121314141500001614141414141414141414141414141414141718191a1b1b1b1b1b1b1b1b1b000000 │ │ +000000938e918e939495951c00001d959595959595959595959595959595959595969797979797979797979797000000 │ │ +00000093988e98938b99881e00001f88898989898989898989898989898989898988888888888888888888889a000000 │ │ +0000008c8f8e8f8d9b9c9d200000218b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a000000 │ │ +0000008c8f9898989e9fa0220000238c939090a19f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f8f9090939c000000 │ │ +0000009b8d8f8f2425262627000028938d8f8f292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2b8f8f8da2000000 │ │ +000000a28d8f8f112c00000000002d938f8f8f2e00000000000000000000000000000000000000002f8f8f8da2000000 │ │ +000000a2908d8d3031323334000035938d8d90363232323232323232323232323232323232323232378d8d90a2000000 │ │ +0000009c938d938ba3a4a5380000398c8d908c97a6a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a78a938d939c000000 │ │ +0000008b939093a2899aa83a0000398c9093a2999a9aa9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a99a899c9390938b000000 │ │ +0000008b939093a28a88aa3b0000398c90938c9d8988888888888888888888888888888888888899a29390938b000000 │ │ +0000008b8c93938c8d8d933c0000399b93938c8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f8c93938c8b000000 │ │ +0000009d8c93933d3e3f4041000042a2939393433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4493938c9d000000 │ │ +0000008a9b8c8c452c000000000046a28c8c8c470000000000000000000000000000000000000000488c8c9b8a000000 │ │ +0000008aa28c8c494a0000000000469c8c8c9b4b00000000000000000000000000000000000000004c8c8ca28a000000 │ │ +00000099a29ba24d4e4f50510000528b9ba29c53544f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5556a29ba299000000 │ │ +000000999ca29c99959797570000528ba2a29dabac97979797979797979797979797979797979796889ca29c99000000 │ │ +000000898ba28b99a9adae580000529da29c8a9aad949494949494949494949494949494949494a8998ba28b89000000 │ │ +000000888b9c8b8a889aa9590000528a9c8b9d99aa9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9aaa888a8b9c8b88000000 │ │ +000000888b9c9ca2a09ea05a0000528a9c9c8baf9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9b9c9c8b88000000 │ │ +000000889d8b8b5b5c5d5e5f0000528a8b8b8b605d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d618b8b9d88000000 │ │ +000000888a8b8b6263000000000064998b8b8b6500000000000000000000000000000000000000004c8b8b8a88000000 │ │ +000000aa8a9d8a666768696a00006b999d9d8a6c686868686868686868686868686868686868686d6e8a9d8aaa000000 │ │ +0000009a998a99a9a7a5b06f00006b898a8a89b1a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a8998a999a000000 │ │ +0000009a998a999a94b29570000071888a9988b3ab9595959595959595959595959595959595b2949a998a999a000000 │ │ +000000a9899989aaa894ab7200007388999988a894949494949494949494949494949494949494b39a899989a9000000 │ │ +000000a2908d8d90938ca274000073aa999988a28c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c99899988a8000000 │ │ +0000007576777777777678790000739a8989897a76767676767676767676767676767676767676777b898988a8000000 │ │ +0000000000000000000000000000739a8888887c00000000000000000000000000000000000000004c888888b3000000 │ │ +0000000000000000000000000000739a8888887d00000000000000000000000000000000000000007e888888b3000000 │ │ +00000000000000000000000000007f9a88aa9a80818282828282828282828282828282828282818384aa88aaad000000 │ │ +000000000000000000000000000085a9aa9aa8acb1b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b197949aaa9a94000000 │ │ +000000000000000000000000000085a89a9ab3b2acacacacacacacacacacacacacacacacacacac9594a99a9a94000000 │ │ +000000000000000000000000000085a89a9aa894ababababababababababababababababababab94b3a99aa9ae000000 │ │ +0000000000000000000000000000869fb5b5b59f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fb5b5b5b5a0000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 │ │ } ├── res/drawable-ldpi-v4/icon_statusbar.png ├── sng │ │ @@ -1,32 +1,32 @@ │ │ #SNG: from stdin │ │ IHDR { │ │ width: 24; height: 24; bitdepth: 8; │ │ using grayscale alpha; │ │ } │ │ IMAGE { │ │ pixels hex │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 4d2b 9285 c1ae c6bf c6c1 c6af 9088 5834 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 4d38 deb7 faff fdff fdff fdff fdff fdff fdff fbff dcc0 633b ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 7776 f7fe fdff fdff f6ff edff e6ff e6ff edff f6ff fdff fdff f7ff 9e84 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ac91 faff fcff f9ff c6ff 67ff 1aff 1fff 1fff 12ff 63ff c5ff f9ff fcff faff e6be 0001 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 9d5e f7ff faff eaff 79ff 68ff 9eff afff c6ff c8ff a8ff 9eff 67ff 70ff e4ff faff f8ff 9e69 ff00 ff00 ff00 │ │ -ff00 ff00 3025 ecf3 f9ff f0ff 6fff 88ff b9ff beff a9ff c3ff c5ff 9aff b7ff bbff 87ff 6cff eaff f9ff edfa 4827 ff00 ff00 │ │ -ff00 ff00 988b f8ff f9ff 93ff 84ff 9fff a2ff ebff a1ff a9ff 9fff 77ff ecff a3ff 9fff 82ff 8cff f9ff f9ff 9791 ff00 ff00 │ │ -ff00 0004 e4ec f7ff e6ff 77ff b9ff a3ff 94ff 94ff 94ff 94ff 98ff 84ff 94ff 94ff a1ff bbff 74ff dfff f7ff e4f5 2008 ff00 │ │ -ff00 4044 ecff f6ff bdff 82ff 88ff ceff 94ff 88ff 88ff 88ff aaff 61ff 88ff 8fff d1ff 88ff 82ff b0ff f6ff edff 624e ff00 │ │ -ff00 846e efff f1ff 96ff 7cff 7cff 7cff 7cff 7cff 7cff 92ff bcff 66ff 7cff 7cff 7cff 7cff 7cff 91ff f0ff f2ff 8278 ff00 │ │ -ff00 7f83 f3ff f0ff 67ff 9fff bcff 9dff 6eff 6fff 66ff f0ff f2ff 65ff 6eff 6eff 9dff bcff a1ff 2bff efff f4ff 7998 ff00 │ │ -ff00 7c7f f1ff efff 62ff 24ff 38ff 4eff 52ff 60ff 5dff d6ff dbff 5aff 60ff 54ff 4fff 39ff 25ff 36ff efff f3ff 7794 ff00 │ │ -ff00 7769 e9ff f0ff 77ff 00ff 00ff 00ff 00ff 00ff 16ff 13ff 13ff 17ff 00ff 00ff 00ff 00ff 00ff 70ff efff ebff 776d ff00 │ │ -ff00 3e2d ddff f0ff dfff 00ff 00ff 00ff 00ff 00ff 01ff 01ff 01ff 01ff 00ff 00ff 00ff 00ff 00ff dcff f0ff e0ff 3d3b ff00 │ │ -ff00 0002 d5d7 efff edff 2cff 00ff 00ff 00ff 00ff c5ff cbff caff c7ff 00ff 00ff 00ff 00ff 28ff edff efff d5e4 0004 ff00 │ │ -ff00 ff00 696b e7ff edff d0ff 12ff 00ff 00ff 00ff 86ff 77ff 85ff 9bff 00ff 00ff 00ff 10ff c8ff edff e8ff 7b76 ff00 ff00 │ │ -ff00 ff00 1e11 c9e4 ecff ecff b0ff 10ff 00ff 00ff 77ff 7aff 7aff 7aff 00ff 00ff 0fff a3ff ecff ecff c9ec 2614 ff00 ff00 │ │ -ff00 ff00 ff00 4a2d d3ff ebff ecff d4ff 2cff 04ff 00ff 00ff 00ff 00ff 00ff 2bff d2ff edff ebff d5ff 7134 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 aa42 d0fe eaff eaff edff f6ff 8fff 57ff 55ff 8eff f5ff eeff eaff eaff d4ff aa42 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 443c abe5 e2ff e8ff e8ff eaff eaff eaff eaff e8ff e8ff e4ff abe8 4040 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 1716 8577 c3e9 d2ff e0ff e8ff e8ff e2ff d2ff c1f1 847c 1518 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ -ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 4d2b 9285 c1ae c6bf c6c1 c6af 9088 5834 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 4d38 deb7 faff fdff fdff fdff fdff fdff fdff fbff dcc0 633b 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 7776 f7fe fdff fdff f6ff edff e6ff e6ff edff f6ff fdff fdff f7ff 9e84 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 ac91 faff fcff f9ff c6ff 67ff 1aff 1fff 1fff 12ff 63ff c5ff f9ff fcff faff e6be 0001 0000 0000 0000 │ │ +0000 0000 0000 9d5e f7ff faff eaff 79ff 68ff 9eff afff c6ff c8ff a8ff 9eff 67ff 70ff e4ff faff f8ff 9e69 0000 0000 0000 │ │ +0000 0000 3025 ecf3 f9ff f0ff 6fff 88ff b9ff beff a9ff c3ff c5ff 9aff b7ff bbff 87ff 6cff eaff f9ff edfa 4827 0000 0000 │ │ +0000 0000 988b f8ff f9ff 93ff 84ff 9fff a2ff ebff a1ff a9ff 9fff 77ff ecff a3ff 9fff 82ff 8cff f9ff f9ff 9791 0000 0000 │ │ +0000 0004 e4ec f7ff e6ff 77ff b9ff a3ff 94ff 94ff 94ff 94ff 98ff 84ff 94ff 94ff a1ff bbff 74ff dfff f7ff e4f5 2008 0000 │ │ +0000 4044 ecff f6ff bdff 82ff 88ff ceff 94ff 88ff 88ff 88ff aaff 61ff 88ff 8fff d1ff 88ff 82ff b0ff f6ff edff 624e 0000 │ │ +0000 846e efff f1ff 96ff 7cff 7cff 7cff 7cff 7cff 7cff 92ff bcff 66ff 7cff 7cff 7cff 7cff 7cff 91ff f0ff f2ff 8278 0000 │ │ +0000 7f83 f3ff f0ff 67ff 9fff bcff 9dff 6eff 6fff 66ff f0ff f2ff 65ff 6eff 6eff 9dff bcff a1ff 2bff efff f4ff 7998 0000 │ │ +0000 7c7f f1ff efff 62ff 24ff 38ff 4eff 52ff 60ff 5dff d6ff dbff 5aff 60ff 54ff 4fff 39ff 25ff 36ff efff f3ff 7794 0000 │ │ +0000 7769 e9ff f0ff 77ff 00ff 00ff 00ff 00ff 00ff 16ff 13ff 13ff 17ff 00ff 00ff 00ff 00ff 00ff 70ff efff ebff 776d 0000 │ │ +0000 3e2d ddff f0ff dfff 00ff 00ff 00ff 00ff 00ff 01ff 01ff 01ff 01ff 00ff 00ff 00ff 00ff 00ff dcff f0ff e0ff 3d3b 0000 │ │ +0000 0002 d5d7 efff edff 2cff 00ff 00ff 00ff 00ff c5ff cbff caff c7ff 00ff 00ff 00ff 00ff 28ff edff efff d5e4 0004 0000 │ │ +0000 0000 696b e7ff edff d0ff 12ff 00ff 00ff 00ff 86ff 77ff 85ff 9bff 00ff 00ff 00ff 10ff c8ff edff e8ff 7b76 0000 0000 │ │ +0000 0000 1e11 c9e4 ecff ecff b0ff 10ff 00ff 00ff 77ff 7aff 7aff 7aff 00ff 00ff 0fff a3ff ecff ecff c9ec 2614 0000 0000 │ │ +0000 0000 0000 4a2d d3ff ebff ecff d4ff 2cff 04ff 00ff 00ff 00ff 00ff 00ff 2bff d2ff edff ebff d5ff 7134 0000 0000 0000 │ │ +0000 0000 0000 0000 aa42 d0fe eaff eaff edff f6ff 8fff 57ff 55ff 8eff f5ff eeff eaff eaff d4ff aa42 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 443c abe5 e2ff e8ff e8ff eaff eaff eaff eaff e8ff e8ff e4ff abe8 4040 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 1716 8577 c3e9 d2ff e0ff e8ff e8ff e2ff d2ff c1f1 847c 1518 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ +0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 │ │ } ├── smali/com/google/myjson/DefaultTypeAdapters$DoubleDeserializer.smali │ @@ -48,32 +48,32 @@ │ │ return-void │ .end method │ │ │ # virtual methods │ .method public deserialize(Lcom/google/myjson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/myjson/JsonDeserializationContext;)Ljava/lang/Double; │ - .locals 3 │ + .locals 4 │ .param p1, "json" # Lcom/google/myjson/JsonElement; │ .param p2, "typeOfT" # Ljava/lang/reflect/Type; │ .param p3, "context" # Lcom/google/myjson/JsonDeserializationContext; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/google/myjson/JsonParseException; │ } │ .end annotation │ │ .prologue │ .line 927 │ :try_start_0 │ invoke-virtual {p1}, Lcom/google/myjson/JsonElement;->getAsDouble()D │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - invoke-static {v1, v2}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static {v2, v3}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ :try_end_0 │ .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/lang/UnsupportedOperationException; {:try_start_0 .. :try_end_0} :catch_1 │ .catch Ljava/lang/IllegalStateException; {:try_start_0 .. :try_end_0} :catch_2 │ │ move-result-object v1 ├── smali/com/google/myjson/DefaultTypeAdapters$LongDeserializer.smali │ @@ -48,32 +48,32 @@ │ │ return-void │ .end method │ │ │ # virtual methods │ .method public deserialize(Lcom/google/myjson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/myjson/JsonDeserializationContext;)Ljava/lang/Long; │ - .locals 3 │ + .locals 4 │ .param p1, "json" # Lcom/google/myjson/JsonElement; │ .param p2, "typeOfT" # Ljava/lang/reflect/Type; │ .param p3, "context" # Lcom/google/myjson/JsonDeserializationContext; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/google/myjson/JsonParseException; │ } │ .end annotation │ │ .prologue │ .line 775 │ :try_start_0 │ invoke-virtual {p1}, Lcom/google/myjson/JsonElement;->getAsLong()J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ + invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ :try_end_0 │ .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/lang/UnsupportedOperationException; {:try_start_0 .. :try_end_0} :catch_1 │ .catch Ljava/lang/IllegalStateException; {:try_start_0 .. :try_end_0} :catch_2 │ │ move-result-object v1 ├── smali/com/google/myjson/GsonBuilder.smali │ @@ -641,28 +641,28 @@ │ .line 644 │ sget-object v1, Lcom/google/myjson/GsonBuilder;->innerClassExclusionStrategy:Lcom/google/myjson/InnerClassExclusionStrategy; │ │ invoke-interface {v13, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z │ │ .line 646 │ :cond_0 │ - iget-wide v1, p0, Lcom/google/myjson/GsonBuilder;->ignoreVersionsAfter:D │ + iget-wide v2, p0, Lcom/google/myjson/GsonBuilder;->ignoreVersionsAfter:D │ │ const-wide/high16 v8, -0x4010000000000000L # -1.0 │ │ - cmpl-double v1, v1, v8 │ + cmpl-double v1, v2, v8 │ │ if-eqz v1, :cond_1 │ │ .line 647 │ new-instance v14, Lcom/google/myjson/VersionExclusionStrategy; │ │ - iget-wide v1, p0, Lcom/google/myjson/GsonBuilder;->ignoreVersionsAfter:D │ + iget-wide v2, p0, Lcom/google/myjson/GsonBuilder;->ignoreVersionsAfter:D │ │ - invoke-direct {v14, v1, v2}, Lcom/google/myjson/VersionExclusionStrategy;->(D)V │ + invoke-direct {v14, v2, v3}, Lcom/google/myjson/VersionExclusionStrategy;->(D)V │ │ .line 649 │ .local v14, "versionExclusionStrategy":Lcom/google/myjson/VersionExclusionStrategy; │ invoke-interface {v12, v14}, Ljava/util/List;->add(Ljava/lang/Object;)Z │ │ .line 650 │ invoke-interface {v13, v14}, Ljava/util/List;->add(Ljava/lang/Object;)Z │ @@ -1220,15 +1220,15 @@ │ iput-boolean v0, p0, Lcom/google/myjson/GsonBuilder;->prettyPrinting:Z │ │ .line 398 │ return-object p0 │ .end method │ │ .method public setVersion(D)Lcom/google/myjson/GsonBuilder; │ - .locals 0 │ + .locals 1 │ .param p1, "ignoreVersionsAfter" # D │ │ .prologue │ .line 141 │ iput-wide p1, p0, Lcom/google/myjson/GsonBuilder;->ignoreVersionsAfter:D │ │ .line 142 ├── smali/com/google/myjson/JsonPrimitive.smali │ @@ -376,97 +376,97 @@ │ :cond_2 │ const/4 v5, 0x0 │ │ goto :goto_0 │ .end method │ │ .method static stringToNumber(Ljava/lang/String;)Ljava/lang/Number; │ - .locals 5 │ + .locals 6 │ .param p0, "value" # Ljava/lang/String; │ │ .prologue │ .line 154 │ :try_start_0 │ invoke-static {p0}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ .line 155 │ - .local v1, "longValue":J │ - const-wide/32 v3, -0x80000000 │ + .local v2, "longValue":J │ + const-wide/32 v4, -0x80000000 │ │ - cmp-long v3, v1, v3 │ + cmp-long v1, v2, v4 │ │ - if-ltz v3, :cond_0 │ + if-ltz v1, :cond_0 │ │ - const-wide/32 v3, 0x7fffffff │ + const-wide/32 v4, 0x7fffffff │ │ - cmp-long v3, v1, v3 │ + cmp-long v1, v2, v4 │ │ - if-gtz v3, :cond_0 │ + if-gtz v1, :cond_0 │ │ .line 156 │ - long-to-int v3, v1 │ + long-to-int v1, v2 │ │ - invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - move-result-object v3 │ + move-result-object v1 │ │ .line 165 │ - .end local v1 # "longValue":J │ + .end local v2 # "longValue":J │ :goto_0 │ - return-object v3 │ + return-object v1 │ │ .line 158 │ - .restart local v1 # "longValue":J │ + .restart local v2 # "longValue":J │ :cond_0 │ - invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ + invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ :try_end_0 │ .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_0 │ │ - move-result-object v3 │ + move-result-object v1 │ │ goto :goto_0 │ │ .line 159 │ - .end local v1 # "longValue":J │ + .end local v2 # "longValue":J │ :catch_0 │ - move-exception v3 │ + move-exception v1 │ │ .line 163 │ :try_start_1 │ - new-instance v3, Ljava/math/BigDecimal; │ + new-instance v1, Ljava/math/BigDecimal; │ │ - invoke-direct {v3, p0}, Ljava/math/BigDecimal;->(Ljava/lang/String;)V │ + invoke-direct {v1, p0}, Ljava/math/BigDecimal;->(Ljava/lang/String;)V │ :try_end_1 │ .catch Ljava/lang/NumberFormatException; {:try_start_1 .. :try_end_1} :catch_1 │ │ goto :goto_0 │ │ .line 164 │ :catch_1 │ move-exception v0 │ │ .line 165 │ .local v0, "ignored":Ljava/lang/NumberFormatException; │ invoke-static {p0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ - invoke-static {v3, v4}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static {v4, v5}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ - move-result-object v3 │ + move-result-object v1 │ │ goto :goto_0 │ .end method │ │ │ # virtual methods │ .method public equals(Ljava/lang/Object;)Z │ - .locals 11 │ + .locals 12 │ .param p1, "obj" # Ljava/lang/Object; │ │ .prologue │ const/4 v5, 0x1 │ │ const/4 v6, 0x0 │ │ @@ -536,25 +536,25 @@ │ .line 355 │ invoke-virtual {p0}, Lcom/google/myjson/JsonPrimitive;->getAsNumber()Ljava/lang/Number; │ │ move-result-object v7 │ │ invoke-virtual {v7}, Ljava/lang/Number;->longValue()J │ │ - move-result-wide v7 │ + move-result-wide v8 │ │ invoke-virtual {v4}, Lcom/google/myjson/JsonPrimitive;->getAsNumber()Ljava/lang/Number; │ │ - move-result-object v9 │ + move-result-object v7 │ │ - invoke-virtual {v9}, Ljava/lang/Number;->longValue()J │ + invoke-virtual {v7}, Ljava/lang/Number;->longValue()J │ │ - move-result-wide v9 │ + move-result-wide v10 │ │ - cmp-long v7, v7, v9 │ + cmp-long v7, v8, v10 │ │ if-eqz v7, :cond_0 │ │ move v5, v6 │ │ goto :goto_0 │ │ @@ -957,15 +957,15 @@ │ │ check-cast v0, Ljava/lang/Number; │ │ goto :goto_0 │ .end method │ │ .method getAsObject()Ljava/lang/Object; │ - .locals 3 │ + .locals 4 │ │ .prologue │ .line 288 │ iget-object v1, p0, Lcom/google/myjson/JsonPrimitive;->value:Ljava/lang/Object; │ │ instance-of v1, v1, Ljava/math/BigInteger; │ │ @@ -1010,17 +1010,17 @@ │ move-result v1 │ │ if-gez v1, :cond_1 │ │ .line 293 │ invoke-virtual {v0}, Ljava/math/BigInteger;->longValue()J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ + invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ │ move-result-object v1 │ │ goto :goto_0 │ │ .line 297 │ .end local v0 # "big":Ljava/math/BigInteger; ├── smali/com/google/myjson/VersionExclusionStrategy.smali │ @@ -8,15 +8,15 @@ │ │ # instance fields │ .field private final version:D │ │ │ # direct methods │ .method constructor (D)V │ - .locals 2 │ + .locals 3 │ .param p1, "version" # D │ │ .prologue │ .line 32 │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ .line 33 ├── smali/com/google/myjson/stream/JsonReader.smali │ @@ -2883,20 +2883,20 @@ │ .end annotation │ │ .prologue │ .line 556 │ invoke-direct {p0}, Lcom/google/myjson/stream/JsonReader;->quickPeek()Lcom/google/myjson/stream/JsonToken; │ │ .line 557 │ - iget-object v5, p0, Lcom/google/myjson/stream/JsonReader;->value:Ljava/lang/String; │ + iget-object v3, p0, Lcom/google/myjson/stream/JsonReader;->value:Ljava/lang/String; │ │ - if-nez v5, :cond_0 │ + if-nez v3, :cond_0 │ │ .line 558 │ - new-instance v5, Ljava/lang/IllegalStateException; │ + new-instance v3, Ljava/lang/IllegalStateException; │ │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ const-string v7, "Expected a long but was " │ │ @@ -2912,50 +2912,50 @@ │ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v6 │ │ - invoke-direct {v5, v6}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V │ + invoke-direct {v3, v6}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V │ │ - throw v5 │ + throw v3 │ │ .line 563 │ :cond_0 │ :try_start_0 │ - iget-object v5, p0, Lcom/google/myjson/stream/JsonReader;->value:Ljava/lang/String; │ + iget-object v3, p0, Lcom/google/myjson/stream/JsonReader;->value:Ljava/lang/String; │ │ - invoke-static {v5}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J │ + invoke-static {v3}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J │ :try_end_0 │ .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_0 │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ .line 572 │ - .local v3, "result":J │ + .local v4, "result":J │ :cond_1 │ - const-wide/16 v5, 0x1 │ + const-wide/16 v6, 0x1 │ │ - cmp-long v5, v3, v5 │ + cmp-long v3, v4, v6 │ │ - if-ltz v5, :cond_2 │ + if-ltz v3, :cond_2 │ │ - iget-object v5, p0, Lcom/google/myjson/stream/JsonReader;->value:Ljava/lang/String; │ + iget-object v3, p0, Lcom/google/myjson/stream/JsonReader;->value:Ljava/lang/String; │ │ const-string v6, "0" │ │ - invoke-virtual {v5, v6}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z │ + invoke-virtual {v3, v6}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z │ │ - move-result v5 │ + move-result v3 │ │ - if-eqz v5, :cond_2 │ + if-eqz v3, :cond_2 │ │ .line 573 │ - new-instance v5, Ljava/lang/NumberFormatException; │ + new-instance v3, Ljava/lang/NumberFormatException; │ │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ const-string v7, "JSON forbids octal prefixes: " │ │ @@ -2969,60 +2969,60 @@ │ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v6 │ │ - invoke-direct {v5, v6}, Ljava/lang/NumberFormatException;->(Ljava/lang/String;)V │ + invoke-direct {v3, v6}, Ljava/lang/NumberFormatException;->(Ljava/lang/String;)V │ │ - throw v5 │ + throw v3 │ │ .line 564 │ - .end local v3 # "result":J │ + .end local v4 # "result":J │ :catch_0 │ move-exception v2 │ │ .line 565 │ .local v2, "ignored":Ljava/lang/NumberFormatException; │ - iget-object v5, p0, Lcom/google/myjson/stream/JsonReader;->value:Ljava/lang/String; │ + iget-object v3, p0, Lcom/google/myjson/stream/JsonReader;->value:Ljava/lang/String; │ │ - invoke-static {v5}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ + invoke-static {v3}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ │ move-result-wide v0 │ │ .line 566 │ .local v0, "asDouble":D │ - double-to-long v3, v0 │ + double-to-long v4, v0 │ │ .line 567 │ - .restart local v3 # "result":J │ - long-to-double v5, v3 │ + .restart local v4 # "result":J │ + long-to-double v6, v4 │ │ - cmpl-double v5, v5, v0 │ + cmpl-double v3, v6, v0 │ │ - if-eqz v5, :cond_1 │ + if-eqz v3, :cond_1 │ │ .line 568 │ - new-instance v5, Ljava/lang/NumberFormatException; │ + new-instance v3, Ljava/lang/NumberFormatException; │ │ iget-object v6, p0, Lcom/google/myjson/stream/JsonReader;->value:Ljava/lang/String; │ │ - invoke-direct {v5, v6}, Ljava/lang/NumberFormatException;->(Ljava/lang/String;)V │ + invoke-direct {v3, v6}, Ljava/lang/NumberFormatException;->(Ljava/lang/String;)V │ │ - throw v5 │ + throw v3 │ │ .line 576 │ .end local v0 # "asDouble":D │ .end local v2 # "ignored":Ljava/lang/NumberFormatException; │ :cond_2 │ invoke-direct {p0}, Lcom/google/myjson/stream/JsonReader;->advance()Lcom/google/myjson/stream/JsonToken; │ │ .line 577 │ - return-wide v3 │ + return-wide v4 │ .end method │ │ .method public nextName()Ljava/lang/String; │ .locals 4 │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/io/IOException; ├── smali/com/google/myjson/stream/JsonWriter.smali │ @@ -1067,15 +1067,15 @@ │ invoke-virtual {v0, v1}, Ljava/io/Writer;->append(Ljava/lang/CharSequence;)Ljava/io/Writer; │ │ .line 367 │ return-object p0 │ .end method │ │ .method public value(J)Lcom/google/myjson/stream/JsonWriter; │ - .locals 2 │ + .locals 3 │ .param p1, "value" # J │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/io/IOException; │ } │ .end annotation ├── smali/com/mobiperf/AccountSelector$1.smali │ @@ -30,14 +30,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/AccountSelector; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/AccountSelector;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/AccountSelector; │ │ .prologue │ .line 188 │ iput-object p1, p0, Lcom/mobiperf/AccountSelector$1;->this$0:Lcom/mobiperf/AccountSelector; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/AccountSelector$GetCookieTask.smali │ @@ -72,402 +72,407 @@ │ │ move-result-object v0 │ │ return-object v0 │ .end method │ │ .method public call()Lorg/apache/http/cookie/Cookie; │ - .locals 12 │ + .locals 11 │ │ .prologue │ - const/4 v11, 0x1 │ + const/4 v10, 0x1 │ │ .line 244 │ - new-instance v8, Ljava/lang/StringBuilder; │ + new-instance v7, Ljava/lang/StringBuilder; │ │ - invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ │ - const-string v9, "GetCookieTask running: " │ + const-string v8, "GetCookieTask running: " │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - iget-object v9, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ + iget-object v8, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ │ # getter for: Lcom/mobiperf/AccountSelector;->authToken:Ljava/lang/String; │ - invoke-static {v9}, Lcom/mobiperf/AccountSelector;->access$200(Lcom/mobiperf/AccountSelector;)Ljava/lang/String; │ + invoke-static {v8}, Lcom/mobiperf/AccountSelector;->access$200(Lcom/mobiperf/AccountSelector;)Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-static {v8}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v7}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 245 │ new-instance v2, Lorg/apache/http/impl/client/DefaultHttpClient; │ │ invoke-direct {v2}, Lorg/apache/http/impl/client/DefaultHttpClient;->()V │ │ .line 246 │ .local v2, "httpClient":Lorg/apache/http/impl/client/DefaultHttpClient; │ - const/4 v7, 0x0 │ + const/4 v6, 0x0 │ │ .line 248 │ - .local v7, "success":Z │ + .local v6, "success":Z │ :try_start_0 │ - new-instance v8, Ljava/lang/StringBuilder; │ + new-instance v7, Ljava/lang/StringBuilder; │ │ - invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ │ - iget-object v9, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ + iget-object v8, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ │ # getter for: Lcom/mobiperf/AccountSelector;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ - invoke-static {v9}, Lcom/mobiperf/AccountSelector;->access$300(Lcom/mobiperf/AccountSelector;)Lcom/mobiperf/util/PhoneUtils; │ + invoke-static {v8}, Lcom/mobiperf/AccountSelector;->access$300(Lcom/mobiperf/AccountSelector;)Lcom/mobiperf/util/PhoneUtils; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Lcom/mobiperf/util/PhoneUtils;->getServerUrl()Ljava/lang/String; │ + invoke-virtual {v8}, Lcom/mobiperf/util/PhoneUtils;->getServerUrl()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const-string v9, "/_ah/login?continue=" │ + const-string v8, "/_ah/login?continue=" │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - iget-object v9, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ + iget-object v8, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ │ + .line 249 │ # getter for: Lcom/mobiperf/AccountSelector;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ - invoke-static {v9}, Lcom/mobiperf/AccountSelector;->access$300(Lcom/mobiperf/AccountSelector;)Lcom/mobiperf/util/PhoneUtils; │ + invoke-static {v8}, Lcom/mobiperf/AccountSelector;->access$300(Lcom/mobiperf/AccountSelector;)Lcom/mobiperf/util/PhoneUtils; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Lcom/mobiperf/util/PhoneUtils;->getServerUrl()Ljava/lang/String; │ + invoke-virtual {v8}, Lcom/mobiperf/util/PhoneUtils;->getServerUrl()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const-string v9, "&action=Login&auth=" │ + const-string v8, "&action=Login&auth=" │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v4 │ │ .line 252 │ - .local v5, "loginUrlPrefix":Ljava/lang/String; │ + .local v4, "loginUrlPrefix":Ljava/lang/String; │ invoke-virtual {v2}, Lorg/apache/http/impl/client/DefaultHttpClient;->getParams()Lorg/apache/http/params/HttpParams; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const-string v9, "http.protocol.handle-redirects" │ + const-string v8, "http.protocol.handle-redirects" │ │ - const/4 v10, 0x0 │ + const/4 v9, 0x0 │ │ - invoke-interface {v8, v9, v10}, Lorg/apache/http/params/HttpParams;->setBooleanParameter(Ljava/lang/String;Z)Lorg/apache/http/params/HttpParams; │ + invoke-interface {v7, v8, v9}, Lorg/apache/http/params/HttpParams;->setBooleanParameter(Ljava/lang/String;Z)Lorg/apache/http/params/HttpParams; │ │ .line 254 │ new-instance v3, Lorg/apache/http/client/methods/HttpGet; │ │ - new-instance v8, Ljava/lang/StringBuilder; │ + new-instance v7, Ljava/lang/StringBuilder; │ │ - invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - iget-object v9, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ + iget-object v8, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ │ # getter for: Lcom/mobiperf/AccountSelector;->authToken:Ljava/lang/String; │ - invoke-static {v9}, Lcom/mobiperf/AccountSelector;->access$200(Lcom/mobiperf/AccountSelector;)Ljava/lang/String; │ + invoke-static {v8}, Lcom/mobiperf/AccountSelector;->access$200(Lcom/mobiperf/AccountSelector;)Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-direct {v3, v8}, Lorg/apache/http/client/methods/HttpGet;->(Ljava/lang/String;)V │ + invoke-direct {v3, v7}, Lorg/apache/http/client/methods/HttpGet;->(Ljava/lang/String;)V │ │ .line 256 │ .local v3, "httpGet":Lorg/apache/http/client/methods/HttpGet; │ - new-instance v8, Ljava/lang/StringBuilder; │ + new-instance v7, Ljava/lang/StringBuilder; │ │ - invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ │ - const-string v9, "Accessing: " │ + const-string v8, "Accessing: " │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - iget-object v9, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ + iget-object v8, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ │ # getter for: Lcom/mobiperf/AccountSelector;->authToken:Ljava/lang/String; │ - invoke-static {v9}, Lcom/mobiperf/AccountSelector;->access$200(Lcom/mobiperf/AccountSelector;)Ljava/lang/String; │ + invoke-static {v8}, Lcom/mobiperf/AccountSelector;->access$200(Lcom/mobiperf/AccountSelector;)Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-static {v8}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v7}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 257 │ invoke-virtual {v2, v3}, Lorg/apache/http/impl/client/DefaultHttpClient;->execute(Lorg/apache/http/client/methods/HttpUriRequest;)Lorg/apache/http/HttpResponse; │ │ - move-result-object v6 │ + move-result-object v5 │ │ .line 258 │ - .local v6, "response":Lorg/apache/http/HttpResponse; │ - invoke-interface {v6}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; │ + .local v5, "response":Lorg/apache/http/HttpResponse; │ + invoke-interface {v5}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-interface {v8}, Lorg/apache/http/StatusLine;->getStatusCode()I │ + invoke-interface {v7}, Lorg/apache/http/StatusLine;->getStatusCode()I │ │ - move-result v8 │ + move-result v7 │ │ - const/16 v9, 0x12e │ + const/16 v8, 0x12e │ │ - if-eq v8, v9, :cond_1 │ + if-eq v7, v8, :cond_1 │ │ .line 260 │ - new-instance v8, Ljava/lang/StringBuilder; │ + new-instance v7, Ljava/lang/StringBuilder; │ │ - invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ │ - const-string v9, "Failed to get login cookie: " │ + const-string v8, "Failed to get login cookie: " │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const-string v9, " returned unexpected error code " │ + const-string v8, " returned unexpected error code " │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-interface {v6}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; │ + .line 262 │ + invoke-interface {v5}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-interface {v9}, Lorg/apache/http/StatusLine;->getStatusCode()I │ + invoke-interface {v8}, Lorg/apache/http/StatusLine;->getStatusCode()I │ │ - move-result v9 │ + move-result v8 │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-static {v8}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + .line 260 │ + invoke-static {v7}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 263 │ - new-instance v8, Ljava/lang/RuntimeException; │ + new-instance v7, Ljava/lang/RuntimeException; │ │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Failed to get login cookie: " │ + const-string v9, "Failed to get login cookie: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - const-string v10, " returned unexpected error code " │ + const-string v9, " returned unexpected error code " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-interface {v6}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; │ + .line 265 │ + invoke-interface {v5}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; │ │ - move-result-object v10 │ + move-result-object v9 │ │ - invoke-interface {v10}, Lorg/apache/http/StatusLine;->getStatusCode()I │ + invoke-interface {v9}, Lorg/apache/http/StatusLine;->getStatusCode()I │ │ - move-result v10 │ + move-result v9 │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-direct {v8, v9}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ + invoke-direct {v7, v8}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ │ - throw v8 │ + throw v7 │ :try_end_0 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_1 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ .line 284 │ .end local v3 # "httpGet":Lorg/apache/http/client/methods/HttpGet; │ - .end local v5 # "loginUrlPrefix":Ljava/lang/String; │ - .end local v6 # "response":Lorg/apache/http/HttpResponse; │ + .end local v4 # "loginUrlPrefix":Ljava/lang/String; │ + .end local v5 # "response":Lorg/apache/http/HttpResponse; │ :catch_0 │ move-exception v1 │ │ .line 285 │ .local v1, "e":Lorg/apache/http/client/ClientProtocolException; │ :try_start_1 │ - const-string v8, "Failed to get login cookie" │ + const-string v7, "Failed to get login cookie" │ │ - invoke-static {v8, v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ + invoke-static {v7, v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ │ .line 286 │ - new-instance v8, Ljava/lang/RuntimeException; │ + new-instance v7, Ljava/lang/RuntimeException; │ │ - const-string v9, "Failed to get login cookie" │ + const-string v8, "Failed to get login cookie" │ │ - invoke-direct {v8, v9, v1}, Ljava/lang/RuntimeException;->(Ljava/lang/String;Ljava/lang/Throwable;)V │ + invoke-direct {v7, v8, v1}, Ljava/lang/RuntimeException;->(Ljava/lang/String;Ljava/lang/Throwable;)V │ │ - throw v8 │ + throw v7 │ :try_end_1 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ .line 291 │ .end local v1 # "e":Lorg/apache/http/client/ClientProtocolException; │ :catchall_0 │ - move-exception v8 │ + move-exception v7 │ │ invoke-virtual {v2}, Lorg/apache/http/impl/client/DefaultHttpClient;->getParams()Lorg/apache/http/params/HttpParams; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - const-string v10, "http.protocol.handle-redirects" │ + const-string v9, "http.protocol.handle-redirects" │ │ - invoke-interface {v9, v10, v11}, Lorg/apache/http/params/HttpParams;->setBooleanParameter(Ljava/lang/String;Z)Lorg/apache/http/params/HttpParams; │ + invoke-interface {v8, v9, v10}, Lorg/apache/http/params/HttpParams;->setBooleanParameter(Ljava/lang/String;Z)Lorg/apache/http/params/HttpParams; │ │ .line 293 │ - if-nez v7, :cond_0 │ + if-nez v6, :cond_0 │ │ .line 294 │ - iget-object v9, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ + iget-object v8, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ │ - invoke-virtual {v9}, Lcom/mobiperf/AccountSelector;->resetCheckinFuture()V │ + invoke-virtual {v8}, Lcom/mobiperf/AccountSelector;->resetCheckinFuture()V │ │ :cond_0 │ - throw v8 │ + throw v7 │ │ .line 268 │ .restart local v3 # "httpGet":Lorg/apache/http/client/methods/HttpGet; │ - .restart local v5 # "loginUrlPrefix":Ljava/lang/String; │ - .restart local v6 # "response":Lorg/apache/http/HttpResponse; │ + .restart local v4 # "loginUrlPrefix":Ljava/lang/String; │ + .restart local v5 # "response":Lorg/apache/http/HttpResponse; │ :cond_1 │ :try_start_2 │ - new-instance v8, Ljava/lang/StringBuilder; │ + new-instance v7, Ljava/lang/StringBuilder; │ │ - invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ │ - const-string v9, "Got " │ + const-string v8, "Got " │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ + .line 269 │ invoke-virtual {v2}, Lorg/apache/http/impl/client/DefaultHttpClient;->getCookieStore()Lorg/apache/http/client/CookieStore; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-interface {v9}, Lorg/apache/http/client/CookieStore;->getCookies()Ljava/util/List; │ + invoke-interface {v8}, Lorg/apache/http/client/CookieStore;->getCookies()Ljava/util/List; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-interface {v9}, Ljava/util/List;->size()I │ + invoke-interface {v8}, Ljava/util/List;->size()I │ │ - move-result v9 │ + move-result v8 │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const-string v9, " cookies back" │ + const-string v8, " cookies back" │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-static {v8}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + .line 268 │ + invoke-static {v7}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 271 │ invoke-virtual {v2}, Lorg/apache/http/impl/client/DefaultHttpClient;->getCookieStore()Lorg/apache/http/client/CookieStore; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-interface {v8}, Lorg/apache/http/client/CookieStore;->getCookies()Ljava/util/List; │ + invoke-interface {v7}, Lorg/apache/http/client/CookieStore;->getCookies()Ljava/util/List; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-interface {v8}, Ljava/util/List;->iterator()Ljava/util/Iterator; │ + invoke-interface {v7}, Ljava/util/List;->iterator()Ljava/util/Iterator; │ │ - move-result-object v4 │ + move-result-object v7 │ │ - .local v4, "i$":Ljava/util/Iterator; │ :cond_2 │ - invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v8 │ │ if-eqz v8, :cond_5 │ │ - invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ move-result-object v0 │ │ check-cast v0, Lorg/apache/http/cookie/Cookie; │ │ .line 272 │ .local v0, "cookie":Lorg/apache/http/cookie/Cookie; │ @@ -500,147 +505,148 @@ │ │ invoke-virtual {v8, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v8 │ │ if-nez v8, :cond_3 │ │ + .line 274 │ invoke-interface {v0}, Lorg/apache/http/cookie/Cookie;->getName()Ljava/lang/String; │ │ move-result-object v8 │ │ const-string v9, "ACSID" │ │ invoke-virtual {v8, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v8 │ │ if-eqz v8, :cond_2 │ │ .line 275 │ :cond_3 │ - new-instance v8, Ljava/lang/StringBuilder; │ + new-instance v7, Ljava/lang/StringBuilder; │ │ - invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ │ - const-string v9, "Got cookie " │ + const-string v8, "Got cookie " │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-static {v8}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v7}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 276 │ - iget-object v8, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ + iget-object v7, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v9 │ + move-result-wide v8 │ │ # invokes: Lcom/mobiperf/AccountSelector;->setLastAuthTime(J)V │ - invoke-static {v8, v9, v10}, Lcom/mobiperf/AccountSelector;->access$400(Lcom/mobiperf/AccountSelector;J)V │ + invoke-static {v7, v8, v9}, Lcom/mobiperf/AccountSelector;->access$400(Lcom/mobiperf/AccountSelector;J)V │ :try_end_2 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_2 .. :try_end_2} :catch_0 │ .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_1 │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ .line 277 │ - const/4 v7, 0x1 │ + const/4 v6, 0x1 │ │ .line 291 │ invoke-virtual {v2}, Lorg/apache/http/impl/client/DefaultHttpClient;->getParams()Lorg/apache/http/params/HttpParams; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const-string v9, "http.protocol.handle-redirects" │ + const-string v8, "http.protocol.handle-redirects" │ │ - invoke-interface {v8, v9, v11}, Lorg/apache/http/params/HttpParams;->setBooleanParameter(Ljava/lang/String;Z)Lorg/apache/http/params/HttpParams; │ + invoke-interface {v7, v8, v10}, Lorg/apache/http/params/HttpParams;->setBooleanParameter(Ljava/lang/String;Z)Lorg/apache/http/params/HttpParams; │ │ .line 293 │ - if-nez v7, :cond_4 │ + if-nez v6, :cond_4 │ │ .line 294 │ - iget-object v8, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ + iget-object v7, p0, Lcom/mobiperf/AccountSelector$GetCookieTask;->this$0:Lcom/mobiperf/AccountSelector; │ │ - invoke-virtual {v8}, Lcom/mobiperf/AccountSelector;->resetCheckinFuture()V │ + invoke-virtual {v7}, Lcom/mobiperf/AccountSelector;->resetCheckinFuture()V │ │ + .line 278 │ :cond_4 │ return-object v0 │ │ .line 281 │ .end local v0 # "cookie":Lorg/apache/http/cookie/Cookie; │ :cond_5 │ :try_start_3 │ - const-string v8, "No (S)ASCID cookies returned" │ + const-string v7, "No (S)ASCID cookies returned" │ │ - invoke-static {v8}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v7}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 282 │ - new-instance v8, Ljava/lang/RuntimeException; │ + new-instance v7, Ljava/lang/RuntimeException; │ │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Failed to get login cookie: " │ + const-string v9, "Failed to get login cookie: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - const-string v10, " did not return any (S)ACSID cookie" │ + const-string v9, " did not return any (S)ACSID cookie" │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-direct {v8, v9}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ + invoke-direct {v7, v8}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ │ - throw v8 │ + throw v7 │ :try_end_3 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_3 .. :try_end_3} :catch_0 │ .catch Ljava/io/IOException; {:try_start_3 .. :try_end_3} :catch_1 │ .catchall {:try_start_3 .. :try_end_3} :catchall_0 │ │ .line 287 │ .end local v3 # "httpGet":Lorg/apache/http/client/methods/HttpGet; │ - .end local v4 # "i$":Ljava/util/Iterator; │ - .end local v5 # "loginUrlPrefix":Ljava/lang/String; │ - .end local v6 # "response":Lorg/apache/http/HttpResponse; │ + .end local v4 # "loginUrlPrefix":Ljava/lang/String; │ + .end local v5 # "response":Lorg/apache/http/HttpResponse; │ :catch_1 │ move-exception v1 │ │ .line 288 │ .local v1, "e":Ljava/io/IOException; │ :try_start_4 │ - const-string v8, "Failed to get login cookie" │ + const-string v7, "Failed to get login cookie" │ │ - invoke-static {v8, v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ + invoke-static {v7, v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ │ .line 289 │ - new-instance v8, Ljava/lang/RuntimeException; │ + new-instance v7, Ljava/lang/RuntimeException; │ │ - const-string v9, "Failed to get login cookie" │ + const-string v8, "Failed to get login cookie" │ │ - invoke-direct {v8, v9, v1}, Ljava/lang/RuntimeException;->(Ljava/lang/String;Ljava/lang/Throwable;)V │ + invoke-direct {v7, v8, v1}, Ljava/lang/RuntimeException;->(Ljava/lang/String;Ljava/lang/Throwable;)V │ │ - throw v8 │ + throw v7 │ :try_end_4 │ .catchall {:try_start_4 .. :try_end_4} :catchall_0 │ .end method ├── smali/com/mobiperf/AccountSelector.smali │ @@ -133,15 +133,15 @@ │ .line 48 │ iget-object v0, p0, Lcom/mobiperf/AccountSelector;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ return-object v0 │ .end method │ │ .method static synthetic access$400(Lcom/mobiperf/AccountSelector;J)V │ - .locals 0 │ + .locals 1 │ .param p0, "x0" # Lcom/mobiperf/AccountSelector; │ .param p1, "x1" # J │ │ .prologue │ .line 48 │ invoke-direct {p0, p1, p2}, Lcom/mobiperf/AccountSelector;->setLastAuthTime(J)V │ │ @@ -500,465 +500,437 @@ │ │ throw v0 │ .end method │ │ │ # virtual methods │ .method public authenticate()V │ - .locals 22 │ + .locals 20 │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Landroid/accounts/OperationCanceledException;, │ Landroid/accounts/AuthenticatorException;, │ Ljava/io/IOException; │ } │ .end annotation │ │ .prologue │ .line 124 │ - const-string v3, "AccountSelector.authenticate() running" │ + const-string v4, "AccountSelector.authenticate() running" │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 130 │ invoke-direct/range {p0 .. p0}, Lcom/mobiperf/AccountSelector;->getLastAuthTime()J │ │ move-result-wide v10 │ │ .line 131 │ .local v10, "authTimeLast":J │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ - sub-long v18, v3, v10 │ + sub-long v16, v4, v10 │ │ .line 132 │ - .local v18, "timeSinceLastAuth":J │ + .local v16, "timeSinceLastAuth":J │ invoke-direct/range {p0 .. p0}, Lcom/mobiperf/AccountSelector;->shouldAuthImmediately()Z │ │ - move-result v3 │ + move-result v4 │ │ - if-nez v3, :cond_1 │ + if-nez v4, :cond_1 │ │ - const-wide/16 v3, 0x0 │ + const-wide/16 v4, 0x0 │ │ - cmp-long v3, v10, v3 │ + cmp-long v4, v10, v4 │ │ - if-eqz v3, :cond_1 │ + if-eqz v4, :cond_1 │ │ - const-wide/32 v3, 0x5265c00 │ + const-wide/32 v4, 0x5265c00 │ │ - cmp-long v3, v18, v3 │ + cmp-long v4, v16, v4 │ │ - if-gez v3, :cond_1 │ + if-gez v4, :cond_1 │ │ .line 207 │ :cond_0 │ :goto_0 │ return-void │ │ .line 137 │ :cond_1 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v4, "Authenticating. Last authentication is " │ + const-string v5, "Authenticating. Last authentication is " │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-wide/16 v4, 0x3e8 │ + const-wide/16 v6, 0x3e8 │ │ - div-long v4, v18, v4 │ + div-long v6, v16, v6 │ │ - const-wide/16 v20, 0x3c │ + const-wide/16 v18, 0x3c │ │ - div-long v4, v4, v20 │ + div-long v6, v6, v18 │ │ - invoke-virtual {v3, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-string v4, " minutes ago. " │ + const-string v5, " minutes ago. " │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 140 │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/AccountSelector;->context:Landroid/content/Context; │ + iget-object v4, v0, Lcom/mobiperf/AccountSelector;->context:Landroid/content/Context; │ │ - invoke-virtual {v3}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; │ + invoke-virtual {v4}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Landroid/accounts/AccountManager;->get(Landroid/content/Context;)Landroid/accounts/AccountManager; │ + invoke-static {v4}, Landroid/accounts/AccountManager;->get(Landroid/content/Context;)Landroid/accounts/AccountManager; │ │ - move-result-object v1 │ + move-result-object v2 │ │ .line 141 │ - .local v1, "accountManager":Landroid/accounts/AccountManager; │ + .local v2, "accountManager":Landroid/accounts/AccountManager; │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/AccountSelector;->authToken:Ljava/lang/String; │ + iget-object v4, v0, Lcom/mobiperf/AccountSelector;->authToken:Ljava/lang/String; │ │ - if-eqz v3, :cond_2 │ + if-eqz v4, :cond_2 │ │ .line 143 │ - const-string v3, "Invalidating token" │ + const-string v4, "Invalidating token" │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 144 │ - const-string v3, "com.google" │ + const-string v4, "com.google" │ │ move-object/from16 v0, p0 │ │ - iget-object v4, v0, Lcom/mobiperf/AccountSelector;->authToken:Ljava/lang/String; │ + iget-object v5, v0, Lcom/mobiperf/AccountSelector;->authToken:Ljava/lang/String; │ │ - invoke-virtual {v1, v3, v4}, Landroid/accounts/AccountManager;->invalidateAuthToken(Ljava/lang/String;Ljava/lang/String;)V │ + invoke-virtual {v2, v4, v5}, Landroid/accounts/AccountManager;->invalidateAuthToken(Ljava/lang/String;Ljava/lang/String;)V │ │ .line 147 │ :cond_2 │ - const-string v3, "com.google" │ + const-string v4, "com.google" │ │ - invoke-virtual {v1, v3}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account; │ + invoke-virtual {v2, v4}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account; │ │ - move-result-object v8 │ + move-result-object v9 │ │ .line 148 │ - .local v8, "accounts":[Landroid/accounts/Account; │ - new-instance v3, Ljava/lang/StringBuilder; │ + .local v9, "accounts":[Landroid/accounts/Account; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v4, "Got " │ + const-string v5, "Got " │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - array-length v4, v8 │ + array-length v5, v9 │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-string v4, " accounts" │ + const-string v5, " accounts" │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 150 │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/AccountSelector;->context:Landroid/content/Context; │ + iget-object v4, v0, Lcom/mobiperf/AccountSelector;->context:Landroid/content/Context; │ │ - invoke-static {v3}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ + invoke-static {v4}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ - move-result-object v16 │ + move-result-object v14 │ │ .line 151 │ - .local v16, "prefs":Landroid/content/SharedPreferences; │ - const-string v3, "PREF_KEY_SELECTED_ACCOUNT" │ + .local v14, "prefs":Landroid/content/SharedPreferences; │ + const-string v4, "PREF_KEY_SELECTED_ACCOUNT" │ │ - const/4 v4, 0x0 │ - │ - move-object/from16 v0, v16 │ + const/4 v5, 0x0 │ │ - invoke-interface {v0, v3, v4}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ + invoke-interface {v14, v4, v5}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ │ - move-result-object v17 │ + move-result-object v15 │ │ .line 153 │ - .local v17, "selectedAccount":Ljava/lang/String; │ + .local v15, "selectedAccount":Ljava/lang/String; │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/AccountSelector;->context:Landroid/content/Context; │ + iget-object v4, v0, Lcom/mobiperf/AccountSelector;->context:Landroid/content/Context; │ │ - const v4, 0x7f070037 │ + const v5, 0x7f070037 │ │ - invoke-virtual {v3, v4}, Landroid/content/Context;->getString(I)Ljava/lang/String; │ + invoke-virtual {v4, v5}, Landroid/content/Context;->getString(I)Ljava/lang/String; │ │ move-result-object v12 │ │ .line 154 │ .local v12, "defaultUserName":Ljava/lang/String; │ - const/4 v3, 0x1 │ + const/4 v4, 0x1 │ │ move-object/from16 v0, p0 │ │ - iput-boolean v3, v0, Lcom/mobiperf/AccountSelector;->isAnonymous:Z │ + iput-boolean v4, v0, Lcom/mobiperf/AccountSelector;->isAnonymous:Z │ │ .line 155 │ - if-eqz v17, :cond_3 │ + if-eqz v15, :cond_3 │ │ - move-object/from16 v0, v17 │ + invoke-virtual {v15, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ - invoke-virtual {v0, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ + move-result v4 │ │ - move-result v3 │ - │ - if-nez v3, :cond_0 │ + if-nez v4, :cond_0 │ │ .line 159 │ :cond_3 │ - if-eqz v8, :cond_9 │ + if-eqz v9, :cond_9 │ │ - array-length v3, v8 │ + array-length v4, v9 │ │ - if-lez v3, :cond_9 │ + if-lez v4, :cond_9 │ │ .line 161 │ - array-length v3, v8 │ + array-length v4, v9 │ │ - add-int/lit8 v3, v3, -0x1 │ + add-int/lit8 v4, v4, -0x1 │ │ - aget-object v2, v8, v3 │ + aget-object v3, v9, v4 │ │ .line 162 │ - .local v2, "accountToUse":Landroid/accounts/Account; │ - array-length v3, v8 │ + .local v3, "accountToUse":Landroid/accounts/Account; │ + array-length v4, v9 │ │ - add-int/lit8 v3, v3, -0x1 │ + add-int/lit8 v4, v4, -0x1 │ │ - aget-object v3, v8, v3 │ + aget-object v4, v9, v4 │ │ - iget-object v3, v3, Landroid/accounts/Account;->name:Ljava/lang/String; │ + iget-object v4, v4, Landroid/accounts/Account;->name:Ljava/lang/String; │ │ - invoke-virtual {v3, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ + invoke-virtual {v4, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ - move-result v3 │ + move-result v4 │ │ - if-nez v3, :cond_4 │ + if-nez v4, :cond_4 │ │ .line 163 │ - move-object v9, v8 │ - │ - .local v9, "arr$":[Landroid/accounts/Account; │ - array-length v15, v9 │ + array-length v5, v9 │ │ - .local v15, "len$":I │ - const/4 v14, 0x0 │ + const/4 v4, 0x0 │ │ - .local v14, "i$":I │ :goto_1 │ - if-ge v14, v15, :cond_4 │ + if-ge v4, v5, :cond_4 │ │ - aget-object v7, v9, v14 │ + aget-object v8, v9, v4 │ │ .line 164 │ - .local v7, "account":Landroid/accounts/Account; │ - iget-object v3, v7, Landroid/accounts/Account;->name:Ljava/lang/String; │ + .local v8, "account":Landroid/accounts/Account; │ + iget-object v6, v8, Landroid/accounts/Account;->name:Ljava/lang/String; │ │ - invoke-virtual {v3, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ + invoke-virtual {v6, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ - move-result v3 │ + move-result v6 │ │ - if-eqz v3, :cond_6 │ + if-eqz v6, :cond_6 │ │ .line 165 │ - move-object v2, v7 │ + move-object v3, v8 │ │ .line 170 │ - .end local v7 # "account":Landroid/accounts/Account; │ - .end local v9 # "arr$":[Landroid/accounts/Account; │ - .end local v14 # "i$":I │ - .end local v15 # "len$":I │ + .end local v8 # "account":Landroid/accounts/Account; │ :cond_4 │ - if-eqz v17, :cond_5 │ + if-eqz v15, :cond_5 │ │ .line 171 │ - move-object v9, v8 │ - │ - .restart local v9 # "arr$":[Landroid/accounts/Account; │ - array-length v15, v9 │ + array-length v5, v9 │ │ - .restart local v15 # "len$":I │ - const/4 v14, 0x0 │ + const/4 v4, 0x0 │ │ - .restart local v14 # "i$":I │ :goto_2 │ - if-ge v14, v15, :cond_5 │ + if-ge v4, v5, :cond_5 │ │ - aget-object v7, v9, v14 │ + aget-object v8, v9, v4 │ │ .line 172 │ - .restart local v7 # "account":Landroid/accounts/Account; │ - iget-object v3, v7, Landroid/accounts/Account;->name:Ljava/lang/String; │ + .restart local v8 # "account":Landroid/accounts/Account; │ + iget-object v6, v8, Landroid/accounts/Account;->name:Ljava/lang/String; │ │ - move-object/from16 v0, v17 │ + invoke-virtual {v6, v15}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ - invoke-virtual {v3, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ + move-result v6 │ │ - move-result v3 │ - │ - if-eqz v3, :cond_7 │ + if-eqz v6, :cond_7 │ │ .line 173 │ - move-object v2, v7 │ + move-object v3, v8 │ │ .line 179 │ - .end local v7 # "account":Landroid/accounts/Account; │ - .end local v9 # "arr$":[Landroid/accounts/Account; │ - .end local v14 # "i$":I │ - .end local v15 # "len$":I │ + .end local v8 # "account":Landroid/accounts/Account; │ :cond_5 │ - iget-object v3, v2, Landroid/accounts/Account;->name:Ljava/lang/String; │ + iget-object v4, v3, Landroid/accounts/Account;->name:Ljava/lang/String; │ │ - invoke-virtual {v3, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ + invoke-virtual {v4, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ - move-result v3 │ + move-result v4 │ │ move-object/from16 v0, p0 │ │ - iput-boolean v3, v0, Lcom/mobiperf/AccountSelector;->isAnonymous:Z │ + iput-boolean v4, v0, Lcom/mobiperf/AccountSelector;->isAnonymous:Z │ │ .line 181 │ move-object/from16 v0, p0 │ │ - iget-boolean v3, v0, Lcom/mobiperf/AccountSelector;->isAnonymous:Z │ + iget-boolean v4, v0, Lcom/mobiperf/AccountSelector;->isAnonymous:Z │ │ - if-eqz v3, :cond_8 │ + if-eqz v4, :cond_8 │ │ .line 182 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v4, "Skipping authentication as account is " │ + const-string v5, "Skipping authentication as account is " │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ goto/16 :goto_0 │ │ .line 163 │ - .restart local v7 # "account":Landroid/accounts/Account; │ - .restart local v9 # "arr$":[Landroid/accounts/Account; │ - .restart local v14 # "i$":I │ - .restart local v15 # "len$":I │ + .restart local v8 # "account":Landroid/accounts/Account; │ :cond_6 │ - add-int/lit8 v14, v14, 0x1 │ + add-int/lit8 v4, v4, 0x1 │ │ goto :goto_1 │ │ .line 171 │ :cond_7 │ - add-int/lit8 v14, v14, 0x1 │ + add-int/lit8 v4, v4, 0x1 │ │ goto :goto_2 │ │ .line 186 │ - .end local v7 # "account":Landroid/accounts/Account; │ - .end local v9 # "arr$":[Landroid/accounts/Account; │ - .end local v14 # "i$":I │ - .end local v15 # "len$":I │ + .end local v8 # "account":Landroid/accounts/Account; │ :cond_8 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v4, "Trying to get auth token for " │ + const-string v5, "Trying to get auth token for " │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 187 │ - const-string v3, "ah" │ + const-string v4, "ah" │ │ - const/4 v4, 0x0 │ + const/4 v5, 0x0 │ │ - new-instance v5, Lcom/mobiperf/AccountSelector$1; │ + new-instance v6, Lcom/mobiperf/AccountSelector$1; │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v5, v0}, Lcom/mobiperf/AccountSelector$1;->(Lcom/mobiperf/AccountSelector;)V │ + invoke-direct {v6, v0}, Lcom/mobiperf/AccountSelector$1;->(Lcom/mobiperf/AccountSelector;)V │ │ - const/4 v6, 0x0 │ + const/4 v7, 0x0 │ │ - invoke-virtual/range {v1 .. v6}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture; │ + invoke-virtual/range {v2 .. v7}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture; │ │ move-result-object v13 │ │ .line 203 │ .local v13, "future":Landroid/accounts/AccountManagerFuture;, "Landroid/accounts/AccountManagerFuture;" │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v4, "AccountManager.getAuthToken returned " │ + const-string v5, "AccountManager.getAuthToken returned " │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ goto/16 :goto_0 │ │ .line 205 │ - .end local v2 # "accountToUse":Landroid/accounts/Account; │ + .end local v3 # "accountToUse":Landroid/accounts/Account; │ .end local v13 # "future":Landroid/accounts/AccountManagerFuture;, "Landroid/accounts/AccountManagerFuture;" │ :cond_9 │ - new-instance v3, Ljava/lang/RuntimeException; │ + new-instance v4, Ljava/lang/RuntimeException; │ │ - const-string v4, "No google account found" │ + const-string v5, "No google account found" │ │ - invoke-direct {v3, v4}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ + invoke-direct {v4, v5}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ │ - throw v3 │ + throw v4 │ .end method │ │ .method public declared-synchronized getCheckinFuture()Ljava/util/concurrent/Future; │ .locals 1 │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "()", ├── smali/com/mobiperf/Checkin$MySSLSocketFactory$1.smali │ @@ -22,14 +22,15 @@ │ │ .field final synthetic val$this$0:Lcom/mobiperf/Checkin; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/Checkin$MySSLSocketFactory;Lcom/mobiperf/Checkin;)V │ .locals 0 │ + .param p1, "this$1" # Lcom/mobiperf/Checkin$MySSLSocketFactory; │ │ .prologue │ .line 271 │ iput-object p1, p0, Lcom/mobiperf/Checkin$MySSLSocketFactory$1;->this$1:Lcom/mobiperf/Checkin$MySSLSocketFactory; │ │ iput-object p2, p0, Lcom/mobiperf/Checkin$MySSLSocketFactory$1;->val$this$0:Lcom/mobiperf/Checkin; ├── smali/com/mobiperf/Checkin$MySSLSocketFactory.smali │ @@ -19,14 +19,15 @@ │ │ .field final synthetic this$0:Lcom/mobiperf/Checkin; │ │ │ # direct methods │ .method public constructor (Lcom/mobiperf/Checkin;Ljava/security/KeyStore;)V │ .locals 5 │ + .param p1, "this$0" # Lcom/mobiperf/Checkin; │ .param p2, "truststore" # Ljava/security/KeyStore; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/security/NoSuchAlgorithmException;, │ Ljava/security/KeyManagementException;, │ Ljava/security/KeyStoreException;, │ Ljava/security/UnrecoverableKeyException; ├── smali/com/mobiperf/Checkin.smali │ @@ -336,22 +336,24 @@ │ │ .line 325 │ .local v4, "registry":Lorg/apache/http/conn/scheme/SchemeRegistry; │ new-instance v8, Lorg/apache/http/conn/scheme/Scheme; │ │ const-string v9, "http" │ │ + .line 326 │ invoke-static {}, Lorg/apache/http/conn/scheme/PlainSocketFactory;->getSocketFactory()Lorg/apache/http/conn/scheme/PlainSocketFactory; │ │ move-result-object v10 │ │ const/16 v11, 0x50 │ │ invoke-direct {v8, v9, v10, v11}, Lorg/apache/http/conn/scheme/Scheme;->(Ljava/lang/String;Lorg/apache/http/conn/scheme/SocketFactory;I)V │ │ + .line 325 │ invoke-virtual {v4, v8}, Lorg/apache/http/conn/scheme/SchemeRegistry;->register(Lorg/apache/http/conn/scheme/Scheme;)Lorg/apache/http/conn/scheme/Scheme; │ │ .line 327 │ new-instance v8, Lorg/apache/http/conn/scheme/Scheme; │ │ const-string v9, "https" │ │ @@ -527,26 +529,29 @@ │ .local v0, "client":Lorg/apache/http/client/HttpClient; │ new-instance v8, Ljava/lang/StringBuilder; │ │ invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ iget-object v7, p0, Lcom/mobiperf/Checkin;->accountSelector:Lcom/mobiperf/AccountSelector; │ │ + .line 365 │ invoke-virtual {v7}, Lcom/mobiperf/AccountSelector;->isAnonymous()Z │ │ move-result v7 │ │ if-eqz v7, :cond_4 │ │ iget-object v7, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ + .line 366 │ invoke-virtual {v7}, Lcom/mobiperf/util/PhoneUtils;->getAnonymousServerUrl()Ljava/lang/String; │ │ move-result-object v7 │ │ + .line 367 │ :goto_0 │ invoke-virtual {v8, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v7 │ │ const-string v8, "/" │ │ @@ -630,14 +635,15 @@ │ │ new-instance v8, Ljava/lang/StringBuilder; │ │ invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ iget-object v9, p0, Lcom/mobiperf/Checkin;->authCookie:Lorg/apache/http/cookie/Cookie; │ │ + .line 383 │ invoke-interface {v9}, Lorg/apache/http/cookie/Cookie;->getName()Ljava/lang/String; │ │ move-result-object v9 │ │ invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v8 │ @@ -658,14 +664,15 @@ │ │ move-result-object v8 │ │ invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v8 │ │ + .line 382 │ invoke-virtual {v3, v7, v8}, Lorg/apache/http/client/methods/HttpPost;->setHeader(Ljava/lang/String;Ljava/lang/String;)V │ │ .line 386 │ :cond_3 │ new-instance v4, Lorg/apache/http/impl/client/BasicResponseHandler; │ │ invoke-direct {v4}, Lorg/apache/http/impl/client/BasicResponseHandler;->()V │ @@ -699,23 +706,24 @@ │ │ check-cast v5, Ljava/lang/String; │ │ .line 389 │ .local v5, "result":Ljava/lang/String; │ return-object v5 │ │ - .line 364 │ + .line 366 │ .end local v2 # "fullurl":Ljava/lang/String; │ .end local v3 # "postMethod":Lorg/apache/http/client/methods/HttpPost; │ .end local v4 # "responseHandler":Lorg/apache/http/client/ResponseHandler;, "Lorg/apache/http/client/ResponseHandler;" │ .end local v5 # "result":Ljava/lang/String; │ .end local v6 # "se":Lorg/apache/http/entity/StringEntity; │ :cond_4 │ iget-object v7, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ + .line 367 │ invoke-virtual {v7}, Lcom/mobiperf/util/PhoneUtils;->getServerUrl()Ljava/lang/String; │ │ move-result-object v7 │ │ goto/16 :goto_0 │ │ .line 374 │ @@ -818,18 +826,20 @@ │ invoke-virtual {v8, v10, v11}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; │ │ .line 121 │ const-string v10, "properties" │ │ iget-object v11, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ + .line 123 │ invoke-virtual {v11}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ │ move-result-object v11 │ │ + .line 122 │ invoke-static {v11}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ │ move-result-object v11 │ │ invoke-virtual {v8, v10, v11}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; │ │ .line 124 │ @@ -994,14 +1004,15 @@ │ move-result-object v10 │ │ invoke-static {v10}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 143 │ if-eqz v4, :cond_0 │ │ + .line 144 │ invoke-static {}, Lcom/mobiperf/MeasurementTask;->getMeasurementTypes()Ljava/util/Set; │ │ move-result-object v10 │ │ const-string v11, "type" │ │ invoke-virtual {v4, v11}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object; │ @@ -1018,26 +1029,29 @@ │ │ if-eqz v10, :cond_0 │ │ .line 146 │ :try_start_1 │ iget-object v10, p0, Lcom/mobiperf/Checkin;->context:Landroid/content/Context; │ │ + .line 147 │ invoke-static {v4, v10}, Lcom/mobiperf/util/MeasurementJsonConvertor;->makeMeasurementTaskFromJson(Lorg/json/JSONObject;Landroid/content/Context;)Lcom/mobiperf/MeasurementTask; │ │ move-result-object v9 │ │ .line 149 │ .local v9, "task":Lcom/mobiperf/MeasurementTask; │ iget-object v10, v9, Lcom/mobiperf/MeasurementTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ + .line 150 │ invoke-static {v10}, Lcom/mobiperf/util/MeasurementJsonConvertor;->toJsonString(Ljava/lang/Object;)Ljava/lang/String; │ │ move-result-object v10 │ │ + .line 149 │ invoke-static {v10}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 151 │ invoke-virtual {v7, v9}, Ljava/util/Vector;->add(Ljava/lang/Object;)Z │ :try_end_1 │ .catch Ljava/lang/IllegalArgumentException; {:try_start_1 .. :try_end_1} :catch_0 │ .catch Lorg/json/JSONException; {:try_start_1 .. :try_end_1} :catch_1 │ @@ -1193,14 +1207,15 @@ │ iget-object v10, p0, Lcom/mobiperf/Checkin;->accountSelector:Lcom/mobiperf/AccountSelector; │ │ invoke-virtual {v10, v12}, Lcom/mobiperf/AccountSelector;->setAuthImmediately(Z)V │ │ .line 173 │ iput-object v13, p0, Lcom/mobiperf/Checkin;->authCookie:Lorg/apache/http/cookie/Cookie; │ │ + .line 162 │ :cond_3 │ return-object v7 │ │ .line 166 │ .end local v2 # "i":I │ .end local v3 # "info":Lcom/mobiperf/DeviceInfo; │ .end local v5 # "jsonArray":Lorg/json/JSONArray; │ @@ -1406,15 +1421,15 @@ │ │ .line 92 │ :cond_0 │ return-void │ .end method │ │ .method public uploadMeasurementResult(Lorg/json/JSONArray;Lcom/mobiperf/ResourceCapManager;)V │ - .locals 5 │ + .locals 6 │ .param p1, "resultArray" # Lorg/json/JSONArray; │ .param p2, "resourceCapManager" # Lcom/mobiperf/ResourceCapManager; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/io/IOException; │ } │ .end annotation │ @@ -1458,40 +1473,42 @@ │ │ const-string v4, "TaskSchedule.uploadMeasurementResult() uploading: " │ │ invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ + .line 190 │ invoke-virtual {p1}, Lorg/json/JSONArray;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v3 │ │ + .line 189 │ invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 191 │ invoke-virtual {p1}, Lorg/json/JSONArray;->toString()Ljava/lang/String; │ │ move-result-object v3 │ │ invoke-virtual {v3}, Ljava/lang/String;->length()I │ │ move-result v3 │ │ - int-to-long v3, v3 │ + int-to-long v4, v3 │ │ - invoke-virtual {p2, v3, v4}, Lcom/mobiperf/ResourceCapManager;->updateDataUsage(J)V │ + invoke-virtual {p2, v4, v5}, Lcom/mobiperf/ResourceCapManager;->updateDataUsage(J)V │ │ .line 192 │ const-string v3, "postmeasurement" │ │ invoke-virtual {p1}, Lorg/json/JSONArray;->toString()Ljava/lang/String; │ │ move-result-object v4 │ @@ -1559,280 +1576,268 @@ │ invoke-direct {p0, v3}, Lcom/mobiperf/Checkin;->sendStringMsg(Ljava/lang/String;)V │ │ .line 203 │ return-void │ .end method │ │ .method public uploadRrcInferenceData(Lcom/mobiperf/measurements/RRCTask$RRCTestData;)V │ - .locals 11 │ + .locals 10 │ .param p1, "data" # Lcom/mobiperf/measurements/RRCTask$RRCTestData; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/io/IOException; │ } │ .end annotation │ │ .prologue │ .line 216 │ - iget-object v9, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ + iget-object v6, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ - invoke-virtual {v9}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ + invoke-virtual {v6}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ - move-result-object v3 │ + move-result-object v1 │ │ .line 217 │ - .local v3, "info":Lcom/mobiperf/DeviceInfo; │ - iget-object v9, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ + .local v1, "info":Lcom/mobiperf/DeviceInfo; │ + iget-object v6, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ - invoke-virtual {v9}, Lcom/mobiperf/util/PhoneUtils;->getNetwork()Ljava/lang/String; │ + invoke-virtual {v6}, Lcom/mobiperf/util/PhoneUtils;->getNetwork()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v2 │ │ .line 218 │ - .local v5, "network_id":Ljava/lang/String; │ - iget-object v9, v3, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ + .local v2, "network_id":Ljava/lang/String; │ + iget-object v6, v1, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ - invoke-virtual {p1, v5, v9}, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->toJSON(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String; │ + invoke-virtual {p1, v2, v6}, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->toJSON(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v4 │ │ .line 220 │ - .local v7, "parameters":[Ljava/lang/String; │ - move-object v0, v7 │ - │ - .local v0, "arr$":[Ljava/lang/String; │ + .local v4, "parameters":[Ljava/lang/String; │ :try_start_0 │ - array-length v4, v0 │ + array-length v7, v4 │ │ - .local v4, "len$":I │ - const/4 v2, 0x0 │ + const/4 v6, 0x0 │ │ - .local v2, "i$":I │ :goto_0 │ - if-ge v2, v4, :cond_0 │ + if-ge v6, v7, :cond_0 │ │ - aget-object v6, v0, v2 │ + aget-object v3, v4, v6 │ │ .line 221 │ - .local v6, "parameter":Ljava/lang/String; │ - new-instance v9, Ljava/lang/StringBuilder; │ + .local v3, "parameter":Ljava/lang/String; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Uploading RRC raw data: " │ + const-string v9, "Uploading RRC raw data: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-static {v9}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ + invoke-static {v8}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ │ .line 222 │ - const-string v9, "rrc/uploadRRCInference" │ + const-string v8, "rrc/uploadRRCInference" │ │ - invoke-direct {p0, v9, v6}, Lcom/mobiperf/Checkin;->serviceRequest(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ + invoke-direct {p0, v8, v3}, Lcom/mobiperf/Checkin;->serviceRequest(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v5 │ │ .line 223 │ - .local v8, "response":Ljava/lang/String; │ - new-instance v9, Ljava/lang/StringBuilder; │ + .local v5, "response":Ljava/lang/String; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Response from GAE: " │ + const-string v9, "Response from GAE: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-static {v9}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ + invoke-static {v8}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ │ .line 225 │ - const-string v9, "TaskSchedule.uploadMeasurementResult() complete" │ + const-string v8, "TaskSchedule.uploadMeasurementResult() complete" │ │ - invoke-static {v9}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v8}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 226 │ - const-string v9, "Result upload complete." │ + const-string v8, "Result upload complete." │ │ - invoke-direct {p0, v9}, Lcom/mobiperf/Checkin;->sendStringMsg(Ljava/lang/String;)V │ + invoke-direct {p0, v8}, Lcom/mobiperf/Checkin;->sendStringMsg(Ljava/lang/String;)V │ :try_end_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_1 │ │ .line 220 │ - add-int/lit8 v2, v2, 0x1 │ + add-int/lit8 v6, v6, 0x1 │ │ goto :goto_0 │ │ .line 228 │ - .end local v2 # "i$":I │ - .end local v4 # "len$":I │ - .end local v6 # "parameter":Ljava/lang/String; │ - .end local v8 # "response":Ljava/lang/String; │ + .end local v3 # "parameter":Ljava/lang/String; │ + .end local v5 # "response":Ljava/lang/String; │ :catch_0 │ - move-exception v1 │ + move-exception v0 │ │ .line 229 │ - .local v1, "e":Ljava/io/IOException; │ - new-instance v9, Ljava/io/IOException; │ + .local v0, "e":Ljava/io/IOException; │ + new-instance v6, Ljava/io/IOException; │ │ - invoke-virtual {v1}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v0}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ │ - move-result-object v10 │ + move-result-object v7 │ │ - invoke-direct {v9, v10}, Ljava/io/IOException;->(Ljava/lang/String;)V │ + invoke-direct {v6, v7}, Ljava/io/IOException;->(Ljava/lang/String;)V │ │ - throw v9 │ + throw v6 │ │ .line 230 │ - .end local v1 # "e":Ljava/io/IOException; │ + .end local v0 # "e":Ljava/io/IOException; │ :catch_1 │ - move-exception v1 │ + move-exception v0 │ │ .line 231 │ - .local v1, "e":Ljava/lang/NumberFormatException; │ - invoke-virtual {v1}, Ljava/lang/NumberFormatException;->printStackTrace()V │ + .local v0, "e":Ljava/lang/NumberFormatException; │ + invoke-virtual {v0}, Ljava/lang/NumberFormatException;->printStackTrace()V │ │ .line 233 │ - .end local v1 # "e":Ljava/lang/NumberFormatException; │ + .end local v0 # "e":Ljava/lang/NumberFormatException; │ :cond_0 │ return-void │ .end method │ │ .method public uploadRrcInferenceSizeData(Lcom/mobiperf/measurements/RRCTask$RRCTestData;)V │ - .locals 11 │ + .locals 10 │ .param p1, "sizeData" # Lcom/mobiperf/measurements/RRCTask$RRCTestData; │ │ .prologue │ .line 242 │ - iget-object v9, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ + iget-object v6, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ - invoke-virtual {v9}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ + invoke-virtual {v6}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ - move-result-object v3 │ + move-result-object v1 │ │ .line 243 │ - .local v3, "info":Lcom/mobiperf/DeviceInfo; │ - iget-object v9, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ + .local v1, "info":Lcom/mobiperf/DeviceInfo; │ + iget-object v6, p0, Lcom/mobiperf/Checkin;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ - invoke-virtual {v9}, Lcom/mobiperf/util/PhoneUtils;->getNetwork()Ljava/lang/String; │ + invoke-virtual {v6}, Lcom/mobiperf/util/PhoneUtils;->getNetwork()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v2 │ │ .line 244 │ - .local v5, "network_id":Ljava/lang/String; │ - iget-object v9, v3, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ + .local v2, "network_id":Ljava/lang/String; │ + iget-object v6, v1, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ - invoke-virtual {p1, v5, v9}, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->sizeDataToJSON(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String; │ + .line 245 │ + invoke-virtual {p1, v2, v6}, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->sizeDataToJSON(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v5 │ │ .line 248 │ - .local v8, "sizeParameters":[Ljava/lang/String; │ - move-object v0, v8 │ - │ - .local v0, "arr$":[Ljava/lang/String; │ + .local v5, "sizeParameters":[Ljava/lang/String; │ :try_start_0 │ - array-length v4, v0 │ + array-length v7, v5 │ │ - .local v4, "len$":I │ - const/4 v2, 0x0 │ + const/4 v6, 0x0 │ │ - .local v2, "i$":I │ :goto_0 │ - if-ge v2, v4, :cond_0 │ + if-ge v6, v7, :cond_0 │ │ - aget-object v6, v0, v2 │ + aget-object v3, v5, v6 │ │ .line 249 │ - .local v6, "parameter":Ljava/lang/String; │ - new-instance v9, Ljava/lang/StringBuilder; │ + .local v3, "parameter":Ljava/lang/String; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Uploading RRC size data: " │ + const-string v9, "Uploading RRC size data: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-static {v9}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ + invoke-static {v8}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ │ .line 250 │ - const-string v9, "rrc/uploadRRCInferenceSizes" │ + const-string v8, "rrc/uploadRRCInferenceSizes" │ │ - invoke-direct {p0, v9, v6}, Lcom/mobiperf/Checkin;->serviceRequest(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ + .line 251 │ + invoke-direct {p0, v8, v3}, Lcom/mobiperf/Checkin;->serviceRequest(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v4 │ │ .line 252 │ - .local v7, "response":Ljava/lang/String; │ - new-instance v9, Ljava/lang/StringBuilder; │ + .local v4, "response":Ljava/lang/String; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Response from GAE: " │ + const-string v9, "Response from GAE: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-static {v9}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ + invoke-static {v8}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ :try_end_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 248 │ - add-int/lit8 v2, v2, 0x1 │ + add-int/lit8 v6, v6, 0x1 │ │ goto :goto_0 │ │ .line 254 │ - .end local v2 # "i$":I │ - .end local v4 # "len$":I │ - .end local v6 # "parameter":Ljava/lang/String; │ - .end local v7 # "response":Ljava/lang/String; │ + .end local v3 # "parameter":Ljava/lang/String; │ + .end local v4 # "response":Ljava/lang/String; │ :catch_0 │ - move-exception v1 │ + move-exception v0 │ │ .line 256 │ - .local v1, "e":Ljava/io/IOException; │ - invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V │ + .local v0, "e":Ljava/io/IOException; │ + invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V │ │ .line 258 │ - .end local v1 # "e":Ljava/io/IOException; │ + .end local v0 # "e":Ljava/io/IOException; │ :cond_0 │ return-void │ .end method ├── smali/com/mobiperf/DeviceProperty.smali │ @@ -39,15 +39,15 @@ │ .field public rssi:I │ │ .field public timestamp:J │ │ │ # direct methods │ .method public constructor (Ljava/lang/String;Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;DDLjava/lang/String;Ljava/lang/String;Ljava/lang/String;IZLjava/lang/String;I)V │ - .locals 7 │ + .locals 8 │ .param p1, "deviceId" # Ljava/lang/String; │ .param p2, "appVersion" # Ljava/lang/String; │ .param p3, "timeStamp" # J │ .param p5, "osVersion" # Ljava/lang/String; │ .param p6, "ipConnectivity" # Ljava/lang/String; │ .param p7, "dnResolvability" # Ljava/lang/String; │ .param p8, "longtitude" # D │ @@ -79,25 +79,25 @@ │ .line 51 │ iput-object p6, p0, Lcom/mobiperf/DeviceProperty;->ipConnectivity:Ljava/lang/String; │ │ .line 52 │ iput-object p7, p0, Lcom/mobiperf/DeviceProperty;->dnResolvability:Ljava/lang/String; │ │ .line 53 │ - new-instance v1, Lcom/mobiperf/DeviceProperty$GeoLocation; │ + new-instance v2, Lcom/mobiperf/DeviceProperty$GeoLocation; │ │ - move-object v2, p0 │ + move-object v3, p0 │ │ - move-wide v3, p8 │ + move-wide/from16 v4, p8 │ │ - move-wide/from16 v5, p10 │ + move-wide/from16 v6, p10 │ │ - invoke-direct/range {v1 .. v6}, Lcom/mobiperf/DeviceProperty$GeoLocation;->(Lcom/mobiperf/DeviceProperty;DD)V │ + invoke-direct/range {v2 .. v7}, Lcom/mobiperf/DeviceProperty$GeoLocation;->(Lcom/mobiperf/DeviceProperty;DD)V │ │ - iput-object v1, p0, Lcom/mobiperf/DeviceProperty;->location:Lcom/mobiperf/DeviceProperty$GeoLocation; │ + iput-object v2, p0, Lcom/mobiperf/DeviceProperty;->location:Lcom/mobiperf/DeviceProperty$GeoLocation; │ │ .line 54 │ move-object/from16 v0, p12 │ │ iput-object v0, p0, Lcom/mobiperf/DeviceProperty;->locationType:Ljava/lang/String; │ │ .line 55 ├── smali/com/mobiperf/MeasurementCreationActivity$ButtonOnClickListener.smali │ @@ -114,14 +114,15 @@ │ invoke-interface {v12, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 227 │ new-instance v2, Lcom/mobiperf/measurements/PingTask$PingDesc; │ │ const/4 v3, 0x0 │ │ + .line 228 │ invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/util/Calendar;->getTime()Ljava/util/Date; │ │ move-result-object v4 │ @@ -237,14 +238,15 @@ │ .line 334 │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ const v4, 0x7f070028 │ │ + .line 335 │ invoke-virtual {v3, v4}, Lcom/mobiperf/MeasurementCreationActivity;->getString(I)Ljava/lang/String; │ │ move-result-object v27 │ │ .line 336 │ .local v27, "toastStr":Ljava/lang/String; │ if-eqz v24, :cond_1 │ @@ -378,14 +380,15 @@ │ invoke-interface {v12, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 240 │ new-instance v2, Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ │ const/4 v3, 0x0 │ │ + .line 241 │ invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/util/Calendar;->getTime()Ljava/util/Date; │ │ move-result-object v4 │ @@ -480,14 +483,15 @@ │ invoke-interface {v12, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 252 │ new-instance v2, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ │ const/4 v3, 0x0 │ │ + .line 253 │ invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/util/Calendar;->getTime()Ljava/util/Date; │ │ move-result-object v4 │ @@ -506,14 +510,15 @@ │ .local v2, "desc":Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ new-instance v20, Lcom/mobiperf/measurements/TracerouteTask; │ │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ + .line 260 │ invoke-virtual {v3}, Lcom/mobiperf/MeasurementCreationActivity;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v3 │ │ move-object/from16 v0, v20 │ │ invoke-direct {v0, v2, v3}, Lcom/mobiperf/measurements/TracerouteTask;->(Lcom/mobiperf/MeasurementDesc;Landroid/content/Context;)V │ @@ -585,14 +590,15 @@ │ invoke-interface {v12, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 266 │ new-instance v2, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc; │ │ const/4 v3, 0x0 │ │ + .line 267 │ invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/util/Calendar;->getTime()Ljava/util/Date; │ │ move-result-object v4 │ @@ -611,14 +617,15 @@ │ .local v2, "desc":Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc; │ new-instance v20, Lcom/mobiperf/measurements/DnsLookupTask; │ │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ + .line 274 │ invoke-virtual {v3}, Lcom/mobiperf/MeasurementCreationActivity;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v3 │ │ move-object/from16 v0, v20 │ │ invoke-direct {v0, v2, v3}, Lcom/mobiperf/measurements/DnsLookupTask;->(Lcom/mobiperf/MeasurementDesc;Landroid/content/Context;)V │ @@ -683,93 +690,103 @@ │ .line 282 │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ const v4, 0x7f090014 │ │ + .line 283 │ invoke-virtual {v3, v4}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ move-result-object v15 │ │ check-cast v15, Landroid/widget/EditText; │ │ .line 284 │ .local v15, "UDPBurstPacketSizeText":Landroid/widget/EditText; │ const-string v3, "packet_size_byte" │ │ + .line 285 │ invoke-virtual {v15}, Landroid/widget/EditText;->getText()Landroid/text/Editable; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/Object;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 284 │ invoke-interface {v12, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 287 │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ const v4, 0x7f090016 │ │ + .line 288 │ invoke-virtual {v3, v4}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ move-result-object v14 │ │ check-cast v14, Landroid/widget/EditText; │ │ .line 289 │ .local v14, "UDPBurstPacketCountText":Landroid/widget/EditText; │ const-string v3, "packet_burst" │ │ + .line 290 │ invoke-virtual {v14}, Landroid/widget/EditText;->getText()Landroid/text/Editable; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/Object;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 289 │ invoke-interface {v12, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 292 │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ const v4, 0x7f090018 │ │ + .line 293 │ invoke-virtual {v3, v4}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ move-result-object v13 │ │ check-cast v13, Landroid/widget/EditText; │ │ .line 294 │ .local v13, "UDPBurstIntervalText":Landroid/widget/EditText; │ const-string v3, "udp_interval" │ │ + .line 295 │ invoke-virtual {v13}, Landroid/widget/EditText;->getText()Landroid/text/Editable; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/Object;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 294 │ invoke-interface {v12, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 297 │ new-instance v2, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc; │ │ const/4 v3, 0x0 │ │ + .line 298 │ invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/util/Calendar;->getTime()Ljava/util/Date; │ │ move-result-object v4 │ @@ -788,14 +805,15 @@ │ .local v2, "desc":Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc; │ new-instance v20, Lcom/mobiperf/measurements/UDPBurstTask; │ │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ + .line 305 │ invoke-virtual {v3}, Lcom/mobiperf/MeasurementCreationActivity;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v3 │ │ move-object/from16 v0, v20 │ │ invoke-direct {v0, v2, v3}, Lcom/mobiperf/measurements/UDPBurstTask;->(Lcom/mobiperf/MeasurementDesc;Landroid/content/Context;)V │ @@ -860,14 +878,15 @@ │ invoke-interface {v12, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 310 │ new-instance v2, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ const/4 v3, 0x0 │ │ + .line 311 │ invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/util/Calendar;->getTime()Ljava/util/Date; │ │ move-result-object v4 │ @@ -886,14 +905,15 @@ │ .local v2, "desc":Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ new-instance v20, Lcom/mobiperf/measurements/TCPThroughputTask; │ │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ + .line 318 │ invoke-virtual {v3}, Lcom/mobiperf/MeasurementCreationActivity;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v3 │ │ move-object/from16 v0, v20 │ │ invoke-direct {v0, v2, v3}, Lcom/mobiperf/measurements/TCPThroughputTask;->(Lcom/mobiperf/MeasurementDesc;Landroid/content/Context;)V │ @@ -922,14 +942,15 @@ │ │ const/4 v5, 0x1 │ │ invoke-static {v3, v4, v5}, Landroid/widget/Toast;->makeText(Landroid/content/Context;II)Landroid/widget/Toast; │ │ move-result-object v3 │ │ + .line 346 │ invoke-virtual {v3}, Landroid/widget/Toast;->show()V │ :try_end_0 │ .catch Ljava/security/InvalidParameterException; {:try_start_0 .. :try_end_0} :catch_0 │ │ goto/16 :goto_1 │ │ .line 349 │ @@ -956,29 +977,32 @@ │ │ const-string v5, "2131165227: " │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ + .line 353 │ invoke-virtual/range {v17 .. v17}, Ljava/security/InvalidParameterException;->getMessage()Ljava/lang/String; │ │ move-result-object v5 │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ const/4 v5, 0x1 │ │ + .line 351 │ invoke-static {v3, v4, v5}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; │ │ move-result-object v3 │ │ + .line 354 │ invoke-virtual {v3}, Landroid/widget/Toast;->show()V │ │ goto/16 :goto_1 │ .end method ├── smali/com/mobiperf/MeasurementCreationActivity$MeasurementTypeOnItemSelectedListener.smali │ @@ -45,15 +45,15 @@ │ │ return-void │ .end method │ │ │ # virtual methods │ .method public onItemSelected(Landroid/widget/AdapterView;Landroid/view/View;IJ)V │ - .locals 3 │ + .locals 4 │ .param p2, "view" # Landroid/view/View; │ .param p3, "pos" # I │ .param p4, "id" # J │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Landroid/widget/AdapterView", │ @@ -66,14 +66,15 @@ │ .prologue │ .line 402 │ .local p1, "parent":Landroid/widget/AdapterView;, "Landroid/widget/AdapterView<*>;" │ iget-object v1, p0, Lcom/mobiperf/MeasurementCreationActivity$MeasurementTypeOnItemSelectedListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ iget-object v0, p0, Lcom/mobiperf/MeasurementCreationActivity$MeasurementTypeOnItemSelectedListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ + .line 403 │ # getter for: Lcom/mobiperf/MeasurementCreationActivity;->spinnerValues:Landroid/widget/ArrayAdapter; │ invoke-static {v0}, Lcom/mobiperf/MeasurementCreationActivity;->access$1200(Lcom/mobiperf/MeasurementCreationActivity;)Landroid/widget/ArrayAdapter; │ │ move-result-object v0 │ │ long-to-int v2, p4 │ │ @@ -83,14 +84,15 @@ │ │ check-cast v0, Ljava/lang/String; │ │ invoke-static {v0}, Lcom/mobiperf/MeasurementTask;->getTypeForMeasurementName(Ljava/lang/String;)Ljava/lang/String; │ │ move-result-object v0 │ │ + .line 402 │ # setter for: Lcom/mobiperf/MeasurementCreationActivity;->measurementTypeUnderEdit:Ljava/lang/String; │ invoke-static {v1, v0}, Lcom/mobiperf/MeasurementCreationActivity;->access$802(Lcom/mobiperf/MeasurementCreationActivity;Ljava/lang/String;)Ljava/lang/String; │ │ .line 404 │ iget-object v0, p0, Lcom/mobiperf/MeasurementCreationActivity$MeasurementTypeOnItemSelectedListener;->this$0:Lcom/mobiperf/MeasurementCreationActivity; │ │ # getter for: Lcom/mobiperf/MeasurementCreationActivity;->measurementTypeUnderEdit:Ljava/lang/String; ├── smali/com/mobiperf/MeasurementResult.smali │ @@ -269,15 +269,15 @@ │ │ invoke-virtual {p1, v3}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ goto :goto_0 │ .end method │ │ .method private getHttpResult(Landroid/util/StringBuilderPrinter;Ljava/util/HashMap;)V │ - .locals 7 │ + .locals 8 │ .param p1, "printer" # Landroid/util/StringBuilderPrinter; │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Landroid/util/StringBuilderPrinter;", │ "Ljava/util/HashMap", │ "<", │ @@ -332,17 +332,17 @@ │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ iget-object v5, p0, Lcom/mobiperf/MeasurementResult;->properties:Lcom/mobiperf/DeviceProperty; │ │ - iget-wide v5, v5, Lcom/mobiperf/DeviceProperty;->timestamp:J │ + iget-wide v6, v5, Lcom/mobiperf/DeviceProperty;->timestamp:J │ │ - invoke-static {v5, v6}, Lcom/mobiperf/util/Util;->getTimeStringFromMicrosecond(J)Ljava/lang/String; │ + invoke-static {v6, v7}, Lcom/mobiperf/util/Util;->getTimeStringFromMicrosecond(J)Ljava/lang/String; │ │ move-result-object v5 │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ @@ -972,15 +972,15 @@ │ │ invoke-virtual {p1, v5}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ goto :goto_0 │ .end method │ │ .method private getTCPThroughputResult(Landroid/util/StringBuilderPrinter;Ljava/util/HashMap;)V │ - .locals 15 │ + .locals 16 │ .param p1, "printer" # Landroid/util/StringBuilderPrinter; │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Landroid/util/StringBuilderPrinter;", │ "Ljava/util/HashMap", │ "<", │ @@ -989,413 +989,421 @@ │ ">;)V" │ } │ .end annotation │ │ .prologue │ .line 267 │ .local p2, "values":Ljava/util/HashMap;, "Ljava/util/HashMap;" │ - iget-object v4, p0, Lcom/mobiperf/MeasurementResult;->parameters:Lcom/mobiperf/MeasurementDesc; │ + move-object/from16 v0, p0 │ + │ + iget-object v5, v0, Lcom/mobiperf/MeasurementResult;->parameters:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v4, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + check-cast v5, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ .line 268 │ - .local v4, "desc":Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ - iget-boolean v9, v4, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->dir_up:Z │ + .local v5, "desc":Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + iget-boolean v10, v5, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->dir_up:Z │ │ - if-eqz v9, :cond_1 │ + if-eqz v10, :cond_1 │ │ .line 269 │ - const-string v9, "[TCP Uplink]" │ + const-string v10, "[TCP Uplink]" │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v9}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v10}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 273 │ :goto_0 │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v10, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v10}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Target: " │ + const-string v11, "Target: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - iget-object v10, v4, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + iget-object v11, v5, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v10 │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v9}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v10}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 274 │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v10, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v10}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Timestamp: " │ + const-string v11, "Timestamp: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - iget-object v10, p0, Lcom/mobiperf/MeasurementResult;->properties:Lcom/mobiperf/DeviceProperty; │ + move-object/from16 v0, p0 │ │ - iget-wide v10, v10, Lcom/mobiperf/DeviceProperty;->timestamp:J │ + iget-object v11, v0, Lcom/mobiperf/MeasurementResult;->properties:Lcom/mobiperf/DeviceProperty; │ │ - invoke-static {v10, v11}, Lcom/mobiperf/util/Util;->getTimeStringFromMicrosecond(J)Ljava/lang/String; │ + iget-wide v12, v11, Lcom/mobiperf/DeviceProperty;->timestamp:J │ │ - move-result-object v10 │ + .line 275 │ + invoke-static {v12, v13}, Lcom/mobiperf/util/Util;->getTimeStringFromMicrosecond(J)Ljava/lang/String; │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + move-result-object v11 │ │ - move-result-object v9 │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + move-result-object v10 │ │ - move-result-object v9 │ + invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ + move-result-object v10 │ + │ + .line 274 │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v9}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v10}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 276 │ invoke-direct/range {p0 .. p1}, Lcom/mobiperf/MeasurementResult;->printIPTestResult(Landroid/util/StringBuilderPrinter;)V │ │ .line 278 │ - iget-boolean v9, p0, Lcom/mobiperf/MeasurementResult;->success:Z │ + move-object/from16 v0, p0 │ + │ + iget-boolean v10, v0, Lcom/mobiperf/MeasurementResult;->success:Z │ │ - if-eqz v9, :cond_6 │ + if-eqz v10, :cond_6 │ │ .line 279 │ - const-string v9, "" │ + const-string v10, "" │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v9}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v10}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 281 │ - const-string v9, "tcp_speed_results" │ + const-string v10, "tcp_speed_results" │ │ move-object/from16 v0, p2 │ │ - invoke-virtual {v0, v9}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v0, v10}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v6 │ + move-result-object v7 │ │ - check-cast v6, Ljava/lang/String; │ + check-cast v7, Ljava/lang/String; │ │ .line 282 │ - .local v6, "speedInJSON":Ljava/lang/String; │ - const-string v9, "data_limit_exceeded" │ + .local v7, "speedInJSON":Ljava/lang/String; │ + const-string v10, "data_limit_exceeded" │ │ move-object/from16 v0, p2 │ │ - invoke-virtual {v0, v9}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v0, v10}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - check-cast v3, Ljava/lang/String; │ + check-cast v4, Ljava/lang/String; │ │ .line 283 │ - .local v3, "dataLimitExceedInJSON":Ljava/lang/String; │ - const-string v5, "" │ + .local v4, "dataLimitExceedInJSON":Ljava/lang/String; │ + const-string v6, "" │ │ .line 285 │ - .local v5, "displayResult":Ljava/lang/String; │ - invoke-virtual {v4, v6}, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->calMedianSpeedFromTCPThroughputOutput(Ljava/lang/String;)D │ + .local v6, "displayResult":Ljava/lang/String; │ + invoke-virtual {v5, v7}, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->calMedianSpeedFromTCPThroughputOutput(Ljava/lang/String;)D │ │ - move-result-wide v7 │ + move-result-wide v8 │ │ .line 286 │ - .local v7, "tp":D │ - const-wide/high16 v9, 0x4000000000000000L # 2.0 │ + .local v8, "tp":D │ + const-wide/high16 v10, 0x4000000000000000L # 2.0 │ │ - const-wide/high16 v11, 0x4024000000000000L # 10.0 │ + const-wide/high16 v12, 0x4024000000000000L # 10.0 │ │ - invoke-static {v9, v10, v11, v12}, Ljava/lang/Math;->pow(DD)D │ + invoke-static {v10, v11, v12, v13}, Ljava/lang/Math;->pow(DD)D │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ .line 287 │ - .local v1, "KB":D │ - const-wide/16 v9, 0x0 │ + .local v2, "KB":D │ + const-wide/16 v10, 0x0 │ │ - cmpg-double v9, v7, v9 │ + cmpg-double v10, v8, v10 │ │ - if-gez v9, :cond_2 │ + if-gez v10, :cond_2 │ │ .line 288 │ - const-string v5, "No results available." │ + const-string v6, "No results available." │ │ .line 298 │ :goto_1 │ - const-string v9, "true" │ + const-string v10, "true" │ │ - invoke-virtual {v3, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ + invoke-virtual {v4, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ - move-result v9 │ + move-result v10 │ │ - if-eqz v9, :cond_0 │ + if-eqz v10, :cond_0 │ │ .line 299 │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v10, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v10}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - const-string v10, "\n* Task finishes earlier due to exceeding maximum number of " │ + const-string v11, "\n* Task finishes earlier due to exceeding maximum number of " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v10 │ + move-result-object v11 │ │ - iget-boolean v9, v4, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->dir_up:Z │ + iget-boolean v10, v5, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->dir_up:Z │ │ - if-eqz v9, :cond_5 │ + if-eqz v10, :cond_5 │ │ - const-string v9, "transmitted" │ + const-string v10, "transmitted" │ │ :goto_2 │ - invoke-virtual {v10, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - const-string v10, " bytes" │ + const-string v11, " bytes" │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v6 │ │ .line 303 │ :cond_0 │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v5}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v6}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 307 │ - .end local v1 # "KB":D │ - .end local v3 # "dataLimitExceedInJSON":Ljava/lang/String; │ - .end local v5 # "displayResult":Ljava/lang/String; │ - .end local v6 # "speedInJSON":Ljava/lang/String; │ - .end local v7 # "tp":D │ + .end local v2 # "KB":D │ + .end local v4 # "dataLimitExceedInJSON":Ljava/lang/String; │ + .end local v6 # "displayResult":Ljava/lang/String; │ + .end local v7 # "speedInJSON":Ljava/lang/String; │ + .end local v8 # "tp":D │ :goto_3 │ return-void │ │ .line 271 │ :cond_1 │ - const-string v9, "[TCP Downlink]" │ + const-string v10, "[TCP Downlink]" │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v9}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v10}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ goto/16 :goto_0 │ │ .line 289 │ - .restart local v1 # "KB":D │ - .restart local v3 # "dataLimitExceedInJSON":Ljava/lang/String; │ - .restart local v5 # "displayResult":Ljava/lang/String; │ - .restart local v6 # "speedInJSON":Ljava/lang/String; │ - .restart local v7 # "tp":D │ + .restart local v2 # "KB":D │ + .restart local v4 # "dataLimitExceedInJSON":Ljava/lang/String; │ + .restart local v6 # "displayResult":Ljava/lang/String; │ + .restart local v7 # "speedInJSON":Ljava/lang/String; │ + .restart local v8 # "tp":D │ :cond_2 │ - mul-double v9, v1, v1 │ + mul-double v10, v2, v2 │ │ - cmpl-double v9, v7, v9 │ + cmpl-double v10, v8, v10 │ │ - if-lez v9, :cond_3 │ + if-lez v10, :cond_3 │ │ .line 290 │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v10, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v10}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Speed: " │ + const-string v11, "Speed: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - const-string v10, "%.2f" │ + const-string v11, "%.2f" │ │ - const/4 v11, 0x1 │ + const/4 v12, 0x1 │ │ - new-array v11, v11, [Ljava/lang/Object; │ + new-array v12, v12, [Ljava/lang/Object; │ │ - const/4 v12, 0x0 │ + const/4 v13, 0x0 │ │ - mul-double v13, v1, v1 │ + mul-double v14, v2, v2 │ │ - div-double v13, v7, v13 │ + div-double v14, v8, v14 │ │ - invoke-static {v13, v14}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static {v14, v15}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ - move-result-object v13 │ + move-result-object v14 │ │ - aput-object v13, v11, v12 │ + aput-object v14, v12, v13 │ │ - invoke-static {v10, v11}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ + invoke-static {v11, v12}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ │ - move-result-object v10 │ + move-result-object v11 │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - const-string v10, " Gbps" │ + const-string v11, " Gbps" │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v6 │ │ goto :goto_1 │ │ .line 291 │ :cond_3 │ - cmpl-double v9, v7, v1 │ + cmpl-double v10, v8, v2 │ │ - if-lez v9, :cond_4 │ + if-lez v10, :cond_4 │ │ .line 292 │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v10, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v10}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Speed: " │ + const-string v11, "Speed: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - const-string v10, "%.2f" │ + const-string v11, "%.2f" │ │ - const/4 v11, 0x1 │ + const/4 v12, 0x1 │ │ - new-array v11, v11, [Ljava/lang/Object; │ + new-array v12, v12, [Ljava/lang/Object; │ │ - const/4 v12, 0x0 │ + const/4 v13, 0x0 │ │ - div-double v13, v7, v1 │ + div-double v14, v8, v2 │ │ - invoke-static {v13, v14}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static {v14, v15}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ - move-result-object v13 │ + move-result-object v14 │ │ - aput-object v13, v11, v12 │ + aput-object v14, v12, v13 │ │ - invoke-static {v10, v11}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ + invoke-static {v11, v12}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ │ - move-result-object v10 │ + move-result-object v11 │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - const-string v10, " Mbps" │ + const-string v11, " Mbps" │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v6 │ │ goto/16 :goto_1 │ │ .line 294 │ :cond_4 │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v10, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v10}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Speed: " │ + const-string v11, "Speed: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - const-string v10, "%.2f" │ + const-string v11, "%.2f" │ │ - const/4 v11, 0x1 │ + const/4 v12, 0x1 │ │ - new-array v11, v11, [Ljava/lang/Object; │ + new-array v12, v12, [Ljava/lang/Object; │ │ - const/4 v12, 0x0 │ + const/4 v13, 0x0 │ │ - invoke-static {v7, v8}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static {v8, v9}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ - move-result-object v13 │ + move-result-object v14 │ │ - aput-object v13, v11, v12 │ + aput-object v14, v12, v13 │ │ - invoke-static {v10, v11}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ + invoke-static {v11, v12}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ │ - move-result-object v10 │ + move-result-object v11 │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - const-string v10, " Kbps" │ + const-string v11, " Kbps" │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v6 │ │ goto/16 :goto_1 │ │ .line 299 │ :cond_5 │ - const-string v9, "received" │ + const-string v10, "received" │ │ goto/16 :goto_2 │ │ .line 305 │ - .end local v1 # "KB":D │ - .end local v3 # "dataLimitExceedInJSON":Ljava/lang/String; │ - .end local v5 # "displayResult":Ljava/lang/String; │ - .end local v6 # "speedInJSON":Ljava/lang/String; │ - .end local v7 # "tp":D │ + .end local v2 # "KB":D │ + .end local v4 # "dataLimitExceedInJSON":Ljava/lang/String; │ + .end local v6 # "displayResult":Ljava/lang/String; │ + .end local v7 # "speedInJSON":Ljava/lang/String; │ + .end local v8 # "tp":D │ :cond_6 │ - const-string v9, "Failed" │ + const-string v10, "Failed" │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v9}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v10}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ goto/16 :goto_3 │ .end method │ │ .method private getTracerouteResult(Landroid/util/StringBuilderPrinter;Ljava/util/HashMap;)V │ - .locals 17 │ + .locals 18 │ .param p1, "printer" # Landroid/util/StringBuilderPrinter; │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Landroid/util/StringBuilderPrinter;", │ "Ljava/util/HashMap", │ "<", │ @@ -1406,412 +1414,412 @@ │ .end annotation │ │ .prologue │ .line 192 │ .local p2, "values":Ljava/util/HashMap;, "Ljava/util/HashMap;" │ move-object/from16 v0, p0 │ │ - iget-object v1, v0, Lcom/mobiperf/MeasurementResult;->parameters:Lcom/mobiperf/MeasurementDesc; │ + iget-object v2, v0, Lcom/mobiperf/MeasurementResult;->parameters:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v1, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ + check-cast v2, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ │ .line 193 │ - .local v1, "desc":Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ - const-string v12, "[Traceroute]" │ + .local v2, "desc":Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ + const-string v13, "[Traceroute]" │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v12}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v13}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 194 │ - new-instance v12, Ljava/lang/StringBuilder; │ + new-instance v13, Ljava/lang/StringBuilder; │ │ - invoke-direct {v12}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ │ - const-string v13, "Target: " │ + const-string v14, "Target: " │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - iget-object v13, v1, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ + iget-object v14, v2, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v12 │ + move-result-object v13 │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v12}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v13}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 195 │ - new-instance v12, Ljava/lang/StringBuilder; │ + new-instance v13, Ljava/lang/StringBuilder; │ │ - invoke-direct {v12}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ │ - const-string v13, "Timestamp: " │ + const-string v14, "Timestamp: " │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ move-object/from16 v0, p0 │ │ - iget-object v13, v0, Lcom/mobiperf/MeasurementResult;->properties:Lcom/mobiperf/DeviceProperty; │ + iget-object v14, v0, Lcom/mobiperf/MeasurementResult;->properties:Lcom/mobiperf/DeviceProperty; │ │ - iget-wide v13, v13, Lcom/mobiperf/DeviceProperty;->timestamp:J │ + iget-wide v14, v14, Lcom/mobiperf/DeviceProperty;->timestamp:J │ │ - invoke-static {v13, v14}, Lcom/mobiperf/util/Util;->getTimeStringFromMicrosecond(J)Ljava/lang/String; │ + invoke-static {v14, v15}, Lcom/mobiperf/util/Util;->getTimeStringFromMicrosecond(J)Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v14 │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v12 │ + move-result-object v13 │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v12}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v13}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 196 │ invoke-direct/range {p0 .. p1}, Lcom/mobiperf/MeasurementResult;->printIPTestResult(Landroid/util/StringBuilderPrinter;)V │ │ .line 198 │ move-object/from16 v0, p0 │ │ - iget-boolean v12, v0, Lcom/mobiperf/MeasurementResult;->success:Z │ + iget-boolean v13, v0, Lcom/mobiperf/MeasurementResult;->success:Z │ │ - if-eqz v12, :cond_4 │ + if-eqz v13, :cond_4 │ │ .line 200 │ - const-string v12, " " │ + const-string v13, " " │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v12}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v13}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 202 │ - const-string v12, "num_hops" │ + const-string v13, "num_hops" │ │ move-object/from16 v0, p2 │ │ - invoke-virtual {v0, v12}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v0, v13}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - check-cast v12, Ljava/lang/String; │ + check-cast v13, Ljava/lang/String; │ │ - invoke-static {v12}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v5 │ + move-result v6 │ │ .line 203 │ - .local v5, "hops":I │ - add-int/lit8 v12, v5, 0x1 │ + .local v6, "hops":I │ + add-int/lit8 v13, v6, 0x1 │ │ - invoke-static {v12}, Ljava/lang/String;->valueOf(I)Ljava/lang/String; │ + invoke-static {v13}, Ljava/lang/String;->valueOf(I)Ljava/lang/String; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12}, Ljava/lang/String;->length()I │ + invoke-virtual {v13}, Ljava/lang/String;->length()I │ │ - move-result v4 │ + move-result v5 │ │ .line 204 │ - .local v4, "hop_str_len":I │ - const/4 v6, 0x0 │ + .local v5, "hop_str_len":I │ + const/4 v7, 0x0 │ │ - .local v6, "i":I │ + .local v7, "i":I │ :goto_0 │ - if-ge v6, v5, :cond_5 │ + if-ge v7, v6, :cond_5 │ │ .line 205 │ - new-instance v12, Ljava/lang/StringBuilder; │ + new-instance v13, Ljava/lang/StringBuilder; │ │ - invoke-direct {v12}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ │ - const-string v13, "hop_" │ + const-string v14, "hop_" │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - const-string v13, "_addr_1" │ + const-string v14, "_addr_1" │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v10 │ │ .line 206 │ - .local v9, "key":Ljava/lang/String; │ + .local v10, "key":Ljava/lang/String; │ move-object/from16 v0, p2 │ │ - invoke-virtual {v0, v9}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v0, v10}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - check-cast v12, Ljava/lang/String; │ + check-cast v13, Ljava/lang/String; │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v12}, Lcom/mobiperf/MeasurementResult;->removeQuotes(Ljava/lang/String;)Ljava/lang/String; │ + invoke-direct {v0, v13}, Lcom/mobiperf/MeasurementResult;->removeQuotes(Ljava/lang/String;)Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v8 │ │ .line 207 │ - .local v7, "ipAddress":Ljava/lang/String; │ - if-nez v7, :cond_0 │ + .local v8, "ipAddress":Ljava/lang/String; │ + if-nez v8, :cond_0 │ │ .line 208 │ - const-string v7, "Unknown" │ + const-string v8, "Unknown" │ │ .line 210 │ :cond_0 │ - add-int/lit8 v12, v6, 0x1 │ + add-int/lit8 v13, v7, 0x1 │ │ - invoke-static {v12}, Ljava/lang/String;->valueOf(I)Ljava/lang/String; │ + invoke-static {v13}, Ljava/lang/String;->valueOf(I)Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ .line 211 │ - .local v3, "hop_str":Ljava/lang/String; │ - move-object v2, v3 │ + .local v4, "hop_str":Ljava/lang/String; │ + move-object v3, v4 │ │ .line 212 │ - .local v2, "hopInfo":Ljava/lang/String; │ - const/4 v8, 0x0 │ + .local v3, "hopInfo":Ljava/lang/String; │ + const/4 v9, 0x0 │ │ - .local v8, "j":I │ + .local v9, "j":I │ :goto_1 │ - add-int/lit8 v12, v4, 0x1 │ + add-int/lit8 v13, v5, 0x1 │ │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + invoke-virtual {v4}, Ljava/lang/String;->length()I │ │ - move-result v13 │ + move-result v14 │ │ - sub-int/2addr v12, v13 │ + sub-int/2addr v13, v14 │ │ - if-ge v8, v12, :cond_1 │ + if-ge v9, v13, :cond_1 │ │ .line 213 │ - new-instance v12, Ljava/lang/StringBuilder; │ + new-instance v13, Ljava/lang/StringBuilder; │ │ - invoke-direct {v12}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v12, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - const-string v13, " " │ + const-string v14, " " │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v2 │ + move-result-object v3 │ │ .line 212 │ - add-int/lit8 v8, v8, 0x1 │ + add-int/lit8 v9, v9, 0x1 │ │ goto :goto_1 │ │ .line 215 │ :cond_1 │ - new-instance v12, Ljava/lang/StringBuilder; │ + new-instance v13, Ljava/lang/StringBuilder; │ │ - invoke-direct {v12}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v12, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v2 │ + move-result-object v3 │ │ .line 217 │ - const/4 v8, 0x0 │ + const/4 v9, 0x0 │ │ :goto_2 │ - invoke-virtual {v7}, Ljava/lang/String;->length()I │ + invoke-virtual {v8}, Ljava/lang/String;->length()I │ │ - move-result v12 │ + move-result v13 │ │ - rsub-int/lit8 v12, v12, 0x10 │ + rsub-int/lit8 v13, v13, 0x10 │ │ - if-ge v8, v12, :cond_2 │ + if-ge v9, v13, :cond_2 │ │ .line 218 │ - new-instance v12, Ljava/lang/StringBuilder; │ + new-instance v13, Ljava/lang/StringBuilder; │ │ - invoke-direct {v12}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v12, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - const-string v13, " " │ + const-string v14, " " │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v2 │ + move-result-object v3 │ │ .line 217 │ - add-int/lit8 v8, v8, 0x1 │ + add-int/lit8 v9, v9, 0x1 │ │ goto :goto_2 │ │ .line 221 │ :cond_2 │ - new-instance v12, Ljava/lang/StringBuilder; │ + new-instance v13, Ljava/lang/StringBuilder; │ │ - invoke-direct {v12}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ │ - const-string v13, "hop_" │ + const-string v14, "hop_" │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - const-string v13, "_rtt_ms" │ + const-string v14, "_rtt_ms" │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v10 │ │ .line 223 │ move-object/from16 v0, p2 │ │ - invoke-virtual {v0, v9}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v0, v10}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - check-cast v12, Ljava/lang/String; │ + check-cast v13, Ljava/lang/String; │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v12}, Lcom/mobiperf/MeasurementResult;->removeQuotes(Ljava/lang/String;)Ljava/lang/String; │ + invoke-direct {v0, v13}, Lcom/mobiperf/MeasurementResult;->removeQuotes(Ljava/lang/String;)Ljava/lang/String; │ │ - move-result-object v11 │ + move-result-object v12 │ │ .line 224 │ - .local v11, "timeStr":Ljava/lang/String; │ - if-nez v11, :cond_3 │ + .local v12, "timeStr":Ljava/lang/String; │ + if-nez v12, :cond_3 │ │ .line 225 │ - const-string v11, "Unknown" │ + const-string v12, "Unknown" │ │ .line 228 │ :cond_3 │ - invoke-static {v11}, Ljava/lang/Float;->parseFloat(Ljava/lang/String;)F │ + invoke-static {v12}, Ljava/lang/Float;->parseFloat(Ljava/lang/String;)F │ │ - move-result v10 │ + move-result v11 │ │ .line 229 │ - .local v10, "time":F │ - new-instance v12, Ljava/lang/StringBuilder; │ + .local v11, "time":F │ + new-instance v13, Ljava/lang/StringBuilder; │ │ - invoke-direct {v12}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v12, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - const-string v13, "%6.2f" │ + const-string v14, "%6.2f" │ │ - const/4 v14, 0x1 │ + const/4 v15, 0x1 │ │ - new-array v14, v14, [Ljava/lang/Object; │ + new-array v15, v15, [Ljava/lang/Object; │ │ - const/4 v15, 0x0 │ + const/16 v16, 0x0 │ │ - invoke-static {v10}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float; │ + invoke-static {v11}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float; │ │ - move-result-object v16 │ + move-result-object v17 │ │ - aput-object v16, v14, v15 │ + aput-object v17, v15, v16 │ │ - invoke-static {v13, v14}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ + invoke-static {v14, v15}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v14 │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - const-string v13, " ms" │ + const-string v14, " ms" │ │ - invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v12 │ + move-result-object v13 │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v12}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v13}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 204 │ - add-int/lit8 v6, v6, 0x1 │ + add-int/lit8 v7, v7, 0x1 │ │ goto/16 :goto_0 │ │ .line 232 │ - .end local v2 # "hopInfo":Ljava/lang/String; │ - .end local v3 # "hop_str":Ljava/lang/String; │ - .end local v4 # "hop_str_len":I │ - .end local v5 # "hops":I │ - .end local v6 # "i":I │ - .end local v7 # "ipAddress":Ljava/lang/String; │ - .end local v8 # "j":I │ - .end local v9 # "key":Ljava/lang/String; │ - .end local v10 # "time":F │ - .end local v11 # "timeStr":Ljava/lang/String; │ + .end local v3 # "hopInfo":Ljava/lang/String; │ + .end local v4 # "hop_str":Ljava/lang/String; │ + .end local v5 # "hop_str_len":I │ + .end local v6 # "hops":I │ + .end local v7 # "i":I │ + .end local v8 # "ipAddress":Ljava/lang/String; │ + .end local v9 # "j":I │ + .end local v10 # "key":Ljava/lang/String; │ + .end local v11 # "time":F │ + .end local v12 # "timeStr":Ljava/lang/String; │ :cond_4 │ - const-string v12, "Failed" │ + const-string v13, "Failed" │ │ move-object/from16 v0, p1 │ │ - invoke-virtual {v0, v12}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ + invoke-virtual {v0, v13}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 234 │ :cond_5 │ return-void │ .end method │ │ .method private getUDPBurstResult(Landroid/util/StringBuilderPrinter;Ljava/util/HashMap;)V │ @@ -1922,26 +1930,28 @@ │ │ move-result-object v3 │ │ iget-object v4, p0, Lcom/mobiperf/MeasurementResult;->properties:Lcom/mobiperf/DeviceProperty; │ │ iget-wide v4, v4, Lcom/mobiperf/DeviceProperty;->timestamp:J │ │ + .line 247 │ invoke-static {v4, v5}, Lcom/mobiperf/util/Util;->getTimeStringFromMicrosecond(J)Ljava/lang/String; │ │ move-result-object v4 │ │ invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v3 │ │ + .line 246 │ invoke-virtual {p1, v3}, Landroid/util/StringBuilderPrinter;->println(Ljava/lang/String;)V │ │ .line 248 │ invoke-direct {p0, p1}, Lcom/mobiperf/MeasurementResult;->printIPTestResult(Landroid/util/StringBuilderPrinter;)V │ │ .line 249 │ new-instance v3, Ljava/lang/StringBuilder; │ @@ -2027,14 +2037,15 @@ │ .line 253 │ const-string v4, "%.2f" │ │ new-array v5, v11, [Ljava/lang/Object; │ │ const-string v3, "loss_ratio" │ │ + .line 254 │ invoke-virtual {p2, v3}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ move-result-object v3 │ │ check-cast v3, Ljava/lang/String; │ │ invoke-static {v3}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ @@ -2045,26 +2056,28 @@ │ │ invoke-static {v6, v7}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ move-result-object v3 │ │ aput-object v3, v5, v10 │ │ + .line 253 │ invoke-static {v4, v5}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ │ move-result-object v1 │ │ .line 255 │ .local v1, "lossRatio":Ljava/lang/String; │ const-string v4, "%.2f" │ │ new-array v5, v11, [Ljava/lang/Object; │ │ const-string v3, "out_of_order_ratio" │ │ + .line 256 │ invoke-virtual {p2, v3}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ move-result-object v3 │ │ check-cast v3, Ljava/lang/String; │ │ invoke-static {v3}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ @@ -2075,14 +2088,15 @@ │ │ invoke-static {v6, v7}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ move-result-object v3 │ │ aput-object v3, v5, v10 │ │ + .line 255 │ invoke-static {v4, v5}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ │ move-result-object v2 │ │ .line 257 │ .local v2, "outOfOrderRatio":Ljava/lang/String; │ new-instance v3, Ljava/lang/StringBuilder; ├── smali/com/mobiperf/MeasurementScheduleConsoleActivity$1.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/MeasurementScheduleConsoleActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/MeasurementScheduleConsoleActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/MeasurementScheduleConsoleActivity; │ │ .prologue │ .line 72 │ iput-object p1, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity$1;->this$0:Lcom/mobiperf/MeasurementScheduleConsoleActivity; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/MeasurementDesc.smali │ @@ -29,15 +29,15 @@ │ .field public startTime:Ljava/util/Date; │ │ .field public type:Ljava/lang/String; │ │ │ # direct methods │ .method protected constructor (Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ - .locals 8 │ + .locals 9 │ .param p1, "type" # Ljava/lang/String; │ .param p2, "key" # Ljava/lang/String; │ .param p3, "startTime" # Ljava/util/Date; │ .param p4, "endTime" # Ljava/util/Date; │ .param p5, "intervalSec" # D │ .param p7, "count" # J │ .param p9, "priority" # J │ @@ -80,14 +80,15 @@ │ │ move-result-wide v2 │ │ .line 69 │ .local v2, "now":J │ if-eqz p4, :cond_0 │ │ + .line 70 │ invoke-virtual {p4}, Ljava/util/Date;->getTime()J │ │ move-result-wide v4 │ │ sub-long/2addr v4, v2 │ │ const-wide/32 v6, 0x240c8400 │ @@ -96,19 +97,19 @@ │ │ if-lez v4, :cond_2 │ │ .line 71 │ :cond_0 │ new-instance v4, Ljava/util/Date; │ │ - const-wide/32 v5, 0x240c8400 │ + const-wide/32 v6, 0x240c8400 │ │ - add-long/2addr v5, v2 │ + add-long/2addr v6, v2 │ │ - invoke-direct {v4, v5, v6}, Ljava/util/Date;->(J)V │ + invoke-direct {v4, v6, v7}, Ljava/util/Date;->(J)V │ │ iput-object v4, p0, Lcom/mobiperf/MeasurementDesc;->endTime:Ljava/util/Date; │ │ .line 75 │ :goto_1 │ const-wide/16 v4, 0x0 │ │ @@ -119,15 +120,17 @@ │ .line 76 │ const-wide v4, 0x40ac200000000000L # 3600.0 │ │ iput-wide v4, p0, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ │ .line 80 │ :goto_2 │ - iput-wide p7, p0, Lcom/mobiperf/MeasurementDesc;->count:J │ + move-wide/from16 v0, p7 │ + │ + iput-wide v0, p0, Lcom/mobiperf/MeasurementDesc;->count:J │ │ .line 81 │ move-wide/from16 v0, p9 │ │ iput-wide v0, p0, Lcom/mobiperf/MeasurementDesc;->priority:J │ │ .line 82 │ @@ -141,17 +144,17 @@ │ .line 66 │ .end local v2 # "now":J │ :cond_1 │ new-instance v4, Ljava/util/Date; │ │ invoke-virtual {p3}, Ljava/util/Date;->getTime()J │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ - invoke-direct {v4, v5, v6}, Ljava/util/Date;->(J)V │ + invoke-direct {v4, v6, v7}, Ljava/util/Date;->(J)V │ │ iput-object v4, p0, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ │ goto :goto_0 │ │ .line 73 │ .restart local v2 # "now":J │ @@ -166,15 +169,15 @@ │ │ goto :goto_2 │ .end method │ │ │ # virtual methods │ .method public equals(Ljava/lang/Object;)Z │ - .locals 7 │ + .locals 8 │ .param p1, "obj" # Ljava/lang/Object; │ │ .prologue │ const/4 v1, 0x1 │ │ const/4 v2, 0x0 │ │ @@ -214,37 +217,37 @@ │ invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v3 │ │ if-eqz v3, :cond_0 │ │ .line 120 │ - iget-wide v3, p0, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ + iget-wide v4, p0, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ │ - iget-wide v5, v0, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ + iget-wide v6, v0, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ │ - cmpl-double v3, v3, v5 │ + cmpl-double v3, v4, v6 │ │ if-nez v3, :cond_0 │ │ .line 121 │ - iget-wide v3, p0, Lcom/mobiperf/MeasurementDesc;->count:J │ + iget-wide v4, p0, Lcom/mobiperf/MeasurementDesc;->count:J │ │ - iget-wide v5, v0, Lcom/mobiperf/MeasurementDesc;->count:J │ + iget-wide v6, v0, Lcom/mobiperf/MeasurementDesc;->count:J │ │ - cmp-long v3, v3, v5 │ + cmp-long v3, v4, v6 │ │ if-nez v3, :cond_0 │ │ .line 122 │ - iget-wide v3, p0, Lcom/mobiperf/MeasurementDesc;->priority:J │ + iget-wide v4, p0, Lcom/mobiperf/MeasurementDesc;->priority:J │ │ - iget-wide v5, v0, Lcom/mobiperf/MeasurementDesc;->priority:J │ + iget-wide v6, v0, Lcom/mobiperf/MeasurementDesc;->priority:J │ │ - cmp-long v3, v3, v5 │ + cmp-long v3, v4, v6 │ │ if-nez v3, :cond_0 │ │ .line 123 │ iget-object v3, p0, Lcom/mobiperf/MeasurementDesc;->parameters:Ljava/util/Map; │ │ if-nez v3, :cond_3 ├── smali/com/mobiperf/MeasurementScheduleConsoleActivity$3.smali │ @@ -17,14 +17,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/MeasurementScheduleConsoleActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/MeasurementScheduleConsoleActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/MeasurementScheduleConsoleActivity; │ │ .prologue │ .line 95 │ iput-object p1, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity$3;->this$0:Lcom/mobiperf/MeasurementScheduleConsoleActivity; │ │ invoke-direct {p0}, Landroid/content/BroadcastReceiver;->()V ├── smali/com/mobiperf/MeasurementScheduleConsoleActivity.smali │ @@ -137,99 +137,97 @@ │ .end method │ │ .method private updateConsole()V │ .locals 6 │ │ .prologue │ .line 167 │ - const-string v4, "updateConsole() called" │ + const-string v3, "updateConsole() called" │ │ - invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 168 │ - iget-object v4, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->parent:Lcom/mobiperf/SpeedometerApp; │ + iget-object v3, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->parent:Lcom/mobiperf/SpeedometerApp; │ │ - invoke-virtual {v4}, Lcom/mobiperf/SpeedometerApp;->getScheduler()Lcom/mobiperf/MeasurementScheduler; │ + invoke-virtual {v3}, Lcom/mobiperf/SpeedometerApp;->getScheduler()Lcom/mobiperf/MeasurementScheduler; │ │ - move-result-object v4 │ + move-result-object v3 │ │ - iput-object v4, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ + iput-object v3, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ .line 169 │ - iget-object v4, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ + iget-object v3, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ - if-eqz v4, :cond_0 │ + if-eqz v3, :cond_0 │ │ .line 170 │ - iget-object v4, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ + iget-object v3, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ - invoke-virtual {v4}, Lcom/mobiperf/MeasurementScheduler;->getTaskQueue()Ljava/util/concurrent/PriorityBlockingQueue; │ + invoke-virtual {v3}, Lcom/mobiperf/MeasurementScheduler;->getTaskQueue()Ljava/util/concurrent/PriorityBlockingQueue; │ │ - move-result-object v3 │ + move-result-object v2 │ │ .line 171 │ - .local v3, "tasks":Ljava/util/AbstractCollection;, "Ljava/util/AbstractCollection;" │ - iget-object v4, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->consoleContent:Landroid/widget/ArrayAdapter; │ + .local v2, "tasks":Ljava/util/AbstractCollection;, "Ljava/util/AbstractCollection;" │ + iget-object v3, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->consoleContent:Landroid/widget/ArrayAdapter; │ │ - invoke-virtual {v4}, Landroid/widget/ArrayAdapter;->clear()V │ + invoke-virtual {v3}, Landroid/widget/ArrayAdapter;->clear()V │ │ .line 172 │ - iget-object v4, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->taskMap:Ljava/util/HashMap; │ + iget-object v3, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->taskMap:Ljava/util/HashMap; │ │ - invoke-virtual {v4}, Ljava/util/HashMap;->clear()V │ + invoke-virtual {v3}, Ljava/util/HashMap;->clear()V │ │ .line 173 │ - invoke-virtual {v3}, Ljava/util/AbstractCollection;->iterator()Ljava/util/Iterator; │ + invoke-virtual {v2}, Ljava/util/AbstractCollection;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v3 │ │ - .local v0, "i$":Ljava/util/Iterator; │ :goto_0 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v4 │ │ if-eqz v4, :cond_0 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v1 │ + move-result-object v0 │ │ - check-cast v1, Lcom/mobiperf/MeasurementTask; │ + check-cast v0, Lcom/mobiperf/MeasurementTask; │ │ .line 174 │ - .local v1, "task":Lcom/mobiperf/MeasurementTask; │ - invoke-virtual {v1}, Lcom/mobiperf/MeasurementTask;->toString()Ljava/lang/String; │ + .local v0, "task":Lcom/mobiperf/MeasurementTask; │ + invoke-virtual {v0}, Lcom/mobiperf/MeasurementTask;->toString()Ljava/lang/String; │ │ - move-result-object v2 │ + move-result-object v1 │ │ .line 175 │ - .local v2, "taskStr":Ljava/lang/String; │ + .local v1, "taskStr":Ljava/lang/String; │ iget-object v4, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->consoleContent:Landroid/widget/ArrayAdapter; │ │ - invoke-virtual {v4, v2}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ + invoke-virtual {v4, v1}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ │ .line 176 │ iget-object v4, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->taskMap:Ljava/util/HashMap; │ │ - invoke-virtual {v1}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ + invoke-virtual {v0}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v5 │ │ iget-object v5, v5, Lcom/mobiperf/MeasurementDesc;->key:Ljava/lang/String; │ │ - invoke-virtual {v4, v2, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v4, v1, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ goto :goto_0 │ │ .line 179 │ - .end local v0 # "i$":Ljava/util/Iterator; │ - .end local v1 # "task":Lcom/mobiperf/MeasurementTask; │ - .end local v2 # "taskStr":Ljava/lang/String; │ - .end local v3 # "tasks":Ljava/util/AbstractCollection;, "Ljava/util/AbstractCollection;" │ + .end local v0 # "task":Lcom/mobiperf/MeasurementTask; │ + .end local v1 # "taskStr":Ljava/lang/String; │ + .end local v2 # "tasks":Ljava/util/AbstractCollection;, "Ljava/util/AbstractCollection;" │ :cond_0 │ invoke-direct {p0}, Lcom/mobiperf/MeasurementScheduleConsoleActivity;->updateLastCheckinTime()V │ │ .line 180 │ return-void │ .end method ├── smali/com/mobiperf/MeasurementScheduler$1.smali │ @@ -17,14 +17,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/MeasurementScheduler; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/MeasurementScheduler;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/MeasurementScheduler; │ │ .prologue │ .line 195 │ iput-object p1, p0, Lcom/mobiperf/MeasurementScheduler$1;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ invoke-direct {p0}, Landroid/content/BroadcastReceiver;->()V │ │ @@ -73,26 +74,28 @@ │ │ invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v2 │ │ if-nez v2, :cond_2 │ │ + .line 207 │ invoke-virtual {p2}, Landroid/content/Intent;->getAction()Ljava/lang/String; │ │ move-result-object v2 │ │ sget-object v3, Lcom/mobiperf/UpdateIntent;->CHECKIN_RETRY_ACTION:Ljava/lang/String; │ │ invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v2 │ │ if-eqz v2, :cond_3 │ │ + .line 208 │ invoke-static {}, Lcom/mobiperf/RRCTrafficControl;->checkIfPaused()Z │ │ move-result v2 │ │ if-nez v2, :cond_3 │ │ .line 209 │ @@ -120,14 +123,15 @@ │ │ invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v2 │ │ if-eqz v2, :cond_4 │ │ + .line 212 │ invoke-static {}, Lcom/mobiperf/RRCTrafficControl;->checkIfPaused()Z │ │ move-result v2 │ │ if-nez v2, :cond_4 │ │ .line 213 │ @@ -206,18 +210,20 @@ │ invoke-static {v2}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 228 │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler$1;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ sget-object v3, Lcom/mobiperf/UpdateIntent;->RESULT_PAYLOAD:Ljava/lang/String; │ │ + .line 229 │ invoke-virtual {p2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String; │ │ move-result-object v3 │ │ + .line 228 │ # invokes: Lcom/mobiperf/MeasurementScheduler;->saveResultToFile(Ljava/lang/String;)V │ invoke-static {v2, v3}, Lcom/mobiperf/MeasurementScheduler;->access$600(Lcom/mobiperf/MeasurementScheduler;Ljava/lang/String;)V │ │ .line 232 │ :cond_5 │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler$1;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ @@ -245,15 +251,15 @@ │ │ invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v2 │ │ if-eqz v2, :cond_0 │ │ - .line 235 │ + .line 236 │ invoke-virtual {p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle; │ │ move-result-object v2 │ │ const-string v3, "STRING_PAYLOAD" │ │ invoke-virtual {v2, v3}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String; ├── smali/com/mobiperf/MeasurementScheduleConsoleActivity$2.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/MeasurementScheduleConsoleActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/MeasurementScheduleConsoleActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/MeasurementScheduleConsoleActivity; │ │ .prologue │ .line 80 │ iput-object p1, p0, Lcom/mobiperf/MeasurementScheduleConsoleActivity$2;->this$0:Lcom/mobiperf/MeasurementScheduleConsoleActivity; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/MeasurementCreationActivity.smali │ @@ -2,15 +2,14 @@ │ .super Landroid/app/Activity; │ .source "MeasurementCreationActivity.java" │ │ │ # annotations │ .annotation system Ldalvik/annotation/MemberClasses; │ value = { │ - Lcom/mobiperf/MeasurementCreationActivity$1;, │ Lcom/mobiperf/MeasurementCreationActivity$MeasurementTypeOnItemSelectedListener;, │ Lcom/mobiperf/MeasurementCreationActivity$EditBoxFocusChangeListener;, │ Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;, │ Lcom/mobiperf/MeasurementCreationActivity$TCPRadioOnClickListener;, │ Lcom/mobiperf/MeasurementCreationActivity$UDPRadioOnClickListener;, │ Lcom/mobiperf/MeasurementCreationActivity$UDPSettingsOnClickListener; │ } │ @@ -76,15 +75,14 @@ │ .method public constructor ()V │ .locals 0 │ │ .prologue │ .line 61 │ invoke-direct {p0}, Landroid/app/Activity;->()V │ │ - .line 394 │ return-void │ .end method │ │ .method static synthetic access$1000(Lcom/mobiperf/MeasurementCreationActivity;)V │ .locals 0 │ .param p0, "x0" # Lcom/mobiperf/MeasurementCreationActivity; │ │ @@ -578,298 +576,299 @@ │ invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent; │ │ .line 363 │ const-string v1, "STATUS_MSG_PAYLOAD" │ │ const v2, 0x7f07002a │ │ + .line 364 │ invoke-virtual {p0, v2}, Lcom/mobiperf/MeasurementCreationActivity;->getString(I)Ljava/lang/String; │ │ move-result-object v2 │ │ + .line 363 │ invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; │ │ .line 365 │ invoke-virtual {p0, v0}, Lcom/mobiperf/MeasurementCreationActivity;->sendBroadcast(Landroid/content/Intent;)V │ │ .line 366 │ return-void │ .end method │ │ │ # virtual methods │ .method protected onCreate(Landroid/os/Bundle;)V │ - .locals 14 │ + .locals 13 │ .param p1, "savedInstanceState" # Landroid/os/Bundle; │ │ .prologue │ - const/4 v13, 0x1 │ + const/4 v12, 0x1 │ │ - const/4 v12, 0x0 │ + const/4 v11, 0x0 │ │ .line 74 │ invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V │ │ .line 75 │ - const v9, 0x7f030004 │ + const v8, 0x7f030004 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementCreationActivity;->setContentView(I)V │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementCreationActivity;->setContentView(I)V │ │ .line 77 │ - sget-boolean v9, Lcom/mobiperf/MeasurementCreationActivity;->$assertionsDisabled:Z │ + sget-boolean v8, Lcom/mobiperf/MeasurementCreationActivity;->$assertionsDisabled:Z │ │ - if-nez v9, :cond_0 │ + if-nez v8, :cond_0 │ │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementCreationActivity;->getParent()Landroid/app/Activity; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/Object;->getClass()Ljava/lang/Class; │ + invoke-virtual {v8}, Ljava/lang/Object;->getClass()Ljava/lang/Class; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/Class;->getName()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/Class;->getName()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - const-string v10, "SpeedometerApp" │ + const-string v9, "SpeedometerApp" │ │ - invoke-virtual {v9, v10}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I │ + invoke-virtual {v8, v9}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I │ │ - move-result v9 │ + move-result v8 │ │ - if-eqz v9, :cond_0 │ + if-eqz v8, :cond_0 │ │ - new-instance v9, Ljava/lang/AssertionError; │ + new-instance v8, Ljava/lang/AssertionError; │ │ - invoke-direct {v9}, Ljava/lang/AssertionError;->()V │ + invoke-direct {v8}, Ljava/lang/AssertionError;->()V │ │ - throw v9 │ + throw v8 │ │ .line 78 │ :cond_0 │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementCreationActivity;->getParent()Landroid/app/Activity; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - check-cast v9, Lcom/mobiperf/SpeedometerApp; │ + check-cast v8, Lcom/mobiperf/SpeedometerApp; │ │ - iput-object v9, p0, Lcom/mobiperf/MeasurementCreationActivity;->parent:Lcom/mobiperf/SpeedometerApp; │ + iput-object v8, p0, Lcom/mobiperf/MeasurementCreationActivity;->parent:Lcom/mobiperf/SpeedometerApp; │ │ .line 81 │ - const v9, 0x7f090006 │ + const v8, 0x7f090006 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - check-cast v7, Landroid/widget/Spinner; │ + check-cast v6, Landroid/widget/Spinner; │ │ .line 82 │ - .local v7, "spinner":Landroid/widget/Spinner; │ - new-instance v9, Landroid/widget/ArrayAdapter; │ + .local v6, "spinner":Landroid/widget/Spinner; │ + new-instance v8, Landroid/widget/ArrayAdapter; │ │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementCreationActivity;->getApplicationContext()Landroid/content/Context; │ │ - move-result-object v10 │ + move-result-object v9 │ │ - const v11, 0x7f030007 │ + const v10, 0x7f030007 │ │ - invoke-direct {v9, v10, v11}, Landroid/widget/ArrayAdapter;->(Landroid/content/Context;I)V │ + invoke-direct {v8, v9, v10}, Landroid/widget/ArrayAdapter;->(Landroid/content/Context;I)V │ │ - iput-object v9, p0, Lcom/mobiperf/MeasurementCreationActivity;->spinnerValues:Landroid/widget/ArrayAdapter; │ + iput-object v8, p0, Lcom/mobiperf/MeasurementCreationActivity;->spinnerValues:Landroid/widget/ArrayAdapter; │ │ .line 83 │ invoke-static {}, Lcom/mobiperf/MeasurementTask;->getMeasurementNames()Ljava/util/Set; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-interface {v9}, Ljava/util/Set;->iterator()Ljava/util/Iterator; │ + invoke-interface {v8}, Ljava/util/Set;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v8 │ │ - .local v0, "i$":Ljava/util/Iterator; │ :cond_1 │ :goto_0 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v8}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v9 │ │ if-eqz v9, :cond_2 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v1 │ + move-result-object v0 │ │ - check-cast v1, Ljava/lang/String; │ + check-cast v0, Ljava/lang/String; │ │ .line 85 │ - .local v1, "name":Ljava/lang/String; │ - invoke-static {v1}, Lcom/mobiperf/MeasurementTask;->getVisibilityForMeasurementName(Ljava/lang/String;)Z │ + .local v0, "name":Ljava/lang/String; │ + invoke-static {v0}, Lcom/mobiperf/MeasurementTask;->getVisibilityForMeasurementName(Ljava/lang/String;)Z │ │ move-result v9 │ │ if-eqz v9, :cond_1 │ │ .line 86 │ iget-object v9, p0, Lcom/mobiperf/MeasurementCreationActivity;->spinnerValues:Landroid/widget/ArrayAdapter; │ │ - invoke-virtual {v9, v1}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ + invoke-virtual {v9, v0}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ │ goto :goto_0 │ │ .line 89 │ - .end local v1 # "name":Ljava/lang/String; │ + .end local v0 # "name":Ljava/lang/String; │ :cond_2 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementCreationActivity;->spinnerValues:Landroid/widget/ArrayAdapter; │ + iget-object v8, p0, Lcom/mobiperf/MeasurementCreationActivity;->spinnerValues:Landroid/widget/ArrayAdapter; │ │ - const v10, 0x1090009 │ + const v9, 0x1090009 │ │ - invoke-virtual {v9, v10}, Landroid/widget/ArrayAdapter;->setDropDownViewResource(I)V │ + invoke-virtual {v8, v9}, Landroid/widget/ArrayAdapter;->setDropDownViewResource(I)V │ │ .line 90 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementCreationActivity;->spinnerValues:Landroid/widget/ArrayAdapter; │ + iget-object v8, p0, Lcom/mobiperf/MeasurementCreationActivity;->spinnerValues:Landroid/widget/ArrayAdapter; │ │ - invoke-virtual {v7, v9}, Landroid/widget/Spinner;->setAdapter(Landroid/widget/SpinnerAdapter;)V │ + invoke-virtual {v6, v8}, Landroid/widget/Spinner;->setAdapter(Landroid/widget/SpinnerAdapter;)V │ │ .line 91 │ - new-instance v9, Lcom/mobiperf/MeasurementCreationActivity$MeasurementTypeOnItemSelectedListener; │ + new-instance v8, Lcom/mobiperf/MeasurementCreationActivity$MeasurementTypeOnItemSelectedListener; │ │ - invoke-direct {v9, p0, v12}, Lcom/mobiperf/MeasurementCreationActivity$MeasurementTypeOnItemSelectedListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ + invoke-direct {v8, p0, v11}, Lcom/mobiperf/MeasurementCreationActivity$MeasurementTypeOnItemSelectedListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ │ - invoke-virtual {v7, v9}, Landroid/widget/Spinner;->setOnItemSelectedListener(Landroid/widget/AdapterView$OnItemSelectedListener;)V │ + invoke-virtual {v6, v8}, Landroid/widget/Spinner;->setOnItemSelectedListener(Landroid/widget/AdapterView$OnItemSelectedListener;)V │ │ .line 92 │ - invoke-virtual {v7}, Landroid/widget/Spinner;->requestFocus()Z │ + invoke-virtual {v6}, Landroid/widget/Spinner;->requestFocus()Z │ │ .line 94 │ - const v9, 0x7f090004 │ + const v8, 0x7f090004 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - check-cast v6, Landroid/widget/Button; │ + check-cast v5, Landroid/widget/Button; │ │ .line 95 │ - .local v6, "runButton":Landroid/widget/Button; │ - new-instance v9, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener; │ + .local v5, "runButton":Landroid/widget/Button; │ + new-instance v8, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener; │ │ - invoke-direct {v9, p0, v12}, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ + invoke-direct {v8, p0, v11}, Lcom/mobiperf/MeasurementCreationActivity$ButtonOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ │ - invoke-virtual {v6, v9}, Landroid/widget/Button;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ + invoke-virtual {v5, v8}, Landroid/widget/Button;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ │ .line 97 │ - const-string v9, "ping" │ + const-string v8, "ping" │ │ - iput-object v9, p0, Lcom/mobiperf/MeasurementCreationActivity;->measurementTypeUnderEdit:Ljava/lang/String; │ + iput-object v8, p0, Lcom/mobiperf/MeasurementCreationActivity;->measurementTypeUnderEdit:Ljava/lang/String; │ │ .line 98 │ invoke-direct {p0}, Lcom/mobiperf/MeasurementCreationActivity;->setupEditTextFocusChangeListener()V │ │ .line 100 │ - const-string v9, "Up" │ + const-string v8, "Up" │ │ - iput-object v9, p0, Lcom/mobiperf/MeasurementCreationActivity;->udpDir:Ljava/lang/String; │ + iput-object v8, p0, Lcom/mobiperf/MeasurementCreationActivity;->udpDir:Ljava/lang/String; │ │ .line 101 │ - const-string v9, "Up" │ + const-string v8, "Up" │ │ - iput-object v9, p0, Lcom/mobiperf/MeasurementCreationActivity;->tcpDir:Ljava/lang/String; │ + iput-object v8, p0, Lcom/mobiperf/MeasurementCreationActivity;->tcpDir:Ljava/lang/String; │ │ .line 103 │ - const v9, 0x7f090010 │ + const v8, 0x7f090010 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ - move-result-object v5 │ + move-result-object v4 │ │ - check-cast v5, Landroid/widget/RadioButton; │ + check-cast v4, Landroid/widget/RadioButton; │ │ .line 104 │ - .local v5, "radioUDPUp":Landroid/widget/RadioButton; │ - const v9, 0x7f090011 │ + .local v4, "radioUDPUp":Landroid/widget/RadioButton; │ + const v8, 0x7f090011 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ - move-result-object v4 │ + move-result-object v3 │ │ - check-cast v4, Landroid/widget/RadioButton; │ + check-cast v3, Landroid/widget/RadioButton; │ │ .line 105 │ - .local v4, "radioUDPDown":Landroid/widget/RadioButton; │ - const v9, 0x7f09001a │ + .local v3, "radioUDPDown":Landroid/widget/RadioButton; │ + const v8, 0x7f09001a │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ - move-result-object v3 │ + move-result-object v2 │ │ - check-cast v3, Landroid/widget/RadioButton; │ + check-cast v2, Landroid/widget/RadioButton; │ │ .line 106 │ - .local v3, "radioTCPUp":Landroid/widget/RadioButton; │ - const v9, 0x7f09001b │ + .local v2, "radioTCPUp":Landroid/widget/RadioButton; │ + const v8, 0x7f09001b │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ - move-result-object v2 │ + move-result-object v1 │ │ - check-cast v2, Landroid/widget/RadioButton; │ + check-cast v1, Landroid/widget/RadioButton; │ │ .line 108 │ - .local v2, "radioTCPDown":Landroid/widget/RadioButton; │ - invoke-virtual {v5, v13}, Landroid/widget/RadioButton;->setChecked(Z)V │ + .local v1, "radioTCPDown":Landroid/widget/RadioButton; │ + invoke-virtual {v4, v12}, Landroid/widget/RadioButton;->setChecked(Z)V │ │ .line 109 │ - new-instance v9, Lcom/mobiperf/MeasurementCreationActivity$UDPRadioOnClickListener; │ + new-instance v8, Lcom/mobiperf/MeasurementCreationActivity$UDPRadioOnClickListener; │ │ - invoke-direct {v9, p0, v12}, Lcom/mobiperf/MeasurementCreationActivity$UDPRadioOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ + invoke-direct {v8, p0, v11}, Lcom/mobiperf/MeasurementCreationActivity$UDPRadioOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ │ - invoke-virtual {v5, v9}, Landroid/widget/RadioButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ + invoke-virtual {v4, v8}, Landroid/widget/RadioButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ │ .line 110 │ - new-instance v9, Lcom/mobiperf/MeasurementCreationActivity$UDPRadioOnClickListener; │ + new-instance v8, Lcom/mobiperf/MeasurementCreationActivity$UDPRadioOnClickListener; │ │ - invoke-direct {v9, p0, v12}, Lcom/mobiperf/MeasurementCreationActivity$UDPRadioOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ + invoke-direct {v8, p0, v11}, Lcom/mobiperf/MeasurementCreationActivity$UDPRadioOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ │ - invoke-virtual {v4, v9}, Landroid/widget/RadioButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ + invoke-virtual {v3, v8}, Landroid/widget/RadioButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ │ .line 112 │ - const v9, 0x7f090012 │ + const v8, 0x7f090012 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementCreationActivity;->findViewById(I)Landroid/view/View; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - check-cast v8, Landroid/widget/Button; │ + check-cast v7, Landroid/widget/Button; │ │ .line 113 │ - .local v8, "udpSettings":Landroid/widget/Button; │ - new-instance v9, Lcom/mobiperf/MeasurementCreationActivity$UDPSettingsOnClickListener; │ + .local v7, "udpSettings":Landroid/widget/Button; │ + new-instance v8, Lcom/mobiperf/MeasurementCreationActivity$UDPSettingsOnClickListener; │ │ - invoke-direct {v9, p0, v12}, Lcom/mobiperf/MeasurementCreationActivity$UDPSettingsOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ + invoke-direct {v8, p0, v11}, Lcom/mobiperf/MeasurementCreationActivity$UDPSettingsOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ │ - invoke-virtual {v8, v9}, Landroid/widget/Button;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ + invoke-virtual {v7, v8}, Landroid/widget/Button;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ │ .line 115 │ - invoke-virtual {v3, v13}, Landroid/widget/RadioButton;->setChecked(Z)V │ + invoke-virtual {v2, v12}, Landroid/widget/RadioButton;->setChecked(Z)V │ │ .line 116 │ - new-instance v9, Lcom/mobiperf/MeasurementCreationActivity$TCPRadioOnClickListener; │ + new-instance v8, Lcom/mobiperf/MeasurementCreationActivity$TCPRadioOnClickListener; │ │ - invoke-direct {v9, p0, v12}, Lcom/mobiperf/MeasurementCreationActivity$TCPRadioOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ + invoke-direct {v8, p0, v11}, Lcom/mobiperf/MeasurementCreationActivity$TCPRadioOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ │ - invoke-virtual {v3, v9}, Landroid/widget/RadioButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ + invoke-virtual {v2, v8}, Landroid/widget/RadioButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ │ .line 117 │ - new-instance v9, Lcom/mobiperf/MeasurementCreationActivity$TCPRadioOnClickListener; │ + new-instance v8, Lcom/mobiperf/MeasurementCreationActivity$TCPRadioOnClickListener; │ │ - invoke-direct {v9, p0, v12}, Lcom/mobiperf/MeasurementCreationActivity$TCPRadioOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ + invoke-direct {v8, p0, v11}, Lcom/mobiperf/MeasurementCreationActivity$TCPRadioOnClickListener;->(Lcom/mobiperf/MeasurementCreationActivity;Lcom/mobiperf/MeasurementCreationActivity$1;)V │ │ - invoke-virtual {v2, v9}, Landroid/widget/RadioButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ + invoke-virtual {v1, v8}, Landroid/widget/RadioButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V │ │ .line 118 │ return-void │ .end method │ │ .method protected onStart()V │ .locals 0 ├── smali/com/mobiperf/MeasurementScheduler$2.smali │ @@ -28,14 +28,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/MeasurementScheduler; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/MeasurementScheduler;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/MeasurementScheduler; │ │ .prologue │ .line 1336 │ iput-object p1, p0, Lcom/mobiperf/MeasurementScheduler$2;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ invoke-direct {p0}, Lcom/google/myjson/reflect/TypeToken;->()V ├── smali/com/mobiperf/MeasurementScheduler$3.smali │ @@ -28,14 +28,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/MeasurementScheduler; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/MeasurementScheduler;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/MeasurementScheduler; │ │ .prologue │ .line 1375 │ iput-object p1, p0, Lcom/mobiperf/MeasurementScheduler$3;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ invoke-direct {p0}, Lcom/google/myjson/reflect/TypeToken;->()V ├── smali/com/mobiperf/MeasurementScheduler$CheckinTask.smali │ @@ -45,15 +45,15 @@ │ │ return-void │ .end method │ │ │ # virtual methods │ .method public run()V │ - .locals 9 │ + .locals 10 │ │ .prologue │ .line 1119 │ const-string v1, "checking Speedometer service for new tasks" │ │ invoke-static {v1}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ @@ -168,24 +168,24 @@ │ :cond_1 │ :try_start_2 │ iget-object v1, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ # getter for: Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntervalSec:J │ invoke-static {v1}, Lcom/mobiperf/MeasurementScheduler;->access$1600(Lcom/mobiperf/MeasurementScheduler;)J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - iget-object v3, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ + iget-object v1, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ # getter for: Lcom/mobiperf/MeasurementScheduler;->checkinIntervalSec:J │ - invoke-static {v3}, Lcom/mobiperf/MeasurementScheduler;->access$1700(Lcom/mobiperf/MeasurementScheduler;)J │ + invoke-static {v1}, Lcom/mobiperf/MeasurementScheduler;->access$1700(Lcom/mobiperf/MeasurementScheduler;)J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ - cmp-long v1, v1, v3 │ + cmp-long v1, v2, v4 │ │ if-gez v1, :cond_0 │ │ .line 1142 │ new-instance v1, Ljava/lang/StringBuilder; │ │ invoke-direct {v1}, Ljava/lang/StringBuilder;->()V │ @@ -232,18 +232,20 @@ │ │ sget-object v6, Lcom/mobiperf/UpdateIntent;->CHECKIN_RETRY_ACTION:Ljava/lang/String; │ │ invoke-direct {v4, v5, v6}, Lcom/mobiperf/UpdateIntent;->(Ljava/lang/String;Ljava/lang/String;)V │ │ const/high16 v5, 0x10000000 │ │ + .line 1148 │ invoke-static {v2, v3, v4, v5}, Landroid/app/PendingIntent;->getBroadcast(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; │ │ move-result-object v2 │ │ + .line 1147 │ # setter for: Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntentSender:Landroid/app/PendingIntent; │ invoke-static {v1, v2}, Lcom/mobiperf/MeasurementScheduler;->access$1802(Lcom/mobiperf/MeasurementScheduler;Landroid/app/PendingIntent;)Landroid/app/PendingIntent; │ │ .line 1151 │ iget-object v1, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ # getter for: Lcom/mobiperf/MeasurementScheduler;->alarmManager:Landroid/app/AlarmManager; │ @@ -251,64 +253,69 @@ │ │ move-result-object v1 │ │ const/4 v2, 0x0 │ │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ - iget-object v5, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ + iget-object v3, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ + .line 1152 │ # getter for: Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntervalSec:J │ - invoke-static {v5}, Lcom/mobiperf/MeasurementScheduler;->access$1600(Lcom/mobiperf/MeasurementScheduler;)J │ + invoke-static {v3}, Lcom/mobiperf/MeasurementScheduler;->access$1600(Lcom/mobiperf/MeasurementScheduler;)J │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ - const-wide/16 v7, 0x3e8 │ + const-wide/16 v8, 0x3e8 │ │ - mul-long/2addr v5, v7 │ + mul-long/2addr v6, v8 │ │ - add-long/2addr v3, v5 │ + add-long/2addr v4, v6 │ │ - iget-object v5, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ + iget-object v3, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ # getter for: Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntentSender:Landroid/app/PendingIntent; │ - invoke-static {v5}, Lcom/mobiperf/MeasurementScheduler;->access$1800(Lcom/mobiperf/MeasurementScheduler;)Landroid/app/PendingIntent; │ + invoke-static {v3}, Lcom/mobiperf/MeasurementScheduler;->access$1800(Lcom/mobiperf/MeasurementScheduler;)Landroid/app/PendingIntent; │ │ - move-result-object v5 │ + move-result-object v3 │ │ - invoke-virtual {v1, v2, v3, v4, v5}, Landroid/app/AlarmManager;->set(IJLandroid/app/PendingIntent;)V │ + .line 1151 │ + invoke-virtual {v1, v2, v4, v5, v3}, Landroid/app/AlarmManager;->set(IJLandroid/app/PendingIntent;)V │ │ .line 1153 │ iget-object v1, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ # operator++ for: Lcom/mobiperf/MeasurementScheduler;->checkinRetryCnt:I │ invoke-static {v1}, Lcom/mobiperf/MeasurementScheduler;->access$1508(Lcom/mobiperf/MeasurementScheduler;)I │ │ .line 1154 │ iget-object v1, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ const-wide/16 v2, 0x3c │ │ iget-object v4, p0, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ + .line 1156 │ # getter for: Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntervalSec:J │ invoke-static {v4}, Lcom/mobiperf/MeasurementScheduler;->access$1600(Lcom/mobiperf/MeasurementScheduler;)J │ │ move-result-wide v4 │ │ const-wide/16 v6, 0x2 │ │ mul-long/2addr v4, v6 │ │ + .line 1155 │ invoke-static {v2, v3, v4, v5}, Ljava/lang/Math;->min(JJ)J │ │ move-result-wide v2 │ │ + .line 1154 │ # setter for: Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntervalSec:J │ invoke-static {v1, v2, v3}, Lcom/mobiperf/MeasurementScheduler;->access$1602(Lcom/mobiperf/MeasurementScheduler;J)J │ :try_end_2 │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ goto/16 :goto_1 ├── smali/com/mobiperf/MeasurementScheduler$SchedulerBinder.smali │ @@ -17,14 +17,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/MeasurementScheduler; │ │ │ # direct methods │ .method public constructor (Lcom/mobiperf/MeasurementScheduler;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/MeasurementScheduler; │ │ .prologue │ .line 135 │ iput-object p1, p0, Lcom/mobiperf/MeasurementScheduler$SchedulerBinder;->this$0:Lcom/mobiperf/MeasurementScheduler; │ │ invoke-direct {p0}, Landroid/os/Binder;->()V ├── smali/com/mobiperf/MeasurementScheduler$TaskComparator.smali │ @@ -70,24 +70,20 @@ │ move-result v0 │ │ return v0 │ .end method │ │ .method public bridge synthetic compare(Ljava/lang/Object;Ljava/lang/Object;)I │ .locals 1 │ - .param p1, "x0" # Ljava/lang/Object; │ - .param p2, "x1" # Ljava/lang/Object; │ │ .prologue │ .line 552 │ check-cast p1, Lcom/mobiperf/MeasurementTask; │ │ - .end local p1 # "x0":Ljava/lang/Object; │ check-cast p2, Lcom/mobiperf/MeasurementTask; │ │ - .end local p2 # "x1":Ljava/lang/Object; │ invoke-virtual {p0, p1, p2}, Lcom/mobiperf/MeasurementScheduler$TaskComparator;->compare(Lcom/mobiperf/MeasurementTask;Lcom/mobiperf/MeasurementTask;)I │ │ move-result v0 │ │ return v0 │ .end method ├── smali/com/mobiperf/MeasurementScheduler$UserMeasurementTask.smali │ @@ -117,14 +117,15 @@ │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ iget-object v3, p0, Lcom/mobiperf/MeasurementScheduler$UserMeasurementTask;->realTask:Lcom/mobiperf/MeasurementTask; │ │ + .line 1232 │ invoke-virtual {v3}, Lcom/mobiperf/MeasurementTask;->getDescriptor()Ljava/lang/String; │ │ move-result-object v3 │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 ├── smali/com/mobiperf/MeasurementTask.smali │ @@ -452,26 +452,26 @@ │ │ return v0 │ .end method │ │ │ # virtual methods │ .method public broadcastProgressForUser(I)V │ - .locals 5 │ + .locals 6 │ .param p1, "progress" # I │ │ .prologue │ .line 213 │ iget-object v1, p0, Lcom/mobiperf/MeasurementTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - iget-wide v1, v1, Lcom/mobiperf/MeasurementDesc;->priority:J │ + iget-wide v2, v1, Lcom/mobiperf/MeasurementDesc;->priority:J │ │ - const-wide/32 v3, -0x80000000 │ + const-wide/32 v4, -0x80000000 │ │ - cmp-long v1, v1, v3 │ + cmp-long v1, v2, v4 │ │ if-nez v1, :cond_0 │ │ .line 214 │ new-instance v0, Landroid/content/Intent; │ │ invoke-direct {v0}, Landroid/content/Intent;->()V │ @@ -659,15 +659,15 @@ │ return v0 │ .end method │ │ .method public abstract getType()Ljava/lang/String; │ .end method │ │ .method public isPassedDeadline()Z │ - .locals 5 │ + .locals 6 │ │ .prologue │ const/4 v2, 0x0 │ │ .line 154 │ iget-object v3, p0, Lcom/mobiperf/MeasurementTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ @@ -690,17 +690,17 @@ │ │ move-result-wide v0 │ │ .line 158 │ .local v0, "endTime":J │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ - cmp-long v3, v0, v3 │ + cmp-long v3, v0, v4 │ │ if-gtz v3, :cond_0 │ │ const/4 v2, 0x1 │ │ goto :goto_0 │ .end method │ @@ -755,14 +755,15 @@ │ │ const-string v2, " scheduled to run at " │ │ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v1 │ │ + .line 189 │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v2 │ │ iget-object v2, v2, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ │ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; ├── smali/com/mobiperf/MeasurementScheduler.smali │ @@ -168,15 +168,14 @@ │ │ .line 118 │ iput v1, p0, Lcom/mobiperf/MeasurementScheduler;->completedMeasurementCnt:I │ │ .line 119 │ iput v1, p0, Lcom/mobiperf/MeasurementScheduler;->failedMeasurementCnt:I │ │ - .line 1198 │ return-void │ .end method │ │ .method static synthetic access$1002(Lcom/mobiperf/MeasurementScheduler;Ljava/util/Calendar;)Ljava/util/Calendar; │ .locals 0 │ .param p0, "x0" # Lcom/mobiperf/MeasurementScheduler; │ .param p1, "x1" # Ljava/util/Calendar; │ @@ -271,15 +270,15 @@ │ .line 80 │ iget-wide v0, p0, Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntervalSec:J │ │ return-wide v0 │ .end method │ │ .method static synthetic access$1602(Lcom/mobiperf/MeasurementScheduler;J)J │ - .locals 0 │ + .locals 1 │ .param p0, "x0" # Lcom/mobiperf/MeasurementScheduler; │ .param p1, "x1" # J │ │ .prologue │ .line 80 │ iput-wide p1, p0, Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntervalSec:J │ │ @@ -436,26 +435,28 @@ │ │ .prologue │ .line 279 │ iget-object v0, p0, Lcom/mobiperf/MeasurementScheduler;->notificationManager:Landroid/app/NotificationManager; │ │ const/16 v1, 0x4d2 │ │ + .line 280 │ invoke-direct {p0}, Lcom/mobiperf/MeasurementScheduler;->createServiceRunningNotification()Landroid/app/Notification; │ │ move-result-object v2 │ │ + .line 279 │ invoke-virtual {v0, v1, v2}, Landroid/app/NotificationManager;->notify(ILandroid/app/Notification;)V │ │ .line 281 │ return-void │ .end method │ │ .method private adjustInterval(Lcom/mobiperf/MeasurementTask;)Z │ - .locals 7 │ + .locals 8 │ .param p1, "task" # Lcom/mobiperf/MeasurementTask; │ │ .prologue │ .line 732 │ invoke-virtual {p1}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v2 │ @@ -474,14 +475,15 @@ │ │ move-result v2 │ │ if-eqz v2, :cond_1 │ │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ │ + .line 735 │ invoke-virtual {v2}, Lcom/mobiperf/ResourceCapManager;->getDataUsageProfile()Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ move-result-object v2 │ │ sget-object v3, Lcom/mobiperf/ResourceCapManager$DataUsageProfile;->PROFILE1:Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ if-ne v2, v3, :cond_1 │ @@ -589,14 +591,15 @@ │ │ move-result v2 │ │ if-eqz v2, :cond_2 │ │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ │ + .line 740 │ invoke-virtual {v2}, Lcom/mobiperf/ResourceCapManager;->getDataUsageProfile()Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ move-result-object v2 │ │ sget-object v3, Lcom/mobiperf/ResourceCapManager$DataUsageProfile;->PROFILE2:Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ if-ne v2, v3, :cond_2 │ @@ -657,14 +660,15 @@ │ │ move-result v2 │ │ if-eqz v2, :cond_3 │ │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ │ + .line 745 │ invoke-virtual {v2}, Lcom/mobiperf/ResourceCapManager;->getDataUsageProfile()Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ move-result-object v2 │ │ sget-object v3, Lcom/mobiperf/ResourceCapManager$DataUsageProfile;->PROFILE3:Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ if-ne v2, v3, :cond_3 │ @@ -725,14 +729,15 @@ │ │ move-result v2 │ │ if-eqz v2, :cond_4 │ │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ │ + .line 750 │ invoke-virtual {v2}, Lcom/mobiperf/ResourceCapManager;->getDataUsageProfile()Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ move-result-object v2 │ │ sget-object v3, Lcom/mobiperf/ResourceCapManager$DataUsageProfile;->PROFILE4:Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ if-ne v2, v3, :cond_4 │ @@ -793,14 +798,15 @@ │ │ move-result v2 │ │ if-eqz v2, :cond_0 │ │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ │ + .line 755 │ invoke-virtual {v2}, Lcom/mobiperf/ResourceCapManager;->getDataUsageProfile()Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ move-result-object v2 │ │ sget-object v3, Lcom/mobiperf/ResourceCapManager$DataUsageProfile;->UNLIMITED:Lcom/mobiperf/ResourceCapManager$DataUsageProfile; │ │ if-ne v2, v3, :cond_0 │ @@ -855,21 +861,21 @@ │ │ .line 764 │ :cond_5 │ invoke-virtual {p1}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v2 │ │ - iget-wide v3, v2, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ + iget-wide v4, v2, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ │ - float-to-double v5, v0 │ + float-to-double v6, v0 │ │ - mul-double/2addr v3, v5 │ + mul-double/2addr v4, v6 │ │ - iput-wide v3, v2, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ + iput-wide v4, v2, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ │ .line 765 │ invoke-virtual {p1}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v2 │ │ invoke-virtual {v2}, Lcom/mobiperf/MeasurementDesc;->updateStartTime()V │ @@ -1019,15 +1025,15 @@ │ │ monitor-exit p0 │ │ throw v0 │ .end method │ │ .method private createServiceRunningNotification()Landroid/app/Notification; │ - .locals 7 │ + .locals 8 │ │ .prologue │ .line 256 │ new-instance v0, Landroid/content/Intent; │ │ const-class v3, Lcom/mobiperf/SpeedometerApp; │ │ @@ -1035,35 +1041,38 @@ │ │ .line 257 │ .local v0, "intent":Landroid/content/Intent; │ const/4 v3, 0x0 │ │ const/high16 v4, 0x10000000 │ │ + .line 258 │ invoke-static {p0, v3, v0, v4}, Landroid/app/PendingIntent;->getActivity(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; │ │ move-result-object v2 │ │ .line 262 │ .local v2, "pendIntent":Landroid/app/PendingIntent; │ new-instance v1, Landroid/app/Notification; │ │ const v3, 0x7f02000a │ │ const v4, 0x7f070026 │ │ + .line 264 │ invoke-virtual {p0, v4}, Lcom/mobiperf/MeasurementScheduler;->getString(I)Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 265 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ - invoke-direct {v1, v3, v4, v5, v6}, Landroid/app/Notification;->(ILjava/lang/CharSequence;J)V │ + invoke-direct {v1, v3, v4, v6, v7}, Landroid/app/Notification;->(ILjava/lang/CharSequence;J)V │ │ .line 266 │ .local v1, "notice":Landroid/app/Notification; │ iget v3, v1, Landroid/app/Notification;->flags:I │ │ or-int/lit8 v3, v3, 0x22 │ │ @@ -1074,18 +1083,20 @@ │ │ invoke-virtual {p0, v3}, Lcom/mobiperf/MeasurementScheduler;->getString(I)Ljava/lang/String; │ │ move-result-object v3 │ │ const v4, 0x7f070027 │ │ + .line 271 │ invoke-virtual {p0, v4}, Lcom/mobiperf/MeasurementScheduler;->getString(I)Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 270 │ invoke-virtual {v1, p0, v3, v4, v2}, Landroid/app/Notification;->setLatestEventInfo(Landroid/content/Context;Ljava/lang/CharSequence;Ljava/lang/CharSequence;Landroid/app/PendingIntent;)V │ │ .line 272 │ return-object v1 │ .end method │ │ .method private getFailureResult(Lcom/mobiperf/MeasurementTask;Ljava/lang/Throwable;)Lcom/mobiperf/MeasurementResult; │ @@ -1108,30 +1119,33 @@ │ │ .line 1186 │ :goto_0 │ new-instance v0, Lcom/mobiperf/MeasurementResult; │ │ iget-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ + .line 1187 │ invoke-virtual {v1}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ move-result-object v1 │ │ iget-object v1, v1, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler;->phoneUtils:Lcom/mobiperf/util/PhoneUtils; │ │ + .line 1188 │ invoke-virtual {v2}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ │ move-result-object v2 │ │ invoke-virtual {p1}, Lcom/mobiperf/MeasurementTask;->getType()Ljava/lang/String; │ │ move-result-object v3 │ │ + .line 1189 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v4 │ │ const-wide/16 v6, 0x3e8 │ │ mul-long/2addr v4, v6 │ @@ -1267,19 +1281,19 @@ │ │ invoke-direct {p0, v0, v1}, Lcom/mobiperf/MeasurementScheduler;->updateSchedule(Ljava/util/List;Z)V │ │ goto :goto_0 │ .end method │ │ .method private handleMeasurement()V │ - .locals 15 │ + .locals 18 │ │ .prologue │ .line 328 │ - invoke-direct {p0}, Lcom/mobiperf/MeasurementScheduler;->userConsented()Z │ + invoke-direct/range {p0 .. p0}, Lcom/mobiperf/MeasurementScheduler;->userConsented()Z │ │ move-result v9 │ │ if-nez v9, :cond_0 │ │ .line 329 │ const-string v9, "Skipping measurement - User has not consented" │ @@ -1289,427 +1303,468 @@ │ .line 394 │ :goto_0 │ return-void │ │ .line 334 │ :cond_0 │ :try_start_0 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ + move-object/from16 v0, p0 │ + │ + iget-object v9, v0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ │ invoke-virtual {v9}, Ljava/util/concurrent/PriorityBlockingQueue;->peek()Ljava/lang/Object; │ │ - move-result-object v6 │ + move-result-object v8 │ │ - check-cast v6, Lcom/mobiperf/MeasurementTask; │ + check-cast v8, Lcom/mobiperf/MeasurementTask; │ │ .line 336 │ - .local v6, "task":Lcom/mobiperf/MeasurementTask; │ - if-eqz v6, :cond_3 │ + .local v8, "task":Lcom/mobiperf/MeasurementTask; │ + if-eqz v8, :cond_3 │ │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->timeFromExecution()J │ + invoke-virtual {v8}, Lcom/mobiperf/MeasurementTask;->timeFromExecution()J │ │ - move-result-wide v9 │ + move-result-wide v12 │ │ - const-wide/16 v11, 0x0 │ + const-wide/16 v14, 0x0 │ │ - cmp-long v9, v9, v11 │ + cmp-long v9, v12, v14 │ │ if-gtz v9, :cond_3 │ │ .line 337 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ + move-object/from16 v0, p0 │ + │ + iget-object v9, v0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ │ invoke-virtual {v9}, Ljava/util/concurrent/PriorityBlockingQueue;->poll()Ljava/lang/Object; │ │ .line 339 │ new-instance v9, Ljava/lang/StringBuilder; │ │ invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Processing task " │ + const-string v12, "Processing task " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Lcom/mobiperf/MeasurementTask;->toString()Ljava/lang/String; │ │ - move-result-object v10 │ + move-result-object v12 │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v9 │ │ invoke-static {v9}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 341 │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ + invoke-virtual {v8}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v9 │ │ - iget-wide v9, v9, Lcom/mobiperf/MeasurementDesc;->priority:J │ + iget-wide v12, v9, Lcom/mobiperf/MeasurementDesc;->priority:J │ │ - const-wide/32 v11, -0x80000000 │ + const-wide/32 v14, -0x80000000 │ │ - cmp-long v9, v9, v11 │ + cmp-long v9, v12, v14 │ │ if-nez v9, :cond_5 │ │ .line 342 │ new-instance v9, Ljava/lang/StringBuilder; │ │ invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Scheduling user task:\n" │ + const-string v12, "Scheduling user task:\n" │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ - invoke-virtual {v9, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v9 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ + move-object/from16 v0, p0 │ + │ + invoke-virtual {v0, v9}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ │ .line 344 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->measurementExecutor:Ljava/util/concurrent/ExecutorService; │ + move-object/from16 v0, p0 │ │ - new-instance v10, Lcom/mobiperf/MeasurementScheduler$UserMeasurementTask; │ + iget-object v9, v0, Lcom/mobiperf/MeasurementScheduler;->measurementExecutor:Ljava/util/concurrent/ExecutorService; │ │ - invoke-direct {v10, p0, v6}, Lcom/mobiperf/MeasurementScheduler$UserMeasurementTask;->(Lcom/mobiperf/MeasurementScheduler;Lcom/mobiperf/MeasurementTask;)V │ + new-instance v12, Lcom/mobiperf/MeasurementScheduler$UserMeasurementTask; │ │ - invoke-interface {v9, v10}, Ljava/util/concurrent/ExecutorService;->submit(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future; │ + move-object/from16 v0, p0 │ │ - move-result-object v2 │ + invoke-direct {v12, v0, v8}, Lcom/mobiperf/MeasurementScheduler$UserMeasurementTask;->(Lcom/mobiperf/MeasurementScheduler;Lcom/mobiperf/MeasurementTask;)V │ + │ + invoke-interface {v9, v12}, Ljava/util/concurrent/ExecutorService;->submit(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future; │ + │ + move-result-object v4 │ │ .line 351 │ - .local v2, "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ + .local v4, "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ :goto_1 │ - iget-object v10, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + move-object/from16 v0, p0 │ │ - monitor-enter v10 │ + iget-object v12, v0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + │ + monitor-enter v12 │ :try_end_0 │ .catch Ljava/lang/IllegalArgumentException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1 │ │ .line 352 │ :try_start_1 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + move-object/from16 v0, p0 │ │ - invoke-virtual {v9, v6, v2}, Ljava/util/concurrent/ConcurrentHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ + iget-object v9, v0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + │ + invoke-virtual {v9, v8, v4}, Ljava/util/concurrent/ConcurrentHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 353 │ - monitor-exit v10 │ + monitor-exit v12 │ :try_end_1 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ .line 355 │ :try_start_2 │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ + invoke-virtual {v8}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ - move-result-object v0 │ + move-result-object v2 │ │ .line 357 │ - .local v0, "desc":Lcom/mobiperf/MeasurementDesc; │ - iget-object v9, v0, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ + .local v2, "desc":Lcom/mobiperf/MeasurementDesc; │ + iget-object v9, v2, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ │ + .line 358 │ invoke-virtual {v9}, Ljava/util/Date;->getTime()J │ │ - move-result-wide v9 │ + move-result-wide v12 │ │ - iget-wide v11, v0, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ + iget-wide v14, v2, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ │ - double-to-long v11, v11 │ + double-to-long v14, v14 │ │ - const-wide/16 v13, 0x3e8 │ + const-wide/16 v16, 0x3e8 │ │ - mul-long/2addr v11, v13 │ + mul-long v14, v14, v16 │ │ - add-long v3, v9, v11 │ + add-long v6, v12, v14 │ │ .line 361 │ - .local v3, "newStartTime":J │ - iget-object v9, v0, Lcom/mobiperf/MeasurementDesc;->endTime:Ljava/util/Date; │ + .local v6, "newStartTime":J │ + iget-object v9, v2, Lcom/mobiperf/MeasurementDesc;->endTime:Ljava/util/Date; │ │ invoke-virtual {v9}, Ljava/util/Date;->getTime()J │ │ - move-result-wide v9 │ + move-result-wide v12 │ │ - cmp-long v9, v3, v9 │ + cmp-long v9, v6, v12 │ │ if-gez v9, :cond_3 │ │ - iget-wide v9, v0, Lcom/mobiperf/MeasurementDesc;->count:J │ + iget-wide v12, v2, Lcom/mobiperf/MeasurementDesc;->count:J │ │ - const-wide/16 v11, -0x1 │ + const-wide/16 v14, -0x1 │ │ - cmp-long v9, v9, v11 │ + cmp-long v9, v12, v14 │ │ if-eqz v9, :cond_1 │ │ - iget-wide v9, v0, Lcom/mobiperf/MeasurementDesc;->count:J │ + iget-wide v12, v2, Lcom/mobiperf/MeasurementDesc;->count:J │ │ - const-wide/16 v11, 0x1 │ + const-wide/16 v14, 0x1 │ │ - cmp-long v9, v9, v11 │ + cmp-long v9, v12, v14 │ │ if-lez v9, :cond_3 │ │ .line 363 │ :cond_1 │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->clone()Lcom/mobiperf/MeasurementTask; │ + invoke-virtual {v8}, Lcom/mobiperf/MeasurementTask;->clone()Lcom/mobiperf/MeasurementTask; │ │ move-result-object v5 │ │ .line 364 │ .local v5, "newTask":Lcom/mobiperf/MeasurementTask; │ - iget-wide v9, v0, Lcom/mobiperf/MeasurementDesc;->count:J │ + iget-wide v12, v2, Lcom/mobiperf/MeasurementDesc;->count:J │ │ - const-wide/16 v11, -0x1 │ + const-wide/16 v14, -0x1 │ │ - cmp-long v9, v9, v11 │ + cmp-long v9, v12, v14 │ │ if-eqz v9, :cond_2 │ │ .line 365 │ invoke-virtual {v5}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v9 │ │ - iget-wide v10, v9, Lcom/mobiperf/MeasurementDesc;->count:J │ + iget-wide v12, v9, Lcom/mobiperf/MeasurementDesc;->count:J │ │ - const-wide/16 v12, 0x1 │ + const-wide/16 v14, 0x1 │ │ - sub-long/2addr v10, v12 │ + sub-long/2addr v12, v14 │ │ - iput-wide v10, v9, Lcom/mobiperf/MeasurementDesc;->count:J │ + iput-wide v12, v9, Lcom/mobiperf/MeasurementDesc;->count:J │ │ .line 367 │ :cond_2 │ invoke-virtual {v5}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v9 │ │ iget-object v9, v9, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ │ - invoke-virtual {v9, v3, v4}, Ljava/util/Date;->setTime(J)V │ + invoke-virtual {v9, v6, v7}, Ljava/util/Date;->setTime(J)V │ │ .line 368 │ - invoke-virtual {p0, v5}, Lcom/mobiperf/MeasurementScheduler;->submitTask(Lcom/mobiperf/MeasurementTask;)Z │ + move-object/from16 v0, p0 │ + │ + invoke-virtual {v0, v5}, Lcom/mobiperf/MeasurementScheduler;->submitTask(Lcom/mobiperf/MeasurementTask;)Z │ │ .line 372 │ - .end local v0 # "desc":Lcom/mobiperf/MeasurementDesc; │ - .end local v2 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ - .end local v3 # "newStartTime":J │ + .end local v2 # "desc":Lcom/mobiperf/MeasurementDesc; │ + .end local v4 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ .end local v5 # "newTask":Lcom/mobiperf/MeasurementTask; │ + .end local v6 # "newStartTime":J │ :cond_3 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ + move-object/from16 v0, p0 │ + │ + iget-object v9, v0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ │ invoke-virtual {v9}, Ljava/util/concurrent/PriorityBlockingQueue;->peek()Ljava/lang/Object; │ │ - move-result-object v6 │ + move-result-object v8 │ │ - .end local v6 # "task":Lcom/mobiperf/MeasurementTask; │ - check-cast v6, Lcom/mobiperf/MeasurementTask; │ + .end local v8 # "task":Lcom/mobiperf/MeasurementTask; │ + check-cast v8, Lcom/mobiperf/MeasurementTask; │ │ .line 373 │ - .restart local v6 # "task":Lcom/mobiperf/MeasurementTask; │ - if-eqz v6, :cond_4 │ + .restart local v8 # "task":Lcom/mobiperf/MeasurementTask; │ + if-eqz v8, :cond_4 │ │ - .line 374 │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->timeFromExecution()J │ + .line 375 │ + invoke-virtual {v8}, Lcom/mobiperf/MeasurementTask;->timeFromExecution()J │ │ - move-result-wide v9 │ + move-result-wide v12 │ │ - const-wide/16 v11, 0xbb8 │ + const-wide/16 v14, 0xbb8 │ │ - invoke-static {v9, v10, v11, v12}, Ljava/lang/Math;->max(JJ)J │ + invoke-static {v12, v13, v14, v15}, Ljava/lang/Math;->max(JJ)J │ │ - move-result-wide v7 │ + move-result-wide v10 │ │ .line 377 │ - .local v7, "timeFromExecution":J │ + .local v10, "timeFromExecution":J │ const/4 v9, 0x0 │ │ - new-instance v10, Lcom/mobiperf/UpdateIntent; │ + new-instance v12, Lcom/mobiperf/UpdateIntent; │ │ - const-string v11, "" │ + const-string v13, "" │ │ - sget-object v12, Lcom/mobiperf/UpdateIntent;->MEASUREMENT_ACTION:Ljava/lang/String; │ + sget-object v14, Lcom/mobiperf/UpdateIntent;->MEASUREMENT_ACTION:Ljava/lang/String; │ │ - invoke-direct {v10, v11, v12}, Lcom/mobiperf/UpdateIntent;->(Ljava/lang/String;Ljava/lang/String;)V │ + invoke-direct {v12, v13, v14}, Lcom/mobiperf/UpdateIntent;->(Ljava/lang/String;Ljava/lang/String;)V │ │ - const/high16 v11, 0x10000000 │ + const/high16 v13, 0x10000000 │ │ - invoke-static {p0, v9, v10, v11}, Landroid/app/PendingIntent;->getBroadcast(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; │ + .line 378 │ + move-object/from16 v0, p0 │ + │ + invoke-static {v0, v9, v12, v13}, Landroid/app/PendingIntent;->getBroadcast(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; │ │ move-result-object v9 │ │ - iput-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->measurementIntentSender:Landroid/app/PendingIntent; │ + move-object/from16 v0, p0 │ + │ + iput-object v9, v0, Lcom/mobiperf/MeasurementScheduler;->measurementIntentSender:Landroid/app/PendingIntent; │ │ .line 381 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->alarmManager:Landroid/app/AlarmManager; │ + move-object/from16 v0, p0 │ │ - const/4 v10, 0x0 │ + iget-object v9, v0, Lcom/mobiperf/MeasurementScheduler;->alarmManager:Landroid/app/AlarmManager; │ + │ + const/4 v12, 0x0 │ │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v11 │ + move-result-wide v14 │ │ - add-long/2addr v11, v7 │ + add-long/2addr v14, v10 │ │ - iget-object v13, p0, Lcom/mobiperf/MeasurementScheduler;->measurementIntentSender:Landroid/app/PendingIntent; │ + move-object/from16 v0, p0 │ + │ + iget-object v13, v0, Lcom/mobiperf/MeasurementScheduler;->measurementIntentSender:Landroid/app/PendingIntent; │ │ - invoke-virtual {v9, v10, v11, v12, v13}, Landroid/app/AlarmManager;->set(IJLandroid/app/PendingIntent;)V │ + invoke-virtual {v9, v12, v14, v15, v13}, Landroid/app/AlarmManager;->set(IJLandroid/app/PendingIntent;)V │ :try_end_2 │ .catch Ljava/lang/IllegalArgumentException; {:try_start_2 .. :try_end_2} :catch_0 │ .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_1 │ │ .line 393 │ - .end local v6 # "task":Lcom/mobiperf/MeasurementTask; │ - .end local v7 # "timeFromExecution":J │ + .end local v8 # "task":Lcom/mobiperf/MeasurementTask; │ + .end local v10 # "timeFromExecution":J │ :cond_4 │ :goto_2 │ - invoke-direct {p0}, Lcom/mobiperf/MeasurementScheduler;->persistState()V │ + invoke-direct/range {p0 .. p0}, Lcom/mobiperf/MeasurementScheduler;->persistState()V │ │ goto/16 :goto_0 │ │ .line 346 │ - .restart local v6 # "task":Lcom/mobiperf/MeasurementTask; │ + .restart local v8 # "task":Lcom/mobiperf/MeasurementTask; │ :cond_5 │ :try_start_3 │ new-instance v9, Ljava/lang/StringBuilder; │ │ invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Scheduling task:\n" │ + const-string v12, "Scheduling task:\n" │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ - invoke-virtual {v9, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v9 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ + move-object/from16 v0, p0 │ + │ + invoke-virtual {v0, v9}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ │ .line 347 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->measurementExecutor:Ljava/util/concurrent/ExecutorService; │ + move-object/from16 v0, p0 │ │ - new-instance v10, Lcom/mobiperf/ResourceCapManager$PowerAwareTask; │ + iget-object v9, v0, Lcom/mobiperf/MeasurementScheduler;->measurementExecutor:Ljava/util/concurrent/ExecutorService; │ │ - iget-object v11, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ + new-instance v12, Lcom/mobiperf/ResourceCapManager$PowerAwareTask; │ │ - invoke-direct {v10, v6, v11, p0}, Lcom/mobiperf/ResourceCapManager$PowerAwareTask;->(Lcom/mobiperf/MeasurementTask;Lcom/mobiperf/ResourceCapManager;Lcom/mobiperf/MeasurementScheduler;)V │ + move-object/from16 v0, p0 │ + │ + iget-object v13, v0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ + │ + move-object/from16 v0, p0 │ │ - invoke-interface {v9, v10}, Ljava/util/concurrent/ExecutorService;->submit(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future; │ + invoke-direct {v12, v8, v13, v0}, Lcom/mobiperf/ResourceCapManager$PowerAwareTask;->(Lcom/mobiperf/MeasurementTask;Lcom/mobiperf/ResourceCapManager;Lcom/mobiperf/MeasurementScheduler;)V │ + │ + .line 348 │ + invoke-interface {v9, v12}, Ljava/util/concurrent/ExecutorService;->submit(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future; │ :try_end_3 │ .catch Ljava/lang/IllegalArgumentException; {:try_start_3 .. :try_end_3} :catch_0 │ .catch Ljava/lang/Exception; {:try_start_3 .. :try_end_3} :catch_1 │ │ - move-result-object v2 │ + move-result-object v4 │ │ - .restart local v2 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ + .restart local v4 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ goto/16 :goto_1 │ │ .line 353 │ :catchall_0 │ move-exception v9 │ │ :try_start_4 │ - monitor-exit v10 │ + monitor-exit v12 │ :try_end_4 │ .catchall {:try_start_4 .. :try_end_4} :catchall_0 │ │ :try_start_5 │ throw v9 │ :try_end_5 │ .catch Ljava/lang/IllegalArgumentException; {:try_start_5 .. :try_end_5} :catch_0 │ .catch Ljava/lang/Exception; {:try_start_5 .. :try_end_5} :catch_1 │ │ .line 384 │ - .end local v2 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ - .end local v6 # "task":Lcom/mobiperf/MeasurementTask; │ + .end local v4 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ + .end local v8 # "task":Lcom/mobiperf/MeasurementTask; │ :catch_0 │ - move-exception v1 │ + move-exception v3 │ │ .line 386 │ - .local v1, "e":Ljava/lang/IllegalArgumentException; │ + .local v3, "e":Ljava/lang/IllegalArgumentException; │ const-string v9, "Exception when cloning task" │ │ invoke-static {v9}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 387 │ new-instance v9, Ljava/lang/StringBuilder; │ │ invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Exception when cloning task: " │ + const-string v12, "Exception when cloning task: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ - invoke-virtual {v9, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v9 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ + move-object/from16 v0, p0 │ + │ + invoke-virtual {v0, v9}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ │ goto :goto_2 │ │ .line 388 │ - .end local v1 # "e":Ljava/lang/IllegalArgumentException; │ + .end local v3 # "e":Ljava/lang/IllegalArgumentException; │ :catch_1 │ - move-exception v1 │ + move-exception v3 │ │ .line 390 │ - .local v1, "e":Ljava/lang/Exception; │ + .local v3, "e":Ljava/lang/Exception; │ const-string v9, "Exception when handling measurements" │ │ - invoke-static {v9, v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ + invoke-static {v9, v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ │ .line 391 │ new-instance v9, Ljava/lang/StringBuilder; │ │ invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ │ - const-string v10, "Exception running task: " │ + const-string v12, "Exception running task: " │ │ - invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ - invoke-virtual {v9, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ move-result-object v9 │ │ invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v9 │ │ - invoke-virtual {p0, v9}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ + move-object/from16 v0, p0 │ + │ + invoke-virtual {v0, v9}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ │ goto :goto_2 │ .end method │ │ .method private initializeConsoles()V │ .locals 2 │ │ @@ -1868,15 +1923,15 @@ │ │ monitor-exit p0 │ │ throw v0 │ .end method │ │ .method private loadSchedulerState()V │ - .locals 23 │ + .locals 24 │ │ .prologue │ .line 967 │ new-instance v12, Ljava/util/Vector; │ │ invoke-direct {v12}, Ljava/util/Vector;->()V │ │ @@ -1888,24 +1943,24 @@ │ │ move-object/from16 v16, v0 │ │ monitor-enter v16 │ │ .line 970 │ :try_start_0 │ - const-string v15, "Restoring schedule from disk..." │ + const-string v13, "Restoring schedule from disk..." │ │ - invoke-static {v15}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v13}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 971 │ - const-string v15, "schedule" │ + const-string v13, "schedule" │ │ move-object/from16 v0, p0 │ │ - invoke-virtual {v0, v15}, Lcom/mobiperf/MeasurementScheduler;->openFileInput(Ljava/lang/String;)Ljava/io/FileInputStream; │ + invoke-virtual {v0, v13}, Lcom/mobiperf/MeasurementScheduler;->openFileInput(Ljava/lang/String;)Ljava/io/FileInputStream; │ │ move-result-object v6 │ │ .line 972 │ .local v6, "inputstream":Ljava/io/FileInputStream; │ new-instance v11, Ljava/io/InputStreamReader; │ │ @@ -1933,232 +1988,235 @@ │ │ .line 979 │ :try_start_1 │ new-instance v7, Lorg/json/JSONObject; │ │ invoke-direct {v7, v8}, Lorg/json/JSONObject;->(Ljava/lang/String;)V │ │ - .line 980 │ + .line 982 │ .local v7, "jsonTask":Lorg/json/JSONObject; │ invoke-virtual/range {p0 .. p0}, Lcom/mobiperf/MeasurementScheduler;->getApplicationContext()Landroid/content/Context; │ │ - move-result-object v15 │ + move-result-object v13 │ │ - invoke-static {v7, v15}, Lcom/mobiperf/util/MeasurementJsonConvertor;->makeMeasurementTaskFromJson(Lorg/json/JSONObject;Landroid/content/Context;)Lcom/mobiperf/MeasurementTask; │ + .line 981 │ + invoke-static {v7, v13}, Lcom/mobiperf/util/MeasurementJsonConvertor;->makeMeasurementTaskFromJson(Lorg/json/JSONObject;Landroid/content/Context;)Lcom/mobiperf/MeasurementTask; │ │ move-result-object v9 │ │ .line 988 │ .local v9, "newTask":Lcom/mobiperf/MeasurementTask; │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ .line 989 │ - .local v3, "curtime":J │ + .local v4, "curtime":J │ invoke-virtual {v9}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ - move-result-object v15 │ + move-result-object v13 │ │ - iget-object v15, v15, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ + iget-object v13, v13, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ │ - invoke-virtual {v15}, Ljava/util/Date;->getTime()J │ + invoke-virtual {v13}, Ljava/util/Date;->getTime()J │ │ - move-result-wide v17 │ + move-result-wide v18 │ │ - cmp-long v15, v3, v17 │ + cmp-long v13, v4, v18 │ │ - if-lez v15, :cond_0 │ + if-lez v13, :cond_0 │ │ .line 990 │ invoke-virtual {v9}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ - move-result-object v15 │ + move-result-object v13 │ │ - iget-object v15, v15, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ + iget-object v13, v13, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ │ - invoke-virtual {v15}, Ljava/util/Date;->getTime()J │ + invoke-virtual {v13}, Ljava/util/Date;->getTime()J │ │ - move-result-wide v17 │ + move-result-wide v18 │ │ - sub-long v13, v3, v17 │ + sub-long v14, v4, v18 │ │ .line 992 │ - .local v13, "timediff":J │ - long-to-double v0, v13 │ + .local v14, "timediff":J │ + long-to-double v0, v14 │ │ - move-wide/from16 v17, v0 │ + move-wide/from16 v18, v0 │ │ invoke-virtual {v9}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ - move-result-object v15 │ + move-result-object v13 │ │ - iget-wide v0, v15, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ + iget-wide v0, v13, Lcom/mobiperf/MeasurementDesc;->intervalSec:D │ │ - move-wide/from16 v19, v0 │ + move-wide/from16 v20, v0 │ │ - const-wide v21, 0x408f400000000000L # 1000.0 │ + const-wide v22, 0x408f400000000000L # 1000.0 │ │ - mul-double v19, v19, v21 │ + mul-double v20, v20, v22 │ │ - rem-double v17, v17, v19 │ + rem-double v18, v18, v20 │ │ - move-wide/from16 v0, v17 │ + move-wide/from16 v0, v18 │ │ - double-to-long v13, v0 │ + double-to-long v14, v0 │ │ .line 993 │ invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar; │ │ move-result-object v10 │ │ .line 994 │ .local v10, "now":Ljava/util/Calendar; │ - const/16 v15, 0xd │ + const/16 v13, 0xd │ │ - long-to-int v0, v13 │ + long-to-int v0, v14 │ │ move/from16 v17, v0 │ │ move/from16 v0, v17 │ │ div-int/lit16 v0, v0, 0x3e8 │ │ move/from16 v17, v0 │ │ move/from16 v0, v17 │ │ - invoke-virtual {v10, v15, v0}, Ljava/util/Calendar;->add(II)V │ + invoke-virtual {v10, v13, v0}, Ljava/util/Calendar;->add(II)V │ │ .line 995 │ invoke-virtual {v9}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ - move-result-object v15 │ + move-result-object v13 │ │ - iget-object v15, v15, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ + iget-object v13, v13, Lcom/mobiperf/MeasurementDesc;->startTime:Ljava/util/Date; │ │ invoke-virtual {v10}, Ljava/util/Calendar;->getTimeInMillis()J │ │ - move-result-wide v17 │ + move-result-wide v18 │ │ - move-wide/from16 v0, v17 │ + move-wide/from16 v0, v18 │ │ - invoke-virtual {v15, v0, v1}, Ljava/util/Date;->setTime(J)V │ + invoke-virtual {v13, v0, v1}, Ljava/util/Date;->setTime(J)V │ │ .line 996 │ - new-instance v15, Ljava/lang/StringBuilder; │ + new-instance v13, Ljava/lang/StringBuilder; │ │ - invoke-direct {v15}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ │ const-string v17, "Rescheduled task " │ │ move-object/from16 v0, v17 │ │ - invoke-virtual {v15, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v15 │ + move-result-object v13 │ │ invoke-virtual {v9}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v17 │ │ move-object/from16 v0, v17 │ │ iget-object v0, v0, Lcom/mobiperf/MeasurementDesc;->key:Ljava/lang/String; │ │ move-object/from16 v17, v0 │ │ move-object/from16 v0, v17 │ │ - invoke-virtual {v15, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v15 │ + move-result-object v13 │ │ const-string v17, " at time " │ │ move-object/from16 v0, v17 │ │ - invoke-virtual {v15, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v15 │ + move-result-object v13 │ │ + .line 997 │ invoke-virtual {v10}, Ljava/util/Calendar;->getTimeInMillis()J │ │ - move-result-wide v17 │ + move-result-wide v18 │ │ - move-wide/from16 v0, v17 │ + move-wide/from16 v0, v18 │ │ - invoke-virtual {v15, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v13, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ - move-result-object v15 │ + move-result-object v13 │ │ - invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v15 │ + move-result-object v13 │ │ - invoke-static {v15}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + .line 996 │ + invoke-static {v13}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 1000 │ .end local v10 # "now":Ljava/util/Calendar; │ - .end local v13 # "timediff":J │ + .end local v14 # "timediff":J │ :cond_0 │ invoke-virtual {v12, v9}, Ljava/util/Vector;->add(Ljava/lang/Object;)Z │ :try_end_1 │ .catch Lorg/json/JSONException; {:try_start_1 .. :try_end_1} :catch_0 │ .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_1} :catch_1 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_2 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ goto/16 :goto_0 │ │ .line 1001 │ - .end local v3 # "curtime":J │ + .end local v4 # "curtime":J │ .end local v7 # "jsonTask":Lorg/json/JSONObject; │ .end local v9 # "newTask":Lcom/mobiperf/MeasurementTask; │ :catch_0 │ - move-exception v5 │ + move-exception v3 │ │ .line 1002 │ - .local v5, "e":Lorg/json/JSONException; │ + .local v3, "e":Lorg/json/JSONException; │ :try_start_2 │ - invoke-virtual {v5}, Lorg/json/JSONException;->printStackTrace()V │ + invoke-virtual {v3}, Lorg/json/JSONException;->printStackTrace()V │ :try_end_2 │ .catch Ljava/io/FileNotFoundException; {:try_start_2 .. :try_end_2} :catch_1 │ .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_2 │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ goto/16 :goto_0 │ │ .line 1009 │ .end local v2 # "bufferedreader":Ljava/io/BufferedReader; │ - .end local v5 # "e":Lorg/json/JSONException; │ + .end local v3 # "e":Lorg/json/JSONException; │ .end local v6 # "inputstream":Ljava/io/FileInputStream; │ .end local v8 # "line":Ljava/lang/String; │ .end local v11 # "streamreader":Ljava/io/InputStreamReader; │ :catch_1 │ - move-exception v5 │ + move-exception v3 │ │ .line 1010 │ - .local v5, "e":Ljava/io/FileNotFoundException; │ + .local v3, "e":Ljava/io/FileNotFoundException; │ :try_start_3 │ - invoke-virtual {v5}, Ljava/io/FileNotFoundException;->printStackTrace()V │ + invoke-virtual {v3}, Ljava/io/FileNotFoundException;->printStackTrace()V │ │ .line 1014 │ - .end local v5 # "e":Ljava/io/FileNotFoundException; │ + .end local v3 # "e":Ljava/io/FileNotFoundException; │ :goto_1 │ monitor-exit v16 │ :try_end_3 │ .catchall {:try_start_3 .. :try_end_3} :catchall_0 │ │ .line 1015 │ - const/4 v15, 0x1 │ + const/4 v13, 0x1 │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v12, v15}, Lcom/mobiperf/MeasurementScheduler;->updateSchedule(Ljava/util/List;Z)V │ + invoke-direct {v0, v12, v13}, Lcom/mobiperf/MeasurementScheduler;->updateSchedule(Ljava/util/List;Z)V │ │ .line 1016 │ return-void │ │ .line 1005 │ .restart local v2 # "bufferedreader":Ljava/io/BufferedReader; │ .restart local v6 # "inputstream":Ljava/io/FileInputStream; │ @@ -2182,33 +2240,33 @@ │ │ .line 1011 │ .end local v2 # "bufferedreader":Ljava/io/BufferedReader; │ .end local v6 # "inputstream":Ljava/io/FileInputStream; │ .end local v8 # "line":Ljava/lang/String; │ .end local v11 # "streamreader":Ljava/io/InputStreamReader; │ :catch_2 │ - move-exception v5 │ + move-exception v3 │ │ .line 1012 │ - .local v5, "e":Ljava/io/IOException; │ + .local v3, "e":Ljava/io/IOException; │ :try_start_5 │ - invoke-virtual {v5}, Ljava/io/IOException;->printStackTrace()V │ + invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V │ │ goto :goto_1 │ │ .line 1014 │ - .end local v5 # "e":Ljava/io/IOException; │ + .end local v3 # "e":Ljava/io/IOException; │ :catchall_0 │ - move-exception v15 │ + move-exception v13 │ │ monitor-exit v16 │ :try_end_5 │ .catchall {:try_start_5 .. :try_end_5} :catchall_0 │ │ - throw v15 │ + throw v13 │ .end method │ │ .method private declared-synchronized persistState()V │ .locals 2 │ │ .prologue │ .line 1269 │ @@ -2458,15 +2516,15 @@ │ invoke-virtual {v0}, Lcom/mobiperf/Checkin;->initializeAccountSelector()V │ │ .line 706 │ return-void │ .end method │ │ .method private restoreConsole(Ljava/util/List;Ljava/lang/String;)V │ - .locals 8 │ + .locals 7 │ .param p2, "prefKey" # Ljava/lang/String; │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Ljava/util/List", │ "<", │ "Ljava/lang/String;", │ @@ -2475,181 +2533,179 @@ │ ")V" │ } │ .end annotation │ │ .prologue │ .line 1370 │ .local p1, "consoleContent":Ljava/util/List;, "Ljava/util/List;" │ - new-instance v6, Ljava/lang/StringBuilder; │ + new-instance v5, Ljava/lang/StringBuilder; │ │ - invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - const-string v7, "Service restoreConsole for " │ + const-string v6, "Service restoreConsole for " │ │ - invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-static {v6}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v5}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ - .line 1371 │ + .line 1372 │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementScheduler;->getApplicationContext()Landroid/content/Context; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-static {v6}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ + invoke-static {v5}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ - move-result-object v4 │ + move-result-object v3 │ │ .line 1373 │ - .local v4, "prefs":Landroid/content/SharedPreferences; │ - const/4 v6, 0x0 │ + .local v3, "prefs":Landroid/content/SharedPreferences; │ + const/4 v5, 0x0 │ │ - invoke-interface {v4, p2, v6}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ + invoke-interface {v3, p2, v5}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v4 │ │ .line 1374 │ - .local v5, "savedConsole":Ljava/lang/String; │ - if-eqz v5, :cond_1 │ + .local v4, "savedConsole":Ljava/lang/String; │ + if-eqz v4, :cond_1 │ │ .line 1375 │ - new-instance v6, Lcom/mobiperf/MeasurementScheduler$3; │ + new-instance v5, Lcom/mobiperf/MeasurementScheduler$3; │ │ - invoke-direct {v6, p0}, Lcom/mobiperf/MeasurementScheduler$3;->(Lcom/mobiperf/MeasurementScheduler;)V │ + invoke-direct {v5, p0}, Lcom/mobiperf/MeasurementScheduler$3;->(Lcom/mobiperf/MeasurementScheduler;)V │ │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementScheduler$3;->getType()Ljava/lang/reflect/Type; │ + invoke-virtual {v5}, Lcom/mobiperf/MeasurementScheduler$3;->getType()Ljava/lang/reflect/Type; │ │ - move-result-object v3 │ + move-result-object v2 │ │ - .line 1376 │ - .local v3, "listType":Ljava/lang/reflect/Type; │ + .line 1377 │ + .local v2, "listType":Ljava/lang/reflect/Type; │ invoke-static {}, Lcom/mobiperf/util/MeasurementJsonConvertor;->getGsonInstance()Lcom/google/myjson/Gson; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6, v5, v3}, Lcom/google/myjson/Gson;->fromJson(Ljava/lang/String;Ljava/lang/reflect/Type;)Ljava/lang/Object; │ + invoke-virtual {v5, v4, v2}, Lcom/google/myjson/Gson;->fromJson(Ljava/lang/String;Ljava/lang/reflect/Type;)Ljava/lang/Object; │ │ - move-result-object v2 │ + move-result-object v1 │ │ - check-cast v2, Ljava/util/ArrayList; │ + check-cast v1, Ljava/util/ArrayList; │ │ .line 1379 │ - .local v2, "items":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - if-eqz v2, :cond_1 │ + .local v1, "items":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + if-eqz v1, :cond_1 │ │ .line 1380 │ - new-instance v6, Ljava/lang/StringBuilder; │ + new-instance v5, Ljava/lang/StringBuilder; │ │ - invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - const-string v7, "Read " │ + const-string v6, "Read " │ │ - invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v2}, Ljava/util/ArrayList;->size()I │ + invoke-virtual {v1}, Ljava/util/ArrayList;->size()I │ │ - move-result v7 │ + move-result v6 │ │ - invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - const-string v7, " items from prefkey " │ + const-string v6, " items from prefkey " │ │ - invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-static {v6}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v5}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1381 │ - invoke-virtual {v2}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ + invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v5 │ │ - .local v0, "i$":Ljava/util/Iterator; │ :goto_0 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v6 │ │ if-eqz v6, :cond_0 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v1 │ + move-result-object v0 │ │ - check-cast v1, Ljava/lang/String; │ + check-cast v0, Ljava/lang/String; │ │ .line 1382 │ - .local v1, "item":Ljava/lang/String; │ - invoke-direct {p0, p1, v1}, Lcom/mobiperf/MeasurementScheduler;->insertStringToConsole(Ljava/util/List;Ljava/lang/String;)V │ + .local v0, "item":Ljava/lang/String; │ + invoke-direct {p0, p1, v0}, Lcom/mobiperf/MeasurementScheduler;->insertStringToConsole(Ljava/util/List;Ljava/lang/String;)V │ │ goto :goto_0 │ │ .line 1384 │ - .end local v1 # "item":Ljava/lang/String; │ + .end local v0 # "item":Ljava/lang/String; │ :cond_0 │ - new-instance v6, Ljava/lang/StringBuilder; │ + new-instance v5, Ljava/lang/StringBuilder; │ │ - invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - const-string v7, "Restored " │ + const-string v6, "Restored " │ │ - invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ invoke-interface {p1}, Ljava/util/List;->size()I │ │ - move-result v7 │ + move-result v6 │ │ - invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - const-string v7, " entries to console " │ + const-string v6, " entries to console " │ │ - invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-static {v6}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v5}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1388 │ - .end local v0 # "i$":Ljava/util/Iterator; │ - .end local v2 # "items":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - .end local v3 # "listType":Ljava/lang/reflect/Type; │ + .end local v1 # "items":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + .end local v2 # "listType":Ljava/lang/reflect/Type; │ :cond_1 │ return-void │ .end method │ │ .method private restoreState()V │ .locals 1 │ │ @@ -2675,26 +2731,28 @@ │ .method private restoreStats()V │ .locals 3 │ │ .prologue │ const/4 v2, 0x0 │ │ .line 1304 │ + .line 1305 │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementScheduler;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v1 │ │ invoke-static {v1}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ move-result-object v0 │ │ .line 1306 │ .local v0, "prefs":Landroid/content/SharedPreferences; │ const-string v1, "PREF_KEY_COMPLETED_MEASUREMENTS" │ │ + .line 1307 │ invoke-interface {v0, v1, v2}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I │ │ move-result v1 │ │ iput v1, p0, Lcom/mobiperf/MeasurementScheduler;->completedMeasurementCnt:I │ │ .line 1308 │ @@ -2744,15 +2802,15 @@ │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v6 │ │ invoke-static {v6}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ - .line 1324 │ + .line 1325 │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementScheduler;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v6 │ │ invoke-static {v6}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ move-result-object v5 │ @@ -2838,18 +2896,20 @@ │ │ .line 1337 │ .local v4, "listType":Ljava/lang/reflect/Type; │ invoke-static {}, Lcom/mobiperf/util/MeasurementJsonConvertor;->getGsonInstance()Lcom/google/myjson/Gson; │ │ move-result-object v6 │ │ + .line 1338 │ invoke-virtual {v6, v2, v4}, Lcom/google/myjson/Gson;->toJson(Ljava/lang/Object;Ljava/lang/reflect/Type;)Ljava/lang/String; │ │ move-result-object v6 │ │ + .line 1337 │ invoke-interface {v0, p2, v6}, Landroid/content/SharedPreferences$Editor;->putString(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; │ │ .line 1339 │ invoke-interface {v0}, Landroid/content/SharedPreferences$Editor;->commit()Z │ │ .line 1340 │ return-void │ @@ -2871,14 +2931,15 @@ │ .line 871 │ new-instance v1, Ljava/io/BufferedOutputStream; │ │ const-string v2, "results" │ │ const v3, 0x8000 │ │ + .line 872 │ invoke-virtual {p0, v2, v3}, Lcom/mobiperf/MeasurementScheduler;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOutputStream; │ │ move-result-object v2 │ │ invoke-direct {v1, v2}, Ljava/io/BufferedOutputStream;->(Ljava/io/OutputStream;)V │ │ .line 874 │ @@ -2959,126 +3020,130 @@ │ .end method │ │ .method private saveSchedulerState()V │ .locals 9 │ │ .prologue │ .line 932 │ - iget-object v7, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ + iget-object v6, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ │ - monitor-enter v7 │ + monitor-enter v6 │ │ .line 934 │ :try_start_0 │ - new-instance v5, Ljava/io/BufferedOutputStream; │ + new-instance v4, Ljava/io/BufferedOutputStream; │ │ - const-string v6, "schedule" │ + const-string v5, "schedule" │ │ - const/4 v8, 0x0 │ + const/4 v7, 0x0 │ │ - invoke-virtual {p0, v6, v8}, Lcom/mobiperf/MeasurementScheduler;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOutputStream; │ + .line 935 │ + invoke-virtual {p0, v5, v7}, Lcom/mobiperf/MeasurementScheduler;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOutputStream; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-direct {v5, v6}, Ljava/io/BufferedOutputStream;->(Ljava/io/OutputStream;)V │ + invoke-direct {v4, v5}, Ljava/io/BufferedOutputStream;->(Ljava/io/OutputStream;)V │ │ .line 938 │ - .local v5, "writer":Ljava/io/BufferedOutputStream; │ - const-string v6, "Saving schedule to a file..." │ + .local v4, "writer":Ljava/io/BufferedOutputStream; │ + const-string v5, "Saving schedule to a file..." │ │ - invoke-static {v6}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v5}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 939 │ - iget-object v6, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ + iget-object v5, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ │ - invoke-virtual {v6}, Ljava/util/Hashtable;->entrySet()Ljava/util/Set; │ + .line 940 │ + invoke-virtual {v5}, Ljava/util/Hashtable;->entrySet()Ljava/util/Set; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-interface {v6}, Ljava/util/Set;->iterator()Ljava/util/Iterator; │ + .line 939 │ + invoke-interface {v5}, Ljava/util/Set;->iterator()Ljava/util/Iterator; │ │ - move-result-object v2 │ + move-result-object v7 │ │ - .local v2, "i$":Ljava/util/Iterator; │ :goto_0 │ - invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v6 │ + move-result v5 │ │ - if-eqz v6, :cond_0 │ + if-eqz v5, :cond_0 │ │ - invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ move-result-object v1 │ │ check-cast v1, Ljava/util/Map$Entry; │ :try_end_0 │ .catch Ljava/io/FileNotFoundException; {:try_start_0 .. :try_end_0} :catch_1 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_2 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ - .line 942 │ + .line 943 │ .local v1, "entry":Ljava/util/Map$Entry;, "Ljava/util/Map$Entry;" │ :try_start_1 │ invoke-interface {v1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - check-cast v6, Lcom/mobiperf/MeasurementTask; │ + check-cast v5, Lcom/mobiperf/MeasurementTask; │ │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ + .line 944 │ + invoke-virtual {v5}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-static {v6}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ + .line 943 │ + invoke-static {v5}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ │ - move-result-object v3 │ + move-result-object v2 │ │ .line 945 │ - .local v3, "task":Lorg/json/JSONObject; │ - new-instance v6, Ljava/lang/StringBuilder; │ + .local v2, "task":Lorg/json/JSONObject; │ + new-instance v5, Ljava/lang/StringBuilder; │ │ - invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v3}, Lorg/json/JSONObject;->toString()Ljava/lang/String; │ + invoke-virtual {v2}, Lorg/json/JSONObject;->toString()Ljava/lang/String; │ │ move-result-object v8 │ │ - invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ const-string v8, "\n" │ │ - invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v4 │ + move-result-object v3 │ │ .line 946 │ - .local v4, "taskstring":Ljava/lang/String; │ - invoke-virtual {v4}, Ljava/lang/String;->getBytes()[B │ + .local v3, "taskstring":Ljava/lang/String; │ + invoke-virtual {v3}, Ljava/lang/String;->getBytes()[B │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v5, v6}, Ljava/io/BufferedOutputStream;->write([B)V │ + invoke-virtual {v4, v5}, Ljava/io/BufferedOutputStream;->write([B)V │ :try_end_1 │ .catch Lorg/json/JSONException; {:try_start_1 .. :try_end_1} :catch_0 │ .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_1} :catch_1 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_2 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ goto :goto_0 │ │ .line 947 │ - .end local v3 # "task":Lorg/json/JSONObject; │ - .end local v4 # "taskstring":Ljava/lang/String; │ + .end local v2 # "task":Lorg/json/JSONObject; │ + .end local v3 # "taskstring":Ljava/lang/String; │ :catch_0 │ move-exception v0 │ │ .line 948 │ .local v0, "e":Lorg/json/JSONException; │ :try_start_2 │ invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V │ @@ -3088,77 +3153,75 @@ │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ goto :goto_0 │ │ .line 952 │ .end local v0 # "e":Lorg/json/JSONException; │ .end local v1 # "entry":Ljava/util/Map$Entry;, "Ljava/util/Map$Entry;" │ - .end local v2 # "i$":Ljava/util/Iterator; │ - .end local v5 # "writer":Ljava/io/BufferedOutputStream; │ + .end local v4 # "writer":Ljava/io/BufferedOutputStream; │ :catch_1 │ move-exception v0 │ │ .line 953 │ .local v0, "e":Ljava/io/FileNotFoundException; │ :try_start_3 │ invoke-virtual {v0}, Ljava/io/FileNotFoundException;->printStackTrace()V │ │ .line 957 │ .end local v0 # "e":Ljava/io/FileNotFoundException; │ :goto_1 │ - monitor-exit v7 │ + monitor-exit v6 │ :try_end_3 │ .catchall {:try_start_3 .. :try_end_3} :catchall_0 │ │ .line 958 │ return-void │ │ .line 951 │ - .restart local v2 # "i$":Ljava/util/Iterator; │ - .restart local v5 # "writer":Ljava/io/BufferedOutputStream; │ + .restart local v4 # "writer":Ljava/io/BufferedOutputStream; │ :cond_0 │ :try_start_4 │ - invoke-virtual {v5}, Ljava/io/BufferedOutputStream;->close()V │ + invoke-virtual {v4}, Ljava/io/BufferedOutputStream;->close()V │ :try_end_4 │ .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_4} :catch_1 │ .catch Ljava/io/IOException; {:try_start_4 .. :try_end_4} :catch_2 │ .catchall {:try_start_4 .. :try_end_4} :catchall_0 │ │ goto :goto_1 │ │ .line 954 │ - .end local v2 # "i$":Ljava/util/Iterator; │ - .end local v5 # "writer":Ljava/io/BufferedOutputStream; │ + .end local v4 # "writer":Ljava/io/BufferedOutputStream; │ :catch_2 │ move-exception v0 │ │ .line 955 │ .local v0, "e":Ljava/io/IOException; │ :try_start_5 │ invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V │ │ goto :goto_1 │ │ .line 957 │ .end local v0 # "e":Ljava/io/IOException; │ :catchall_0 │ - move-exception v6 │ + move-exception v5 │ │ - monitor-exit v7 │ + monitor-exit v6 │ :try_end_5 │ .catchall {:try_start_5 .. :try_end_5} :catchall_0 │ │ - throw v6 │ + throw v5 │ .end method │ │ .method private saveStats()V │ .locals 4 │ │ .prologue │ .line 1291 │ + .line 1292 │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementScheduler;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v2 │ │ invoke-static {v2}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ move-result-object v1 │ @@ -3210,23 +3273,23 @@ │ invoke-virtual {p0, v0, v1}, Lcom/mobiperf/MeasurementScheduler;->startForeground(ILandroid/app/Notification;)V │ │ .line 299 │ return-void │ .end method │ │ .method private updateFromPreference()V │ - .locals 5 │ + .locals 6 │ │ .prologue │ .line 629 │ const-string v2, "Service updateFromPreference called" │ │ invoke-static {v2}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ - .line 630 │ + .line 631 │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementScheduler;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v2 │ │ invoke-static {v2}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ move-result-object v1 │ @@ -3234,24 +3297,27 @@ │ .line 633 │ .local v1, "prefs":Landroid/content/SharedPreferences; │ :try_start_0 │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ │ const v3, 0x7f070022 │ │ + .line 634 │ invoke-virtual {p0, v3}, Lcom/mobiperf/MeasurementScheduler;->getString(I)Ljava/lang/String; │ │ move-result-object v3 │ │ const/16 v4, 0x3c │ │ + .line 635 │ invoke-static {v4}, Ljava/lang/String;->valueOf(I)Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 633 │ invoke-interface {v1, v3, v4}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ │ move-result-object v3 │ │ invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v3 │ @@ -3259,39 +3325,44 @@ │ invoke-virtual {v2, v3}, Lcom/mobiperf/ResourceCapManager;->setBatteryThresh(I)V │ │ .line 638 │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ │ const v3, 0x7f070025 │ │ + .line 639 │ invoke-virtual {p0, v3}, Lcom/mobiperf/MeasurementScheduler;->getString(I)Ljava/lang/String; │ │ move-result-object v3 │ │ const-string v4, "250 MB" │ │ + .line 638 │ invoke-interface {v1, v3, v4}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ │ move-result-object v3 │ │ invoke-virtual {v2, v3}, Lcom/mobiperf/ResourceCapManager;->setDataUsageLimit(Ljava/lang/String;)V │ │ .line 642 │ const v2, 0x7f070020 │ │ + .line 643 │ invoke-virtual {p0, v2}, Lcom/mobiperf/MeasurementScheduler;->getString(I)Ljava/lang/String; │ │ move-result-object v2 │ │ - const-wide/16 v3, 0x1 │ + const-wide/16 v4, 0x1 │ │ - invoke-static {v3, v4}, Ljava/lang/String;->valueOf(J)Ljava/lang/String; │ + .line 644 │ + invoke-static {v4, v5}, Ljava/lang/String;->valueOf(J)Ljava/lang/String; │ │ move-result-object v3 │ │ + .line 642 │ invoke-interface {v1, v2, v3}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; │ │ move-result-object v2 │ │ invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v2 │ @@ -3312,40 +3383,42 @@ │ │ const-string v3, "Preference set from SharedPreference: checkinInterval=" │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ - iget-wide v3, p0, Lcom/mobiperf/MeasurementScheduler;->checkinIntervalSec:J │ + iget-wide v4, p0, Lcom/mobiperf/MeasurementScheduler;->checkinIntervalSec:J │ │ - invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ const-string v3, ", minBatThres= " │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ iget-object v3, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ │ + .line 650 │ invoke-virtual {v3}, Lcom/mobiperf/ResourceCapManager;->getBatteryThresh()I │ │ move-result v3 │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v2 │ │ + .line 648 │ invoke-static {v2}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ :try_end_0 │ .catch Ljava/lang/ClassCastException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 654 │ :goto_0 │ return-void │ @@ -3377,24 +3450,26 @@ │ │ .line 600 │ .local v0, "intent":Landroid/content/Intent; │ const/4 v3, 0x0 │ │ const/high16 v4, 0x10000000 │ │ + .line 601 │ invoke-static {p0, v3, v0, v4}, Landroid/app/PendingIntent;->getActivity(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; │ │ move-result-object v2 │ │ .line 605 │ .local v2, "pendIntent":Landroid/app/PendingIntent; │ new-instance v1, Landroid/app/Notification; │ │ const v3, 0x7f02000a │ │ + .line 607 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v4 │ │ invoke-direct {v1, v3, p1, v4, v5}, Landroid/app/Notification;->(ILjava/lang/CharSequence;J)V │ │ .line 610 │ @@ -3420,14 +3495,15 @@ │ │ .prologue │ const v3, 0x7fffffff │ │ .line 1407 │ const-string v2, "TASK_PRIORITY_PAYLOAD" │ │ + .line 1408 │ invoke-virtual {p1, v2, v3}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I │ │ move-result v1 │ │ .line 1410 │ .local v1, "priority":I │ const-string v2, "STRING_PAYLOAD" │ @@ -3490,353 +3566,353 @@ │ ">;Z)V" │ } │ .end annotation │ │ .prologue │ .line 790 │ .local p1, "newTasks":Ljava/util/List;, "Ljava/util/List;" │ - new-instance v8, Ljava/util/Vector; │ + new-instance v7, Ljava/util/Vector; │ │ - invoke-direct {v8}, Ljava/util/Vector;->()V │ + invoke-direct {v7}, Ljava/util/Vector;->()V │ │ .line 794 │ - .local v8, "tasksToAdd":Ljava/util/Vector;, "Ljava/util/Vector;" │ - new-instance v2, Ljava/util/HashSet; │ + .local v7, "tasksToAdd":Ljava/util/Vector;, "Ljava/util/Vector;" │ + new-instance v1, Ljava/util/HashSet; │ │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ + iget-object v8, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ │ - invoke-virtual {v9}, Ljava/util/Hashtable;->keySet()Ljava/util/Set; │ + invoke-virtual {v8}, Ljava/util/Hashtable;->keySet()Ljava/util/Set; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-direct {v2, v9}, Ljava/util/HashSet;->(Ljava/util/Collection;)V │ + invoke-direct {v1, v8}, Ljava/util/HashSet;->(Ljava/util/Collection;)V │ │ .line 795 │ - .local v2, "missingKeys":Ljava/util/Set;, "Ljava/util/Set;" │ - new-instance v1, Ljava/util/HashSet; │ + .local v1, "missingKeys":Ljava/util/Set;, "Ljava/util/Set;" │ + new-instance v0, Ljava/util/HashSet; │ │ - invoke-direct {v1}, Ljava/util/HashSet;->()V │ + invoke-direct {v0}, Ljava/util/HashSet;->()V │ │ .line 797 │ - .local v1, "keysToRemove":Ljava/util/Set;, "Ljava/util/Set;" │ - const-string v9, "Attempting to add new tasks" │ + .local v0, "keysToRemove":Ljava/util/Set;, "Ljava/util/Set;" │ + const-string v8, "Attempting to add new tasks" │ │ - invoke-static {v9}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v8}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 799 │ invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v9 │ │ - .local v0, "i$":Ljava/util/Iterator; │ :cond_0 │ :goto_0 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v9}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v9 │ + move-result v8 │ │ - if-eqz v9, :cond_4 │ + if-eqz v8, :cond_4 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v9}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v5 │ + move-result-object v4 │ │ - check-cast v5, Lcom/mobiperf/MeasurementTask; │ + check-cast v4, Lcom/mobiperf/MeasurementTask; │ │ .line 804 │ - .local v5, "newTask":Lcom/mobiperf/MeasurementTask; │ + .local v4, "newTask":Lcom/mobiperf/MeasurementTask; │ if-nez p2, :cond_1 │ │ .line 805 │ - invoke-direct {p0, v5}, Lcom/mobiperf/MeasurementScheduler;->adjustInterval(Lcom/mobiperf/MeasurementTask;)Z │ + invoke-direct {p0, v4}, Lcom/mobiperf/MeasurementScheduler;->adjustInterval(Lcom/mobiperf/MeasurementTask;)Z │ │ - move-result v9 │ + move-result v8 │ │ - if-eqz v9, :cond_0 │ + if-eqz v8, :cond_0 │ │ .line 810 │ :cond_1 │ - invoke-virtual {v5}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ + invoke-virtual {v4}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - iget-object v3, v9, Lcom/mobiperf/MeasurementDesc;->key:Ljava/lang/String; │ + iget-object v2, v8, Lcom/mobiperf/MeasurementDesc;->key:Ljava/lang/String; │ │ .line 811 │ - .local v3, "newKey":Ljava/lang/String; │ - invoke-interface {v2, v3}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z │ + .local v2, "newKey":Ljava/lang/String; │ + invoke-interface {v1, v2}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z │ │ - move-result v9 │ + move-result v8 │ │ - if-nez v9, :cond_2 │ + if-nez v8, :cond_2 │ │ .line 812 │ - invoke-virtual {v8, v5}, Ljava/util/Vector;->add(Ljava/lang/Object;)Z │ + invoke-virtual {v7, v4}, Ljava/util/Vector;->add(Ljava/lang/Object;)Z │ │ goto :goto_0 │ │ .line 815 │ :cond_2 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ + iget-object v8, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ │ - invoke-virtual {v9, v3}, Ljava/util/Hashtable;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v8, v2}, Ljava/util/Hashtable;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - check-cast v9, Lcom/mobiperf/MeasurementTask; │ + check-cast v8, Lcom/mobiperf/MeasurementTask; │ │ - invoke-virtual {v9}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ + invoke-virtual {v8}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v5}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ + .line 816 │ + invoke-virtual {v4}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v10 │ │ - invoke-virtual {v9, v10}, Lcom/mobiperf/MeasurementDesc;->equals(Ljava/lang/Object;)Z │ + invoke-virtual {v8, v10}, Lcom/mobiperf/MeasurementDesc;->equals(Ljava/lang/Object;)Z │ │ - move-result v9 │ + move-result v8 │ │ - if-nez v9, :cond_3 │ + if-nez v8, :cond_3 │ │ .line 818 │ - invoke-interface {v1, v3}, Ljava/util/Set;->add(Ljava/lang/Object;)Z │ + invoke-interface {v0, v2}, Ljava/util/Set;->add(Ljava/lang/Object;)Z │ │ .line 819 │ - invoke-virtual {v8, v5}, Ljava/util/Vector;->add(Ljava/lang/Object;)Z │ + invoke-virtual {v7, v4}, Ljava/util/Vector;->add(Ljava/lang/Object;)Z │ │ .line 822 │ :cond_3 │ - invoke-interface {v2, v3}, Ljava/util/Set;->remove(Ljava/lang/Object;)Z │ + invoke-interface {v1, v2}, Ljava/util/Set;->remove(Ljava/lang/Object;)Z │ │ goto :goto_0 │ │ .line 827 │ - .end local v3 # "newKey":Ljava/lang/String; │ - .end local v5 # "newTask":Lcom/mobiperf/MeasurementTask; │ + .end local v2 # "newKey":Ljava/lang/String; │ + .end local v4 # "newTask":Lcom/mobiperf/MeasurementTask; │ :cond_4 │ - invoke-interface {v1, v2}, Ljava/util/Set;->addAll(Ljava/util/Collection;)Z │ + invoke-interface {v0, v1}, Ljava/util/Set;->addAll(Ljava/util/Collection;)Z │ │ .line 831 │ - new-instance v4, Ljava/util/concurrent/PriorityBlockingQueue; │ + new-instance v3, Ljava/util/concurrent/PriorityBlockingQueue; │ │ - const/16 v9, 0x64 │ + const/16 v8, 0x64 │ │ - new-instance v10, Lcom/mobiperf/MeasurementScheduler$TaskComparator; │ + new-instance v9, Lcom/mobiperf/MeasurementScheduler$TaskComparator; │ │ - const/4 v11, 0x0 │ + const/4 v10, 0x0 │ │ - invoke-direct {v10, p0, v11}, Lcom/mobiperf/MeasurementScheduler$TaskComparator;->(Lcom/mobiperf/MeasurementScheduler;Lcom/mobiperf/MeasurementScheduler$1;)V │ + invoke-direct {v9, p0, v10}, Lcom/mobiperf/MeasurementScheduler$TaskComparator;->(Lcom/mobiperf/MeasurementScheduler;Lcom/mobiperf/MeasurementScheduler$1;)V │ │ - invoke-direct {v4, v9, v10}, Ljava/util/concurrent/PriorityBlockingQueue;->(ILjava/util/Comparator;)V │ + invoke-direct {v3, v8, v9}, Ljava/util/concurrent/PriorityBlockingQueue;->(ILjava/util/Comparator;)V │ │ .line 835 │ - .local v4, "newQueue":Ljava/util/concurrent/PriorityBlockingQueue;, "Ljava/util/concurrent/PriorityBlockingQueue;" │ - iget-object v10, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ + .local v3, "newQueue":Ljava/util/concurrent/PriorityBlockingQueue;, "Ljava/util/concurrent/PriorityBlockingQueue;" │ + iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ │ - monitor-enter v10 │ + monitor-enter v9 │ │ .line 836 │ :try_start_0 │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ - const-string v11, "Tasks to remove:" │ + const-string v10, "Tasks to remove:" │ │ - invoke-virtual {v9, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-interface {v1}, Ljava/util/Set;->size()I │ + invoke-interface {v0}, Ljava/util/Set;->size()I │ │ - move-result v11 │ + move-result v10 │ │ - invoke-virtual {v9, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-static {v9}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v8}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 837 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ + iget-object v8, p0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ │ - invoke-virtual {v9}, Ljava/util/concurrent/PriorityBlockingQueue;->iterator()Ljava/util/Iterator; │ + invoke-virtual {v8}, Ljava/util/concurrent/PriorityBlockingQueue;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v8 │ │ :goto_1 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v8}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v9 │ + move-result v10 │ │ - if-eqz v9, :cond_6 │ + if-eqz v10, :cond_6 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - check-cast v6, Lcom/mobiperf/MeasurementTask; │ + check-cast v5, Lcom/mobiperf/MeasurementTask; │ │ .line 838 │ - .local v6, "task":Lcom/mobiperf/MeasurementTask; │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ + .local v5, "task":Lcom/mobiperf/MeasurementTask; │ + invoke-virtual {v5}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - iget-object v7, v9, Lcom/mobiperf/MeasurementDesc;->key:Ljava/lang/String; │ + iget-object v6, v10, Lcom/mobiperf/MeasurementDesc;->key:Ljava/lang/String; │ │ .line 839 │ - .local v7, "taskKey":Ljava/lang/String; │ - invoke-interface {v1, v7}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z │ + .local v6, "taskKey":Ljava/lang/String; │ + invoke-interface {v0, v6}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z │ │ - move-result v9 │ + move-result v10 │ │ - if-nez v9, :cond_5 │ + if-nez v10, :cond_5 │ │ .line 840 │ - invoke-virtual {v4, v6}, Ljava/util/concurrent/PriorityBlockingQueue;->add(Ljava/lang/Object;)Z │ + invoke-virtual {v3, v5}, Ljava/util/concurrent/PriorityBlockingQueue;->add(Ljava/lang/Object;)Z │ │ goto :goto_1 │ │ .line 854 │ - .end local v6 # "task":Lcom/mobiperf/MeasurementTask; │ - .end local v7 # "taskKey":Ljava/lang/String; │ + .end local v5 # "task":Lcom/mobiperf/MeasurementTask; │ + .end local v6 # "taskKey":Ljava/lang/String; │ :catchall_0 │ - move-exception v9 │ + move-exception v8 │ │ - monitor-exit v10 │ + monitor-exit v9 │ :try_end_0 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ - throw v9 │ + throw v8 │ │ .line 842 │ - .restart local v6 # "task":Lcom/mobiperf/MeasurementTask; │ - .restart local v7 # "taskKey":Ljava/lang/String; │ + .restart local v5 # "task":Lcom/mobiperf/MeasurementTask; │ + .restart local v6 # "taskKey":Ljava/lang/String; │ :cond_5 │ :try_start_1 │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v10, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v10}, Ljava/lang/StringBuilder;->()V │ │ const-string v11, "Removing task with key" │ │ - invoke-virtual {v9, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - invoke-virtual {v9, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v10, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v10 │ │ - invoke-static {v9}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ + invoke-static {v10}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ │ .line 844 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ + iget-object v10, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ │ - invoke-virtual {v9, v7}, Ljava/util/Hashtable;->remove(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v10, v6}, Ljava/util/Hashtable;->remove(Ljava/lang/Object;)Ljava/lang/Object; │ │ goto :goto_1 │ │ .line 847 │ - .end local v6 # "task":Lcom/mobiperf/MeasurementTask; │ - .end local v7 # "taskKey":Ljava/lang/String; │ + .end local v5 # "task":Lcom/mobiperf/MeasurementTask; │ + .end local v6 # "taskKey":Ljava/lang/String; │ :cond_6 │ - iput-object v4, p0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ + iput-object v3, p0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ │ .line 849 │ - new-instance v9, Ljava/lang/StringBuilder; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ - const-string v11, "New tasks added:" │ + const-string v10, "New tasks added:" │ │ - invoke-virtual {v9, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v8}, Ljava/util/Vector;->size()I │ + invoke-virtual {v7}, Ljava/util/Vector;->size()I │ │ - move-result v11 │ + move-result v10 │ │ - invoke-virtual {v9, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-static {v9}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v8}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 850 │ - invoke-virtual {v8}, Ljava/util/Vector;->iterator()Ljava/util/Iterator; │ + invoke-virtual {v7}, Ljava/util/Vector;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v8 │ │ :goto_2 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v8}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v9 │ + move-result v10 │ │ - if-eqz v9, :cond_7 │ + if-eqz v10, :cond_7 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - check-cast v6, Lcom/mobiperf/MeasurementTask; │ + check-cast v5, Lcom/mobiperf/MeasurementTask; │ │ .line 851 │ - .restart local v6 # "task":Lcom/mobiperf/MeasurementTask; │ - invoke-virtual {p0, v6}, Lcom/mobiperf/MeasurementScheduler;->submitTask(Lcom/mobiperf/MeasurementTask;)Z │ + .restart local v5 # "task":Lcom/mobiperf/MeasurementTask; │ + invoke-virtual {p0, v5}, Lcom/mobiperf/MeasurementScheduler;->submitTask(Lcom/mobiperf/MeasurementTask;)Z │ │ .line 852 │ - iget-object v9, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ + iget-object v10, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ + invoke-virtual {v5}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v11 │ │ iget-object v11, v11, Lcom/mobiperf/MeasurementDesc;->key:Ljava/lang/String; │ │ - invoke-virtual {v9, v11, v6}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v10, v11, v5}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; │ │ goto :goto_2 │ │ .line 854 │ - .end local v6 # "task":Lcom/mobiperf/MeasurementTask; │ + .end local v5 # "task":Lcom/mobiperf/MeasurementTask; │ :cond_7 │ - monitor-exit v10 │ + monitor-exit v9 │ :try_end_1 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ .line 856 │ if-nez p2, :cond_9 │ │ - invoke-virtual {v8}, Ljava/util/Vector;->isEmpty()Z │ + invoke-virtual {v7}, Ljava/util/Vector;->isEmpty()Z │ │ - move-result v9 │ + move-result v8 │ │ - if-eqz v9, :cond_8 │ + if-eqz v8, :cond_8 │ │ - invoke-interface {v1}, Ljava/util/Set;->isEmpty()Z │ + invoke-interface {v0}, Ljava/util/Set;->isEmpty()Z │ │ - move-result v9 │ + move-result v8 │ │ - if-nez v9, :cond_9 │ + if-nez v8, :cond_9 │ │ .line 857 │ :cond_8 │ invoke-direct {p0}, Lcom/mobiperf/MeasurementScheduler;->saveSchedulerState()V │ │ .line 859 │ :cond_9 │ @@ -3846,114 +3922,113 @@ │ .method private uploadResults()V │ .locals 10 │ │ .prologue │ .line 1023 │ invoke-direct {p0}, Lcom/mobiperf/MeasurementScheduler;->readResultsFromFile()Lorg/json/JSONArray; │ │ - move-result-object v5 │ + move-result-object v4 │ │ .line 1025 │ - .local v5, "results":Lorg/json/JSONArray; │ - iget-object v8, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + .local v4, "results":Lorg/json/JSONArray; │ + iget-object v7, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ │ - monitor-enter v8 │ + monitor-enter v7 │ │ .line 1027 │ :try_start_0 │ - iget-object v7, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + iget-object v6, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ │ - invoke-virtual {v7}, Ljava/util/concurrent/ConcurrentHashMap;->keySet()Ljava/util/Set; │ + invoke-virtual {v6}, Ljava/util/concurrent/ConcurrentHashMap;->keySet()Ljava/util/Set; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-interface {v7}, Ljava/util/Set;->iterator()Ljava/util/Iterator; │ + invoke-interface {v6}, Ljava/util/Set;->iterator()Ljava/util/Iterator; │ │ - move-result-object v3 │ + move-result-object v6 │ │ - .local v3, "i$":Ljava/util/Iterator; │ :cond_0 │ :goto_0 │ - invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v7 │ + move-result v8 │ │ - if-eqz v7, :cond_2 │ + if-eqz v8, :cond_2 │ │ - invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - check-cast v6, Lcom/mobiperf/MeasurementTask; │ + check-cast v5, Lcom/mobiperf/MeasurementTask; │ │ .line 1028 │ - .local v6, "task":Lcom/mobiperf/MeasurementTask; │ - iget-object v7, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + .local v5, "task":Lcom/mobiperf/MeasurementTask; │ + iget-object v8, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ │ - invoke-virtual {v7, v6}, Ljava/util/concurrent/ConcurrentHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v8, v5}, Ljava/util/concurrent/ConcurrentHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ move-result-object v2 │ │ check-cast v2, Ljava/util/concurrent/Future; │ │ .line 1029 │ .local v2, "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ if-eqz v2, :cond_1 │ │ .line 1030 │ - new-instance v7, Ljava/lang/StringBuilder; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ const-string v9, "Finished:\n" │ │ - invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-virtual {v7, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-virtual {p0, v7}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ │ .line 1031 │ invoke-interface {v2}, Ljava/util/concurrent/Future;->isDone()Z │ :try_end_0 │ .catch Ljava/util/ConcurrentModificationException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Lorg/json/JSONException; {:try_start_0 .. :try_end_0} :catch_2 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ - move-result v7 │ + move-result v8 │ │ - if-eqz v7, :cond_6 │ + if-eqz v8, :cond_6 │ │ .line 1033 │ :try_start_1 │ - iget-object v7, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + iget-object v8, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ │ - invoke-virtual {v7, v6}, Ljava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v8, v5}, Ljava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 1035 │ invoke-interface {v2}, Ljava/util/concurrent/Future;->isCancelled()Z │ │ - move-result v7 │ + move-result v8 │ │ - if-nez v7, :cond_4 │ + if-nez v8, :cond_4 │ │ .line 1036 │ invoke-interface {v2}, Ljava/util/concurrent/Future;->get()Ljava/lang/Object; │ │ - move-result-object v4 │ + move-result-object v3 │ │ - check-cast v4, Lcom/mobiperf/MeasurementResult; │ + check-cast v3, Lcom/mobiperf/MeasurementResult; │ :try_end_1 │ .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_1 │ .catch Ljava/util/concurrent/ExecutionException; {:try_start_1 .. :try_end_1} :catch_3 │ .catch Ljava/util/concurrent/CancellationException; {:try_start_1 .. :try_end_1} :catch_4 │ .catch Ljava/util/ConcurrentModificationException; {:try_start_1 .. :try_end_1} :catch_0 │ .catch Lorg/json/JSONException; {:try_start_1 .. :try_end_1} :catch_2 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ @@ -3961,178 +4036,180 @@ │ .line 1080 │ :cond_1 │ :goto_1 │ if-nez v2, :cond_0 │ │ .line 1084 │ :try_start_2 │ - iget-object v7, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + iget-object v8, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ │ - invoke-virtual {v7, v6}, Ljava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v8, v5}, Ljava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 1085 │ - new-instance v7, Ljava/lang/RuntimeException; │ + new-instance v8, Ljava/lang/RuntimeException; │ │ const-string v9, "Task scheduled after deadline" │ │ - invoke-direct {v7, v9}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ + invoke-direct {v8, v9}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ │ - invoke-direct {p0, v6, v7}, Lcom/mobiperf/MeasurementScheduler;->getFailureResult(Lcom/mobiperf/MeasurementTask;Ljava/lang/Throwable;)Lcom/mobiperf/MeasurementResult; │ + .line 1087 │ + invoke-direct {p0, v5, v8}, Lcom/mobiperf/MeasurementScheduler;->getFailureResult(Lcom/mobiperf/MeasurementTask;Ljava/lang/Throwable;)Lcom/mobiperf/MeasurementResult; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-static {v7}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ + .line 1086 │ + invoke-static {v8}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ │ move-result-object v0 │ │ .line 1089 │ .local v0, "cancelledResult":Lorg/json/JSONObject; │ - invoke-virtual {v5, v0}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray; │ + invoke-virtual {v4, v0}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray; │ :try_end_2 │ .catch Ljava/util/ConcurrentModificationException; {:try_start_2 .. :try_end_2} :catch_0 │ .catch Lorg/json/JSONException; {:try_start_2 .. :try_end_2} :catch_2 │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ goto :goto_0 │ │ .line 1092 │ .end local v0 # "cancelledResult":Lorg/json/JSONObject; │ .end local v2 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ - .end local v3 # "i$":Ljava/util/Iterator; │ - .end local v6 # "task":Lcom/mobiperf/MeasurementTask; │ + .end local v5 # "task":Lcom/mobiperf/MeasurementTask; │ :catch_0 │ move-exception v1 │ │ .line 1098 │ .local v1, "e":Ljava/util/ConcurrentModificationException; │ :try_start_3 │ - const-string v7, "Pending tasks is changed during measurement upload" │ + const-string v6, "Pending tasks is changed during measurement upload" │ │ - invoke-static {v7}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v6}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 1102 │ .end local v1 # "e":Ljava/util/ConcurrentModificationException; │ :cond_2 │ :goto_2 │ - monitor-exit v8 │ + monitor-exit v7 │ :try_end_3 │ .catchall {:try_start_3 .. :try_end_3} :catchall_0 │ │ .line 1104 │ - invoke-virtual {v5}, Lorg/json/JSONArray;->length()I │ + invoke-virtual {v4}, Lorg/json/JSONArray;->length()I │ │ - move-result v7 │ + move-result v6 │ │ - if-lez v7, :cond_3 │ + if-lez v6, :cond_3 │ │ .line 1106 │ :try_start_4 │ - iget-object v7, p0, Lcom/mobiperf/MeasurementScheduler;->checkin:Lcom/mobiperf/Checkin; │ + iget-object v6, p0, Lcom/mobiperf/MeasurementScheduler;->checkin:Lcom/mobiperf/Checkin; │ │ - iget-object v8, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ + iget-object v7, p0, Lcom/mobiperf/MeasurementScheduler;->resourceCapManager:Lcom/mobiperf/ResourceCapManager; │ │ - invoke-virtual {v7, v5, v8}, Lcom/mobiperf/Checkin;->uploadMeasurementResult(Lorg/json/JSONArray;Lcom/mobiperf/ResourceCapManager;)V │ + invoke-virtual {v6, v4, v7}, Lcom/mobiperf/Checkin;->uploadMeasurementResult(Lorg/json/JSONArray;Lcom/mobiperf/ResourceCapManager;)V │ :try_end_4 │ .catch Ljava/io/IOException; {:try_start_4 .. :try_end_4} :catch_5 │ │ .line 1112 │ :cond_3 │ :goto_3 │ - new-instance v7, Ljava/lang/StringBuilder; │ + new-instance v6, Ljava/lang/StringBuilder; │ │ - invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ - const-string v8, "A total of " │ + const-string v7, "A total of " │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-virtual {v5}, Lorg/json/JSONArray;->length()I │ + invoke-virtual {v4}, Lorg/json/JSONArray;->length()I │ │ - move-result v8 │ + move-result v7 │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - const-string v8, " uploaded" │ + const-string v7, " uploaded" │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-static {v7}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v6}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 1113 │ - new-instance v7, Ljava/lang/StringBuilder; │ + new-instance v6, Ljava/lang/StringBuilder; │ │ - invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ - const-string v8, "A total of " │ + const-string v7, "A total of " │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-virtual {v5}, Lorg/json/JSONArray;->length()I │ + invoke-virtual {v4}, Lorg/json/JSONArray;->length()I │ │ - move-result v8 │ + move-result v7 │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - const-string v8, " is in the results list" │ + const-string v7, " is in the results list" │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-static {v7}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v6}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 1114 │ return-void │ │ .line 1038 │ .restart local v2 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ - .restart local v3 # "i$":Ljava/util/Iterator; │ - .restart local v6 # "task":Lcom/mobiperf/MeasurementTask; │ + .restart local v5 # "task":Lcom/mobiperf/MeasurementTask; │ :cond_4 │ :try_start_5 │ - const-string v7, "Task execution was canceled" │ + const-string v8, "Task execution was canceled" │ │ - invoke-static {v7}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v8}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 1039 │ - new-instance v7, Ljava/util/concurrent/CancellationException; │ + new-instance v8, Ljava/util/concurrent/CancellationException; │ │ const-string v9, "Task cancelled" │ │ - invoke-direct {v7, v9}, Ljava/util/concurrent/CancellationException;->(Ljava/lang/String;)V │ + invoke-direct {v8, v9}, Ljava/util/concurrent/CancellationException;->(Ljava/lang/String;)V │ │ - invoke-direct {p0, v6, v7}, Lcom/mobiperf/MeasurementScheduler;->getFailureResult(Lcom/mobiperf/MeasurementTask;Ljava/lang/Throwable;)Lcom/mobiperf/MeasurementResult; │ + .line 1041 │ + invoke-direct {p0, v5, v8}, Lcom/mobiperf/MeasurementScheduler;->getFailureResult(Lcom/mobiperf/MeasurementTask;Ljava/lang/Throwable;)Lcom/mobiperf/MeasurementResult; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-static {v7}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ + .line 1040 │ + invoke-static {v8}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ │ move-result-object v0 │ │ .line 1043 │ .restart local v0 # "cancelledResult":Lorg/json/JSONObject; │ - invoke-virtual {v5, v0}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray; │ + invoke-virtual {v4, v0}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray; │ :try_end_5 │ .catch Ljava/lang/InterruptedException; {:try_start_5 .. :try_end_5} :catch_1 │ .catch Ljava/util/concurrent/ExecutionException; {:try_start_5 .. :try_end_5} :catch_3 │ .catch Ljava/util/concurrent/CancellationException; {:try_start_5 .. :try_end_5} :catch_4 │ .catch Ljava/util/ConcurrentModificationException; {:try_start_5 .. :try_end_5} :catch_0 │ .catch Lorg/json/JSONException; {:try_start_5 .. :try_end_5} :catch_2 │ .catchall {:try_start_5 .. :try_end_5} :catchall_0 │ @@ -4143,248 +4220,247 @@ │ .end local v0 # "cancelledResult":Lorg/json/JSONObject; │ :catch_1 │ move-exception v1 │ │ .line 1047 │ .local v1, "e":Ljava/lang/InterruptedException; │ :try_start_6 │ - const-string v7, "Task execution interrupted" │ + const-string v8, "Task execution interrupted" │ │ - invoke-static {v7, v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ + invoke-static {v8, v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ :try_end_6 │ .catch Ljava/util/ConcurrentModificationException; {:try_start_6 .. :try_end_6} :catch_0 │ .catch Lorg/json/JSONException; {:try_start_6 .. :try_end_6} :catch_2 │ .catchall {:try_start_6 .. :try_end_6} :catchall_0 │ │ goto/16 :goto_1 │ │ .line 1099 │ .end local v1 # "e":Ljava/lang/InterruptedException; │ .end local v2 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ - .end local v3 # "i$":Ljava/util/Iterator; │ - .end local v6 # "task":Lcom/mobiperf/MeasurementTask; │ + .end local v5 # "task":Lcom/mobiperf/MeasurementTask; │ :catch_2 │ move-exception v1 │ │ .line 1100 │ .local v1, "e":Lorg/json/JSONException; │ :try_start_7 │ invoke-virtual {v1}, Lorg/json/JSONException;->printStackTrace()V │ │ goto :goto_2 │ │ .line 1102 │ .end local v1 # "e":Lorg/json/JSONException; │ :catchall_0 │ - move-exception v7 │ + move-exception v6 │ │ - monitor-exit v8 │ + monitor-exit v7 │ :try_end_7 │ .catchall {:try_start_7 .. :try_end_7} :catchall_0 │ │ - throw v7 │ + throw v6 │ │ .line 1048 │ .restart local v2 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ - .restart local v3 # "i$":Ljava/util/Iterator; │ - .restart local v6 # "task":Lcom/mobiperf/MeasurementTask; │ + .restart local v5 # "task":Lcom/mobiperf/MeasurementTask; │ :catch_3 │ move-exception v1 │ │ .line 1049 │ .local v1, "e":Ljava/util/concurrent/ExecutionException; │ :try_start_8 │ invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - instance-of v7, v7, Lcom/mobiperf/MeasurementSkippedException; │ + instance-of v8, v8, Lcom/mobiperf/MeasurementSkippedException; │ │ - if-eqz v7, :cond_5 │ + if-eqz v8, :cond_5 │ │ .line 1051 │ - new-instance v7, Ljava/lang/StringBuilder; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ const-string v9, "Task skipped - " │ │ - invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable; │ │ move-result-object v9 │ │ invoke-virtual {v9}, Ljava/lang/Throwable;->toString()Ljava/lang/String; │ │ move-result-object v9 │ │ - invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ const-string v9, "\n" │ │ - invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-virtual {v7, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-virtual {p0, v7}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ │ .line 1053 │ - const-string v7, "Task skipped" │ + const-string v8, "Task skipped" │ │ invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable; │ │ move-result-object v9 │ │ - invoke-static {v7, v9}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;Ljava/lang/Throwable;)V │ + invoke-static {v8, v9}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;Ljava/lang/Throwable;)V │ │ goto/16 :goto_1 │ │ .line 1056 │ :cond_5 │ - new-instance v7, Ljava/lang/StringBuilder; │ + new-instance v8, Ljava/lang/StringBuilder; │ │ - invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ │ const-string v9, "Task failed - " │ │ - invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable; │ │ move-result-object v9 │ │ invoke-virtual {v9}, Ljava/lang/Throwable;->toString()Ljava/lang/String; │ │ move-result-object v9 │ │ - invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ const-string v9, "\n" │ │ - invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-virtual {v7, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-virtual {p0, v7}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ + invoke-virtual {p0, v8}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ │ .line 1058 │ - const-string v7, "Task execution failed" │ + const-string v8, "Task execution failed" │ │ invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable; │ │ move-result-object v9 │ │ - invoke-static {v7, v9}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ + invoke-static {v8, v9}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ │ goto/16 :goto_1 │ │ .line 1062 │ .end local v1 # "e":Ljava/util/concurrent/ExecutionException; │ :catch_4 │ move-exception v1 │ │ .line 1063 │ .local v1, "e":Ljava/util/concurrent/CancellationException; │ - const-string v7, "Task cancelled" │ + const-string v8, "Task cancelled" │ │ - invoke-static {v7, v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ + invoke-static {v8, v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;Ljava/lang/Throwable;)V │ │ goto/16 :goto_1 │ │ .line 1065 │ .end local v1 # "e":Ljava/util/concurrent/CancellationException; │ :cond_6 │ - invoke-virtual {v6}, Lcom/mobiperf/MeasurementTask;->isPassedDeadline()Z │ + invoke-virtual {v5}, Lcom/mobiperf/MeasurementTask;->isPassedDeadline()Z │ │ - move-result v7 │ + move-result v8 │ │ - if-eqz v7, :cond_1 │ + if-eqz v8, :cond_1 │ │ .line 1070 │ - iget-object v7, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ + iget-object v8, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ │ - invoke-virtual {v7, v6}, Ljava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-virtual {v8, v5}, Ljava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; │ │ .line 1071 │ - const/4 v7, 0x1 │ + const/4 v8, 0x1 │ │ - invoke-interface {v2, v7}, Ljava/util/concurrent/Future;->cancel(Z)Z │ + invoke-interface {v2, v8}, Ljava/util/concurrent/Future;->cancel(Z)Z │ │ .line 1072 │ - new-instance v7, Ljava/lang/RuntimeException; │ + new-instance v8, Ljava/lang/RuntimeException; │ │ const-string v9, "Deadline passed before execution" │ │ - invoke-direct {v7, v9}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ + invoke-direct {v8, v9}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V │ │ - invoke-direct {p0, v6, v7}, Lcom/mobiperf/MeasurementScheduler;->getFailureResult(Lcom/mobiperf/MeasurementTask;Ljava/lang/Throwable;)Lcom/mobiperf/MeasurementResult; │ + .line 1073 │ + invoke-direct {p0, v5, v8}, Lcom/mobiperf/MeasurementScheduler;->getFailureResult(Lcom/mobiperf/MeasurementTask;Ljava/lang/Throwable;)Lcom/mobiperf/MeasurementResult; │ │ - move-result-object v7 │ + move-result-object v8 │ │ - invoke-static {v7}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ + invoke-static {v8}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ │ move-result-object v0 │ │ .line 1076 │ .restart local v0 # "cancelledResult":Lorg/json/JSONObject; │ - invoke-virtual {v5, v0}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray; │ + invoke-virtual {v4, v0}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray; │ :try_end_8 │ .catch Ljava/util/ConcurrentModificationException; {:try_start_8 .. :try_end_8} :catch_0 │ .catch Lorg/json/JSONException; {:try_start_8 .. :try_end_8} :catch_2 │ .catchall {:try_start_8 .. :try_end_8} :catchall_0 │ │ goto/16 :goto_1 │ │ .line 1107 │ .end local v0 # "cancelledResult":Lorg/json/JSONObject; │ .end local v2 # "future":Ljava/util/concurrent/Future;, "Ljava/util/concurrent/Future;" │ - .end local v3 # "i$":Ljava/util/Iterator; │ - .end local v6 # "task":Lcom/mobiperf/MeasurementTask; │ + .end local v5 # "task":Lcom/mobiperf/MeasurementTask; │ :catch_5 │ move-exception v1 │ │ .line 1108 │ .local v1, "e":Ljava/io/IOException; │ - const-string v7, "Error when uploading message" │ + const-string v6, "Error when uploading message" │ │ - invoke-static {v7}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v6}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ goto/16 :goto_3 │ .end method │ │ .method private userConsented()Z │ .locals 4 │ │ .prologue │ .line 1312 │ + .line 1313 │ invoke-virtual {p0}, Lcom/mobiperf/MeasurementScheduler;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v2 │ │ invoke-static {v2}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ move-result-object v1 │ @@ -4877,22 +4953,22 @@ │ .line 149 │ iget-object v0, p0, Lcom/mobiperf/MeasurementScheduler;->binder:Landroid/os/IBinder; │ │ return-object v0 │ .end method │ │ .method public onCreate()V │ - .locals 6 │ + .locals 7 │ │ .prologue │ - const/4 v5, 0x0 │ + const/4 v6, 0x0 │ │ - const/16 v4, 0x64 │ + const/16 v5, 0x64 │ │ - const/4 v3, 0x0 │ + const/4 v4, 0x0 │ │ .line 155 │ const-string v1, "Service onCreate called" │ │ invoke-static {v1}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 156 │ @@ -4918,86 +4994,88 @@ │ new-instance v1, Lcom/mobiperf/Checkin; │ │ invoke-direct {v1, p0}, Lcom/mobiperf/Checkin;->(Landroid/content/Context;)V │ │ iput-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->checkin:Lcom/mobiperf/Checkin; │ │ .line 160 │ - const-wide/16 v1, 0x14 │ + const-wide/16 v2, 0x14 │ │ - iput-wide v1, p0, Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntervalSec:J │ + iput-wide v2, p0, Lcom/mobiperf/MeasurementScheduler;->checkinRetryIntervalSec:J │ │ .line 161 │ - iput v3, p0, Lcom/mobiperf/MeasurementScheduler;->checkinRetryCnt:I │ + iput v4, p0, Lcom/mobiperf/MeasurementScheduler;->checkinRetryCnt:I │ │ .line 162 │ new-instance v1, Lcom/mobiperf/MeasurementScheduler$CheckinTask; │ │ - invoke-direct {v1, p0, v5}, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->(Lcom/mobiperf/MeasurementScheduler;Lcom/mobiperf/MeasurementScheduler$1;)V │ + invoke-direct {v1, p0, v6}, Lcom/mobiperf/MeasurementScheduler$CheckinTask;->(Lcom/mobiperf/MeasurementScheduler;Lcom/mobiperf/MeasurementScheduler$1;)V │ │ iput-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->checkinTask:Lcom/mobiperf/MeasurementScheduler$CheckinTask; │ │ .line 164 │ const/4 v1, 0x1 │ │ invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; │ │ move-result-object v1 │ │ iput-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->pauseRequested:Ljava/lang/Boolean; │ │ .line 165 │ - iput-boolean v3, p0, Lcom/mobiperf/MeasurementScheduler;->stopRequested:Z │ + iput-boolean v4, p0, Lcom/mobiperf/MeasurementScheduler;->stopRequested:Z │ │ .line 166 │ invoke-static {}, Ljava/util/concurrent/Executors;->newSingleThreadExecutor()Ljava/util/concurrent/ExecutorService; │ │ move-result-object v1 │ │ iput-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->measurementExecutor:Ljava/util/concurrent/ExecutorService; │ │ .line 167 │ new-instance v1, Ljava/util/concurrent/PriorityBlockingQueue; │ │ new-instance v2, Lcom/mobiperf/MeasurementScheduler$TaskComparator; │ │ - invoke-direct {v2, p0, v5}, Lcom/mobiperf/MeasurementScheduler$TaskComparator;->(Lcom/mobiperf/MeasurementScheduler;Lcom/mobiperf/MeasurementScheduler$1;)V │ + invoke-direct {v2, p0, v6}, Lcom/mobiperf/MeasurementScheduler$TaskComparator;->(Lcom/mobiperf/MeasurementScheduler;Lcom/mobiperf/MeasurementScheduler$1;)V │ │ - invoke-direct {v1, v4, v2}, Ljava/util/concurrent/PriorityBlockingQueue;->(ILjava/util/Comparator;)V │ + invoke-direct {v1, v5, v2}, Ljava/util/concurrent/PriorityBlockingQueue;->(ILjava/util/Comparator;)V │ │ iput-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->taskQueue:Ljava/util/concurrent/PriorityBlockingQueue; │ │ .line 170 │ new-instance v1, Ljava/util/concurrent/ConcurrentHashMap; │ │ invoke-direct {v1}, Ljava/util/concurrent/ConcurrentHashMap;->()V │ │ iput-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ │ .line 174 │ new-instance v1, Ljava/util/Hashtable; │ │ - invoke-direct {v1, v4}, Ljava/util/Hashtable;->(I)V │ + invoke-direct {v1, v5}, Ljava/util/Hashtable;->(I)V │ │ iput-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->currentSchedule:Ljava/util/Hashtable; │ │ .line 177 │ const-string v1, "notification" │ │ + .line 178 │ invoke-virtual {p0, v1}, Lcom/mobiperf/MeasurementScheduler;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ │ move-result-object v1 │ │ check-cast v1, Landroid/app/NotificationManager; │ │ iput-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->notificationManager:Landroid/app/NotificationManager; │ │ .line 179 │ const-string v1, "alarm" │ │ + .line 180 │ invoke-virtual {p0, v1}, Lcom/mobiperf/MeasurementScheduler;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ │ move-result-object v1 │ │ check-cast v1, Landroid/app/AlarmManager; │ │ iput-object v1, p0, Lcom/mobiperf/MeasurementScheduler;->alarmManager:Landroid/app/AlarmManager; │ @@ -5403,23 +5481,24 @@ │ invoke-virtual {p0, v0}, Lcom/mobiperf/MeasurementScheduler;->sendBroadcast(Landroid/content/Intent;)V │ │ .line 662 │ return-void │ .end method │ │ .method public declared-synchronized setCheckinInterval(J)V │ - .locals 8 │ + .locals 9 │ .param p1, "interval" # J │ │ .prologue │ .line 471 │ monitor-enter p0 │ │ const-wide/16 v0, 0xe10 │ │ + .line 472 │ :try_start_0 │ invoke-static {v0, v1, p1, p2}, Ljava/lang/Math;->max(JJ)J │ │ move-result-wide v0 │ │ iput-wide v0, p0, Lcom/mobiperf/MeasurementScheduler;->checkinIntervalSec:J │ │ @@ -5432,25 +5511,27 @@ │ │ sget-object v3, Lcom/mobiperf/UpdateIntent;->CHECKIN_ACTION:Ljava/lang/String; │ │ invoke-direct {v1, v2, v3}, Lcom/mobiperf/UpdateIntent;->(Ljava/lang/String;Ljava/lang/String;)V │ │ const/high16 v2, 0x10000000 │ │ + .line 475 │ invoke-static {p0, v0, v1, v2}, Landroid/app/PendingIntent;->getBroadcast(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; │ │ move-result-object v0 │ │ iput-object v0, p0, Lcom/mobiperf/MeasurementScheduler;->checkinIntentSender:Landroid/app/PendingIntent; │ │ .line 477 │ iget-object v0, p0, Lcom/mobiperf/MeasurementScheduler;->alarmManager:Landroid/app/AlarmManager; │ │ const/4 v1, 0x0 │ │ + .line 478 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v2 │ │ const-wide/16 v4, 0x7d0 │ │ add-long/2addr v2, v4 │ @@ -5459,14 +5540,15 @@ │ │ const-wide/16 v6, 0x3e8 │ │ mul-long/2addr v4, v6 │ │ iget-object v6, p0, Lcom/mobiperf/MeasurementScheduler;->checkinIntentSender:Landroid/app/PendingIntent; │ │ + .line 477 │ invoke-virtual/range {v0 .. v6}, Landroid/app/AlarmManager;->setRepeating(IJJLandroid/app/PendingIntent;)V │ │ .line 481 │ new-instance v0, Ljava/lang/StringBuilder; │ │ invoke-direct {v0}, Ljava/lang/StringBuilder;->()V │ │ @@ -5563,14 +5645,15 @@ │ │ move-result v2 │ │ if-ge v2, v6, :cond_0 │ │ iget-object v2, p0, Lcom/mobiperf/MeasurementScheduler;->pendingTasks:Ljava/util/concurrent/ConcurrentHashMap; │ │ + .line 582 │ invoke-virtual {v2}, Ljava/util/concurrent/ConcurrentHashMap;->size()I │ │ move-result v2 │ │ if-ge v2, v6, :cond_0 │ │ .line 586 ├── smali/com/mobiperf/ResourceCapManager$PowerAwareTask.smali │ @@ -105,22 +105,24 @@ │ invoke-virtual {v2, v3}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent; │ │ .line 386 │ const-string v3, "TASK_PRIORITY_PAYLOAD" │ │ iget-object v4, p0, Lcom/mobiperf/ResourceCapManager$PowerAwareTask;->realTask:Lcom/mobiperf/MeasurementTask; │ │ + .line 387 │ invoke-virtual {v4}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v4 │ │ iget-wide v4, v4, Lcom/mobiperf/MeasurementDesc;->priority:J │ │ long-to-int v4, v4 │ │ + .line 386 │ invoke-virtual {v2, v3, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent; │ │ .line 389 │ const-string v3, "PROGRESS_PAYLOAD" │ │ const/16 v4, 0x65 │ │ @@ -139,22 +141,24 @@ │ invoke-virtual {v2, v3, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; │ │ .line 406 │ :goto_0 │ :try_start_0 │ sget-object v3, Lcom/mobiperf/UpdateIntent;->RESULT_PAYLOAD:Ljava/lang/String; │ │ + .line 407 │ invoke-static {p1}, Lcom/mobiperf/util/MeasurementJsonConvertor;->encodeToJson(Ljava/lang/Object;)Lorg/json/JSONObject; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Lorg/json/JSONObject;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 406 │ invoke-virtual {v2, v3, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; │ :try_end_0 │ .catch Lorg/json/JSONException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 412 │ :goto_1 │ iget-object v3, p0, Lcom/mobiperf/ResourceCapManager$PowerAwareTask;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ @@ -556,14 +560,15 @@ │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ iget-object v5, p0, Lcom/mobiperf/ResourceCapManager$PowerAwareTask;->realTask:Lcom/mobiperf/MeasurementTask; │ │ + .line 436 │ invoke-virtual {v5}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v5 │ │ iget-object v5, v5, Lcom/mobiperf/MeasurementDesc;->type:Ljava/lang/String; │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ @@ -576,14 +581,15 @@ │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 435 │ invoke-virtual {v3, v4}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ │ .line 437 │ const-string v3, "Skipping measurement - data limit is passed" │ │ invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ @@ -759,14 +765,15 @@ │ │ invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ invoke-virtual {v3, v4}, Lcom/mobiperf/MeasurementScheduler;->sendStringMsg(Ljava/lang/String;)V │ │ + .line 458 │ return-object v2 │ │ .line 459 │ :catch_1 │ move-exception v0 │ │ .line 460 ├── smali/com/mobiperf/R.smali │ @@ -24,10 +24,9 @@ │ .method public constructor ()V │ .locals 0 │ │ .prologue │ .line 10 │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ - .line 164 │ return-void │ .end method ├── smali/com/mobiperf/ResourceCapManager.smali │ @@ -124,15 +124,15 @@ │ │ move-result v0 │ │ return v0 │ .end method │ │ .method private isInDataLimitPeriod(J)Z │ - .locals 6 │ + .locals 7 │ .param p1, "usageStartTimeSec" # J │ │ .prologue │ .line 255 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v2 │ @@ -180,15 +180,15 @@ │ :cond_0 │ const/4 v2, 0x0 │ │ goto :goto_0 │ .end method │ │ .method private isOverDataLimit(Ljava/lang/String;)Z │ - .locals 11 │ + .locals 12 │ .param p1, "nextTaskType" # Ljava/lang/String; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/io/IOException; │ } │ .end annotation │ │ @@ -233,17 +233,17 @@ │ │ .line 284 │ .local v4, "usageStartTimeSec":J │ aget-wide v2, v6, v8 │ │ .line 286 │ .local v2, "dataUsed":J │ - const-wide/16 v9, -0x1 │ + const-wide/16 v10, -0x1 │ │ - cmp-long v9, v4, v9 │ + cmp-long v9, v4, v10 │ │ if-eqz v9, :cond_3 │ │ .line 287 │ invoke-direct {p0, v4, v5}, Lcom/mobiperf/ResourceCapManager;->isInDataLimitPeriod(J)Z │ │ move-result v9 │ @@ -311,26 +311,28 @@ │ │ const-string v9, "Exceeded data limit: Total data limit:" │ │ invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v7 │ │ + .line 296 │ invoke-virtual {p0}, Lcom/mobiperf/ResourceCapManager;->getDataLimit()I │ │ move-result v9 │ │ invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v7 │ │ invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v7 │ │ + .line 295 │ invoke-static {v7}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ move v7, v8 │ │ .line 297 │ goto :goto_0 │ │ @@ -345,44 +347,44 @@ │ .method private declared-synchronized readUsageFromFile()[J │ .locals 13 │ │ .prologue │ .line 184 │ monitor-enter p0 │ │ - const/4 v11, 0x2 │ + const/4 v9, 0x2 │ │ :try_start_0 │ - new-array v7, v11, [J │ + new-array v7, v9, [J │ │ fill-array-data v7, :array_0 │ │ .line 185 │ .local v7, "retval":[J │ new-instance v5, Ljava/io/File; │ │ - iget-object v11, p0, Lcom/mobiperf/ResourceCapManager;->context:Landroid/content/Context; │ + iget-object v9, p0, Lcom/mobiperf/ResourceCapManager;->context:Landroid/content/Context; │ │ - invoke-virtual {v11}, Landroid/content/Context;->getFilesDir()Ljava/io/File; │ + invoke-virtual {v9}, Landroid/content/Context;->getFilesDir()Ljava/io/File; │ │ - move-result-object v11 │ + move-result-object v9 │ │ const-string v12, "datausage" │ │ - invoke-direct {v5, v11, v12}, Ljava/io/File;->(Ljava/io/File;Ljava/lang/String;)V │ + invoke-direct {v5, v9, v12}, Ljava/io/File;->(Ljava/io/File;Ljava/lang/String;)V │ │ .line 186 │ .local v5, "file":Ljava/io/File; │ invoke-virtual {v5}, Ljava/io/File;->exists()Z │ :try_end_0 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ - move-result v11 │ + move-result v9 │ │ - if-nez v11, :cond_0 │ + if-nez v9, :cond_0 │ │ .line 208 │ :goto_0 │ monitor-exit p0 │ │ return-object v7 │ │ @@ -391,87 +393,87 @@ │ :try_start_1 │ const-string v1, "" │ │ .line 191 │ .local v1, "content":Ljava/lang/String; │ new-instance v0, Ljava/io/BufferedReader; │ │ - new-instance v11, Ljava/io/FileReader; │ + new-instance v9, Ljava/io/FileReader; │ │ - invoke-direct {v11, v5}, Ljava/io/FileReader;->(Ljava/io/File;)V │ + invoke-direct {v9, v5}, Ljava/io/FileReader;->(Ljava/io/File;)V │ │ - invoke-direct {v0, v11}, Ljava/io/BufferedReader;->(Ljava/io/Reader;)V │ + invoke-direct {v0, v9}, Ljava/io/BufferedReader;->(Ljava/io/Reader;)V │ │ .line 193 │ .local v0, "br":Ljava/io/BufferedReader; │ :goto_1 │ invoke-virtual {v0}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String; │ │ move-result-object v6 │ │ .local v6, "line":Ljava/lang/String; │ if-eqz v6, :cond_1 │ │ .line 194 │ - new-instance v11, Ljava/lang/StringBuilder; │ + new-instance v9, Ljava/lang/StringBuilder; │ │ - invoke-direct {v11}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v9}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v11, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v11 │ + move-result-object v9 │ │ - invoke-virtual {v11, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v9, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v11 │ + move-result-object v9 │ │ - invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v1 │ │ goto :goto_1 │ │ .line 196 │ :cond_1 │ - const-string v11, "_" │ + const-string v9, "_" │ │ - invoke-virtual {v1, v11}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ + invoke-virtual {v1, v9}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ │ move-result-object v8 │ │ .line 197 │ .local v8, "toks":[Ljava/lang/String; │ - const/4 v11, 0x0 │ + const/4 v9, 0x0 │ │ - aget-object v11, v8, v11 │ + aget-object v9, v8, v9 │ │ - invoke-static {v11}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J │ + invoke-static {v9}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J │ │ - move-result-wide v9 │ + move-result-wide v10 │ │ .line 198 │ - .local v9, "usageStartTimeSec":J │ - const/4 v11, 0x1 │ + .local v10, "usageStartTimeSec":J │ + const/4 v9, 0x1 │ │ - aget-object v11, v8, v11 │ + aget-object v9, v8, v9 │ │ - invoke-static {v11}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J │ + invoke-static {v9}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J │ │ move-result-wide v2 │ │ .line 200 │ .local v2, "dataUsed":J │ - const/4 v11, 0x0 │ + const/4 v9, 0x0 │ │ - aput-wide v9, v7, v11 │ + aput-wide v10, v7, v9 │ │ .line 201 │ - const/4 v11, 0x1 │ + const/4 v9, 0x1 │ │ - aput-wide v2, v7, v11 │ + aput-wide v2, v7, v9 │ │ .line 203 │ invoke-virtual {v0}, Ljava/io/BufferedReader;->close()V │ :try_end_1 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_0 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ @@ -479,15 +481,15 @@ │ │ .line 204 │ .end local v0 # "br":Ljava/io/BufferedReader; │ .end local v1 # "content":Ljava/lang/String; │ .end local v2 # "dataUsed":J │ .end local v6 # "line":Ljava/lang/String; │ .end local v8 # "toks":[Ljava/lang/String; │ - .end local v9 # "usageStartTimeSec":J │ + .end local v10 # "usageStartTimeSec":J │ :catch_0 │ move-exception v4 │ │ .line 206 │ .local v4, "e":Ljava/io/IOException; │ :try_start_2 │ invoke-virtual {v4}, Ljava/io/IOException;->printStackTrace()V │ @@ -497,214 +499,215 @@ │ goto :goto_0 │ │ .line 184 │ .end local v4 # "e":Ljava/io/IOException; │ .end local v5 # "file":Ljava/io/File; │ .end local v7 # "retval":[J │ :catchall_0 │ - move-exception v11 │ + move-exception v9 │ │ monitor-exit p0 │ │ - throw v11 │ + throw v9 │ │ :array_0 │ .array-data 8 │ -0x1 │ -0x1 │ .end array-data │ .end method │ │ .method private resetDataUsage()V │ - .locals 7 │ + .locals 8 │ │ .prologue │ .line 142 │ new-instance v0, Ljava/io/File; │ │ - iget-object v3, p0, Lcom/mobiperf/ResourceCapManager;->context:Landroid/content/Context; │ + iget-object v1, p0, Lcom/mobiperf/ResourceCapManager;->context:Landroid/content/Context; │ │ - invoke-virtual {v3}, Landroid/content/Context;->getFilesDir()Ljava/io/File; │ + invoke-virtual {v1}, Landroid/content/Context;->getFilesDir()Ljava/io/File; │ │ - move-result-object v3 │ + move-result-object v1 │ │ const-string v4, "datausage" │ │ - invoke-direct {v0, v3, v4}, Ljava/io/File;->(Ljava/io/File;Ljava/lang/String;)V │ + invoke-direct {v0, v1, v4}, Ljava/io/File;->(Ljava/io/File;Ljava/lang/String;)V │ │ .line 143 │ .local v0, "file":Ljava/io/File; │ invoke-virtual {v0}, Ljava/io/File;->exists()Z │ │ - move-result v3 │ + move-result v1 │ │ - if-eqz v3, :cond_0 │ + if-eqz v1, :cond_0 │ │ .line 144 │ - const-string v3, "Attempting to overwrite a file that exists!!!!" │ + const-string v1, "Attempting to overwrite a file that exists!!!!" │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 146 │ :cond_0 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ - const-wide/16 v5, 0x3e8 │ + const-wide/16 v6, 0x3e8 │ │ - div-long v1, v3, v5 │ + div-long v2, v4, v6 │ │ .line 147 │ - .local v1, "usageStartTimeSec":J │ - const-wide/16 v3, 0x0 │ + .local v2, "usageStartTimeSec":J │ + const-wide/16 v4, 0x0 │ │ - invoke-direct {p0, v3, v4, v1, v2}, Lcom/mobiperf/ResourceCapManager;->writeDataUsageToFile(JJ)V │ + invoke-direct {p0, v4, v5, v2, v3}, Lcom/mobiperf/ResourceCapManager;->writeDataUsageToFile(JJ)V │ │ .line 148 │ return-void │ .end method │ │ .method private setNewDataConsumptionPeriod(JJ)J │ - .locals 9 │ + .locals 11 │ .param p1, "dataUsed" # J │ .param p3, "usageStartTimeSec" # J │ │ .prologue │ .line 223 │ - const-wide/32 v3, 0x15180 │ + const-wide/32 v4, 0x15180 │ │ .line 225 │ - .local v3, "time_per_period":J │ - new-instance v5, Ljava/lang/StringBuilder; │ + .local v4, "time_per_period":J │ + new-instance v3, Ljava/lang/StringBuilder; │ │ - invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ │ const-string v6, "Finished data consumption period that began at time:" │ │ - invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v3 │ │ - invoke-virtual {v5, p3, p4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, p3, p4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v3 │ │ const-string v6, " having " │ │ - invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v3 │ │ - invoke-virtual {v5, p1, p2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, p1, p2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v3 │ │ const-string v6, " consumed" │ │ - invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v3 │ │ - invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v3 │ │ - invoke-static {v5}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 229 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ - const-wide/16 v7, 0x3e8 │ + const-wide/16 v8, 0x3e8 │ │ - div-long/2addr v5, v7 │ + div-long/2addr v6, v8 │ │ - sub-long/2addr v5, p3 │ + sub-long/2addr v6, p3 │ │ - long-to-float v5, v5 │ + long-to-float v3, v6 │ │ - long-to-float v6, v3 │ + long-to-float v6, v4 │ │ - div-float/2addr v5, v6 │ + div-float/2addr v3, v6 │ │ - float-to-int v2, v5 │ + float-to-int v2, v3 │ │ .line 233 │ .local v2, "periods":I │ - int-to-long v5, v2 │ + int-to-long v6, v2 │ │ - mul-long/2addr v5, v3 │ + mul-long/2addr v6, v4 │ │ - add-long/2addr p3, v5 │ + add-long/2addr p3, v6 │ │ .line 237 │ invoke-virtual {p0}, Lcom/mobiperf/ResourceCapManager;->getDataLimit()I │ │ - move-result v5 │ + move-result v3 │ │ - mul-int/lit8 v5, v5, 0x1 │ + mul-int/lit8 v3, v3, 0x1 │ │ - div-int/lit8 v5, v5, 0x1e │ + div-int/lit8 v3, v3, 0x1e │ │ - int-to-long v0, v5 │ + int-to-long v0, v3 │ │ .line 239 │ .local v0, "datalimit_per_period":J │ - int-to-long v5, v2 │ + int-to-long v6, v2 │ │ - mul-long/2addr v5, v0 │ + mul-long/2addr v6, v0 │ │ - sub-long/2addr p1, v5 │ + sub-long/2addr p1, v6 │ │ .line 240 │ - new-instance v5, Ljava/lang/StringBuilder; │ + new-instance v3, Ljava/lang/StringBuilder; │ │ - invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ │ const-string v6, "Net data usage at start of period: " │ │ - invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v3 │ │ - invoke-virtual {v5, p1, p2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, p1, p2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v3 │ │ - invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v3 │ │ - invoke-static {v5}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 242 │ invoke-direct {p0, p1, p2, p3, p4}, Lcom/mobiperf/ResourceCapManager;->writeDataUsageToFile(JJ)V │ │ .line 243 │ return-wide p1 │ .end method │ │ .method private declared-synchronized writeDataUsageToFile(JJ)V │ - .locals 6 │ + .locals 7 │ .param p1, "dataUsed" # J │ .param p3, "time" # J │ │ .prologue │ .line 163 │ monitor-enter p0 │ │ :try_start_0 │ iget-object v3, p0, Lcom/mobiperf/ResourceCapManager;->context:Landroid/content/Context; │ │ const-string v4, "datausage" │ │ const/4 v5, 0x0 │ │ + .line 164 │ invoke-virtual {v3, v4, v5}, Landroid/content/Context;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOutputStream; │ │ move-result-object v1 │ │ .line 165 │ .local v1, "outputStream":Ljava/io/FileOutputStream; │ new-instance v3, Ljava/lang/StringBuilder; │ @@ -826,14 +829,15 @@ │ │ invoke-virtual {v0}, Lcom/mobiperf/util/PhoneUtils;->isCharging()Z │ │ move-result v0 │ │ if-nez v0, :cond_0 │ │ + .line 349 │ invoke-static {}, Lcom/mobiperf/util/PhoneUtils;->getPhoneUtils()Lcom/mobiperf/util/PhoneUtils; │ │ move-result-object v0 │ │ invoke-virtual {v0}, Lcom/mobiperf/util/PhoneUtils;->getCurrentBatteryLevel()I │ │ move-result v0 │ @@ -843,24 +847,27 @@ │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ if-le v0, v1, :cond_1 │ │ :cond_0 │ const/4 v0, 0x1 │ │ + .line 348 │ :goto_0 │ monitor-exit p0 │ │ return v0 │ │ + .line 349 │ :cond_1 │ const/4 v0, 0x0 │ │ goto :goto_0 │ │ + .line 348 │ :catchall_0 │ move-exception v0 │ │ monitor-exit p0 │ │ throw v0 │ .end method │ @@ -1155,15 +1162,15 @@ │ :try_end_2 │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ goto :goto_0 │ .end method │ │ .method public updateDataUsage(J)V │ - .locals 9 │ + .locals 11 │ .param p1, "taskDataUsed" # J │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/io/IOException; │ } │ .end annotation │ │ @@ -1204,17 +1211,17 @@ │ .local v2, "usageStartTimeSec":J │ const/4 v5, 0x1 │ │ aget-wide v0, v4, v5 │ │ .line 324 │ .local v0, "dataUsed":J │ - const-wide/16 v5, -0x1 │ + const-wide/16 v6, -0x1 │ │ - cmp-long v5, v2, v5 │ + cmp-long v5, v2, v6 │ │ if-eqz v5, :cond_1 │ │ .line 325 │ add-long/2addr v0, p1 │ │ .line 326 │ @@ -1242,19 +1249,19 @@ │ const-string v5, "Data usage file not found, creating a new one..." │ │ invoke-static {v5}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 336 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ - const-wide/16 v7, 0x3e8 │ + const-wide/16 v8, 0x3e8 │ │ - div-long v2, v5, v7 │ + div-long v2, v6, v8 │ │ .line 337 │ move-wide v0, p1 │ │ .line 338 │ invoke-direct {p0, v0, v1, v2, v3}, Lcom/mobiperf/ResourceCapManager;->writeDataUsageToFile(JJ)V ├── smali/com/mobiperf/ResultsConsoleActivity$1.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/ResultsConsoleActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/ResultsConsoleActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/ResultsConsoleActivity; │ │ .prologue │ .line 73 │ iput-object p1, p0, Lcom/mobiperf/ResultsConsoleActivity$1;->this$0:Lcom/mobiperf/ResultsConsoleActivity; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/ResultsConsoleActivity$2.smali │ @@ -17,14 +17,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/ResultsConsoleActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/ResultsConsoleActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/ResultsConsoleActivity; │ │ .prologue │ .line 83 │ iput-object p1, p0, Lcom/mobiperf/ResultsConsoleActivity$2;->this$0:Lcom/mobiperf/ResultsConsoleActivity; │ │ invoke-direct {p0}, Landroid/content/BroadcastReceiver;->()V ├── smali/com/mobiperf/ResultsConsoleActivity$3.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/ResultsConsoleActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/ResultsConsoleActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/ResultsConsoleActivity; │ │ .prologue │ .line 160 │ iput-object p1, p0, Lcom/mobiperf/ResultsConsoleActivity$3;->this$0:Lcom/mobiperf/ResultsConsoleActivity; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/ResultsConsoleActivity.smali │ @@ -88,165 +88,162 @@ │ .line 38 │ iget-object v0, p0, Lcom/mobiperf/ResultsConsoleActivity;->results:Landroid/widget/ArrayAdapter; │ │ return-object v0 │ .end method │ │ .method private declared-synchronized getConsoleContentFromScheduler()V │ - .locals 6 │ + .locals 5 │ │ .prologue │ .line 145 │ monitor-enter p0 │ │ :try_start_0 │ - const-string v4, "ResultsConsoleActivity.getConsoleContentFromScheduler called" │ + const-string v3, "ResultsConsoleActivity.getConsoleContentFromScheduler called" │ │ - invoke-static {v4}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 146 │ - iget-object v4, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ + iget-object v3, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ - if-nez v4, :cond_0 │ + if-nez v3, :cond_0 │ │ .line 147 │ invoke-virtual {p0}, Lcom/mobiperf/ResultsConsoleActivity;->getParent()Landroid/app/Activity; │ │ - move-result-object v1 │ + move-result-object v0 │ │ - check-cast v1, Lcom/mobiperf/SpeedometerApp; │ + check-cast v0, Lcom/mobiperf/SpeedometerApp; │ │ .line 148 │ - .local v1, "parent":Lcom/mobiperf/SpeedometerApp; │ - invoke-virtual {v1}, Lcom/mobiperf/SpeedometerApp;->getScheduler()Lcom/mobiperf/MeasurementScheduler; │ + .local v0, "parent":Lcom/mobiperf/SpeedometerApp; │ + invoke-virtual {v0}, Lcom/mobiperf/SpeedometerApp;->getScheduler()Lcom/mobiperf/MeasurementScheduler; │ │ - move-result-object v4 │ + move-result-object v3 │ │ - iput-object v4, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ + iput-object v3, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ .line 152 │ - .end local v1 # "parent":Lcom/mobiperf/SpeedometerApp; │ + .end local v0 # "parent":Lcom/mobiperf/SpeedometerApp; │ :cond_0 │ - iget-object v4, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ + iget-object v3, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ - if-eqz v4, :cond_3 │ + if-eqz v3, :cond_3 │ │ .line 153 │ - new-instance v4, Ljava/lang/StringBuilder; │ + new-instance v3, Ljava/lang/StringBuilder; │ │ - invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ │ - const-string v5, "Updating measurement results from thread " │ + const-string v4, "Updating measurement results from thread " │ │ - invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v4 │ + move-result-object v3 │ │ invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; │ │ - move-result-object v5 │ + move-result-object v4 │ │ - invoke-virtual {v5}, Ljava/lang/Thread;->getName()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/Thread;->getName()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v4 │ │ - invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v4 │ + move-result-object v3 │ │ - invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v4 │ + move-result-object v3 │ │ - invoke-static {v4}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 154 │ - iget-object v4, p0, Lcom/mobiperf/ResultsConsoleActivity;->results:Landroid/widget/ArrayAdapter; │ + iget-object v3, p0, Lcom/mobiperf/ResultsConsoleActivity;->results:Landroid/widget/ArrayAdapter; │ │ - invoke-virtual {v4}, Landroid/widget/ArrayAdapter;->clear()V │ + invoke-virtual {v3}, Landroid/widget/ArrayAdapter;->clear()V │ │ .line 155 │ - iget-boolean v4, p0, Lcom/mobiperf/ResultsConsoleActivity;->userResultsActive:Z │ + iget-boolean v3, p0, Lcom/mobiperf/ResultsConsoleActivity;->userResultsActive:Z │ │ - if-eqz v4, :cond_1 │ + if-eqz v3, :cond_1 │ │ - iget-object v4, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ + iget-object v3, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ - invoke-virtual {v4}, Lcom/mobiperf/MeasurementScheduler;->getUserResults()Ljava/util/List; │ + .line 156 │ + invoke-virtual {v3}, Lcom/mobiperf/MeasurementScheduler;->getUserResults()Ljava/util/List; │ │ - move-result-object v3 │ + move-result-object v2 │ │ .line 157 │ - .local v3, "scheduler_results":Ljava/util/List;, "Ljava/util/List;" │ + .local v2, "scheduler_results":Ljava/util/List;, "Ljava/util/List;" │ :goto_0 │ - invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator; │ + invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v3 │ │ - .local v0, "i$":Ljava/util/Iterator; │ :goto_1 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v4 │ │ if-eqz v4, :cond_2 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v2 │ + move-result-object v1 │ │ - check-cast v2, Ljava/lang/String; │ + check-cast v1, Ljava/lang/String; │ │ .line 158 │ - .local v2, "result":Ljava/lang/String; │ + .local v1, "result":Ljava/lang/String; │ iget-object v4, p0, Lcom/mobiperf/ResultsConsoleActivity;->results:Landroid/widget/ArrayAdapter; │ │ - invoke-virtual {v4, v2}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ + invoke-virtual {v4, v1}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ :try_end_0 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ goto :goto_1 │ │ .line 145 │ - .end local v0 # "i$":Ljava/util/Iterator; │ - .end local v2 # "result":Ljava/lang/String; │ - .end local v3 # "scheduler_results":Ljava/util/List;, "Ljava/util/List;" │ + .end local v1 # "result":Ljava/lang/String; │ + .end local v2 # "scheduler_results":Ljava/util/List;, "Ljava/util/List;" │ :catchall_0 │ - move-exception v4 │ + move-exception v3 │ │ monitor-exit p0 │ │ - throw v4 │ + throw v3 │ │ - .line 155 │ + .line 156 │ :cond_1 │ :try_start_1 │ - iget-object v4, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ + iget-object v3, p0, Lcom/mobiperf/ResultsConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ - invoke-virtual {v4}, Lcom/mobiperf/MeasurementScheduler;->getSystemResults()Ljava/util/List; │ + invoke-virtual {v3}, Lcom/mobiperf/MeasurementScheduler;->getSystemResults()Ljava/util/List; │ │ - move-result-object v3 │ + move-result-object v2 │ │ goto :goto_0 │ │ .line 160 │ - .restart local v0 # "i$":Ljava/util/Iterator; │ - .restart local v3 # "scheduler_results":Ljava/util/List;, "Ljava/util/List;" │ + .restart local v2 # "scheduler_results":Ljava/util/List;, "Ljava/util/List;" │ :cond_2 │ - new-instance v4, Lcom/mobiperf/ResultsConsoleActivity$3; │ + new-instance v3, Lcom/mobiperf/ResultsConsoleActivity$3; │ │ - invoke-direct {v4, p0}, Lcom/mobiperf/ResultsConsoleActivity$3;->(Lcom/mobiperf/ResultsConsoleActivity;)V │ + invoke-direct {v3, p0}, Lcom/mobiperf/ResultsConsoleActivity$3;->(Lcom/mobiperf/ResultsConsoleActivity;)V │ │ - invoke-virtual {p0, v4}, Lcom/mobiperf/ResultsConsoleActivity;->runOnUiThread(Ljava/lang/Runnable;)V │ + invoke-virtual {p0, v3}, Lcom/mobiperf/ResultsConsoleActivity;->runOnUiThread(Ljava/lang/Runnable;)V │ :try_end_1 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ .line 164 │ - .end local v0 # "i$":Ljava/util/Iterator; │ - .end local v3 # "scheduler_results":Ljava/util/List;, "Ljava/util/List;" │ + .end local v2 # "scheduler_results":Ljava/util/List;, "Ljava/util/List;" │ :cond_3 │ monitor-exit p0 │ │ return-void │ .end method │ │ .method private declared-synchronized switchBetweenResults(Z)V ├── smali/com/mobiperf/SpeedometerApp$1.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/SpeedometerApp; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SpeedometerApp;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SpeedometerApp; │ │ .prologue │ .line 67 │ iput-object p1, p0, Lcom/mobiperf/SpeedometerApp$1;->this$0:Lcom/mobiperf/SpeedometerApp; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/SpeedometerApp$2.smali │ @@ -17,14 +17,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/SpeedometerApp; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SpeedometerApp;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SpeedometerApp; │ │ .prologue │ .line 225 │ iput-object p1, p0, Lcom/mobiperf/SpeedometerApp$2;->this$0:Lcom/mobiperf/SpeedometerApp; │ │ invoke-direct {p0}, Landroid/content/BroadcastReceiver;->()V ├── smali/com/mobiperf/SpeedometerApp$3.smali │ @@ -22,14 +22,15 @@ │ │ .field final synthetic val$items:[Ljava/lang/CharSequence; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SpeedometerApp;[Ljava/lang/CharSequence;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SpeedometerApp; │ │ .prologue │ .line 306 │ iput-object p1, p0, Lcom/mobiperf/SpeedometerApp$3;->this$0:Lcom/mobiperf/SpeedometerApp; │ │ iput-object p2, p0, Lcom/mobiperf/SpeedometerApp$3;->val$items:[Ljava/lang/CharSequence; │ │ @@ -71,32 +72,35 @@ │ │ move-result-object v3 │ │ iget-object v4, p0, Lcom/mobiperf/SpeedometerApp$3;->this$0:Lcom/mobiperf/SpeedometerApp; │ │ const v5, 0x7f070036 │ │ + .line 310 │ invoke-virtual {v4, v5}, Lcom/mobiperf/SpeedometerApp;->getString(I)Ljava/lang/String; │ │ move-result-object v4 │ │ invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v3 │ │ const/4 v4, 0x0 │ │ + .line 309 │ invoke-static {v2, v3, v4}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; │ │ move-result-object v2 │ │ + .line 310 │ invoke-virtual {v2}, Landroid/widget/Toast;->show()V │ │ .line 312 │ iget-object v2, p0, Lcom/mobiperf/SpeedometerApp$3;->this$0:Lcom/mobiperf/SpeedometerApp; │ │ invoke-virtual {v2}, Lcom/mobiperf/SpeedometerApp;->getBaseContext()Landroid/content/Context; ├── smali/com/mobiperf/SpeedometerApp$4.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/SpeedometerApp; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SpeedometerApp;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SpeedometerApp; │ │ .prologue │ .line 347 │ iput-object p1, p0, Lcom/mobiperf/SpeedometerApp$4;->this$0:Lcom/mobiperf/SpeedometerApp; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/SpeedometerApp$5.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/SpeedometerApp; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SpeedometerApp;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SpeedometerApp; │ │ .prologue │ .line 338 │ iput-object p1, p0, Lcom/mobiperf/SpeedometerApp$5;->this$0:Lcom/mobiperf/SpeedometerApp; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/SpeedometerApp.smali │ @@ -282,15 +282,15 @@ │ │ .line 405 │ :cond_0 │ return-void │ .end method │ │ .method private initializeStatusBar()V │ - .locals 5 │ + .locals 6 │ │ .prologue │ .line 261 │ iget-object v1, p0, Lcom/mobiperf/SpeedometerApp;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ invoke-virtual {v1}, Lcom/mobiperf/MeasurementScheduler;->isPauseRequested()Z │ │ @@ -345,19 +345,19 @@ │ if-eqz v0, :cond_3 │ │ .line 268 │ invoke-virtual {v0}, Lcom/mobiperf/MeasurementTask;->getDescription()Lcom/mobiperf/MeasurementDesc; │ │ move-result-object v1 │ │ - iget-wide v1, v1, Lcom/mobiperf/MeasurementDesc;->priority:J │ + iget-wide v2, v1, Lcom/mobiperf/MeasurementDesc;->priority:J │ │ - const-wide/32 v3, -0x80000000 │ + const-wide/32 v4, -0x80000000 │ │ - cmp-long v1, v1, v3 │ + cmp-long v1, v2, v4 │ │ if-nez v1, :cond_2 │ │ .line 269 │ new-instance v1, Ljava/lang/StringBuilder; │ │ invoke-direct {v1}, Ljava/lang/StringBuilder;->()V │ @@ -514,18 +514,20 @@ │ .end method │ │ .method private restoreConsentState()V │ .locals 3 │ │ .prologue │ .line 442 │ + .line 443 │ invoke-virtual {p0}, Lcom/mobiperf/SpeedometerApp;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v1 │ │ + .line 442 │ invoke-static {v1}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ move-result-object v0 │ │ .line 444 │ .local v0, "prefs":Landroid/content/SharedPreferences; │ const-string v1, "PREF_KEY_CONSENTED" │ @@ -572,18 +574,20 @@ │ .end method │ │ .method private saveConsentState()V │ .locals 4 │ │ .prologue │ .line 423 │ + .line 424 │ invoke-virtual {p0}, Lcom/mobiperf/SpeedometerApp;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v2 │ │ + .line 423 │ invoke-static {v2}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ move-result-object v1 │ │ .line 425 │ .local v1, "prefs":Landroid/content/SharedPreferences; │ invoke-interface {v1}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor; │ @@ -657,18 +661,20 @@ │ │ .method private setStartOnBoot(Z)V │ .locals 3 │ .param p1, "startOnBoot" # Z │ │ .prologue │ .line 409 │ + .line 410 │ invoke-virtual {p0}, Lcom/mobiperf/SpeedometerApp;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v2 │ │ + .line 409 │ invoke-static {v2}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; │ │ move-result-object v1 │ │ .line 411 │ .local v1, "prefs":Landroid/content/SharedPreferences; │ invoke-interface {v1}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor; │ @@ -726,14 +732,15 @@ │ │ const/4 v3, -0x1 │ │ new-instance v4, Lcom/mobiperf/SpeedometerApp$3; │ │ invoke-direct {v4, p0, v1}, Lcom/mobiperf/SpeedometerApp$3;->(Lcom/mobiperf/SpeedometerApp;[Ljava/lang/CharSequence;)V │ │ + .line 306 │ invoke-virtual {v2, v1, v3, v4}, Landroid/app/AlertDialog$Builder;->setSingleChoiceItems([Ljava/lang/CharSequence;ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ .line 321 │ invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;->create()Landroid/app/AlertDialog; │ │ move-result-object v2 │ │ @@ -801,34 +808,37 @@ │ .line 336 │ invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;->setView(Landroid/view/View;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v3 │ │ const/4 v4, 0x0 │ │ + .line 337 │ invoke-virtual {v3, v4}, Landroid/app/AlertDialog$Builder;->setCancelable(Z)Landroid/app/AlertDialog$Builder; │ │ move-result-object v3 │ │ const-string v4, "Okay, got it" │ │ new-instance v5, Lcom/mobiperf/SpeedometerApp$5; │ │ invoke-direct {v5, p0}, Lcom/mobiperf/SpeedometerApp$5;->(Lcom/mobiperf/SpeedometerApp;)V │ │ + .line 338 │ invoke-virtual {v3, v4, v5}, Landroid/app/AlertDialog$Builder;->setPositiveButton(Ljava/lang/CharSequence;Landroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v3 │ │ const-string v4, "No thanks" │ │ new-instance v5, Lcom/mobiperf/SpeedometerApp$4; │ │ invoke-direct {v5, p0}, Lcom/mobiperf/SpeedometerApp$4;->(Lcom/mobiperf/SpeedometerApp;)V │ │ + .line 347 │ invoke-virtual {v3, v4, v5}, Landroid/app/AlertDialog$Builder;->setNegativeButton(Ljava/lang/CharSequence;Landroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ .line 352 │ invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;->create()Landroid/app/AlertDialog; │ │ move-result-object v3 │ │ @@ -1003,22 +1013,25 @@ │ │ move-result-object v4 │ │ const-string v5, "Measure" │ │ const v6, 0x7f020006 │ │ + .line 202 │ invoke-virtual {v2, v6}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable; │ │ move-result-object v6 │ │ + .line 201 │ invoke-virtual {v4, v5, v6}, Landroid/widget/TabHost$TabSpec;->setIndicator(Ljava/lang/CharSequence;Landroid/graphics/drawable/Drawable;)Landroid/widget/TabHost$TabSpec; │ │ move-result-object v4 │ │ + .line 202 │ invoke-virtual {v4, v1}, Landroid/widget/TabHost$TabSpec;->setContent(Landroid/content/Intent;)Landroid/widget/TabHost$TabSpec; │ │ move-result-object v3 │ │ .line 203 │ .local v3, "spec":Landroid/widget/TabHost$TabSpec; │ iget-object v4, p0, Lcom/mobiperf/SpeedometerApp;->tabHost:Landroid/widget/TabHost; │ @@ -1045,22 +1058,25 @@ │ │ move-result-object v4 │ │ const-string v5, "Results" │ │ const/high16 v6, 0x7f020000 │ │ + .line 207 │ invoke-virtual {v2, v6}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable; │ │ move-result-object v6 │ │ + .line 206 │ invoke-virtual {v4, v5, v6}, Landroid/widget/TabHost$TabSpec;->setIndicator(Ljava/lang/CharSequence;Landroid/graphics/drawable/Drawable;)Landroid/widget/TabHost$TabSpec; │ │ move-result-object v4 │ │ + .line 207 │ invoke-virtual {v4, v1}, Landroid/widget/TabHost$TabSpec;->setContent(Landroid/content/Intent;)Landroid/widget/TabHost$TabSpec; │ │ move-result-object v3 │ │ .line 208 │ iget-object v4, p0, Lcom/mobiperf/SpeedometerApp;->tabHost:Landroid/widget/TabHost; │ │ @@ -1086,22 +1102,25 @@ │ │ move-result-object v4 │ │ const-string v5, "Task Queue" │ │ const v6, 0x7f020003 │ │ + .line 213 │ invoke-virtual {v2, v6}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable; │ │ move-result-object v6 │ │ + .line 212 │ invoke-virtual {v4, v5, v6}, Landroid/widget/TabHost$TabSpec;->setIndicator(Ljava/lang/CharSequence;Landroid/graphics/drawable/Drawable;)Landroid/widget/TabHost$TabSpec; │ │ move-result-object v4 │ │ + .line 213 │ invoke-virtual {v4, v1}, Landroid/widget/TabHost$TabSpec;->setContent(Landroid/content/Intent;)Landroid/widget/TabHost$TabSpec; │ │ move-result-object v3 │ │ .line 214 │ iget-object v4, p0, Lcom/mobiperf/SpeedometerApp;->tabHost:Landroid/widget/TabHost; ├── smali/com/mobiperf/SpeedometerPreferenceActivity$1.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SpeedometerPreferenceActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ .prologue │ .line 50 │ iput-object p1, p0, Lcom/mobiperf/SpeedometerPreferenceActivity$1;->this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ @@ -100,24 +101,27 @@ │ :cond_0 │ iget-object v3, p0, Lcom/mobiperf/SpeedometerPreferenceActivity$1;->this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ iget-object v5, p0, Lcom/mobiperf/SpeedometerPreferenceActivity$1;->this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ const v6, 0x7f07002e │ │ + .line 59 │ invoke-virtual {v5, v6}, Lcom/mobiperf/SpeedometerPreferenceActivity;->getString(I)Ljava/lang/String; │ │ move-result-object v5 │ │ const/4 v6, 0x1 │ │ + .line 58 │ invoke-static {v3, v5, v6}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; │ │ move-result-object v3 │ │ + .line 59 │ invoke-virtual {v3}, Landroid/widget/Toast;->show()V │ :try_end_0 │ .catch Ljava/lang/ClassCastException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_1 │ │ move v3, v4 │ │ @@ -209,24 +213,27 @@ │ :cond_3 │ iget-object v3, p0, Lcom/mobiperf/SpeedometerPreferenceActivity$1;->this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ iget-object v5, p0, Lcom/mobiperf/SpeedometerPreferenceActivity$1;->this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ const v6, 0x7f07002f │ │ + .line 75 │ invoke-virtual {v5, v6}, Lcom/mobiperf/SpeedometerPreferenceActivity;->getString(I)Ljava/lang/String; │ │ move-result-object v5 │ │ const/4 v6, 0x1 │ │ + .line 74 │ invoke-static {v3, v5, v6}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; │ │ move-result-object v3 │ │ + .line 75 │ invoke-virtual {v3}, Landroid/widget/Toast;->show()V │ :try_end_1 │ .catch Ljava/lang/ClassCastException; {:try_start_1 .. :try_end_1} :catch_2 │ .catch Ljava/lang/NumberFormatException; {:try_start_1 .. :try_end_1} :catch_3 │ │ move v3, v4 ├── smali/com/mobiperf/SpeedometerPreferenceActivity$2.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SpeedometerPreferenceActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ .prologue │ .line 103 │ iput-object p1, p0, Lcom/mobiperf/SpeedometerPreferenceActivity$2;->this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/SpeedometerPreferenceActivity$3.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SpeedometerPreferenceActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ .prologue │ .line 138 │ iput-object p1, p0, Lcom/mobiperf/SpeedometerPreferenceActivity$3;->this$0:Lcom/mobiperf/SpeedometerPreferenceActivity; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/SpeedometerPreferenceActivity.smali │ @@ -67,22 +67,25 @@ │ const-string v10, "Cannot find some of the preferences" │ │ invoke-static {v10}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ │ .line 45 │ const v10, 0x7f070030 │ │ + .line 46 │ invoke-virtual {p0, v10}, Lcom/mobiperf/SpeedometerPreferenceActivity;->getString(I)Ljava/lang/String; │ │ move-result-object v10 │ │ + .line 45 │ invoke-static {p0, v10, v12}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; │ │ move-result-object v10 │ │ + .line 46 │ invoke-virtual {v10}, Landroid/widget/Toast;->show()V │ │ .line 155 │ :goto_0 │ return-void │ │ .line 50 ├── smali/com/mobiperf/SplashScreenActivity$1.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/SplashScreenActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SplashScreenActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SplashScreenActivity; │ │ .prologue │ .line 49 │ iput-object p1, p0, Lcom/mobiperf/SplashScreenActivity$1;->this$0:Lcom/mobiperf/SplashScreenActivity; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ @@ -51,18 +52,20 @@ │ │ invoke-virtual {v1}, Lcom/mobiperf/SplashScreenActivity;->getApplicationContext()Landroid/content/Context; │ │ move-result-object v1 │ │ const-class v2, Lcom/mobiperf/SpeedometerApp; │ │ + .line 54 │ invoke-virtual {v2}, Ljava/lang/Class;->getName()Ljava/lang/String; │ │ move-result-object v2 │ │ + .line 53 │ invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Landroid/content/Context;Ljava/lang/String;)Landroid/content/Intent; │ │ .line 55 │ const/high16 v1, 0x10000000 │ │ invoke-virtual {v0, v1}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent; ├── smali/com/mobiperf/SystemConsoleActivity$1.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lcom/mobiperf/SystemConsoleActivity; │ │ │ # direct methods │ .method constructor (Lcom/mobiperf/SystemConsoleActivity;)V │ .locals 0 │ + .param p1, "this$0" # Lcom/mobiperf/SystemConsoleActivity; │ │ .prologue │ .line 39 │ iput-object p1, p0, Lcom/mobiperf/SystemConsoleActivity$1;->this$0:Lcom/mobiperf/SystemConsoleActivity; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V ├── smali/com/mobiperf/SystemConsoleActivity.smali │ @@ -149,20 +149,22 @@ │ │ new-instance v1, Landroid/widget/ArrayAdapter; │ │ const v2, 0x7f030002 │ │ iget-object v3, p0, Lcom/mobiperf/SystemConsoleActivity;->scheduler:Lcom/mobiperf/MeasurementScheduler; │ │ + .line 91 │ invoke-virtual {v3}, Lcom/mobiperf/MeasurementScheduler;->getSystemConsole()Ljava/util/List; │ │ move-result-object v3 │ │ invoke-direct {v1, p0, v2, v3}, Landroid/widget/ArrayAdapter;->(Landroid/content/Context;ILjava/util/List;)V │ │ + .line 90 │ invoke-virtual {v0, v1}, Landroid/widget/ListView;->setAdapter(Landroid/widget/ListAdapter;)V │ │ .line 93 │ :cond_0 │ return-void │ .end method ├── smali/com/mobiperf/measurements/DnsLookupTask$DnsLookupDesc.smali │ @@ -18,15 +18,15 @@ │ .field private server:Ljava/lang/String; │ │ .field public target:Ljava/lang/String; │ │ │ # direct methods │ .method public constructor (Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ - .locals 13 │ + .locals 16 │ .param p1, "key" # Ljava/lang/String; │ .param p2, "startTime" # Ljava/util/Date; │ .param p3, "endTime" # Ljava/util/Date; │ .param p4, "intervalSec" # D │ .param p6, "count" # J │ .param p8, "priority" # J │ .annotation system Ldalvik/annotation/Signature; │ @@ -43,61 +43,67 @@ │ ">;)V" │ } │ .end annotation │ │ .prologue │ .line 57 │ .local p10, "params":Ljava/util/Map;, "Ljava/util/Map;" │ - const-string v2, "dns_lookup" │ + const-string v4, "dns_lookup" │ │ - move-object v1, p0 │ + move-object/from16 v3, p0 │ │ - move-object v3, p1 │ + move-object/from16 v5, p1 │ │ - move-object v4, p2 │ + move-object/from16 v6, p2 │ │ - move-object/from16 v5, p3 │ + move-object/from16 v7, p3 │ │ - move-wide/from16 v6, p4 │ + move-wide/from16 v8, p4 │ │ - move-wide/from16 v8, p6 │ + move-wide/from16 v10, p6 │ │ - move-wide/from16 v10, p8 │ + move-wide/from16 v12, p8 │ │ - move-object/from16 v12, p10 │ + move-object/from16 v14, p10 │ │ - invoke-direct/range {v1 .. v12}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ + invoke-direct/range {v3 .. v14}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ │ .line 59 │ - move-object/from16 v0, p10 │ + move-object/from16 v0, p0 │ │ - invoke-virtual {p0, v0}, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->initializeParams(Ljava/util/Map;)V │ + move-object/from16 v1, p10 │ + │ + invoke-virtual {v0, v1}, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->initializeParams(Ljava/util/Map;)V │ │ .line 60 │ - iget-object v1, p0, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->target:Ljava/lang/String; │ + move-object/from16 v0, p0 │ + │ + iget-object v2, v0, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->target:Ljava/lang/String; │ + │ + if-eqz v2, :cond_0 │ │ - if-eqz v1, :cond_0 │ + move-object/from16 v0, p0 │ │ - iget-object v1, p0, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->target:Ljava/lang/String; │ + iget-object v2, v0, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v1}, Ljava/lang/String;->length()I │ + invoke-virtual {v2}, Ljava/lang/String;->length()I │ │ - move-result v1 │ + move-result v2 │ │ - if-nez v1, :cond_1 │ + if-nez v2, :cond_1 │ │ .line 61 │ :cond_0 │ - new-instance v1, Ljava/security/InvalidParameterException; │ + new-instance v2, Ljava/security/InvalidParameterException; │ │ - const-string v2, "LookupDnsTask cannot be created due to null target string" │ + const-string v3, "LookupDnsTask cannot be created due to null target string" │ │ - invoke-direct {v1, v2}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v2, v3}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v1 │ + throw v2 │ │ .line 64 │ :cond_1 │ return-void │ .end method ├── smali/com/mobiperf/measurements/HttpTask$HttpDesc.smali │ @@ -22,15 +22,15 @@ │ .field private method:Ljava/lang/String; │ │ .field public url:Ljava/lang/String; │ │ │ # direct methods │ .method public constructor (Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ - .locals 13 │ + .locals 16 │ .param p1, "key" # Ljava/lang/String; │ .param p2, "startTime" # Ljava/util/Date; │ .param p3, "endTime" # Ljava/util/Date; │ .param p4, "intervalSec" # D │ .param p6, "count" # J │ .param p8, "priority" # J │ .annotation system Ldalvik/annotation/Signature; │ @@ -53,61 +53,67 @@ │ Ljava/security/InvalidParameterException; │ } │ .end annotation │ │ .prologue │ .line 96 │ .local p10, "params":Ljava/util/Map;, "Ljava/util/Map;" │ - const-string v2, "http" │ + const-string v4, "http" │ │ - move-object v1, p0 │ + move-object/from16 v3, p0 │ │ - move-object v3, p1 │ + move-object/from16 v5, p1 │ │ - move-object v4, p2 │ + move-object/from16 v6, p2 │ │ - move-object/from16 v5, p3 │ + move-object/from16 v7, p3 │ │ - move-wide/from16 v6, p4 │ + move-wide/from16 v8, p4 │ │ - move-wide/from16 v8, p6 │ + move-wide/from16 v10, p6 │ │ - move-wide/from16 v10, p8 │ + move-wide/from16 v12, p8 │ │ - move-object/from16 v12, p10 │ + move-object/from16 v14, p10 │ │ - invoke-direct/range {v1 .. v12}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ + invoke-direct/range {v3 .. v14}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ │ .line 97 │ - move-object/from16 v0, p10 │ + move-object/from16 v0, p0 │ │ - invoke-virtual {p0, v0}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->initializeParams(Ljava/util/Map;)V │ + move-object/from16 v1, p10 │ + │ + invoke-virtual {v0, v1}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->initializeParams(Ljava/util/Map;)V │ │ .line 98 │ - iget-object v1, p0, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->url:Ljava/lang/String; │ + move-object/from16 v0, p0 │ + │ + iget-object v2, v0, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->url:Ljava/lang/String; │ + │ + if-eqz v2, :cond_0 │ │ - if-eqz v1, :cond_0 │ + move-object/from16 v0, p0 │ │ - iget-object v1, p0, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->url:Ljava/lang/String; │ + iget-object v2, v0, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->url:Ljava/lang/String; │ │ - invoke-virtual {v1}, Ljava/lang/String;->length()I │ + invoke-virtual {v2}, Ljava/lang/String;->length()I │ │ - move-result v1 │ + move-result v2 │ │ - if-nez v1, :cond_1 │ + if-nez v2, :cond_1 │ │ .line 99 │ :cond_0 │ - new-instance v1, Ljava/security/InvalidParameterException; │ + new-instance v2, Ljava/security/InvalidParameterException; │ │ - const-string v2, "URL for http task is null" │ + const-string v3, "URL for http task is null" │ │ - invoke-direct {v1, v2}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v2, v3}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v1 │ + throw v2 │ │ .line 101 │ :cond_1 │ return-void │ .end method │ │ .method static synthetic access$000(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; ├── smali/com/mobiperf/measurements/HttpTask.smali │ @@ -87,90 +87,90 @@ │ │ return-object v0 │ .end method │ │ │ # virtual methods │ .method public call()Lcom/mobiperf/MeasurementResult; │ - .locals 48 │ + .locals 46 │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/mobiperf/MeasurementError; │ } │ .end annotation │ │ .prologue │ .line 145 │ - const/16 v40, 0x0 │ + const/16 v35, 0x0 │ │ .line 146 │ - .local v40, "statusCode":I │ + .local v35, "statusCode":I │ const-wide/16 v12, 0x0 │ │ .line 147 │ .local v12, "duration":J │ - const-wide/16 v26, 0x0 │ + const-wide/16 v24, 0x0 │ │ .line 149 │ - .local v26, "originalHeadersLen":J │ - const/16 v20, 0x0 │ + .local v24, "originalHeadersLen":J │ + const/16 v19, 0x0 │ │ .line 150 │ - .local v20, "headers":Ljava/lang/String; │ + .local v19, "headers":Ljava/lang/String; │ const/16 v3, 0x400 │ │ invoke-static {v3}, Ljava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer; │ │ - move-result-object v11 │ + move-result-object v10 │ │ .line 151 │ - .local v11, "body":Ljava/nio/ByteBuffer; │ + .local v10, "body":Ljava/nio/ByteBuffer; │ const/4 v8, 0x0 │ │ .line 152 │ .local v8, "success":Z │ - const-string v15, "" │ + const-string v14, "" │ │ .line 153 │ - .local v15, "errorMsg":Ljava/lang/String; │ - const/16 v22, 0x0 │ + .local v14, "errorMsg":Ljava/lang/String; │ + const/16 v20, 0x0 │ │ .line 159 │ - .local v22, "inputStream":Ljava/io/InputStream; │ - new-instance v28, Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .local v20, "inputStream":Ljava/io/InputStream; │ + new-instance v21, Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ │ - invoke-direct/range {v28 .. v28}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->()V │ + invoke-direct/range {v21 .. v21}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->()V │ │ .line 160 │ - .local v28, "packetmonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - invoke-virtual/range {v28 .. v28}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->setBySize()V │ + .local v21, "packetmonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + invoke-virtual/range {v21 .. v21}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->setBySize()V │ │ .line 161 │ - invoke-virtual/range {v28 .. v28}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->readCurrentPacketValues()V │ + invoke-virtual/range {v21 .. v21}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->readCurrentPacketValues()V │ │ .line 166 │ :try_start_0 │ move-object/from16 v0, p0 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/HttpTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - move-object/from16 v42, v0 │ + move-object/from16 v39, v0 │ │ - check-cast v42, Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ + check-cast v39, Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ │ .line 167 │ - .local v42, "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ - move-object/from16 v0, v42 │ + .local v39, "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ + move-object/from16 v0, v39 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->url:Ljava/lang/String; │ │ - move-object/from16 v45, v0 │ + move-object/from16 v42, v0 │ │ .line 170 │ - .local v45, "urlStr":Ljava/lang/String; │ + .local v42, "urlStr":Ljava/lang/String; │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/measurements/HttpTask;->parent:Landroid/content/Context; │ │ invoke-static {v3}, Lcom/mobiperf/util/Util;->prepareUserAgent(Landroid/content/Context;)Ljava/lang/String; │ │ move-result-object v3 │ @@ -180,53 +180,53 @@ │ move-result-object v3 │ │ move-object/from16 v0, p0 │ │ iput-object v3, v0, Lcom/mobiperf/measurements/HttpTask;->httpClient:Landroid/net/http/AndroidHttpClient; │ │ .line 171 │ - const/16 v34, 0x0 │ + const/16 v31, 0x0 │ │ .line 172 │ - .local v34, "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .local v31, "request":Lorg/apache/http/client/methods/HttpRequestBase; │ # getter for: Lcom/mobiperf/measurements/HttpTask$HttpDesc;->method:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$000(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ + invoke-static/range {v39 .. v39}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$000(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ │ move-result-object v3 │ │ const-string v4, "head" │ │ invoke-virtual {v3, v4}, Ljava/lang/String;->compareToIgnoreCase(Ljava/lang/String;)I │ │ move-result v3 │ │ if-nez v3, :cond_0 │ │ .line 173 │ - new-instance v34, Lorg/apache/http/client/methods/HttpHead; │ + new-instance v31, Lorg/apache/http/client/methods/HttpHead; │ │ - .end local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - move-object/from16 v0, v34 │ + .end local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + move-object/from16 v0, v31 │ │ - move-object/from16 v1, v45 │ + move-object/from16 v1, v42 │ │ invoke-direct {v0, v1}, Lorg/apache/http/client/methods/HttpHead;->(Ljava/lang/String;)V │ │ .line 185 │ - .restart local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .restart local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ :goto_0 │ # getter for: Lcom/mobiperf/measurements/HttpTask$HttpDesc;->headers:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$200(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ + invoke-static/range {v39 .. v39}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$200(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ │ move-result-object v3 │ │ if-eqz v3, :cond_7 │ │ # getter for: Lcom/mobiperf/measurements/HttpTask$HttpDesc;->headers:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$200(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ + invoke-static/range {v39 .. v39}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$200(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ │ move-result-object v3 │ │ invoke-virtual {v3}, Ljava/lang/String;->trim()Ljava/lang/String; │ │ move-result-object v3 │ │ @@ -234,187 +234,175 @@ │ │ move-result v3 │ │ if-lez v3, :cond_7 │ │ .line 186 │ # getter for: Lcom/mobiperf/measurements/HttpTask$HttpDesc;->headers:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$200(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ + invoke-static/range {v39 .. v39}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$200(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ │ move-result-object v3 │ │ const-string v4, "\r\n" │ │ invoke-virtual {v3, v4}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ │ - move-result-object v10 │ - │ - .local v10, "arr$":[Ljava/lang/String; │ - array-length v0, v10 │ + move-result-object v4 │ │ - move/from16 v23, v0 │ + array-length v5, v4 │ │ - .local v23, "len$":I │ - const/16 v21, 0x0 │ + const/4 v3, 0x0 │ │ - .local v21, "i$":I │ :goto_1 │ - move/from16 v0, v21 │ - │ - move/from16 v1, v23 │ - │ - if-ge v0, v1, :cond_7 │ + if-ge v3, v5, :cond_7 │ │ - aget-object v19, v10, v21 │ + aget-object v18, v4, v3 │ │ .line 187 │ - .local v19, "headerLine":Ljava/lang/String; │ - const-string v3, ":" │ + .local v18, "headerLine":Ljava/lang/String; │ + const-string v6, ":" │ │ - move-object/from16 v0, v19 │ + move-object/from16 v0, v18 │ │ - invoke-virtual {v0, v3}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ + invoke-virtual {v0, v6}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ │ - move-result-object v43 │ + move-result-object v40 │ │ .line 188 │ - .local v43, "tokens":[Ljava/lang/String; │ - move-object/from16 v0, v43 │ + .local v40, "tokens":[Ljava/lang/String; │ + move-object/from16 v0, v40 │ │ - array-length v3, v0 │ + array-length v6, v0 │ │ - const/4 v4, 0x2 │ + const/4 v7, 0x2 │ │ - if-ne v3, v4, :cond_5 │ + if-ne v6, v7, :cond_5 │ │ .line 189 │ - const/4 v3, 0x0 │ + const/4 v6, 0x0 │ │ - aget-object v3, v43, v3 │ + aget-object v6, v40, v6 │ │ - const/4 v4, 0x1 │ + const/4 v7, 0x1 │ │ - aget-object v4, v43, v4 │ + aget-object v7, v40, v7 │ │ - move-object/from16 v0, v34 │ + move-object/from16 v0, v31 │ │ - invoke-virtual {v0, v3, v4}, Lorg/apache/http/client/methods/HttpRequestBase;->addHeader(Ljava/lang/String;Ljava/lang/String;)V │ + invoke-virtual {v0, v6, v7}, Lorg/apache/http/client/methods/HttpRequestBase;->addHeader(Ljava/lang/String;Ljava/lang/String;)V │ │ .line 186 │ - add-int/lit8 v21, v21, 0x1 │ + add-int/lit8 v3, v3, 0x1 │ │ goto :goto_1 │ │ .line 174 │ - .end local v10 # "arr$":[Ljava/lang/String; │ - .end local v19 # "headerLine":Ljava/lang/String; │ - .end local v21 # "i$":I │ - .end local v23 # "len$":I │ - .end local v43 # "tokens":[Ljava/lang/String; │ + .end local v18 # "headerLine":Ljava/lang/String; │ + .end local v40 # "tokens":[Ljava/lang/String; │ :cond_0 │ # getter for: Lcom/mobiperf/measurements/HttpTask$HttpDesc;->method:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$000(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ + invoke-static/range {v39 .. v39}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$000(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ │ move-result-object v3 │ │ const-string v4, "get" │ │ invoke-virtual {v3, v4}, Ljava/lang/String;->compareToIgnoreCase(Ljava/lang/String;)I │ │ move-result v3 │ │ if-nez v3, :cond_1 │ │ .line 175 │ - new-instance v34, Lorg/apache/http/client/methods/HttpGet; │ + new-instance v31, Lorg/apache/http/client/methods/HttpGet; │ │ - .end local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - move-object/from16 v0, v34 │ + .end local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + move-object/from16 v0, v31 │ │ - move-object/from16 v1, v45 │ + move-object/from16 v1, v42 │ │ invoke-direct {v0, v1}, Lorg/apache/http/client/methods/HttpGet;->(Ljava/lang/String;)V │ │ - .restart local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .restart local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ goto :goto_0 │ │ .line 176 │ :cond_1 │ # getter for: Lcom/mobiperf/measurements/HttpTask$HttpDesc;->method:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$000(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ + invoke-static/range {v39 .. v39}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$000(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ │ move-result-object v3 │ │ const-string v4, "post" │ │ invoke-virtual {v3, v4}, Ljava/lang/String;->compareToIgnoreCase(Ljava/lang/String;)I │ │ move-result v3 │ │ if-nez v3, :cond_4 │ │ .line 177 │ - new-instance v34, Lorg/apache/http/client/methods/HttpPost; │ + new-instance v31, Lorg/apache/http/client/methods/HttpPost; │ │ - .end local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - move-object/from16 v0, v34 │ + .end local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + move-object/from16 v0, v31 │ │ - move-object/from16 v1, v45 │ + move-object/from16 v1, v42 │ │ invoke-direct {v0, v1}, Lorg/apache/http/client/methods/HttpPost;->(Ljava/lang/String;)V │ │ .line 178 │ - .restart local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - move-object/from16 v0, v34 │ + .restart local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + move-object/from16 v0, v31 │ │ check-cast v0, Lorg/apache/http/client/methods/HttpPost; │ │ - move-object/from16 v30, v0 │ + move-object/from16 v27, v0 │ │ .line 179 │ - .local v30, "postRequest":Lorg/apache/http/client/methods/HttpPost; │ + .local v27, "postRequest":Lorg/apache/http/client/methods/HttpPost; │ new-instance v3, Lorg/apache/http/entity/StringEntity; │ │ # getter for: Lcom/mobiperf/measurements/HttpTask$HttpDesc;->body:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$100(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ + invoke-static/range {v39 .. v39}, Lcom/mobiperf/measurements/HttpTask$HttpDesc;->access$100(Lcom/mobiperf/measurements/HttpTask$HttpDesc;)Ljava/lang/String; │ │ move-result-object v4 │ │ invoke-direct {v3, v4}, Lorg/apache/http/entity/StringEntity;->(Ljava/lang/String;)V │ │ - move-object/from16 v0, v30 │ + move-object/from16 v0, v27 │ │ invoke-virtual {v0, v3}, Lorg/apache/http/client/methods/HttpPost;->setEntity(Lorg/apache/http/HttpEntity;)V │ :try_end_0 │ .catch Ljava/net/MalformedURLException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_1 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ - goto/16 :goto_0 │ + goto :goto_0 │ │ .line 280 │ - .end local v30 # "postRequest":Lorg/apache/http/client/methods/HttpPost; │ - .end local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - .end local v42 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ - .end local v45 # "urlStr":Ljava/lang/String; │ + .end local v27 # "postRequest":Lorg/apache/http/client/methods/HttpPost; │ + .end local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .end local v39 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ + .end local v42 # "urlStr":Ljava/lang/String; │ :catch_0 │ - move-exception v14 │ + move-exception v11 │ │ .line 281 │ - .local v14, "e":Ljava/net/MalformedURLException; │ + .local v11, "e":Ljava/net/MalformedURLException; │ :try_start_1 │ new-instance v3, Ljava/lang/StringBuilder; │ │ invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v3, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ - invoke-virtual {v14}, Ljava/net/MalformedURLException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/net/MalformedURLException;->getMessage()Ljava/lang/String; │ │ move-result-object v4 │ │ invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ @@ -422,36 +410,36 @@ │ │ invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v15 │ + move-result-object v14 │ │ .line 282 │ - invoke-virtual {v14}, Ljava/net/MalformedURLException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/net/MalformedURLException;->getMessage()Ljava/lang/String; │ │ move-result-object v3 │ │ invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ :try_end_1 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ .line 287 │ - if-eqz v22, :cond_2 │ + if-eqz v20, :cond_2 │ │ .line 289 │ :try_start_2 │ - invoke-virtual/range {v22 .. v22}, Ljava/io/InputStream;->close()V │ + invoke-virtual/range {v20 .. v20}, Ljava/io/InputStream;->close()V │ :try_end_2 │ .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_3 │ │ .line 294 │ - .end local v14 # "e":Ljava/net/MalformedURLException; │ + .end local v11 # "e":Ljava/net/MalformedURLException; │ :cond_2 │ :goto_2 │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/measurements/HttpTask;->httpClient:Landroid/net/http/AndroidHttpClient; │ │ if-eqz v3, :cond_3 │ @@ -474,64 +462,61 @@ │ │ const-string v5, "Cannot get result from HTTP measurement because " │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ - invoke-virtual {v4, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ invoke-direct {v3, v4}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v3 │ │ .line 182 │ - .restart local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - .restart local v42 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ - .restart local v45 # "urlStr":Ljava/lang/String; │ + .restart local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .restart local v39 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ + .restart local v42 # "urlStr":Ljava/lang/String; │ :cond_4 │ :try_start_3 │ - new-instance v34, Lorg/apache/http/client/methods/HttpGet; │ + new-instance v31, Lorg/apache/http/client/methods/HttpGet; │ │ - .end local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - move-object/from16 v0, v34 │ + .end local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + move-object/from16 v0, v31 │ │ - move-object/from16 v1, v45 │ + move-object/from16 v1, v42 │ │ invoke-direct {v0, v1}, Lorg/apache/http/client/methods/HttpGet;->(Ljava/lang/String;)V │ │ - .restart local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .restart local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ goto/16 :goto_0 │ │ .line 191 │ - .restart local v10 # "arr$":[Ljava/lang/String; │ - .restart local v19 # "headerLine":Ljava/lang/String; │ - .restart local v21 # "i$":I │ - .restart local v23 # "len$":I │ - .restart local v43 # "tokens":[Ljava/lang/String; │ + .restart local v18 # "headerLine":Ljava/lang/String; │ + .restart local v40 # "tokens":[Ljava/lang/String; │ :cond_5 │ new-instance v3, Lcom/mobiperf/MeasurementError; │ │ new-instance v4, Ljava/lang/StringBuilder; │ │ invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ const-string v5, "Incorrect header line: " │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ - move-object/from16 v0, v19 │ + move-object/from16 v0, v18 │ │ invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ @@ -542,37 +527,34 @@ │ throw v3 │ :try_end_3 │ .catch Ljava/net/MalformedURLException; {:try_start_3 .. :try_end_3} :catch_0 │ .catch Ljava/io/IOException; {:try_start_3 .. :try_end_3} :catch_1 │ .catchall {:try_start_3 .. :try_end_3} :catchall_0 │ │ .line 283 │ - .end local v10 # "arr$":[Ljava/lang/String; │ - .end local v19 # "headerLine":Ljava/lang/String; │ - .end local v21 # "i$":I │ - .end local v23 # "len$":I │ - .end local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - .end local v42 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ - .end local v43 # "tokens":[Ljava/lang/String; │ - .end local v45 # "urlStr":Ljava/lang/String; │ + .end local v18 # "headerLine":Ljava/lang/String; │ + .end local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .end local v39 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ + .end local v40 # "tokens":[Ljava/lang/String; │ + .end local v42 # "urlStr":Ljava/lang/String; │ :catch_1 │ - move-exception v14 │ + move-exception v11 │ │ .line 284 │ - .local v14, "e":Ljava/io/IOException; │ + .local v11, "e":Ljava/io/IOException; │ :try_start_4 │ new-instance v3, Ljava/lang/StringBuilder; │ │ invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v3, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ - invoke-virtual {v14}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ │ move-result-object v4 │ │ invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ @@ -580,31 +562,31 @@ │ │ invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v15 │ + move-result-object v14 │ │ .line 285 │ - invoke-virtual {v14}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ │ move-result-object v3 │ │ invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ :try_end_4 │ .catchall {:try_start_4 .. :try_end_4} :catchall_0 │ │ .line 287 │ - if-eqz v22, :cond_6 │ + if-eqz v20, :cond_6 │ │ .line 289 │ :try_start_5 │ - invoke-virtual/range {v22 .. v22}, Ljava/io/InputStream;->close()V │ + invoke-virtual/range {v20 .. v20}, Ljava/io/InputStream;->close()V │ :try_end_5 │ .catch Ljava/io/IOException; {:try_start_5 .. :try_end_5} :catch_4 │ │ .line 294 │ :cond_6 │ :goto_4 │ move-object/from16 v0, p0 │ @@ -619,176 +601,176 @@ │ iget-object v3, v0, Lcom/mobiperf/measurements/HttpTask;->httpClient:Landroid/net/http/AndroidHttpClient; │ │ invoke-virtual {v3}, Landroid/net/http/AndroidHttpClient;->close()V │ │ goto :goto_3 │ │ .line 196 │ - .end local v14 # "e":Ljava/io/IOException; │ - .restart local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - .restart local v42 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ - .restart local v45 # "urlStr":Ljava/lang/String; │ + .end local v11 # "e":Ljava/io/IOException; │ + .restart local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .restart local v39 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ + .restart local v42 # "urlStr":Ljava/lang/String; │ :cond_7 │ const/16 v3, 0x400 │ │ :try_start_6 │ new-array v0, v3, [B │ │ - move-object/from16 v32, v0 │ + move-object/from16 v29, v0 │ │ .line 198 │ - .local v32, "readBuffer":[B │ - const/16 v44, 0x0 │ + .local v29, "readBuffer":[B │ + const/16 v41, 0x0 │ │ .line 200 │ - .local v44, "totalBodyLen":I │ + .local v41, "totalBodyLen":I │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v38 │ + move-result-wide v36 │ │ .line 201 │ - .local v38, "startTime":J │ + .local v36, "startTime":J │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/measurements/HttpTask;->httpClient:Landroid/net/http/AndroidHttpClient; │ │ - move-object/from16 v0, v34 │ + move-object/from16 v0, v31 │ │ invoke-virtual {v3, v0}, Landroid/net/http/AndroidHttpClient;->execute(Lorg/apache/http/client/methods/HttpUriRequest;)Lorg/apache/http/HttpResponse; │ │ - move-result-object v35 │ + move-result-object v32 │ │ .line 211 │ - .local v35, "response":Lorg/apache/http/HttpResponse; │ - invoke-interface/range {v35 .. v35}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; │ + .local v32, "response":Lorg/apache/http/HttpResponse; │ + invoke-interface/range {v32 .. v32}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; │ │ - move-result-object v41 │ + move-result-object v38 │ │ .line 212 │ - .local v41, "statusLine":Lorg/apache/http/StatusLine; │ - if-eqz v41, :cond_8 │ + .local v38, "statusLine":Lorg/apache/http/StatusLine; │ + if-eqz v38, :cond_8 │ │ .line 213 │ - invoke-interface/range {v41 .. v41}, Lorg/apache/http/StatusLine;->getStatusCode()I │ + invoke-interface/range {v38 .. v38}, Lorg/apache/http/StatusLine;->getStatusCode()I │ │ - move-result v40 │ + move-result v35 │ │ .line 214 │ const/16 v3, 0xc8 │ │ - move/from16 v0, v40 │ + move/from16 v0, v35 │ │ if-ne v0, v3, :cond_d │ │ const/4 v8, 0x1 │ │ .line 220 │ :cond_8 │ :goto_5 │ - invoke-interface/range {v35 .. v35}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; │ + invoke-interface/range {v32 .. v32}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; │ │ - move-result-object v36 │ + move-result-object v33 │ │ .line 221 │ - .local v36, "responseEntity":Lorg/apache/http/HttpEntity; │ - invoke-interface/range {v36 .. v36}, Lorg/apache/http/HttpEntity;->getContentLength()J │ + .local v33, "responseEntity":Lorg/apache/http/HttpEntity; │ + invoke-interface/range {v33 .. v33}, Lorg/apache/http/HttpEntity;->getContentLength()J │ │ - move-result-wide v24 │ + move-result-wide v22 │ │ .line 222 │ - .local v24, "originalBodyLen":J │ + .local v22, "originalBodyLen":J │ const-wide/32 v16, 0x100000 │ │ .line 224 │ .local v16, "expectedResponseLen":J │ - const-wide/16 v3, 0x0 │ + const-wide/16 v4, 0x0 │ │ - cmp-long v3, v24, v3 │ + cmp-long v3, v22, v4 │ │ if-lez v3, :cond_9 │ │ .line 225 │ - move-wide/from16 v16, v24 │ + move-wide/from16 v16, v22 │ │ .line 228 │ :cond_9 │ - if-eqz v36, :cond_10 │ + if-eqz v33, :cond_10 │ │ .line 229 │ - invoke-interface/range {v36 .. v36}, Lorg/apache/http/HttpEntity;->getContent()Ljava/io/InputStream; │ + invoke-interface/range {v33 .. v33}, Lorg/apache/http/HttpEntity;->getContent()Ljava/io/InputStream; │ │ - move-result-object v22 │ + move-result-object v20 │ │ - .line 231 │ + .line 230 │ :goto_6 │ - move-object/from16 v0, v22 │ + move-object/from16 v0, v20 │ │ - move-object/from16 v1, v32 │ + move-object/from16 v1, v29 │ │ invoke-virtual {v0, v1}, Ljava/io/InputStream;->read([B)I │ │ - move-result v33 │ + move-result v30 │ │ - .local v33, "readLen":I │ - if-lez v33, :cond_f │ + .local v30, "readLen":I │ + if-lez v30, :cond_f │ │ - move/from16 v0, v44 │ + move/from16 v0, v41 │ │ - int-to-long v3, v0 │ + int-to-long v4, v0 │ │ - const-wide/32 v5, 0x100000 │ + const-wide/32 v6, 0x100000 │ │ - cmp-long v3, v3, v5 │ + cmp-long v3, v4, v6 │ │ if-gtz v3, :cond_f │ │ .line 232 │ - add-int v44, v44, v33 │ + add-int v41, v41, v30 │ │ .line 234 │ - invoke-virtual {v11}, Ljava/nio/ByteBuffer;->remaining()I │ + invoke-virtual {v10}, Ljava/nio/ByteBuffer;->remaining()I │ │ move-result v3 │ │ if-lez v3, :cond_a │ │ .line 235 │ - invoke-virtual {v11}, Ljava/nio/ByteBuffer;->remaining()I │ + invoke-virtual {v10}, Ljava/nio/ByteBuffer;->remaining()I │ │ move-result v3 │ │ - move/from16 v0, v33 │ + move/from16 v0, v30 │ │ if-ge v3, v0, :cond_e │ │ - invoke-virtual {v11}, Ljava/nio/ByteBuffer;->remaining()I │ + invoke-virtual {v10}, Ljava/nio/ByteBuffer;->remaining()I │ │ - move-result v31 │ + move-result v28 │ │ .line 236 │ - .local v31, "putLen":I │ + .local v28, "putLen":I │ :goto_7 │ const/4 v3, 0x0 │ │ - move-object/from16 v0, v32 │ + move-object/from16 v0, v29 │ │ - move/from16 v1, v31 │ + move/from16 v1, v28 │ │ - invoke-virtual {v11, v0, v3, v1}, Ljava/nio/ByteBuffer;->put([BII)Ljava/nio/ByteBuffer; │ + invoke-virtual {v10, v0, v3, v1}, Ljava/nio/ByteBuffer;->put([BII)Ljava/nio/ByteBuffer; │ │ .line 238 │ - .end local v31 # "putLen":I │ + .end local v28 # "putLen":I │ :cond_a │ - mul-int/lit8 v3, v44, 0x64 │ + mul-int/lit8 v3, v41, 0x64 │ │ - int-to-long v3, v3 │ + int-to-long v4, v3 │ │ - div-long v3, v3, v16 │ + div-long v4, v4, v16 │ │ - long-to-int v3, v3 │ + long-to-int v3, v4 │ │ move-object/from16 v0, p0 │ │ iput v3, v0, Lcom/mobiperf/measurements/HttpTask;->progress:I │ │ .line 239 │ const/16 v3, 0x64 │ @@ -818,33 +800,33 @@ │ .catch Ljava/io/IOException; {:try_start_6 .. :try_end_6} :catch_1 │ .catchall {:try_start_6 .. :try_end_6} :catchall_0 │ │ goto :goto_6 │ │ .line 287 │ .end local v16 # "expectedResponseLen":J │ - .end local v24 # "originalBodyLen":J │ - .end local v32 # "readBuffer":[B │ - .end local v33 # "readLen":I │ - .end local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - .end local v35 # "response":Lorg/apache/http/HttpResponse; │ - .end local v36 # "responseEntity":Lorg/apache/http/HttpEntity; │ - .end local v38 # "startTime":J │ - .end local v41 # "statusLine":Lorg/apache/http/StatusLine; │ - .end local v42 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ - .end local v44 # "totalBodyLen":I │ - .end local v45 # "urlStr":Ljava/lang/String; │ + .end local v22 # "originalBodyLen":J │ + .end local v29 # "readBuffer":[B │ + .end local v30 # "readLen":I │ + .end local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .end local v32 # "response":Lorg/apache/http/HttpResponse; │ + .end local v33 # "responseEntity":Lorg/apache/http/HttpEntity; │ + .end local v36 # "startTime":J │ + .end local v38 # "statusLine":Lorg/apache/http/StatusLine; │ + .end local v39 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ + .end local v41 # "totalBodyLen":I │ + .end local v42 # "urlStr":Ljava/lang/String; │ :catchall_0 │ move-exception v3 │ │ - if-eqz v22, :cond_b │ + if-eqz v20, :cond_b │ │ .line 289 │ :try_start_7 │ - invoke-virtual/range {v22 .. v22}, Ljava/io/InputStream;->close()V │ + invoke-virtual/range {v20 .. v20}, Ljava/io/InputStream;->close()V │ :try_end_7 │ .catch Ljava/io/IOException; {:try_start_7 .. :try_end_7} :catch_5 │ │ .line 294 │ :cond_b │ :goto_8 │ move-object/from16 v0, p0 │ @@ -860,187 +842,176 @@ │ │ invoke-virtual {v4}, Landroid/net/http/AndroidHttpClient;->close()V │ │ :cond_c │ throw v3 │ │ .line 214 │ - .restart local v32 # "readBuffer":[B │ - .restart local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - .restart local v35 # "response":Lorg/apache/http/HttpResponse; │ - .restart local v38 # "startTime":J │ - .restart local v41 # "statusLine":Lorg/apache/http/StatusLine; │ - .restart local v42 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ - .restart local v44 # "totalBodyLen":I │ - .restart local v45 # "urlStr":Ljava/lang/String; │ + .restart local v29 # "readBuffer":[B │ + .restart local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .restart local v32 # "response":Lorg/apache/http/HttpResponse; │ + .restart local v36 # "startTime":J │ + .restart local v38 # "statusLine":Lorg/apache/http/StatusLine; │ + .restart local v39 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ + .restart local v41 # "totalBodyLen":I │ + .restart local v42 # "urlStr":Ljava/lang/String; │ :cond_d │ const/4 v8, 0x0 │ │ goto :goto_5 │ │ .restart local v16 # "expectedResponseLen":J │ - .restart local v24 # "originalBodyLen":J │ - .restart local v33 # "readLen":I │ - .restart local v36 # "responseEntity":Lorg/apache/http/HttpEntity; │ + .restart local v22 # "originalBodyLen":J │ + .restart local v30 # "readLen":I │ + .restart local v33 # "responseEntity":Lorg/apache/http/HttpEntity; │ :cond_e │ - move/from16 v31, v33 │ + move/from16 v28, v30 │ │ .line 235 │ goto :goto_7 │ │ .line 242 │ :cond_f │ :try_start_8 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ - sub-long v12, v3, v38 │ + sub-long v12, v4, v36 │ │ .line 245 │ - .end local v33 # "readLen":I │ + .end local v30 # "readLen":I │ :cond_10 │ - invoke-interface/range {v35 .. v35}, Lorg/apache/http/HttpResponse;->getAllHeaders()[Lorg/apache/http/Header; │ + invoke-interface/range {v32 .. v32}, Lorg/apache/http/HttpResponse;->getAllHeaders()[Lorg/apache/http/Header; │ │ - move-result-object v37 │ + move-result-object v34 │ │ .line 246 │ - .local v37, "responseHeaders":[Lorg/apache/http/Header; │ - if-eqz v37, :cond_11 │ + .local v34, "responseHeaders":[Lorg/apache/http/Header; │ + if-eqz v34, :cond_11 │ │ .line 247 │ - const-string v20, "" │ + const-string v19, "" │ │ .line 248 │ - move-object/from16 v10, v37 │ - │ - .local v10, "arr$":[Lorg/apache/http/Header; │ - array-length v0, v10 │ + move-object/from16 v0, v34 │ │ - move/from16 v23, v0 │ + array-length v4, v0 │ │ - .restart local v23 # "len$":I │ - const/16 v21, 0x0 │ + const/4 v3, 0x0 │ │ - .restart local v21 # "i$":I │ :goto_9 │ - move/from16 v0, v21 │ - │ - move/from16 v1, v23 │ - │ - if-ge v0, v1, :cond_11 │ + if-ge v3, v4, :cond_11 │ │ - aget-object v18, v10, v21 │ + aget-object v15, v34, v3 │ │ .line 255 │ - .local v18, "hdr":Lorg/apache/http/Header; │ - invoke-virtual/range {v18 .. v18}, Ljava/lang/Object;->toString()Ljava/lang/String; │ + .local v15, "hdr":Lorg/apache/http/Header; │ + invoke-virtual {v15}, Ljava/lang/Object;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v5 │ │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + invoke-virtual {v5}, Ljava/lang/String;->length()I │ │ - move-result v3 │ + move-result v5 │ │ - int-to-long v3, v3 │ + int-to-long v6, v5 │ │ - add-long v26, v26, v3 │ + add-long v24, v24, v6 │ │ .line 256 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v5, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - move-object/from16 v0, v20 │ + move-object/from16 v0, v19 │ │ - invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v5 │ │ - invoke-virtual/range {v18 .. v18}, Ljava/lang/Object;->toString()Ljava/lang/String; │ + invoke-virtual {v15}, Ljava/lang/Object;->toString()Ljava/lang/String; │ │ - move-result-object v4 │ + move-result-object v6 │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v5 │ │ - const-string v4, "\r\n" │ + const-string v6, "\r\n" │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v5 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v20 │ + move-result-object v19 │ │ .line 248 │ - add-int/lit8 v21, v21, 0x1 │ + add-int/lit8 v3, v3, 0x1 │ │ goto :goto_9 │ │ .line 260 │ - .end local v10 # "arr$":[Lorg/apache/http/Header; │ - .end local v18 # "hdr":Lorg/apache/http/Header; │ - .end local v21 # "i$":I │ - .end local v23 # "len$":I │ + .end local v15 # "hdr":Lorg/apache/http/Header; │ :cond_11 │ invoke-static {}, Lcom/mobiperf/util/PhoneUtils;->getPhoneUtils()Lcom/mobiperf/util/PhoneUtils; │ │ - move-result-object v29 │ + move-result-object v26 │ │ .line 262 │ - .local v29, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + .local v26, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ new-instance v2, Lcom/mobiperf/MeasurementResult; │ │ - invoke-virtual/range {v29 .. v29}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ + invoke-virtual/range {v26 .. v26}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ move-result-object v3 │ │ iget-object v3, v3, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ - invoke-virtual/range {v29 .. v29}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ + .line 263 │ + invoke-virtual/range {v26 .. v26}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ │ move-result-object v4 │ │ const-string v5, "http" │ │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v6 │ │ - const-wide/16 v46, 0x3e8 │ + const-wide/16 v44, 0x3e8 │ │ - mul-long v6, v6, v46 │ + mul-long v6, v6, v44 │ │ move-object/from16 v0, p0 │ │ iget-object v9, v0, Lcom/mobiperf/measurements/HttpTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ invoke-direct/range {v2 .. v9}, Lcom/mobiperf/MeasurementResult;->(Ljava/lang/String;Lcom/mobiperf/DeviceProperty;Ljava/lang/String;JZLcom/mobiperf/MeasurementDesc;)V │ │ .line 266 │ .local v2, "result":Lcom/mobiperf/MeasurementResult; │ const-string v3, "code" │ │ - invoke-static/range {v40 .. v40}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static/range {v35 .. v35}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ move-result-object v4 │ │ invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 268 │ - invoke-virtual/range {v28 .. v28}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->getPacketsSentDiff()J │ + invoke-virtual/range {v21 .. v21}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->getPacketsSentDiff()J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ move-object/from16 v0, p0 │ │ - iput-wide v3, v0, Lcom/mobiperf/measurements/HttpTask;->dataConsumed:J │ + iput-wide v4, v0, Lcom/mobiperf/measurements/HttpTask;->dataConsumed:J │ │ .line 270 │ if-eqz v8, :cond_12 │ │ .line 271 │ const-string v3, "time_ms" │ │ @@ -1049,40 +1020,40 @@ │ move-result-object v4 │ │ invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 272 │ const-string v3, "headers_len" │ │ - invoke-static/range {v26 .. v27}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ + invoke-static/range {v24 .. v25}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ │ move-result-object v4 │ │ invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 273 │ const-string v3, "body_len" │ │ - invoke-static/range {v44 .. v44}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static/range {v41 .. v41}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ move-result-object v4 │ │ invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 274 │ const-string v3, "headers" │ │ - move-object/from16 v0, v20 │ + move-object/from16 v0, v19 │ │ invoke-virtual {v2, v3, v0}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 275 │ const-string v3, "body" │ │ - invoke-virtual {v11}, Ljava/nio/ByteBuffer;->array()[B │ + invoke-virtual {v10}, Ljava/nio/ByteBuffer;->array()[B │ │ move-result-object v4 │ │ const/4 v5, 0x0 │ │ invoke-static {v4, v5}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String; │ │ @@ -1099,19 +1070,19 @@ │ invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ :try_end_8 │ .catch Ljava/net/MalformedURLException; {:try_start_8 .. :try_end_8} :catch_0 │ .catch Ljava/io/IOException; {:try_start_8 .. :try_end_8} :catch_1 │ .catchall {:try_start_8 .. :try_end_8} :catchall_0 │ │ .line 287 │ - if-eqz v22, :cond_13 │ + if-eqz v20, :cond_13 │ │ .line 289 │ :try_start_9 │ - invoke-virtual/range {v22 .. v22}, Ljava/io/InputStream;->close()V │ + invoke-virtual/range {v20 .. v20}, Ljava/io/InputStream;->close()V │ :try_end_9 │ .catch Ljava/io/IOException; {:try_start_9 .. :try_end_9} :catch_2 │ │ .line 294 │ :cond_13 │ :goto_a │ move-object/from16 v0, p0 │ @@ -1123,74 +1094,75 @@ │ .line 295 │ move-object/from16 v0, p0 │ │ iget-object v3, v0, Lcom/mobiperf/measurements/HttpTask;->httpClient:Landroid/net/http/AndroidHttpClient; │ │ invoke-virtual {v3}, Landroid/net/http/AndroidHttpClient;->close()V │ │ + .line 279 │ :cond_14 │ return-object v2 │ │ .line 290 │ :catch_2 │ - move-exception v14 │ + move-exception v11 │ │ .line 291 │ - .restart local v14 # "e":Ljava/io/IOException; │ + .restart local v11 # "e":Ljava/io/IOException; │ const-string v3, "Fails to close the input stream from the HTTP response" │ │ invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ goto :goto_a │ │ .line 290 │ .end local v2 # "result":Lcom/mobiperf/MeasurementResult; │ .end local v16 # "expectedResponseLen":J │ - .end local v24 # "originalBodyLen":J │ - .end local v29 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ - .end local v32 # "readBuffer":[B │ - .end local v34 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ - .end local v35 # "response":Lorg/apache/http/HttpResponse; │ - .end local v36 # "responseEntity":Lorg/apache/http/HttpEntity; │ - .end local v37 # "responseHeaders":[Lorg/apache/http/Header; │ - .end local v38 # "startTime":J │ - .end local v41 # "statusLine":Lorg/apache/http/StatusLine; │ - .end local v42 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ - .end local v44 # "totalBodyLen":I │ - .end local v45 # "urlStr":Ljava/lang/String; │ - .local v14, "e":Ljava/net/MalformedURLException; │ + .end local v22 # "originalBodyLen":J │ + .end local v26 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + .end local v29 # "readBuffer":[B │ + .end local v31 # "request":Lorg/apache/http/client/methods/HttpRequestBase; │ + .end local v32 # "response":Lorg/apache/http/HttpResponse; │ + .end local v33 # "responseEntity":Lorg/apache/http/HttpEntity; │ + .end local v34 # "responseHeaders":[Lorg/apache/http/Header; │ + .end local v36 # "startTime":J │ + .end local v38 # "statusLine":Lorg/apache/http/StatusLine; │ + .end local v39 # "task":Lcom/mobiperf/measurements/HttpTask$HttpDesc; │ + .end local v41 # "totalBodyLen":I │ + .end local v42 # "urlStr":Ljava/lang/String; │ + .local v11, "e":Ljava/net/MalformedURLException; │ :catch_3 │ - move-exception v14 │ + move-exception v11 │ │ .line 291 │ - .local v14, "e":Ljava/io/IOException; │ + .local v11, "e":Ljava/io/IOException; │ const-string v3, "Fails to close the input stream from the HTTP response" │ │ invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ goto/16 :goto_2 │ │ .line 290 │ :catch_4 │ - move-exception v14 │ + move-exception v11 │ │ .line 291 │ const-string v3, "Fails to close the input stream from the HTTP response" │ │ invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ goto/16 :goto_4 │ │ .line 290 │ - .end local v14 # "e":Ljava/io/IOException; │ + .end local v11 # "e":Ljava/io/IOException; │ :catch_5 │ - move-exception v14 │ + move-exception v11 │ │ .line 291 │ - .restart local v14 # "e":Ljava/io/IOException; │ + .restart local v11 # "e":Ljava/io/IOException; │ const-string v4, "Fails to close the input stream from the HTTP response" │ │ invoke-static {v4}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ goto/16 :goto_8 │ .end method ├── smali/com/mobiperf/measurements/PingTask$PingDesc.smali │ @@ -22,15 +22,15 @@ │ .field public pingTimeoutSec:I │ │ .field public target:Ljava/lang/String; │ │ │ # direct methods │ .method public constructor (Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ - .locals 13 │ + .locals 16 │ .param p1, "key" # Ljava/lang/String; │ .param p2, "startTime" # Ljava/util/Date; │ .param p3, "endTime" # Ljava/util/Date; │ .param p4, "intervalSec" # D │ .param p6, "count" # J │ .param p8, "priority" # J │ .annotation system Ldalvik/annotation/Signature; │ @@ -53,81 +53,95 @@ │ Ljava/security/InvalidParameterException; │ } │ .end annotation │ │ .prologue │ .line 95 │ .local p10, "params":Ljava/util/Map;, "Ljava/util/Map;" │ - const-string v2, "ping" │ + const-string v4, "ping" │ │ - move-object v1, p0 │ + move-object/from16 v3, p0 │ │ - move-object v3, p1 │ + move-object/from16 v5, p1 │ │ - move-object v4, p2 │ + move-object/from16 v6, p2 │ │ - move-object/from16 v5, p3 │ + move-object/from16 v7, p3 │ │ - move-wide/from16 v6, p4 │ + move-wide/from16 v8, p4 │ │ - move-wide/from16 v8, p6 │ + move-wide/from16 v10, p6 │ │ - move-wide/from16 v10, p8 │ + move-wide/from16 v12, p8 │ │ - move-object/from16 v12, p10 │ + move-object/from16 v14, p10 │ │ - invoke-direct/range {v1 .. v12}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ + invoke-direct/range {v3 .. v14}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ │ .line 84 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ + │ + move-object/from16 v0, p0 │ │ - iput-object v1, p0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingExe:Ljava/lang/String; │ + iput-object v2, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingExe:Ljava/lang/String; │ │ .line 86 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ │ - iput-object v1, p0, Lcom/mobiperf/measurements/PingTask$PingDesc;->target:Ljava/lang/String; │ + move-object/from16 v0, p0 │ + │ + iput-object v2, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->target:Ljava/lang/String; │ │ .line 88 │ - const/16 v1, 0x38 │ + const/16 v2, 0x38 │ + │ + move-object/from16 v0, p0 │ │ - iput v1, p0, Lcom/mobiperf/measurements/PingTask$PingDesc;->packetSizeByte:I │ + iput v2, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->packetSizeByte:I │ │ .line 89 │ - const/16 v1, 0xa │ + const/16 v2, 0xa │ + │ + move-object/from16 v0, p0 │ │ - iput v1, p0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingTimeoutSec:I │ + iput v2, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingTimeoutSec:I │ │ .line 97 │ - move-object/from16 v0, p10 │ + move-object/from16 v0, p0 │ │ - invoke-virtual {p0, v0}, Lcom/mobiperf/measurements/PingTask$PingDesc;->initializeParams(Ljava/util/Map;)V │ + move-object/from16 v1, p10 │ + │ + invoke-virtual {v0, v1}, Lcom/mobiperf/measurements/PingTask$PingDesc;->initializeParams(Ljava/util/Map;)V │ │ .line 98 │ - iget-object v1, p0, Lcom/mobiperf/measurements/PingTask$PingDesc;->target:Ljava/lang/String; │ + move-object/from16 v0, p0 │ + │ + iget-object v2, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->target:Ljava/lang/String; │ │ - if-eqz v1, :cond_0 │ + if-eqz v2, :cond_0 │ │ - iget-object v1, p0, Lcom/mobiperf/measurements/PingTask$PingDesc;->target:Ljava/lang/String; │ + move-object/from16 v0, p0 │ │ - invoke-virtual {v1}, Ljava/lang/String;->length()I │ + iget-object v2, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->target:Ljava/lang/String; │ + │ + invoke-virtual {v2}, Ljava/lang/String;->length()I │ │ - move-result v1 │ + move-result v2 │ │ - if-nez v1, :cond_1 │ + if-nez v2, :cond_1 │ │ .line 99 │ :cond_0 │ - new-instance v1, Ljava/security/InvalidParameterException; │ + new-instance v2, Ljava/security/InvalidParameterException; │ │ - const-string v2, "PingTask cannot be created due to null target string" │ + const-string v3, "PingTask cannot be created due to null target string" │ │ - invoke-direct {v1, v2}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v2, v3}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v1 │ + throw v2 │ │ .line 102 │ :cond_1 │ return-void │ .end method │ │ │ @@ -199,14 +213,15 @@ │ │ invoke-virtual {v2}, Ljava/lang/String;->length()I │ │ move-result v3 │ │ if-lez v3, :cond_2 │ │ + .line 115 │ invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v3 │ │ if-lez v3, :cond_2 │ │ .line 116 │ @@ -234,14 +249,15 @@ │ │ invoke-virtual {v2}, Ljava/lang/String;->length()I │ │ move-result v3 │ │ if-lez v3, :cond_0 │ │ + .line 119 │ invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v3 │ │ if-lez v3, :cond_0 │ │ .line 120 ├── smali/com/mobiperf/measurements/DnsLookupTask.smali │ @@ -65,257 +65,260 @@ │ │ return-object v0 │ .end method │ │ │ # virtual methods │ .method public call()Lcom/mobiperf/MeasurementResult; │ - .locals 23 │ + .locals 24 │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/mobiperf/MeasurementError; │ } │ .end annotation │ │ .prologue │ .line 105 │ - const-wide/16 v21, 0x0 │ + const-wide/16 v22, 0x0 │ │ .line 106 │ - .local v21, "totalTime":J │ - const/4 v13, 0x0 │ + .local v22, "totalTime":J │ + const/4 v14, 0x0 │ │ .line 107 │ - .local v13, "resultInet":Ljava/net/InetAddress; │ - const/4 v15, 0x0 │ + .local v14, "resultInet":Ljava/net/InetAddress; │ + const/16 v16, 0x0 │ │ .line 108 │ - .local v15, "successCnt":I │ - const/4 v10, 0x0 │ + .local v16, "successCnt":I │ + const/4 v11, 0x0 │ │ - .local v10, "i":I │ + .local v11, "i":I │ :goto_0 │ - const/4 v2, 0x1 │ + const/4 v3, 0x1 │ │ - if-ge v10, v2, :cond_1 │ + if-ge v11, v3, :cond_1 │ │ .line 110 │ :try_start_0 │ move-object/from16 v0, p0 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/DnsLookupTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - move-object/from16 v20, v0 │ + move-object/from16 v17, v0 │ │ - check-cast v20, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc; │ + check-cast v17, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc; │ │ .line 111 │ - .local v20, "taskDesc":Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc; │ - new-instance v2, Ljava/lang/StringBuilder; │ + .local v17, "taskDesc":Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc; │ + new-instance v3, Ljava/lang/StringBuilder; │ │ - invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ │ - const-string v3, "Running DNS Lookup for target " │ + const-string v4, "Running DNS Lookup for target " │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - move-object/from16 v0, v20 │ + move-object/from16 v0, v17 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->target:Ljava/lang/String; │ + iget-object v4, v0, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - invoke-static {v2}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 112 │ - new-instance v14, Ljava/util/Date; │ + new-instance v15, Ljava/util/Date; │ │ - invoke-direct {v14}, Ljava/util/Date;->()V │ + invoke-direct {v15}, Ljava/util/Date;->()V │ │ .line 113 │ - .local v14, "startTime":Ljava/util/Date; │ + .local v15, "startTime":Ljava/util/Date; │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v16 │ + move-result-wide v18 │ │ .line 114 │ - .local v16, "t1":J │ - move-object/from16 v0, v20 │ + .local v18, "t1":J │ + move-object/from16 v0, v17 │ │ - iget-object v2, v0, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->target:Ljava/lang/String; │ + iget-object v3, v0, Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc;->target:Ljava/lang/String; │ │ - invoke-static {v2}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ + invoke-static {v3}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ │ - move-result-object v11 │ + move-result-object v12 │ │ .line 115 │ - .local v11, "inet":Ljava/net/InetAddress; │ + .local v12, "inet":Ljava/net/InetAddress; │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v18 │ + move-result-wide v20 │ │ .line 116 │ - .local v18, "t2":J │ - if-eqz v11, :cond_0 │ + .local v20, "t2":J │ + if-eqz v12, :cond_0 │ │ .line 117 │ - sub-long v2, v18, v16 │ + sub-long v4, v20, v18 │ │ - add-long v21, v21, v2 │ + add-long v22, v22, v4 │ │ .line 118 │ - move-object v13, v11 │ + move-object v14, v12 │ │ .line 119 │ - add-int/lit8 v15, v15, 0x1 │ + add-int/lit8 v16, v16, 0x1 │ │ .line 121 │ :cond_0 │ - mul-int/lit8 v2, v10, 0x64 │ + mul-int/lit8 v3, v11, 0x64 │ │ - div-int/lit8 v2, v2, 0x1 │ + div-int/lit8 v3, v3, 0x1 │ │ move-object/from16 v0, p0 │ │ - iput v2, v0, Lcom/mobiperf/measurements/DnsLookupTask;->progress:I │ + iput v3, v0, Lcom/mobiperf/measurements/DnsLookupTask;->progress:I │ :try_end_0 │ .catch Ljava/net/UnknownHostException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 108 │ - add-int/lit8 v10, v10, 0x1 │ + add-int/lit8 v11, v11, 0x1 │ │ goto :goto_0 │ │ .line 122 │ - .end local v11 # "inet":Ljava/net/InetAddress; │ - .end local v14 # "startTime":Ljava/util/Date; │ - .end local v16 # "t1":J │ - .end local v18 # "t2":J │ - .end local v20 # "taskDesc":Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc; │ + .end local v12 # "inet":Ljava/net/InetAddress; │ + .end local v15 # "startTime":Ljava/util/Date; │ + .end local v17 # "taskDesc":Lcom/mobiperf/measurements/DnsLookupTask$DnsLookupDesc; │ + .end local v18 # "t1":J │ + .end local v20 # "t2":J │ :catch_0 │ - move-exception v9 │ + move-exception v10 │ │ .line 123 │ - .local v9, "e":Ljava/net/UnknownHostException; │ - new-instance v2, Lcom/mobiperf/MeasurementError; │ + .local v10, "e":Ljava/net/UnknownHostException; │ + new-instance v3, Lcom/mobiperf/MeasurementError; │ │ - const-string v3, "Cannot resovle domain name" │ + const-string v4, "Cannot resovle domain name" │ │ - invoke-direct {v2, v3}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ + invoke-direct {v3, v4}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ - throw v2 │ + throw v3 │ │ .line 127 │ - .end local v9 # "e":Ljava/net/UnknownHostException; │ + .end local v10 # "e":Ljava/net/UnknownHostException; │ :cond_1 │ - if-eqz v13, :cond_2 │ + if-eqz v14, :cond_2 │ │ .line 128 │ - const-string v2, "Successfully resolved target address" │ + const-string v3, "Successfully resolved target address" │ │ - invoke-static {v2}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 129 │ invoke-static {}, Lcom/mobiperf/util/PhoneUtils;->getPhoneUtils()Lcom/mobiperf/util/PhoneUtils; │ │ - move-result-object v12 │ + move-result-object v13 │ │ .line 130 │ - .local v12, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ - new-instance v1, Lcom/mobiperf/MeasurementResult; │ + .local v13, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + new-instance v2, Lcom/mobiperf/MeasurementResult; │ │ - invoke-virtual {v12}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ + invoke-virtual {v13}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - iget-object v2, v2, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ + iget-object v3, v3, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ - invoke-virtual {v12}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ + .line 131 │ + invoke-virtual {v13}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-string v4, "dns_lookup" │ + const-string v5, "dns_lookup" │ │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ - const-wide/16 v7, 0x3e8 │ + const-wide/16 v8, 0x3e8 │ │ - mul-long/2addr v5, v7 │ + mul-long/2addr v6, v8 │ │ - const/4 v7, 0x1 │ + const/4 v8, 0x1 │ │ move-object/from16 v0, p0 │ │ - iget-object v8, v0, Lcom/mobiperf/measurements/DnsLookupTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v9, v0, Lcom/mobiperf/measurements/DnsLookupTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - invoke-direct/range {v1 .. v8}, Lcom/mobiperf/MeasurementResult;->(Ljava/lang/String;Lcom/mobiperf/DeviceProperty;Ljava/lang/String;JZLcom/mobiperf/MeasurementDesc;)V │ + invoke-direct/range {v2 .. v9}, Lcom/mobiperf/MeasurementResult;->(Ljava/lang/String;Lcom/mobiperf/DeviceProperty;Ljava/lang/String;JZLcom/mobiperf/MeasurementDesc;)V │ │ .line 133 │ - .local v1, "result":Lcom/mobiperf/MeasurementResult; │ - const-string v2, "address" │ + .local v2, "result":Lcom/mobiperf/MeasurementResult; │ + const-string v3, "address" │ │ - invoke-virtual {v13}, Ljava/net/InetAddress;->getHostAddress()Ljava/lang/String; │ + invoke-virtual {v14}, Ljava/net/InetAddress;->getHostAddress()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v1, v2, v3}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ + invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 134 │ - const-string v2, "real_hostname" │ + const-string v3, "real_hostname" │ │ - invoke-virtual {v13}, Ljava/net/InetAddress;->getCanonicalHostName()Ljava/lang/String; │ + invoke-virtual {v14}, Ljava/net/InetAddress;->getCanonicalHostName()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v1, v2, v3}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ + invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 135 │ - const-string v2, "time_ms" │ + const-string v3, "time_ms" │ │ - int-to-long v3, v15 │ + move/from16 v0, v16 │ │ - div-long v3, v21, v3 │ + int-to-long v4, v0 │ │ - invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ + div-long v4, v22, v4 │ │ - move-result-object v3 │ + invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ │ - invoke-virtual {v1, v2, v3}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ + move-result-object v4 │ + │ + invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 136 │ - invoke-static {v1}, Lcom/mobiperf/util/MeasurementJsonConvertor;->toJsonString(Ljava/lang/Object;)Ljava/lang/String; │ + invoke-static {v2}, Lcom/mobiperf/util/MeasurementJsonConvertor;->toJsonString(Ljava/lang/Object;)Ljava/lang/String; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - invoke-static {v2}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 137 │ - return-object v1 │ + return-object v2 │ │ .line 139 │ - .end local v1 # "result":Lcom/mobiperf/MeasurementResult; │ - .end local v12 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + .end local v2 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v13 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ :cond_2 │ - new-instance v2, Lcom/mobiperf/MeasurementError; │ + new-instance v3, Lcom/mobiperf/MeasurementError; │ │ - const-string v3, "Cannot resovle domain name" │ + const-string v4, "Cannot resovle domain name" │ │ - invoke-direct {v2, v3}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ + invoke-direct {v3, v4}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ - throw v2 │ + throw v3 │ .end method │ │ .method public bridge synthetic call()Ljava/lang/Object; │ .locals 1 │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/lang/Exception; ├── smali/com/mobiperf/measurements/RRCTask$PacketMonitor.smali │ @@ -41,20 +41,20 @@ │ .line 629 │ return-void │ .end method │ │ │ # virtual methods │ .method public getPacketsSent()[J │ - .locals 5 │ + .locals 6 │ │ .prologue │ - const/4 v4, 0x1 │ + const/4 v5, 0x1 │ │ - const/4 v3, 0x0 │ + const/4 v4, 0x0 │ │ .line 671 │ const/4 v1, 0x2 │ │ new-array v0, v1, [J │ │ fill-array-data v0, :array_0 │ @@ -64,43 +64,43 @@ │ iget-boolean v1, p0, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->bySize:Z │ │ if-eqz v1, :cond_0 │ │ .line 673 │ invoke-static {}, Landroid/net/TrafficStats;->getMobileRxBytes()J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - aput-wide v1, v0, v3 │ + aput-wide v2, v0, v4 │ │ .line 674 │ invoke-static {}, Landroid/net/TrafficStats;->getMobileTxBytes()J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - aput-wide v1, v0, v4 │ + aput-wide v2, v0, v5 │ │ .line 681 │ :goto_0 │ return-object v0 │ │ .line 677 │ :cond_0 │ invoke-static {}, Landroid/net/TrafficStats;->getMobileRxPackets()J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - aput-wide v1, v0, v3 │ + aput-wide v2, v0, v4 │ │ .line 678 │ invoke-static {}, Landroid/net/TrafficStats;->getMobileTxPackets()J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - aput-wide v1, v0, v4 │ + aput-wide v2, v0, v5 │ │ goto :goto_0 │ │ .line 671 │ :array_0 │ .array-data 8 │ -0x1 ├── smali/com/mobiperf/measurements/RRCTask$RRCDesc.smali │ @@ -88,15 +88,15 @@ │ │ sput-object v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->ECHO_HOST:Ljava/lang/String; │ │ return-void │ .end method │ │ .method public constructor (Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ - .locals 13 │ + .locals 16 │ .param p1, "key" # Ljava/lang/String; │ .param p2, "startTime" # Ljava/util/Date; │ .param p3, "endTime" # Ljava/util/Date; │ .param p4, "intervalSec" # D │ .param p6, "count" # J │ .param p8, "priority" # J │ .annotation system Ldalvik/annotation/Signature; │ @@ -113,195 +113,231 @@ │ ">;)V" │ } │ .end annotation │ │ .prologue │ .line 153 │ .local p10, "params":Ljava/util/Map;, "Ljava/util/Map;" │ - const-string v2, "rrc" │ + const-string v4, "rrc" │ │ - move-object v1, p0 │ + move-object/from16 v3, p0 │ │ - move-object v3, p1 │ + move-object/from16 v5, p1 │ │ - move-object v4, p2 │ + move-object/from16 v6, p2 │ │ - move-object/from16 v5, p3 │ + move-object/from16 v7, p3 │ │ - move-wide/from16 v6, p4 │ + move-wide/from16 v8, p4 │ │ - move-wide/from16 v8, p6 │ + move-wide/from16 v10, p6 │ │ - move-wide/from16 v10, p8 │ + move-wide/from16 v12, p8 │ │ - move-object/from16 v12, p10 │ + move-object/from16 v14, p10 │ │ - invoke-direct/range {v1 .. v12}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ + invoke-direct/range {v3 .. v14}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ │ .line 101 │ - const/16 v1, 0x1f4 │ + const/16 v2, 0x1f4 │ │ - iput v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->GRANULARITY:I │ + move-object/from16 v0, p0 │ + │ + iput v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->GRANULARITY:I │ │ .line 103 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ + │ + move-object/from16 v0, p0 │ │ - iput v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->MIN:I │ + iput v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->MIN:I │ │ .line 104 │ - const/16 v1, 0x400 │ + const/16 v2, 0x400 │ │ - iput v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->MAX:I │ + move-object/from16 v0, p0 │ + │ + iput v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->MAX:I │ │ .line 106 │ - const/16 v1, 0x1f │ + const/16 v2, 0x1f │ + │ + move-object/from16 v0, p0 │ │ - iput v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->size:I │ + iput v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->size:I │ │ .line 108 │ - sget-object v1, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->ECHO_HOST:Ljava/lang/String; │ + sget-object v2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->ECHO_HOST:Ljava/lang/String; │ │ - iput-object v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->echoHost:Ljava/lang/String; │ + move-object/from16 v0, p0 │ + │ + iput-object v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->echoHost:Ljava/lang/String; │ │ .line 109 │ - sget-object v1, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->HOST:Ljava/lang/String; │ + sget-object v2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->HOST:Ljava/lang/String; │ + │ + move-object/from16 v0, p0 │ │ - iput-object v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->target:Ljava/lang/String; │ + iput-object v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->target:Ljava/lang/String; │ │ .line 110 │ - sget v1, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->PORT:I │ + sget v2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->PORT:I │ │ - iput v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->port:I │ + move-object/from16 v0, p0 │ + │ + iput v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->port:I │ │ .line 115 │ - const/16 v1, 0xf │ + const/16 v2, 0xf │ + │ + move-object/from16 v0, p0 │ │ - iput v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->GIVEUP_THRESHHOLD:I │ + iput v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->GIVEUP_THRESHHOLD:I │ │ .line 118 │ - const/4 v1, 0x1 │ + const/4 v2, 0x1 │ │ - iput-boolean v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->DNS:Z │ + move-object/from16 v0, p0 │ + │ + iput-boolean v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->DNS:Z │ │ .line 119 │ - const/4 v1, 0x1 │ + const/4 v2, 0x1 │ + │ + move-object/from16 v0, p0 │ │ - iput-boolean v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->TCP:Z │ + iput-boolean v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->TCP:Z │ │ .line 120 │ - const/4 v1, 0x1 │ + const/4 v2, 0x1 │ │ - iput-boolean v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->HTTP:Z │ + move-object/from16 v0, p0 │ + │ + iput-boolean v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->HTTP:Z │ │ .line 121 │ - const/4 v1, 0x1 │ + const/4 v2, 0x1 │ + │ + move-object/from16 v0, p0 │ │ - iput-boolean v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->RRC:Z │ + iput-boolean v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->RRC:Z │ │ .line 122 │ - const/4 v1, 0x1 │ + const/4 v2, 0x1 │ │ - iput-boolean v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->SIZES:Z │ + move-object/from16 v0, p0 │ + │ + iput-boolean v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->SIZES:Z │ │ .line 125 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ + │ + move-object/from16 v0, p0 │ │ - iput-boolean v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->RESULT_VISIBILITY:Z │ + iput-boolean v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->RESULT_VISIBILITY:Z │ │ .line 133 │ - const/16 v1, 0xc8 │ + const/16 v2, 0xc8 │ │ - iput v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->sizeGranularity:I │ + move-object/from16 v0, p0 │ + │ + iput v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->sizeGranularity:I │ │ .line 140 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ │ - iput-boolean v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->runUpperLayerTests:Z │ + move-object/from16 v0, p0 │ │ - .line 147 │ - const/4 v1, 0x7 │ + iput-boolean v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->runUpperLayerTests:Z │ │ - new-array v1, v1, [Ljava/lang/Integer; │ + .line 147 │ + const/4 v2, 0x7 │ │ - const/4 v2, 0x0 │ + new-array v2, v2, [Ljava/lang/Integer; │ │ const/4 v3, 0x0 │ │ - invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + const/4 v4, 0x0 │ │ - move-result-object v3 │ + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - aput-object v3, v1, v2 │ + move-result-object v4 │ │ - const/4 v2, 0x1 │ + aput-object v4, v2, v3 │ │ - const/4 v3, 0x2 │ + const/4 v3, 0x1 │ │ - invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + const/4 v4, 0x2 │ │ - move-result-object v3 │ + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - aput-object v3, v1, v2 │ + move-result-object v4 │ │ - const/4 v2, 0x2 │ + aput-object v4, v2, v3 │ │ - const/4 v3, 0x4 │ + const/4 v3, 0x2 │ + │ + const/4 v4, 0x4 │ │ - invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - aput-object v3, v1, v2 │ + aput-object v4, v2, v3 │ │ - const/4 v2, 0x3 │ + const/4 v3, 0x3 │ │ - const/16 v3, 0x8 │ + const/16 v4, 0x8 │ │ - invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - aput-object v3, v1, v2 │ + aput-object v4, v2, v3 │ + │ + const/4 v3, 0x4 │ │ - const/4 v2, 0x4 │ + const/16 v4, 0xc │ │ - const/16 v3, 0xc │ + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + move-result-object v4 │ │ - move-result-object v3 │ + aput-object v4, v2, v3 │ │ - aput-object v3, v1, v2 │ + const/4 v3, 0x5 │ │ - const/4 v2, 0x5 │ + const/16 v4, 0x10 │ │ - const/16 v3, 0x10 │ + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + move-result-object v4 │ │ - move-result-object v3 │ + aput-object v4, v2, v3 │ │ - aput-object v3, v1, v2 │ + const/4 v3, 0x6 │ │ - const/4 v2, 0x6 │ + const/16 v4, 0x16 │ │ - const/16 v3, 0x16 │ + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + move-result-object v4 │ │ - move-result-object v3 │ + aput-object v4, v2, v3 │ │ - aput-object v3, v1, v2 │ + move-object/from16 v0, p0 │ │ - iput-object v1, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->defaultTimesULTasks:[Ljava/lang/Integer; │ + iput-object v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->defaultTimesULTasks:[Ljava/lang/Integer; │ │ .line 155 │ - move-object/from16 v0, p10 │ + move-object/from16 v0, p0 │ │ - invoke-virtual {p0, v0}, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->initializeParams(Ljava/util/Map;)V │ + move-object/from16 v1, p10 │ + │ + invoke-virtual {v0, v1}, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->initializeParams(Ljava/util/Map;)V │ │ .line 156 │ return-void │ .end method │ │ .method static synthetic access$000(Lcom/mobiperf/measurements/RRCTask$RRCDesc;)Z │ .locals 1 │ @@ -339,23 +375,23 @@ │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 168 │ .local v5, "toprint":Ljava/lang/String; │ - const/4 v3, 0x1 │ + const/4 v1, 0x1 │ │ - .local v3, "i":I │ + .local v1, "i":I │ :goto_0 │ iget-object v6, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->times:[Ljava/lang/Integer; │ │ array-length v6, v6 │ │ - if-gt v3, v6, :cond_0 │ + if-gt v1, v6, :cond_0 │ │ .line 169 │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ @@ -368,24 +404,24 @@ │ │ const-string v7, " | state" │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ - invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 168 │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v1, v1, 0x1 │ │ goto :goto_0 │ │ .line 171 │ :cond_0 │ new-instance v6, Ljava/lang/StringBuilder; │ │ @@ -427,18 +463,18 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 175 │ - const/4 v3, 0x0 │ + const/4 v1, 0x0 │ │ :goto_1 │ - if-ge v3, v4, :cond_1 │ + if-ge v1, v4, :cond_1 │ │ .line 176 │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ @@ -452,15 +488,15 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 175 │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v1, v1, 0x1 │ │ goto :goto_1 │ │ .line 178 │ :cond_1 │ new-instance v6, Ljava/lang/StringBuilder; │ │ @@ -505,22 +541,22 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 181 │ - const/4 v3, 0x0 │ + const/4 v1, 0x0 │ │ :goto_2 │ iget-object v6, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->httpTest:[I │ │ array-length v6, v6 │ │ - if-ge v3, v6, :cond_2 │ + if-ge v1, v6, :cond_2 │ │ .line 182 │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ @@ -535,30 +571,30 @@ │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ iget-object v7, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->httpTest:[I │ │ - aget v7, v7, v3 │ + aget v7, v7, v1 │ │ invoke-static {v7}, Ljava/lang/Integer;->toString(I)Ljava/lang/String; │ │ move-result-object v7 │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 181 │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v1, v1, 0x1 │ │ goto :goto_2 │ │ .line 184 │ :cond_2 │ new-instance v6, Ljava/lang/StringBuilder; │ │ @@ -575,18 +611,18 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 185 │ - const/4 v3, 0x0 │ + const/4 v1, 0x0 │ │ :goto_3 │ - if-ge v3, v4, :cond_3 │ + if-ge v1, v4, :cond_3 │ │ .line 186 │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ @@ -600,15 +636,15 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 185 │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v1, v1, 0x1 │ │ goto :goto_3 │ │ .line 188 │ :cond_3 │ new-instance v6, Ljava/lang/StringBuilder; │ │ @@ -654,22 +690,22 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 193 │ - const/4 v3, 0x0 │ + const/4 v1, 0x0 │ │ :goto_4 │ iget-object v6, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->dnsTest:[I │ │ array-length v6, v6 │ │ - if-ge v3, v6, :cond_5 │ + if-ge v1, v6, :cond_5 │ │ .line 194 │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ @@ -684,30 +720,30 @@ │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ iget-object v7, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->dnsTest:[I │ │ - aget v7, v7, v3 │ + aget v7, v7, v1 │ │ invoke-static {v7}, Ljava/lang/Integer;->toString(I)Ljava/lang/String; │ │ move-result-object v7 │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 193 │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v1, v1, 0x1 │ │ goto :goto_4 │ │ .line 196 │ :cond_5 │ new-instance v6, Ljava/lang/StringBuilder; │ │ @@ -724,18 +760,18 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 197 │ - const/4 v3, 0x0 │ + const/4 v1, 0x0 │ │ :goto_5 │ - if-ge v3, v4, :cond_6 │ + if-ge v1, v4, :cond_6 │ │ .line 198 │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ @@ -749,15 +785,15 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 197 │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v1, v1, 0x1 │ │ goto :goto_5 │ │ .line 200 │ :cond_6 │ new-instance v6, Ljava/lang/StringBuilder; │ │ @@ -803,22 +839,22 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 205 │ - const/4 v3, 0x0 │ + const/4 v1, 0x0 │ │ :goto_6 │ iget-object v6, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->tcpTest:[I │ │ array-length v6, v6 │ │ - if-ge v3, v6, :cond_8 │ + if-ge v1, v6, :cond_8 │ │ .line 206 │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ @@ -833,30 +869,30 @@ │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ iget-object v7, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->tcpTest:[I │ │ - aget v7, v7, v3 │ + aget v7, v7, v1 │ │ invoke-static {v7}, Ljava/lang/Integer;->toString(I)Ljava/lang/String; │ │ move-result-object v7 │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 205 │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v1, v1, 0x1 │ │ goto :goto_6 │ │ .line 208 │ :cond_8 │ new-instance v6, Ljava/lang/StringBuilder; │ │ @@ -873,18 +909,18 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 209 │ - const/4 v3, 0x0 │ + const/4 v1, 0x0 │ │ :goto_7 │ - if-ge v3, v4, :cond_9 │ + if-ge v1, v4, :cond_9 │ │ .line 210 │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ @@ -898,15 +934,15 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 209 │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v1, v1, 0x1 │ │ goto :goto_7 │ │ .line 212 │ :cond_9 │ new-instance v6, Ljava/lang/StringBuilder; │ │ @@ -943,27 +979,27 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 216 │ - const/4 v3, 0x0 │ + const/4 v1, 0x0 │ │ :goto_8 │ iget-object v6, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->times:[Ljava/lang/Integer; │ │ array-length v6, v6 │ │ - if-ge v3, v6, :cond_b │ + if-ge v1, v6, :cond_b │ │ .line 217 │ iget-object v6, p0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->times:[Ljava/lang/Integer; │ │ - aget-object v6, v6, v3 │ + aget-object v6, v6, v1 │ │ invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I │ │ move-result v6 │ │ int-to-double v6, v6 │ │ @@ -971,18 +1007,18 @@ │ │ int-to-double v8, v8 │ │ mul-double/2addr v6, v8 │ │ const-wide v8, 0x408f400000000000L # 1000.0 │ │ - div-double v1, v6, v8 │ + div-double v2, v6, v8 │ │ .line 218 │ - .local v1, "curTime":D │ + .local v2, "curTime":D │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ @@ -1001,15 +1037,15 @@ │ │ const/4 v8, 0x1 │ │ new-array v8, v8, [Ljava/lang/Object; │ │ const/4 v9, 0x0 │ │ - invoke-static {v1, v2}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static {v2, v3}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ move-result-object v10 │ │ aput-object v10, v8, v9 │ │ invoke-static {v7, v8}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ │ @@ -1020,20 +1056,20 @@ │ move-result-object v6 │ │ invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ .line 216 │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v1, v1, 0x1 │ │ goto :goto_8 │ │ .line 220 │ - .end local v1 # "curTime":D │ + .end local v2 # "curTime":D │ :cond_b │ new-instance v6, Ljava/lang/StringBuilder; │ │ invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ @@ -1313,14 +1349,15 @@ │ │ invoke-virtual {v6}, Ljava/lang/String;->length()I │ │ move-result v7 │ │ if-lez v7, :cond_4 │ │ + .line 257 │ invoke-static {v6}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v7 │ │ if-lez v7, :cond_4 │ │ .line 258 │ @@ -1371,14 +1408,15 @@ │ │ invoke-virtual {v6}, Ljava/lang/String;->length()I │ │ move-result v7 │ │ if-lez v7, :cond_5 │ │ + .line 263 │ invoke-static {v6}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v7 │ │ if-lez v7, :cond_5 │ │ .line 264 │ @@ -1429,14 +1467,15 @@ │ │ invoke-virtual {v6}, Ljava/lang/String;->length()I │ │ move-result v7 │ │ if-lez v7, :cond_6 │ │ + .line 269 │ invoke-static {v6}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v7 │ │ if-lez v7, :cond_6 │ │ .line 270 │ @@ -1487,14 +1526,15 @@ │ │ invoke-virtual {v6}, Ljava/lang/String;->length()I │ │ move-result v7 │ │ if-lez v7, :cond_7 │ │ + .line 275 │ invoke-static {v6}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v7 │ │ if-lez v7, :cond_7 │ │ .line 276 │ @@ -1545,14 +1585,15 @@ │ │ invoke-virtual {v6}, Ljava/lang/String;->length()I │ │ move-result v7 │ │ if-lez v7, :cond_8 │ │ + .line 281 │ invoke-static {v6}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v7 │ │ if-lez v7, :cond_8 │ │ .line 282 │ @@ -1926,14 +1967,15 @@ │ │ invoke-virtual {v6}, Ljava/lang/String;->length()I │ │ move-result v7 │ │ if-lez v7, :cond_f │ │ + .line 317 │ invoke-static {v6}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v7 │ │ if-lez v7, :cond_f │ │ .line 318 │ @@ -1978,14 +2020,15 @@ │ │ check-cast v0, Ljava/lang/String; │ │ move-object v6, v0 │ │ if-eqz v6, :cond_11 │ │ + .line 326 │ invoke-virtual {v6}, Ljava/lang/String;->length()I │ │ move-result v7 │ │ if-lez v7, :cond_11 │ │ .line 327 │ @@ -1995,14 +2038,15 @@ │ │ move-result-object v5 │ │ .line 328 │ .local v5, "timesString":[Ljava/lang/String; │ new-instance v4, Ljava/util/ArrayList; │ │ + .line 329 │ invoke-static {v5}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List; │ │ move-result-object v7 │ │ invoke-direct {v4, v7}, Ljava/util/ArrayList;->(Ljava/util/Collection;)V │ │ .line 330 ├── smali/com/mobiperf/measurements/RRCTask$RRCTestData.smali │ @@ -223,42 +223,42 @@ │ aput v1, v0, p1 │ │ .line 563 │ return-void │ .end method │ │ .method public setRrcSizeTestData(IIJJ)V │ - .locals 8 │ + .locals 9 │ .param p1, "index" # I │ .param p2, "size" # I │ .param p3, "result" # J │ .param p5, "testId" # J │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/mobiperf/MeasurementError; │ } │ .end annotation │ │ .prologue │ .line 593 │ - iget-object v7, p0, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->packetSizes:Ljava/util/ArrayList; │ + iget-object v0, p0, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->packetSizes:Ljava/util/ArrayList; │ │ - new-instance v0, Lcom/mobiperf/measurements/RRCTask$RrcSizeTestData; │ + new-instance v1, Lcom/mobiperf/measurements/RRCTask$RrcSizeTestData; │ │ - move v1, p1 │ + move v2, p1 │ │ - move v2, p2 │ + move v3, p2 │ │ - move-wide v3, p3 │ + move-wide v4, p3 │ │ - move-wide v5, p5 │ + move-wide v6, p5 │ │ - invoke-direct/range {v0 .. v6}, Lcom/mobiperf/measurements/RRCTask$RrcSizeTestData;->(IIJJ)V │ + invoke-direct/range {v1 .. v7}, Lcom/mobiperf/measurements/RRCTask$RrcSizeTestData;->(IIJJ)V │ │ - invoke-virtual {v7, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ + invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ │ .line 594 │ return-void │ .end method │ │ .method public sizeDataToJSON(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String; │ .locals 4 │ @@ -289,14 +289,15 @@ │ move-result v3 │ │ if-ge v1, v3, :cond_0 │ │ .line 600 │ iget-object v3, p0, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->packetSizes:Ljava/util/ArrayList; │ │ + .line 601 │ invoke-virtual {v3, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; │ │ move-result-object v3 │ │ check-cast v3, Lcom/mobiperf/measurements/RRCTask$RrcSizeTestData; │ │ invoke-virtual {v3, p1, p2}, Lcom/mobiperf/measurements/RRCTask$RrcSizeTestData;->toJSON(Ljava/lang/String;Ljava/lang/String;)Lorg/json/JSONObject; │ @@ -339,15 +340,15 @@ │ .line 521 │ iget-wide v0, p0, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->testId:J │ │ return-wide v0 │ .end method │ │ .method public toJSON(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String; │ - .locals 7 │ + .locals 8 │ .param p1, "networktype" # Ljava/lang/String; │ .param p2, "phoneId" # Ljava/lang/String; │ │ .prologue │ .line 525 │ iget-object v4, p0, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->rttsSmall:[I │ │ @@ -455,17 +456,17 @@ │ const-string v4, "time_delay" │ │ invoke-virtual {v3, v4, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; │ │ .line 539 │ const-string v4, "test_id" │ │ - iget-wide v5, p0, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->testId:J │ + iget-wide v6, p0, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->testId:J │ │ - invoke-virtual {v3, v4, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject; │ + invoke-virtual {v3, v4, v6, v7}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject; │ │ .line 540 │ const-string v4, "phone_id" │ │ invoke-virtual {v3, v4, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; │ │ .line 541 │ @@ -482,17 +483,17 @@ │ │ const-string v5, "Test ID for rrc inference test was " │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ - iget-wide v5, p0, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->testId:J │ + iget-wide v6, p0, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->testId:J │ │ - invoke-virtual {v4, v5, v6}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v4 ├── smali/com/mobiperf/measurements/RRCTask$RrcSizeTestData.smali │ @@ -22,15 +22,15 @@ │ .field testId:J │ │ .field time:I │ │ │ # direct methods │ .method public constructor (IIJJ)V │ - .locals 0 │ + .locals 1 │ .param p1, "time" # I │ .param p2, "size" # I │ .param p3, "result" # J │ .param p5, "testId" # J │ │ .prologue │ .line 432 ├── smali/com/mobiperf/measurements/RRCTask.smali │ @@ -84,15 +84,15 @@ │ iput-object p2, p0, Lcom/mobiperf/measurements/RRCTask;->context:Landroid/content/Context; │ │ .line 707 │ return-void │ .end method │ │ .method private constructResultStandard(Lcom/mobiperf/measurements/RRCTask$RRCDesc;)Lcom/mobiperf/MeasurementResult; │ - .locals 11 │ + .locals 12 │ .param p1, "desc" # Lcom/mobiperf/measurements/RRCTask$RRCDesc; │ │ .prologue │ .line 749 │ invoke-static {}, Lcom/mobiperf/util/PhoneUtils;->getPhoneUtils()Lcom/mobiperf/util/PhoneUtils; │ │ move-result-object v8 │ @@ -101,33 +101,36 @@ │ .local v8, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ const/4 v6, 0x1 │ │ .line 751 │ .local v6, "success":Z │ new-instance v0, Lcom/mobiperf/MeasurementResult; │ │ + .line 752 │ invoke-virtual {v8}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ move-result-object v1 │ │ iget-object v1, v1, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ + .line 753 │ invoke-virtual {v8}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ │ move-result-object v2 │ │ const-string v3, "rrc" │ │ + .line 754 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v4 │ │ - const-wide/16 v9, 0x3e8 │ + const-wide/16 v10, 0x3e8 │ │ - mul-long/2addr v4, v9 │ + mul-long/2addr v4, v10 │ │ iget-object v7, p0, Lcom/mobiperf/measurements/RRCTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ invoke-direct/range {v0 .. v7}, Lcom/mobiperf/MeasurementResult;->(Ljava/lang/String;Lcom/mobiperf/DeviceProperty;Ljava/lang/String;JZLcom/mobiperf/MeasurementDesc;)V │ │ .line 756 │ .local v0, "result":Lcom/mobiperf/MeasurementResult; │ @@ -181,14 +184,15 @@ │ monitor-enter v4 │ │ :try_start_0 │ const-string v3, "test_ids" │ │ const/4 v5, 0x0 │ │ + .line 1609 │ invoke-virtual {p0, v3, v5}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences; │ │ move-result-object v1 │ │ .line 1610 │ .local v1, "prefs":Landroid/content/SharedPreferences; │ const-string v3, "test_id" │ @@ -301,14 +305,15 @@ │ .line 1279 │ mul-int/lit8 v0, v2, 0x64 │ │ iget v1, p2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->size:I │ │ div-int/2addr v0, v1 │ │ + .line 1280 │ invoke-static {v6, v0}, Ljava/lang/Math;->min(II)I │ │ move-result v0 │ │ iput v0, p0, Lcom/mobiperf/measurements/RRCTask;->progress:I │ │ .line 1282 │ @@ -361,28 +366,29 @@ │ .line 1292 │ mul-int/lit8 v0, v2, 0x5a │ │ iget v1, p2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->size:I │ │ div-int/2addr v0, v1 │ │ + .line 1293 │ invoke-static {v6, v0}, Ljava/lang/Math;->min(II)I │ │ move-result v0 │ │ iput v0, p0, Lcom/mobiperf/measurements/RRCTask;->progress:I │ │ .line 1278 │ add-int/lit8 v2, v2, 0x1 │ │ goto :goto_0 │ .end method │ │ .method public static inferDemotionHelper(Ljava/net/InetAddress;ILcom/mobiperf/measurements/RRCTask$RRCTestData;Lcom/mobiperf/measurements/RRCTask$RRCDesc;ILcom/mobiperf/util/PhoneUtils;)[J │ - .locals 19 │ + .locals 20 │ .param p0, "serverAddr" # Ljava/net/InetAddress; │ .param p1, "wait" # I │ .param p2, "data" # Lcom/mobiperf/measurements/RRCTask$RRCTestData; │ .param p3, "desc" # Lcom/mobiperf/measurements/RRCTask$RRCDesc; │ .param p4, "index" # I │ .param p5, "utils" # Lcom/mobiperf/util/PhoneUtils; │ .annotation system Ldalvik/annotation/Throws; │ @@ -390,22 +396,22 @@ │ Ljava/io/IOException;, │ Ljava/lang/InterruptedException; │ } │ .end annotation │ │ .prologue │ .line 1538 │ - const-wide/16 v15, -0x1 │ + const-wide/16 v16, -0x1 │ │ .line 1539 │ - .local v15, "rttLargePacket":J │ - const-wide/16 v17, -0x1 │ + .local v16, "rttLargePacket":J │ + const-wide/16 v18, -0x1 │ │ .line 1540 │ - .local v17, "rttSmallPacket":J │ + .local v18, "rttSmallPacket":J │ const/4 v6, 0x0 │ │ .line 1541 │ .local v6, "packetsLostSmall":I │ const/4 v7, 0x0 │ │ .line 1543 │ @@ -491,14 +497,15 @@ │ │ iget v4, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->MIN:I │ │ move-object/from16 v0, p3 │ │ iget v5, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->port:I │ │ + .line 1562 │ move-object/from16 v0, p0 │ │ invoke-static {v0, v2, v3, v4, v5}, Lcom/mobiperf/measurements/RRCTask;->sendMultiPackets(Ljava/net/InetAddress;IIII)[J │ │ move-result-object v14 │ │ .line 1563 │ @@ -508,15 +515,15 @@ │ aget-wide v2, v14, v2 │ │ long-to-int v6, v2 │ │ .line 1564 │ const/4 v2, 0x0 │ │ - aget-wide v15, v14, v2 │ + aget-wide v16, v14, v2 │ │ .line 1567 │ move-object/from16 v0, p3 │ │ iget v2, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->GRANULARITY:I │ │ mul-int v2, v2, p1 │ @@ -557,15 +564,15 @@ │ aget-wide v2, v14, v2 │ │ long-to-int v7, v2 │ │ .line 1573 │ const/4 v2, 0x0 │ │ - aget-wide v17, v14, v2 │ + aget-wide v18, v14, v2 │ │ .line 1575 │ const/16 v2, 0x15 │ │ const/16 v3, 0x15 │ │ invoke-virtual {v13, v2, v3}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->isTrafficInterfering(II)Z │ @@ -584,27 +591,27 @@ │ │ const-string v3, "3G demotion, lower bound: rtts are:" │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ - move-wide v0, v15 │ + move-wide/from16 v0, v16 │ │ invoke-virtual {v2, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ const-string v3, " " │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ - move-wide/from16 v0, v17 │ + move-wide/from16 v0, v18 │ │ invoke-virtual {v2, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ const-string v3, " " │ │ @@ -635,25 +642,27 @@ │ .line 1593 │ const/4 v2, 0x2 │ │ new-array v14, v2, [J │ │ const/4 v2, 0x0 │ │ - aput-wide v15, v14, v2 │ + aput-wide v16, v14, v2 │ │ const/4 v2, 0x1 │ │ - aput-wide v17, v14, v2 │ + aput-wide v18, v14, v2 │ │ .line 1594 │ .restart local v14 # "retval":[J │ - long-to-int v4, v15 │ + move-wide/from16 v0, v16 │ + │ + long-to-int v4, v0 │ │ - move-wide/from16 v0, v17 │ + move-wide/from16 v0, v18 │ │ long-to-int v5, v0 │ │ move-object/from16 v2, p2 │ │ move/from16 v3, p4 │ │ @@ -666,18 +675,18 @@ │ .restart local v13 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ :cond_1 │ const-string v2, "Try again." │ │ invoke-static {v2}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1579 │ - const-wide/16 v15, -0x1 │ + const-wide/16 v16, -0x1 │ │ .line 1580 │ - const-wide/16 v17, -0x1 │ + const-wide/16 v18, -0x1 │ │ .line 1581 │ const/4 v6, 0x0 │ │ .line 1582 │ const/4 v7, 0x0 │ │ @@ -858,640 +867,642 @@ │ :cond_1 │ add-int/lit8 v0, v0, 0x1 │ │ goto :goto_0 │ .end method │ │ .method private runHTTPTest([Ljava/lang/Integer;Lcom/mobiperf/measurements/RRCTask$RRCDesc;)V │ - .locals 27 │ + .locals 28 │ .param p1, "times" # [Ljava/lang/Integer; │ .param p2, "desc" # Lcom/mobiperf/measurements/RRCTask$RRCDesc; │ │ .prologue │ .line 936 │ - const-string v23, "Active inference HTTP test: about to begin" │ + const-string v24, "Active inference HTTP test: about to begin" │ │ - invoke-static/range {v23 .. v23}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static/range {v24 .. v24}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 937 │ move-object/from16 v0, p1 │ │ array-length v0, v0 │ │ - move/from16 v23, v0 │ + move/from16 v24, v0 │ │ move-object/from16 v0, p2 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->httpTest:[I │ │ - move-object/from16 v24, v0 │ + move-object/from16 v25, v0 │ │ - move-object/from16 v0, v24 │ + move-object/from16 v0, v25 │ │ array-length v0, v0 │ │ - move/from16 v24, v0 │ + move/from16 v25, v0 │ │ - move/from16 v0, v23 │ + move/from16 v0, v24 │ │ - move/from16 v1, v24 │ + move/from16 v1, v25 │ │ if-eq v0, v1, :cond_0 │ │ .line 938 │ move-object/from16 v0, p1 │ │ array-length v0, v0 │ │ - move/from16 v23, v0 │ + move/from16 v24, v0 │ │ - move/from16 v0, v23 │ + move/from16 v0, v24 │ │ new-array v0, v0, [I │ │ - move-object/from16 v23, v0 │ + move-object/from16 v24, v0 │ │ - move-object/from16 v0, v23 │ + move-object/from16 v0, v24 │ │ move-object/from16 v1, p2 │ │ iput-object v0, v1, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->httpTest:[I │ │ .line 940 │ :cond_0 │ - const-wide/16 v20, 0x0 │ + const-wide/16 v22, 0x0 │ │ .line 941 │ - .local v20, "startTime":J │ - const-wide/16 v7, 0x0 │ + .local v22, "startTime":J │ + const-wide/16 v8, 0x0 │ │ .line 945 │ - .local v7, "endTime":J │ - const/4 v9, 0x0 │ + .local v8, "endTime":J │ + const/4 v10, 0x0 │ │ - .local v9, "i":I │ + .local v10, "i":I │ :goto_0 │ :try_start_0 │ move-object/from16 v0, p1 │ │ array-length v0, v0 │ │ - move/from16 v23, v0 │ + move/from16 v24, v0 │ │ - move/from16 v0, v23 │ + move/from16 v0, v24 │ │ - if-ge v9, v0, :cond_1 │ + if-ge v10, v0, :cond_1 │ │ .line 948 │ - const/4 v11, 0x0 │ + const/4 v12, 0x0 │ │ - .local v11, "j":I │ + .local v12, "j":I │ :goto_1 │ move-object/from16 v0, p2 │ │ iget v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->GIVEUP_THRESHHOLD:I │ │ - move/from16 v23, v0 │ + move/from16 v24, v0 │ │ - move/from16 v0, v23 │ + move/from16 v0, v24 │ │ - if-ge v11, v0, :cond_5 │ + if-ge v12, v0, :cond_5 │ │ .line 950 │ invoke-virtual/range {p0 .. p0}, Lcom/mobiperf/measurements/RRCTask;->checkIfWifi()V │ │ .line 951 │ move-object/from16 v0, p0 │ │ iget-boolean v0, v0, Lcom/mobiperf/measurements/RRCTask;->stop:Z │ │ - move/from16 v23, v0 │ + move/from16 v24, v0 │ │ - if-eqz v23, :cond_2 │ + if-eqz v24, :cond_2 │ │ .line 1044 │ - .end local v11 # "j":I │ + .end local v12 # "j":I │ :cond_1 │ :goto_2 │ return-void │ │ .line 965 │ - .restart local v11 # "j":I │ + .restart local v12 # "j":I │ :cond_2 │ - new-instance v4, Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + new-instance v5, Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ │ - invoke-direct {v4}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->()V │ + invoke-direct {v5}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->()V │ │ .line 966 │ - .local v4, "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - invoke-virtual {v4}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->setBySize()V │ + .local v5, "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + invoke-virtual {v5}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->setBySize()V │ │ .line 967 │ - invoke-virtual {v4}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->readCurrentPacketValues()V │ + invoke-virtual {v5}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->readCurrentPacketValues()V │ :try_end_0 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_3 │ .catch Ljava/net/URISyntaxException; {:try_start_0 .. :try_end_0} :catch_5 │ │ .line 974 │ - const/16 v23, 0x1 │ + const/16 v24, 0x1 │ │ - const/16 v24, 0x0 │ + const/16 v25, 0x0 │ │ :try_start_1 │ - invoke-static/range {v23 .. v24}, Lcom/mobiperf/measurements/RRCTask;->waitTime(IZ)V │ + invoke-static/range {v24 .. v25}, Lcom/mobiperf/measurements/RRCTask;->waitTime(IZ)V │ │ .line 976 │ move-object/from16 v0, p2 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->echoHost:Ljava/lang/String; │ │ - move-object/from16 v23, v0 │ + move-object/from16 v24, v0 │ │ - invoke-static/range {v23 .. v23}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ + invoke-static/range {v24 .. v24}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ │ - move-result-object v19 │ + move-result-object v20 │ │ .line 977 │ - .local v19, "serverAddr":Ljava/net/InetAddress; │ + .local v20, "serverAddr":Ljava/net/InetAddress; │ move-object/from16 v0, p2 │ │ iget v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->MAX:I │ │ - move/from16 v23, v0 │ + move/from16 v24, v0 │ │ - move-object/from16 v0, v19 │ + move-object/from16 v0, v20 │ │ - move/from16 v1, v23 │ + move/from16 v1, v24 │ │ move-object/from16 v2, p2 │ │ invoke-static {v0, v1, v2}, Lcom/mobiperf/measurements/RRCTask;->sendPacket(Ljava/net/InetAddress;ILcom/mobiperf/measurements/RRCTask$RRCDesc;)J │ │ .line 978 │ - new-instance v13, Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + new-instance v14, Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ │ - invoke-direct {v13}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->()V │ + invoke-direct {v14}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->()V │ │ .line 980 │ - .local v13, "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - aget-object v23, p1, v9 │ + .local v14, "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + aget-object v24, p1, v10 │ │ - invoke-virtual/range {v23 .. v23}, Ljava/lang/Integer;->intValue()I │ + invoke-virtual/range {v24 .. v24}, Ljava/lang/Integer;->intValue()I │ │ - move-result v23 │ + move-result v24 │ │ move-object/from16 v0, p2 │ │ iget v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->GRANULARITY:I │ │ - move/from16 v24, v0 │ + move/from16 v25, v0 │ │ - mul-int v23, v23, v24 │ + mul-int v24, v24, v25 │ │ - const/16 v24, 0x1 │ + const/16 v25, 0x1 │ │ - invoke-static/range {v23 .. v24}, Lcom/mobiperf/measurements/RRCTask;->waitTime(IZ)V │ + invoke-static/range {v24 .. v25}, Lcom/mobiperf/measurements/RRCTask;->waitTime(IZ)V │ :try_end_1 │ .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_1 │ .catch Ljava/net/UnknownHostException; {:try_start_1 .. :try_end_1} :catch_2 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_4 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_1 .. :try_end_1} :catch_0 │ .catch Ljava/net/URISyntaxException; {:try_start_1 .. :try_end_1} :catch_5 │ │ .line 992 │ :try_start_2 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v20 │ + move-result-wide v22 │ │ .line 996 │ - const/16 v23, 0x3 │ + const/16 v24, 0x3 │ │ - const/16 v24, 0x46 │ + const/16 v25, 0x46 │ │ - move/from16 v0, v23 │ + move/from16 v0, v24 │ │ - move/from16 v1, v24 │ + move/from16 v1, v25 │ │ - invoke-virtual {v13, v0, v1}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->isTrafficInterfering(II)Z │ + invoke-virtual {v14, v0, v1}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->isTrafficInterfering(II)Z │ │ - move-result v23 │ + move-result v24 │ │ - if-nez v23, :cond_3 │ + if-nez v24, :cond_3 │ │ - const/16 v22, 0x1 │ + const/16 v21, 0x1 │ │ .line 997 │ - .local v22, "success":Z │ + .local v21, "success":Z │ :goto_3 │ - new-instance v3, Lorg/apache/http/impl/client/DefaultHttpClient; │ + new-instance v4, Lorg/apache/http/impl/client/DefaultHttpClient; │ │ - invoke-direct {v3}, Lorg/apache/http/impl/client/DefaultHttpClient;->()V │ + invoke-direct {v4}, Lorg/apache/http/impl/client/DefaultHttpClient;->()V │ │ .line 998 │ - .local v3, "client":Lorg/apache/http/client/HttpClient; │ - new-instance v14, Lorg/apache/http/client/methods/HttpGet; │ + .local v4, "client":Lorg/apache/http/client/HttpClient; │ + new-instance v15, Lorg/apache/http/client/methods/HttpGet; │ │ - invoke-direct {v14}, Lorg/apache/http/client/methods/HttpGet;->()V │ + invoke-direct {v15}, Lorg/apache/http/client/methods/HttpGet;->()V │ │ .line 1000 │ - .local v14, "request":Lorg/apache/http/client/methods/HttpGet; │ - new-instance v23, Ljava/net/URI; │ + .local v15, "request":Lorg/apache/http/client/methods/HttpGet; │ + new-instance v24, Ljava/net/URI; │ │ - new-instance v24, Ljava/lang/StringBuilder; │ + new-instance v25, Ljava/lang/StringBuilder; │ │ - invoke-direct/range {v24 .. v24}, Ljava/lang/StringBuilder;->()V │ + invoke-direct/range {v25 .. v25}, Ljava/lang/StringBuilder;->()V │ │ - const-string v25, "http://" │ + const-string v26, "http://" │ │ - invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v24 │ + move-result-object v25 │ │ move-object/from16 v0, p2 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->target:Ljava/lang/String; │ │ - move-object/from16 v25, v0 │ + move-object/from16 v26, v0 │ │ - invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v24 │ + move-result-object v25 │ │ - const-string v25, "?dummy=" │ + const-string v26, "?dummy=" │ │ - invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v24 │ + move-result-object v25 │ │ - move-object/from16 v0, v24 │ + move-object/from16 v0, v25 │ │ - invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v24 │ + move-result-object v25 │ │ - const-string v25, "" │ + const-string v26, "" │ │ - invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v24 │ + move-result-object v25 │ │ - move-object/from16 v0, v24 │ + move-object/from16 v0, v25 │ │ - invoke-virtual {v0, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v0, v12}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v24 │ + move-result-object v25 │ │ - invoke-virtual/range {v24 .. v24}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual/range {v25 .. v25}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v24 │ + move-result-object v25 │ │ - invoke-direct/range {v23 .. v24}, Ljava/net/URI;->(Ljava/lang/String;)V │ + invoke-direct/range {v24 .. v25}, Ljava/net/URI;->(Ljava/lang/String;)V │ │ - move-object/from16 v0, v23 │ + move-object/from16 v0, v24 │ │ - invoke-virtual {v14, v0}, Lorg/apache/http/client/methods/HttpGet;->setURI(Ljava/net/URI;)V │ + invoke-virtual {v15, v0}, Lorg/apache/http/client/methods/HttpGet;->setURI(Ljava/net/URI;)V │ │ .line 1002 │ - invoke-interface {v3, v14}, Lorg/apache/http/client/HttpClient;->execute(Lorg/apache/http/client/methods/HttpUriRequest;)Lorg/apache/http/HttpResponse; │ + invoke-interface {v4, v15}, Lorg/apache/http/client/HttpClient;->execute(Lorg/apache/http/client/methods/HttpUriRequest;)Lorg/apache/http/HttpResponse; │ │ - move-result-object v15 │ + move-result-object v16 │ │ .line 1003 │ - .local v15, "response":Lorg/apache/http/HttpResponse; │ + .local v16, "response":Lorg/apache/http/HttpResponse; │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v7 │ + move-result-wide v8 │ │ .line 1005 │ - const/4 v10, 0x0 │ + const/4 v11, 0x0 │ │ .line 1006 │ - .local v10, "in":Ljava/io/BufferedReader; │ - new-instance v10, Ljava/io/BufferedReader; │ + .local v11, "in":Ljava/io/BufferedReader; │ + new-instance v11, Ljava/io/BufferedReader; │ │ - .end local v10 # "in":Ljava/io/BufferedReader; │ - new-instance v23, Ljava/io/InputStreamReader; │ + .end local v11 # "in":Ljava/io/BufferedReader; │ + new-instance v24, Ljava/io/InputStreamReader; │ │ - invoke-interface {v15}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; │ + .line 1007 │ + invoke-interface/range {v16 .. v16}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; │ │ - move-result-object v24 │ + move-result-object v25 │ │ - invoke-interface/range {v24 .. v24}, Lorg/apache/http/HttpEntity;->getContent()Ljava/io/InputStream; │ + .line 1008 │ + invoke-interface/range {v25 .. v25}, Lorg/apache/http/HttpEntity;->getContent()Ljava/io/InputStream; │ │ - move-result-object v24 │ + move-result-object v25 │ │ - invoke-direct/range {v23 .. v24}, Ljava/io/InputStreamReader;->(Ljava/io/InputStream;)V │ + invoke-direct/range {v24 .. v25}, Ljava/io/InputStreamReader;->(Ljava/io/InputStream;)V │ │ - move-object/from16 v0, v23 │ + move-object/from16 v0, v24 │ │ - invoke-direct {v10, v0}, Ljava/io/BufferedReader;->(Ljava/io/Reader;)V │ + invoke-direct {v11, v0}, Ljava/io/BufferedReader;->(Ljava/io/Reader;)V │ │ .line 1009 │ - .restart local v10 # "in":Ljava/io/BufferedReader; │ - new-instance v18, Ljava/lang/StringBuffer; │ + .restart local v11 # "in":Ljava/io/BufferedReader; │ + new-instance v17, Ljava/lang/StringBuffer; │ │ - const-string v23, "" │ + const-string v24, "" │ │ - move-object/from16 v0, v18 │ + move-object/from16 v0, v17 │ │ - move-object/from16 v1, v23 │ + move-object/from16 v1, v24 │ │ invoke-direct {v0, v1}, Ljava/lang/StringBuffer;->(Ljava/lang/String;)V │ │ .line 1010 │ - .local v18, "sb":Ljava/lang/StringBuffer; │ - const-string v12, "" │ + .local v17, "sb":Ljava/lang/StringBuffer; │ + const-string v13, "" │ │ .line 1012 │ - .local v12, "line":Ljava/lang/String; │ + .local v13, "line":Ljava/lang/String; │ :goto_4 │ - invoke-virtual {v10}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String; │ │ - move-result-object v12 │ + move-result-object v13 │ │ - if-eqz v12, :cond_4 │ + if-eqz v13, :cond_4 │ │ .line 1013 │ - new-instance v23, Ljava/lang/StringBuilder; │ + new-instance v24, Ljava/lang/StringBuilder; │ │ - invoke-direct/range {v23 .. v23}, Ljava/lang/StringBuilder;->()V │ + invoke-direct/range {v24 .. v24}, Ljava/lang/StringBuilder;->()V │ │ - move-object/from16 v0, v23 │ + move-object/from16 v0, v24 │ │ - invoke-virtual {v0, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v0, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v23 │ + move-result-object v24 │ │ - const-string v24, "\n" │ + const-string v25, "\n" │ │ - invoke-virtual/range {v23 .. v24}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v23 │ + move-result-object v24 │ │ - invoke-virtual/range {v23 .. v23}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual/range {v24 .. v24}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v23 │ + move-result-object v24 │ │ - move-object/from16 v0, v18 │ + move-object/from16 v0, v17 │ │ - move-object/from16 v1, v23 │ + move-object/from16 v1, v24 │ │ invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; │ :try_end_2 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_2 .. :try_end_2} :catch_0 │ .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_3 │ .catch Ljava/net/URISyntaxException; {:try_start_2 .. :try_end_2} :catch_5 │ │ goto :goto_4 │ │ .line 1037 │ - .end local v3 # "client":Lorg/apache/http/client/HttpClient; │ - .end local v4 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v10 # "in":Ljava/io/BufferedReader; │ - .end local v11 # "j":I │ - .end local v12 # "line":Ljava/lang/String; │ - .end local v13 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v14 # "request":Lorg/apache/http/client/methods/HttpGet; │ - .end local v15 # "response":Lorg/apache/http/HttpResponse; │ - .end local v18 # "sb":Ljava/lang/StringBuffer; │ - .end local v19 # "serverAddr":Ljava/net/InetAddress; │ - .end local v22 # "success":Z │ + .end local v4 # "client":Lorg/apache/http/client/HttpClient; │ + .end local v5 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .end local v11 # "in":Ljava/io/BufferedReader; │ + .end local v12 # "j":I │ + .end local v13 # "line":Ljava/lang/String; │ + .end local v14 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .end local v15 # "request":Lorg/apache/http/client/methods/HttpGet; │ + .end local v16 # "response":Lorg/apache/http/HttpResponse; │ + .end local v17 # "sb":Ljava/lang/StringBuffer; │ + .end local v20 # "serverAddr":Ljava/net/InetAddress; │ + .end local v21 # "success":Z │ :catch_0 │ - move-exception v5 │ + move-exception v6 │ │ .line 1038 │ - .local v5, "e":Lorg/apache/http/client/ClientProtocolException; │ - invoke-virtual {v5}, Lorg/apache/http/client/ClientProtocolException;->printStackTrace()V │ + .local v6, "e":Lorg/apache/http/client/ClientProtocolException; │ + invoke-virtual {v6}, Lorg/apache/http/client/ClientProtocolException;->printStackTrace()V │ │ goto/16 :goto_2 │ │ .line 982 │ - .end local v5 # "e":Lorg/apache/http/client/ClientProtocolException; │ - .restart local v4 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .restart local v11 # "j":I │ + .end local v6 # "e":Lorg/apache/http/client/ClientProtocolException; │ + .restart local v5 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .restart local v12 # "j":I │ :catch_1 │ - move-exception v6 │ + move-exception v7 │ │ .line 983 │ - .local v6, "e1":Ljava/lang/InterruptedException; │ + .local v7, "e1":Ljava/lang/InterruptedException; │ :try_start_3 │ - invoke-virtual {v6}, Ljava/lang/InterruptedException;->printStackTrace()V │ + invoke-virtual {v7}, Ljava/lang/InterruptedException;->printStackTrace()V │ │ .line 948 │ - .end local v6 # "e1":Ljava/lang/InterruptedException; │ + .end local v7 # "e1":Ljava/lang/InterruptedException; │ :goto_5 │ - add-int/lit8 v11, v11, 0x1 │ + add-int/lit8 v12, v12, 0x1 │ │ goto/16 :goto_1 │ │ .line 985 │ :catch_2 │ - move-exception v5 │ + move-exception v6 │ │ .line 986 │ - .local v5, "e":Ljava/net/UnknownHostException; │ - invoke-virtual {v5}, Ljava/net/UnknownHostException;->printStackTrace()V │ + .local v6, "e":Ljava/net/UnknownHostException; │ + invoke-virtual {v6}, Ljava/net/UnknownHostException;->printStackTrace()V │ :try_end_3 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_3 .. :try_end_3} :catch_0 │ .catch Ljava/io/IOException; {:try_start_3 .. :try_end_3} :catch_3 │ .catch Ljava/net/URISyntaxException; {:try_start_3 .. :try_end_3} :catch_5 │ │ goto :goto_5 │ │ .line 1039 │ - .end local v4 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v5 # "e":Ljava/net/UnknownHostException; │ - .end local v11 # "j":I │ + .end local v5 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .end local v6 # "e":Ljava/net/UnknownHostException; │ + .end local v12 # "j":I │ :catch_3 │ - move-exception v5 │ + move-exception v6 │ │ .line 1040 │ - .local v5, "e":Ljava/io/IOException; │ - invoke-virtual {v5}, Ljava/io/IOException;->printStackTrace()V │ + .local v6, "e":Ljava/io/IOException; │ + invoke-virtual {v6}, Ljava/io/IOException;->printStackTrace()V │ │ goto/16 :goto_2 │ │ .line 988 │ - .end local v5 # "e":Ljava/io/IOException; │ - .restart local v4 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .restart local v11 # "j":I │ + .end local v6 # "e":Ljava/io/IOException; │ + .restart local v5 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .restart local v12 # "j":I │ :catch_4 │ - move-exception v5 │ + move-exception v6 │ │ .line 989 │ - .restart local v5 # "e":Ljava/io/IOException; │ + .restart local v6 # "e":Ljava/io/IOException; │ :try_start_4 │ - invoke-virtual {v5}, Ljava/io/IOException;->printStackTrace()V │ + invoke-virtual {v6}, Ljava/io/IOException;->printStackTrace()V │ :try_end_4 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_4 .. :try_end_4} :catch_0 │ .catch Ljava/io/IOException; {:try_start_4 .. :try_end_4} :catch_3 │ .catch Ljava/net/URISyntaxException; {:try_start_4 .. :try_end_4} :catch_5 │ │ goto :goto_5 │ │ .line 1041 │ - .end local v4 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v5 # "e":Ljava/io/IOException; │ - .end local v11 # "j":I │ + .end local v5 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .end local v6 # "e":Ljava/io/IOException; │ + .end local v12 # "j":I │ :catch_5 │ - move-exception v5 │ + move-exception v6 │ │ .line 1042 │ - .local v5, "e":Ljava/net/URISyntaxException; │ - invoke-virtual {v5}, Ljava/net/URISyntaxException;->printStackTrace()V │ + .local v6, "e":Ljava/net/URISyntaxException; │ + invoke-virtual {v6}, Ljava/net/URISyntaxException;->printStackTrace()V │ │ goto/16 :goto_2 │ │ .line 996 │ - .end local v5 # "e":Ljava/net/URISyntaxException; │ - .restart local v4 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .restart local v11 # "j":I │ - .restart local v13 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .restart local v19 # "serverAddr":Ljava/net/InetAddress; │ + .end local v6 # "e":Ljava/net/URISyntaxException; │ + .restart local v5 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .restart local v12 # "j":I │ + .restart local v14 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .restart local v20 # "serverAddr":Ljava/net/InetAddress; │ :cond_3 │ - const/16 v22, 0x0 │ + const/16 v21, 0x0 │ │ goto/16 :goto_3 │ │ .line 1015 │ - .restart local v3 # "client":Lorg/apache/http/client/HttpClient; │ - .restart local v10 # "in":Ljava/io/BufferedReader; │ - .restart local v12 # "line":Ljava/lang/String; │ - .restart local v14 # "request":Lorg/apache/http/client/methods/HttpGet; │ - .restart local v15 # "response":Lorg/apache/http/HttpResponse; │ - .restart local v18 # "sb":Ljava/lang/StringBuffer; │ - .restart local v22 # "success":Z │ + .restart local v4 # "client":Lorg/apache/http/client/HttpClient; │ + .restart local v11 # "in":Ljava/io/BufferedReader; │ + .restart local v13 # "line":Ljava/lang/String; │ + .restart local v15 # "request":Lorg/apache/http/client/methods/HttpGet; │ + .restart local v16 # "response":Lorg/apache/http/HttpResponse; │ + .restart local v17 # "sb":Ljava/lang/StringBuffer; │ + .restart local v21 # "success":Z │ :cond_4 │ :try_start_5 │ - invoke-virtual {v10}, Ljava/io/BufferedReader;->close()V │ + invoke-virtual {v11}, Ljava/io/BufferedReader;->close()V │ │ .line 1019 │ - sget-wide v23, Lcom/mobiperf/measurements/RRCTask;->data_consumed:J │ + sget-wide v24, Lcom/mobiperf/measurements/RRCTask;->data_consumed:J │ │ - invoke-virtual {v4}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->getPacketsSentDiff()J │ + invoke-virtual {v5}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->getPacketsSentDiff()J │ │ - move-result-wide v25 │ + move-result-wide v26 │ │ - add-long v23, v23, v25 │ + add-long v24, v24, v26 │ │ - sput-wide v23, Lcom/mobiperf/measurements/RRCTask;->data_consumed:J │ + sput-wide v24, Lcom/mobiperf/measurements/RRCTask;->data_consumed:J │ :try_end_5 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_5 .. :try_end_5} :catch_0 │ .catch Ljava/io/IOException; {:try_start_5 .. :try_end_5} :catch_3 │ .catch Ljava/net/URISyntaxException; {:try_start_5 .. :try_end_5} :catch_5 │ │ .line 1021 │ - if-eqz v22, :cond_6 │ + if-eqz v21, :cond_6 │ │ .line 1029 │ - .end local v3 # "client":Lorg/apache/http/client/HttpClient; │ - .end local v4 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v10 # "in":Ljava/io/BufferedReader; │ - .end local v12 # "line":Ljava/lang/String; │ - .end local v13 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v14 # "request":Lorg/apache/http/client/methods/HttpGet; │ - .end local v15 # "response":Lorg/apache/http/HttpResponse; │ - .end local v18 # "sb":Ljava/lang/StringBuffer; │ - .end local v19 # "serverAddr":Ljava/net/InetAddress; │ - .end local v22 # "success":Z │ + .end local v4 # "client":Lorg/apache/http/client/HttpClient; │ + .end local v5 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .end local v11 # "in":Ljava/io/BufferedReader; │ + .end local v13 # "line":Ljava/lang/String; │ + .end local v14 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .end local v15 # "request":Lorg/apache/http/client/methods/HttpGet; │ + .end local v16 # "response":Lorg/apache/http/HttpResponse; │ + .end local v17 # "sb":Ljava/lang/StringBuffer; │ + .end local v20 # "serverAddr":Ljava/net/InetAddress; │ + .end local v21 # "success":Z │ :cond_5 │ - sub-long v16, v7, v20 │ + sub-long v18, v8, v22 │ │ .line 1031 │ - .local v16, "rtt":J │ - move-wide/from16 v0, v16 │ + .local v18, "rtt":J │ + move-wide/from16 v0, v18 │ │ long-to-int v0, v0 │ │ - move/from16 v23, v0 │ + move/from16 v24, v0 │ │ :try_start_6 │ move-object/from16 v0, p2 │ │ - move/from16 v1, v23 │ + move/from16 v1, v24 │ │ - invoke-virtual {v0, v9, v1}, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->setHttp(II)V │ + invoke-virtual {v0, v10, v1}, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->setHttp(II)V │ :try_end_6 │ .catch Lcom/mobiperf/MeasurementError; {:try_start_6 .. :try_end_6} :catch_6 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_6 .. :try_end_6} :catch_0 │ .catch Ljava/io/IOException; {:try_start_6 .. :try_end_6} :catch_3 │ .catch Ljava/net/URISyntaxException; {:try_start_6 .. :try_end_6} :catch_5 │ │ .line 1035 │ :goto_6 │ :try_start_7 │ - new-instance v23, Ljava/lang/StringBuilder; │ + new-instance v24, Ljava/lang/StringBuilder; │ │ - invoke-direct/range {v23 .. v23}, Ljava/lang/StringBuilder;->()V │ + invoke-direct/range {v24 .. v24}, Ljava/lang/StringBuilder;->()V │ │ - const-string v24, "Time for Http" │ + const-string v25, "Time for Http" │ │ - invoke-virtual/range {v23 .. v24}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v23 │ + move-result-object v24 │ │ - move-object/from16 v0, v23 │ + move-object/from16 v0, v24 │ │ - move-wide/from16 v1, v16 │ + move-wide/from16 v1, v18 │ │ invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ - move-result-object v23 │ + move-result-object v24 │ │ - invoke-virtual/range {v23 .. v23}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual/range {v24 .. v24}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v23 │ + move-result-object v24 │ │ - invoke-static/range {v23 .. v23}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static/range {v24 .. v24}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 945 │ - add-int/lit8 v9, v9, 0x1 │ + add-int/lit8 v10, v10, 0x1 │ │ goto/16 :goto_0 │ │ .line 1024 │ - .end local v16 # "rtt":J │ - .restart local v3 # "client":Lorg/apache/http/client/HttpClient; │ - .restart local v4 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .restart local v10 # "in":Ljava/io/BufferedReader; │ - .restart local v12 # "line":Ljava/lang/String; │ - .restart local v13 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .restart local v14 # "request":Lorg/apache/http/client/methods/HttpGet; │ - .restart local v15 # "response":Lorg/apache/http/HttpResponse; │ - .restart local v18 # "sb":Ljava/lang/StringBuffer; │ - .restart local v19 # "serverAddr":Ljava/net/InetAddress; │ - .restart local v22 # "success":Z │ + .end local v18 # "rtt":J │ + .restart local v4 # "client":Lorg/apache/http/client/HttpClient; │ + .restart local v5 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .restart local v11 # "in":Ljava/io/BufferedReader; │ + .restart local v13 # "line":Ljava/lang/String; │ + .restart local v14 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .restart local v15 # "request":Lorg/apache/http/client/methods/HttpGet; │ + .restart local v16 # "response":Lorg/apache/http/HttpResponse; │ + .restart local v17 # "sb":Ljava/lang/StringBuffer; │ + .restart local v20 # "serverAddr":Ljava/net/InetAddress; │ + .restart local v21 # "success":Z │ :cond_6 │ - const-wide/16 v20, 0x0 │ + const-wide/16 v22, 0x0 │ │ .line 1025 │ - const-wide/16 v7, 0x0 │ + const-wide/16 v8, 0x0 │ │ goto :goto_5 │ │ .line 1032 │ - .end local v3 # "client":Lorg/apache/http/client/HttpClient; │ - .end local v4 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v10 # "in":Ljava/io/BufferedReader; │ - .end local v12 # "line":Ljava/lang/String; │ - .end local v13 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v14 # "request":Lorg/apache/http/client/methods/HttpGet; │ - .end local v15 # "response":Lorg/apache/http/HttpResponse; │ - .end local v18 # "sb":Ljava/lang/StringBuffer; │ - .end local v19 # "serverAddr":Ljava/net/InetAddress; │ - .end local v22 # "success":Z │ - .restart local v16 # "rtt":J │ + .end local v4 # "client":Lorg/apache/http/client/HttpClient; │ + .end local v5 # "datamonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .end local v11 # "in":Ljava/io/BufferedReader; │ + .end local v13 # "line":Ljava/lang/String; │ + .end local v14 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ + .end local v15 # "request":Lorg/apache/http/client/methods/HttpGet; │ + .end local v16 # "response":Lorg/apache/http/HttpResponse; │ + .end local v17 # "sb":Ljava/lang/StringBuffer; │ + .end local v20 # "serverAddr":Ljava/net/InetAddress; │ + .end local v21 # "success":Z │ + .restart local v18 # "rtt":J │ :catch_6 │ - move-exception v5 │ + move-exception v6 │ │ .line 1033 │ - .local v5, "e":Lcom/mobiperf/MeasurementError; │ - invoke-virtual {v5}, Lcom/mobiperf/MeasurementError;->printStackTrace()V │ + .local v6, "e":Lcom/mobiperf/MeasurementError; │ + invoke-virtual {v6}, Lcom/mobiperf/MeasurementError;->printStackTrace()V │ :try_end_7 │ .catch Lorg/apache/http/client/ClientProtocolException; {:try_start_7 .. :try_end_7} :catch_0 │ .catch Ljava/io/IOException; {:try_start_7 .. :try_end_7} :catch_3 │ .catch Ljava/net/URISyntaxException; {:try_start_7 .. :try_end_7} :catch_5 │ │ goto :goto_6 │ .end method │ @@ -1610,26 +1621,28 @@ │ │ const-string v1, " rssi " │ │ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v0 │ │ + .line 793 │ invoke-virtual {v10}, Lcom/mobiperf/util/PhoneUtils;->getCurrentRssi()I │ │ move-result v1 │ │ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v0 │ │ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v0 │ │ + .line 792 │ invoke-static {v0}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ move-object v7, v2 │ │ .line 872 │ .end local v2 # "desc":Lcom/mobiperf/measurements/RRCTask$RRCDesc; │ .local v7, "desc":Lcom/mobiperf/measurements/RRCTask$RRCDesc; │ @@ -2017,530 +2030,535 @@ │ .param p2, "desc" # Lcom/mobiperf/measurements/RRCTask$RRCDesc; │ .param p3, "data" # Lcom/mobiperf/measurements/RRCTask$RRCTestData; │ .param p4, "testId" # J │ │ .prologue │ .line 891 │ :try_start_0 │ - iget-object v0, p2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->echoHost:Ljava/lang/String; │ + iget-object v1, p2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->echoHost:Ljava/lang/String; │ │ - invoke-static {v0}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ + invoke-static {v1}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ :try_end_0 │ .catch Ljava/net/UnknownHostException; {:try_start_0 .. :try_end_0} :catch_0 │ │ move-result-object v9 │ │ .line 897 │ .local v9, "serverAddr":Ljava/net/InetAddress; │ const/4 v8, 0x0 │ │ .local v8, "i":I │ :goto_0 │ - array-length v0, p1 │ + array-length v1, p1 │ │ - if-ge v8, v0, :cond_0 │ + if-ge v8, v1, :cond_0 │ │ .line 898 │ - iget v2, p2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->sizeGranularity:I │ + iget v3, p2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->sizeGranularity:I │ │ - .local v2, "j":I │ + .local v3, "j":I │ :goto_1 │ - const/16 v0, 0x400 │ + const/16 v1, 0x400 │ │ - if-gt v2, v0, :cond_1 │ + if-gt v3, v1, :cond_1 │ │ .line 900 │ :try_start_1 │ - aget-object v0, p1, v8 │ + aget-object v1, p1, v8 │ │ - invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I │ + .line 901 │ + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I │ │ - move-result v0 │ + move-result v1 │ │ - invoke-static {v9, v0, p2, v2}, Lcom/mobiperf/measurements/RRCTask;->inferDemotionPacketSize(Ljava/net/InetAddress;ILcom/mobiperf/measurements/RRCTask$RRCDesc;I)J │ + invoke-static {v9, v1, p2, v3}, Lcom/mobiperf/measurements/RRCTask;->inferDemotionPacketSize(Ljava/net/InetAddress;ILcom/mobiperf/measurements/RRCTask$RRCDesc;I)J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ .line 902 │ - .local v3, "result":J │ - aget-object v0, p1, v8 │ + .local v4, "result":J │ + aget-object v1, p1, v8 │ │ - invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I │ + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I │ │ - move-result v1 │ + move-result v2 │ │ - move-object v0, p3 │ + move-object v1, p3 │ │ - move-wide v5, p4 │ + move-wide v6, p4 │ │ - invoke-virtual/range {v0 .. v6}, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->setRrcSizeTestData(IIJJ)V │ + invoke-virtual/range {v1 .. v7}, Lcom/mobiperf/measurements/RRCTask$RRCTestData;->setRrcSizeTestData(IIJJ)V │ :try_end_1 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_1 │ .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_2 │ .catch Lcom/mobiperf/MeasurementError; {:try_start_1 .. :try_end_1} :catch_3 │ │ .line 898 │ - .end local v3 # "result":J │ + .end local v4 # "result":J │ :goto_2 │ - iget v0, p2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->sizeGranularity:I │ + iget v1, p2, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->sizeGranularity:I │ │ - add-int/2addr v2, v0 │ + add-int/2addr v3, v1 │ │ goto :goto_1 │ │ .line 892 │ - .end local v2 # "j":I │ + .end local v3 # "j":I │ .end local v8 # "i":I │ .end local v9 # "serverAddr":Ljava/net/InetAddress; │ :catch_0 │ - move-exception v7 │ + move-exception v0 │ │ .line 893 │ - .local v7, "e":Ljava/net/UnknownHostException; │ - const-string v0, "Invalid or unreachable echo host. Test aborted." │ + .local v0, "e":Ljava/net/UnknownHostException; │ + const-string v1, "Invalid or unreachable echo host. Test aborted." │ │ - invoke-static {v0}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 894 │ - invoke-virtual {v7}, Ljava/net/UnknownHostException;->printStackTrace()V │ + invoke-virtual {v0}, Ljava/net/UnknownHostException;->printStackTrace()V │ │ .line 912 │ - .end local v7 # "e":Ljava/net/UnknownHostException; │ + .end local v0 # "e":Ljava/net/UnknownHostException; │ :cond_0 │ return-void │ │ .line 903 │ - .restart local v2 # "j":I │ + .restart local v3 # "j":I │ .restart local v8 # "i":I │ .restart local v9 # "serverAddr":Ljava/net/InetAddress; │ :catch_1 │ - move-exception v7 │ + move-exception v0 │ │ .line 904 │ - .local v7, "e":Ljava/io/IOException; │ - invoke-virtual {v7}, Ljava/io/IOException;->printStackTrace()V │ + .local v0, "e":Ljava/io/IOException; │ + invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V │ │ goto :goto_2 │ │ .line 905 │ - .end local v7 # "e":Ljava/io/IOException; │ + .end local v0 # "e":Ljava/io/IOException; │ :catch_2 │ - move-exception v7 │ + move-exception v0 │ │ .line 906 │ - .local v7, "e":Ljava/lang/InterruptedException; │ - invoke-virtual {v7}, Ljava/lang/InterruptedException;->printStackTrace()V │ + .local v0, "e":Ljava/lang/InterruptedException; │ + invoke-virtual {v0}, Ljava/lang/InterruptedException;->printStackTrace()V │ │ goto :goto_2 │ │ .line 907 │ - .end local v7 # "e":Ljava/lang/InterruptedException; │ + .end local v0 # "e":Ljava/lang/InterruptedException; │ :catch_3 │ - move-exception v7 │ + move-exception v0 │ │ .line 908 │ - .local v7, "e":Lcom/mobiperf/MeasurementError; │ - invoke-virtual {v7}, Lcom/mobiperf/MeasurementError;->printStackTrace()V │ + .local v0, "e":Lcom/mobiperf/MeasurementError; │ + invoke-virtual {v0}, Lcom/mobiperf/MeasurementError;->printStackTrace()V │ │ goto :goto_2 │ │ .line 897 │ - .end local v7 # "e":Lcom/mobiperf/MeasurementError; │ + .end local v0 # "e":Lcom/mobiperf/MeasurementError; │ :cond_1 │ add-int/lit8 v8, v8, 0x1 │ │ goto :goto_0 │ .end method │ │ .method public static sendMultiPackets(Ljava/net/InetAddress;IIII)[J │ - .locals 22 │ + .locals 24 │ .param p0, "serverAddr" # Ljava/net/InetAddress; │ .param p1, "size" # I │ .param p2, "num" # I │ .param p3, "packetSize" # I │ .param p4, "port" # I │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/io/IOException; │ } │ .end annotation │ │ .prologue │ .line 1349 │ - const-wide/16 v17, 0x0 │ + const-wide/16 v18, 0x0 │ │ .line 1350 │ - .local v17, "startTime":J │ - const-wide/16 v7, 0x0 │ + .local v18, "startTime":J │ + const-wide/16 v8, 0x0 │ │ .line 1351 │ - .local v7, "endTime":J │ + .local v8, "endTime":J │ move/from16 v0, p1 │ │ - new-array v3, v0, [B │ + new-array v4, v0, [B │ │ .line 1352 │ - .local v3, "buf":[B │ + .local v4, "buf":[B │ move/from16 v0, p3 │ │ - new-array v14, v0, [B │ + new-array v15, v0, [B │ │ .line 1353 │ - .local v14, "rcvBuf":[B │ - const/16 v19, 0x2 │ + .local v15, "rcvBuf":[B │ + const/16 v20, 0x2 │ + │ + move/from16 v0, v20 │ │ - move/from16 v0, v19 │ + new-array v0, v0, [J │ │ - new-array v15, v0, [J │ + move-object/from16 v16, v0 │ │ - fill-array-data v15, :array_0 │ + fill-array-data v16, :array_0 │ │ .line 1354 │ - .local v15, "retval":[J │ - const-wide/16 v10, 0x0 │ + .local v16, "retval":[J │ + const-wide/16 v12, 0x0 │ │ .line 1355 │ - .local v10, "numLost":J │ - const/4 v9, 0x0 │ + .local v12, "numLost":J │ + const/4 v10, 0x0 │ │ .line 1356 │ - .local v9, "i":I │ - const-wide/16 v4, 0x0 │ + .local v10, "i":I │ + const-wide/16 v6, 0x0 │ │ .line 1358 │ - .local v4, "dataConsumedThisTask":J │ - new-instance v16, Ljava/net/DatagramSocket; │ + .local v6, "dataConsumedThisTask":J │ + new-instance v17, Ljava/net/DatagramSocket; │ │ - invoke-direct/range {v16 .. v16}, Ljava/net/DatagramSocket;->()V │ + invoke-direct/range {v17 .. v17}, Ljava/net/DatagramSocket;->()V │ │ .line 1359 │ - .local v16, "socket":Ljava/net/DatagramSocket; │ - new-instance v13, Ljava/net/DatagramPacket; │ + .local v17, "socket":Ljava/net/DatagramSocket; │ + new-instance v14, Ljava/net/DatagramPacket; │ │ - array-length v0, v14 │ + array-length v0, v15 │ │ - move/from16 v19, v0 │ + move/from16 v20, v0 │ │ - move/from16 v0, v19 │ + move/from16 v0, v20 │ │ - invoke-direct {v13, v14, v0}, Ljava/net/DatagramPacket;->([BI)V │ + invoke-direct {v14, v15, v0}, Ljava/net/DatagramPacket;->([BI)V │ │ .line 1360 │ - .local v13, "packetRcv":Ljava/net/DatagramPacket; │ - new-instance v12, Ljava/net/DatagramPacket; │ + .local v14, "packetRcv":Ljava/net/DatagramPacket; │ + new-instance v11, Ljava/net/DatagramPacket; │ │ - array-length v0, v3 │ + array-length v0, v4 │ │ - move/from16 v19, v0 │ + move/from16 v20, v0 │ │ - move/from16 v0, v19 │ + move/from16 v0, v20 │ │ move-object/from16 v1, p0 │ │ move/from16 v2, p4 │ │ - invoke-direct {v12, v3, v0, v1, v2}, Ljava/net/DatagramPacket;->([BILjava/net/InetAddress;I)V │ + invoke-direct {v11, v4, v0, v1, v2}, Ljava/net/DatagramPacket;->([BILjava/net/InetAddress;I)V │ │ .line 1364 │ - .local v12, "packet":Ljava/net/DatagramPacket; │ - add-int v19, p1, p3 │ + .local v11, "packet":Ljava/net/DatagramPacket; │ + add-int v20, p1, p3 │ │ - mul-int v19, v19, p2 │ + mul-int v20, v20, p2 │ │ - move/from16 v0, v19 │ + move/from16 v0, v20 │ │ int-to-long v0, v0 │ │ - move-wide/from16 v19, v0 │ + move-wide/from16 v20, v0 │ │ - add-long v4, v4, v19 │ + add-long v6, v6, v20 │ │ .line 1367 │ - const/16 v19, 0x1b58 │ + const/16 v20, 0x1b58 │ │ :try_start_0 │ - move-object/from16 v0, v16 │ + move-object/from16 v0, v17 │ │ - move/from16 v1, v19 │ + move/from16 v1, v20 │ │ invoke-virtual {v0, v1}, Ljava/net/DatagramSocket;->setSoTimeout(I)V │ │ .line 1368 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v17 │ + move-result-wide v18 │ │ .line 1369 │ - const-string v19, "Sending packet, waiting for response " │ + const-string v20, "Sending packet, waiting for response " │ │ - invoke-static/range {v19 .. v19}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static/range {v20 .. v20}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1370 │ - const/4 v9, 0x0 │ + const/4 v10, 0x0 │ │ :goto_0 │ move/from16 v0, p2 │ │ - if-ge v9, v0, :cond_0 │ + if-ge v10, v0, :cond_0 │ │ .line 1371 │ - move-object/from16 v0, v16 │ + move-object/from16 v0, v17 │ │ - invoke-virtual {v0, v12}, Ljava/net/DatagramSocket;->send(Ljava/net/DatagramPacket;)V │ + invoke-virtual {v0, v11}, Ljava/net/DatagramSocket;->send(Ljava/net/DatagramPacket;)V │ │ .line 1370 │ - add-int/lit8 v9, v9, 0x1 │ + add-int/lit8 v10, v10, 0x1 │ │ goto :goto_0 │ │ .line 1373 │ :cond_0 │ - const/4 v9, 0x0 │ + const/4 v10, 0x0 │ │ :goto_1 │ move/from16 v0, p2 │ │ - if-ge v9, v0, :cond_2 │ + if-ge v10, v0, :cond_2 │ │ .line 1374 │ - move-object/from16 v0, v16 │ + move-object/from16 v0, v17 │ │ - invoke-virtual {v0, v13}, Ljava/net/DatagramSocket;->receive(Ljava/net/DatagramPacket;)V │ + invoke-virtual {v0, v14}, Ljava/net/DatagramSocket;->receive(Ljava/net/DatagramPacket;)V │ │ .line 1375 │ - if-nez v9, :cond_1 │ + if-nez v10, :cond_1 │ │ .line 1377 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ :try_end_0 │ .catch Ljava/net/SocketTimeoutException; {:try_start_0 .. :try_end_0} :catch_0 │ │ - move-result-wide v7 │ + move-result-wide v8 │ │ .line 1373 │ :cond_1 │ - add-int/lit8 v9, v9, 0x1 │ + add-int/lit8 v10, v10, 0x1 │ │ goto :goto_1 │ │ .line 1380 │ :catch_0 │ - move-exception v6 │ + move-exception v5 │ │ .line 1381 │ - .local v6, "e":Ljava/net/SocketTimeoutException; │ - const-string v19, "Timed out" │ + .local v5, "e":Ljava/net/SocketTimeoutException; │ + const-string v20, "Timed out" │ │ - invoke-static/range {v19 .. v19}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static/range {v20 .. v20}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1382 │ - sub-int v19, p2, v9 │ + sub-int v20, p2, v10 │ │ - move/from16 v0, v19 │ + move/from16 v0, v20 │ │ int-to-long v0, v0 │ │ - move-wide/from16 v19, v0 │ + move-wide/from16 v20, v0 │ │ - add-long v10, v10, v19 │ + add-long v12, v12, v20 │ │ .line 1383 │ - invoke-virtual/range {v16 .. v16}, Ljava/net/DatagramSocket;->close()V │ + invoke-virtual/range {v17 .. v17}, Ljava/net/DatagramSocket;->close()V │ │ .line 1385 │ - .end local v6 # "e":Ljava/net/SocketTimeoutException; │ + .end local v5 # "e":Ljava/net/SocketTimeoutException; │ :cond_2 │ - new-instance v19, Ljava/lang/StringBuilder; │ + new-instance v20, Ljava/lang/StringBuilder; │ │ - invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;->()V │ + invoke-direct/range {v20 .. v20}, Ljava/lang/StringBuilder;->()V │ │ - const-string v20, "Sending complete: " │ + const-string v21, "Sending complete: " │ │ - invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v19 │ + move-result-object v20 │ │ - move-object/from16 v0, v19 │ + move-object/from16 v0, v20 │ │ - invoke-virtual {v0, v7, v8}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v0, v8, v9}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ - move-result-object v19 │ + move-result-object v20 │ │ - invoke-virtual/range {v19 .. v19}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual/range {v20 .. v20}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v19 │ + move-result-object v20 │ │ - invoke-static/range {v19 .. v19}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static/range {v20 .. v20}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1387 │ - const/16 v19, 0x0 │ + const/16 v20, 0x0 │ │ - sub-long v20, v7, v17 │ + sub-long v22, v8, v18 │ │ - aput-wide v20, v15, v19 │ + aput-wide v22, v16, v20 │ │ .line 1388 │ - const/16 v19, 0x1 │ + const/16 v20, 0x1 │ │ - aput-wide v10, v15, v19 │ + aput-wide v12, v16, v20 │ │ .line 1390 │ - invoke-static {v4, v5}, Lcom/mobiperf/measurements/RRCTask;->incrementData(J)V │ + invoke-static {v6, v7}, Lcom/mobiperf/measurements/RRCTask;->incrementData(J)V │ │ .line 1391 │ - return-object v15 │ + return-object v16 │ │ .line 1353 │ :array_0 │ .array-data 8 │ -0x1 │ -0x1 │ .end array-data │ .end method │ │ .method public static sendPacket(Ljava/net/InetAddress;III)J │ - .locals 15 │ + .locals 16 │ .param p0, "serverAddr" # Ljava/net/InetAddress; │ .param p1, "size" # I │ .param p2, "rcvSize" # I │ .param p3, "port" # I │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/io/IOException; │ } │ .end annotation │ │ .prologue │ .line 1422 │ - const-wide/16 v11, 0x0 │ + const-wide/16 v12, 0x0 │ │ .line 1423 │ - .local v11, "startTime":J │ + .local v12, "startTime":J │ move/from16 v0, p1 │ │ - new-array v1, v0, [B │ + new-array v2, v0, [B │ │ .line 1424 │ - .local v1, "buf":[B │ + .local v2, "buf":[B │ move/from16 v0, p2 │ │ - new-array v9, v0, [B │ + new-array v10, v0, [B │ │ .line 1425 │ - .local v9, "rcvBuf":[B │ - const-wide/16 v2, 0x0 │ + .local v10, "rcvBuf":[B │ + const-wide/16 v4, 0x0 │ │ .line 1427 │ - .local v2, "dataConsumedThisTask":J │ - new-instance v10, Ljava/net/DatagramSocket; │ + .local v4, "dataConsumedThisTask":J │ + new-instance v11, Ljava/net/DatagramSocket; │ │ - invoke-direct {v10}, Ljava/net/DatagramSocket;->()V │ + invoke-direct {v11}, Ljava/net/DatagramSocket;->()V │ │ .line 1428 │ - .local v10, "socket":Ljava/net/DatagramSocket; │ - new-instance v8, Ljava/net/DatagramPacket; │ + .local v11, "socket":Ljava/net/DatagramSocket; │ + new-instance v9, Ljava/net/DatagramPacket; │ │ - array-length v13, v9 │ + array-length v14, v10 │ │ - invoke-direct {v8, v9, v13}, Ljava/net/DatagramPacket;->([BI)V │ + invoke-direct {v9, v10, v14}, Ljava/net/DatagramPacket;->([BI)V │ │ .line 1430 │ - .local v8, "packetRcv":Ljava/net/DatagramPacket; │ - add-int v13, p1, p2 │ + .local v9, "packetRcv":Ljava/net/DatagramPacket; │ + add-int v14, p1, p2 │ │ - int-to-long v13, v13 │ + int-to-long v14, v14 │ │ - add-long/2addr v2, v13 │ + add-long/2addr v4, v14 │ │ .line 1433 │ - new-instance v7, Ljava/net/DatagramPacket; │ + new-instance v8, Ljava/net/DatagramPacket; │ │ - array-length v13, v1 │ + array-length v14, v2 │ │ - move/from16 v0, p3 │ + move-object/from16 v0, p0 │ │ - invoke-direct {v7, v1, v13, p0, v0}, Ljava/net/DatagramPacket;->([BILjava/net/InetAddress;I)V │ + move/from16 v1, p3 │ + │ + invoke-direct {v8, v2, v14, v0, v1}, Ljava/net/DatagramPacket;->([BILjava/net/InetAddress;I)V │ │ .line 1437 │ - .local v7, "packet":Ljava/net/DatagramPacket; │ - const/16 v13, 0x1b58 │ + .local v8, "packet":Ljava/net/DatagramPacket; │ + const/16 v14, 0x1b58 │ │ :try_start_0 │ - invoke-virtual {v10, v13}, Ljava/net/DatagramSocket;->setSoTimeout(I)V │ + invoke-virtual {v11, v14}, Ljava/net/DatagramSocket;->setSoTimeout(I)V │ │ .line 1438 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v11 │ + move-result-wide v12 │ │ .line 1439 │ - const-string v13, "Sending packet, waiting for response " │ + const-string v14, "Sending packet, waiting for response " │ │ - invoke-static {v13}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v14}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1441 │ - invoke-virtual {v10, v7}, Ljava/net/DatagramSocket;->send(Ljava/net/DatagramPacket;)V │ + invoke-virtual {v11, v8}, Ljava/net/DatagramSocket;->send(Ljava/net/DatagramPacket;)V │ │ .line 1442 │ - invoke-virtual {v10, v8}, Ljava/net/DatagramSocket;->receive(Ljava/net/DatagramPacket;)V │ + invoke-virtual {v11, v9}, Ljava/net/DatagramSocket;->receive(Ljava/net/DatagramPacket;)V │ :try_end_0 │ .catch Ljava/net/SocketTimeoutException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 1448 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ .line 1449 │ - .local v5, "endTime":J │ - new-instance v13, Ljava/lang/StringBuilder; │ + .local v6, "endTime":J │ + new-instance v14, Ljava/lang/StringBuilder; │ │ - invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v14}, Ljava/lang/StringBuilder;->()V │ │ - const-string v14, "Sending complete: " │ + const-string v15, "Sending complete: " │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v14, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v14 │ │ - invoke-virtual {v13, v5, v6}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v14, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v14 │ │ - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v14}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v14 │ │ - invoke-static {v13}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v14}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1450 │ - invoke-static {v2, v3}, Lcom/mobiperf/measurements/RRCTask;->incrementData(J)V │ + invoke-static {v4, v5}, Lcom/mobiperf/measurements/RRCTask;->incrementData(J)V │ │ .line 1451 │ - sub-long v13, v5, v11 │ + sub-long v14, v6, v12 │ │ - .end local v5 # "endTime":J │ + .end local v6 # "endTime":J │ :goto_0 │ - return-wide v13 │ + return-wide v14 │ │ .line 1443 │ :catch_0 │ - move-exception v4 │ + move-exception v3 │ │ .line 1444 │ - .local v4, "e":Ljava/net/SocketTimeoutException; │ - const-string v13, "Timed out, trying again" │ + .local v3, "e":Ljava/net/SocketTimeoutException; │ + const-string v14, "Timed out, trying again" │ │ - invoke-static {v13}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v14}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1445 │ - invoke-virtual {v10}, Ljava/net/DatagramSocket;->close()V │ + invoke-virtual {v11}, Ljava/net/DatagramSocket;->close()V │ │ .line 1446 │ - const-wide/16 v13, -0x1 │ + const-wide/16 v14, -0x1 │ │ goto :goto_0 │ .end method │ │ .method private static sendPacket(Ljava/net/InetAddress;ILcom/mobiperf/measurements/RRCTask$RRCDesc;)J │ .locals 2 │ .param p0, "serverAddr" # Ljava/net/InetAddress; │ @@ -2903,18 +2921,18 @@ │ │ .line 1075 │ :cond_0 │ const-wide/16 v2, 0x0 │ │ .line 1077 │ .local v2, "dataConsumedThisTask":J │ - const-wide/16 v15, 0x0 │ + const-wide/16 v16, 0x0 │ │ .line 1078 │ - .local v15, "startTime":J │ + .local v16, "startTime":J │ const-wide/16 v6, 0x0 │ │ .line 1081 │ .local v6, "endTime":J │ const/4 v9, 0x0 │ │ .local v9, "i":I │ @@ -3017,23 +3035,23 @@ │ .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/net/UnknownHostException; {:try_start_0 .. :try_end_0} :catch_1 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_2 │ │ .line 1118 │ invoke-static {}, Ljava/util/UUID;->randomUUID()Ljava/util/UUID; │ │ - move-result-object v17 │ + move-result-object v15 │ │ .line 1119 │ - .local v17, "uuid":Ljava/util/UUID; │ + .local v15, "uuid":Ljava/util/UUID; │ new-instance v18, Ljava/lang/StringBuilder; │ │ invoke-direct/range {v18 .. v18}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual/range {v17 .. v17}, Ljava/util/UUID;->toString()Ljava/lang/String; │ + invoke-virtual {v15}, Ljava/util/UUID;->toString()Ljava/lang/String; │ │ move-result-object v19 │ │ invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v18 │ │ @@ -3047,15 +3065,15 @@ │ │ move-result-object v8 │ │ .line 1121 │ .local v8, "host":Ljava/lang/String; │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v15 │ + move-result-wide v16 │ │ .line 1124 │ :try_start_1 │ invoke-static {v8}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ :try_end_1 │ .catch Ljava/net/UnknownHostException; {:try_start_1 .. :try_end_1} :catch_4 │ │ @@ -3085,17 +3103,17 @@ │ │ if-nez v18, :cond_3 │ │ .line 1145 │ .end local v8 # "host":Ljava/lang/String; │ .end local v11 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ .end local v14 # "serverAddr":Ljava/net/InetAddress; │ - .end local v17 # "uuid":Ljava/util/UUID; │ + .end local v15 # "uuid":Ljava/util/UUID; │ :cond_2 │ - sub-long v12, v6, v15 │ + sub-long v12, v6, v16 │ │ .line 1147 │ .local v12, "rtt":J │ long-to-int v0, v12 │ │ move/from16 v18, v0 │ │ @@ -3175,28 +3193,28 @@ │ │ goto :goto_5 │ │ .line 1139 │ .end local v4 # "e":Ljava/io/IOException; │ .restart local v8 # "host":Ljava/lang/String; │ .restart local v14 # "serverAddr":Ljava/net/InetAddress; │ - .restart local v17 # "uuid":Ljava/util/UUID; │ + .restart local v15 # "uuid":Ljava/util/UUID; │ :cond_3 │ - const-wide/16 v15, 0x0 │ + const-wide/16 v16, 0x0 │ │ .line 1140 │ const-wide/16 v6, 0x0 │ │ goto :goto_5 │ │ .line 1148 │ .end local v8 # "host":Ljava/lang/String; │ .end local v11 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ .end local v14 # "serverAddr":Ljava/net/InetAddress; │ - .end local v17 # "uuid":Ljava/util/UUID; │ + .end local v15 # "uuid":Ljava/util/UUID; │ .restart local v12 # "rtt":J │ :catch_3 │ move-exception v4 │ │ .line 1149 │ .local v4, "e":Lcom/mobiperf/MeasurementError; │ invoke-virtual {v4}, Lcom/mobiperf/MeasurementError;->printStackTrace()V │ @@ -3213,82 +3231,70 @@ │ goto/16 :goto_2 │ │ .line 1125 │ .restart local v8 # "host":Ljava/lang/String; │ .restart local v10 # "j":I │ .restart local v11 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ .restart local v14 # "serverAddr":Ljava/net/InetAddress; │ - .restart local v17 # "uuid":Ljava/util/UUID; │ + .restart local v15 # "uuid":Ljava/util/UUID; │ :catch_4 │ move-exception v18 │ │ goto :goto_3 │ .end method │ │ .method public runTCPHandshakeTest([Ljava/lang/Integer;Lcom/mobiperf/measurements/RRCTask$RRCDesc;)V │ - .locals 19 │ + .locals 20 │ .param p1, "times" # [Ljava/lang/Integer; │ .param p2, "desc" # Lcom/mobiperf/measurements/RRCTask$RRCDesc; │ │ .prologue │ .line 1173 │ - const-string v17, "Active inference TCP test: about to begin" │ + const-string v15, "Active inference TCP test: about to begin" │ │ - invoke-static/range {v17 .. v17}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v15}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1174 │ move-object/from16 v0, p1 │ │ - array-length v0, v0 │ - │ - move/from16 v17, v0 │ + array-length v15, v0 │ │ move-object/from16 v0, p2 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->tcpTest:[I │ │ move-object/from16 v18, v0 │ │ move-object/from16 v0, v18 │ │ array-length v0, v0 │ │ move/from16 v18, v0 │ │ - move/from16 v0, v17 │ + move/from16 v0, v18 │ │ - move/from16 v1, v18 │ - │ - if-eq v0, v1, :cond_0 │ + if-eq v15, v0, :cond_0 │ │ .line 1175 │ move-object/from16 v0, p1 │ │ - array-length v0, v0 │ - │ - move/from16 v17, v0 │ + array-length v15, v0 │ │ - move/from16 v0, v17 │ + new-array v15, v15, [I │ │ - new-array v0, v0, [I │ - │ - move-object/from16 v17, v0 │ - │ - move-object/from16 v0, v17 │ - │ - move-object/from16 v1, p2 │ + move-object/from16 v0, p2 │ │ - iput-object v0, v1, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->tcpTest:[I │ + iput-object v15, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->tcpTest:[I │ │ .line 1177 │ :cond_0 │ - const-wide/16 v15, 0x0 │ + const-wide/16 v16, 0x0 │ │ .line 1178 │ - .local v15, "startTime":J │ + .local v16, "startTime":J │ const-wide/16 v6, 0x0 │ │ .line 1179 │ .local v6, "endTime":J │ const-wide/16 v2, 0x0 │ │ .line 1183 │ @@ -3296,48 +3302,38 @@ │ const/4 v8, 0x0 │ │ .local v8, "i":I │ :goto_0 │ :try_start_0 │ move-object/from16 v0, p1 │ │ - array-length v0, v0 │ + array-length v15, v0 │ │ - move/from16 v17, v0 │ - │ - move/from16 v0, v17 │ - │ - if-ge v8, v0, :cond_4 │ + if-ge v8, v15, :cond_4 │ │ .line 1185 │ const/4 v9, 0x0 │ │ .local v9, "j":I │ :goto_1 │ move-object/from16 v0, p2 │ │ - iget v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->GIVEUP_THRESHHOLD:I │ - │ - move/from16 v17, v0 │ - │ - move/from16 v0, v17 │ + iget v15, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->GIVEUP_THRESHHOLD:I │ │ - if-ge v9, v0, :cond_2 │ + if-ge v9, v15, :cond_2 │ │ .line 1186 │ invoke-virtual/range {p0 .. p0}, Lcom/mobiperf/measurements/RRCTask;->checkIfWifi()V │ │ .line 1187 │ move-object/from16 v0, p0 │ │ - iget-boolean v0, v0, Lcom/mobiperf/measurements/RRCTask;->stop:Z │ - │ - move/from16 v17, v0 │ + iget-boolean v15, v0, Lcom/mobiperf/measurements/RRCTask;->stop:Z │ │ - if-eqz v17, :cond_1 │ + if-eqz v15, :cond_1 │ │ .line 1237 │ .end local v9 # "j":I │ :goto_2 │ return-void │ │ .line 1191 │ @@ -3347,190 +3343,172 @@ │ │ invoke-direct {v10}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->()V │ │ .line 1195 │ .local v10, "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ move-object/from16 v0, p2 │ │ - iget-object v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->echoHost:Ljava/lang/String; │ - │ - move-object/from16 v17, v0 │ + iget-object v15, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->echoHost:Ljava/lang/String; │ │ - invoke-static/range {v17 .. v17}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ + invoke-static {v15}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ │ - move-result-object v13 │ + move-result-object v11 │ │ .line 1196 │ - .local v13, "serverAddr":Ljava/net/InetAddress; │ + .local v11, "serverAddr":Ljava/net/InetAddress; │ move-object/from16 v0, p2 │ │ - iget v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->MAX:I │ - │ - move/from16 v17, v0 │ + iget v15, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->MAX:I │ │ - move/from16 v0, v17 │ - │ - move-object/from16 v1, p2 │ + move-object/from16 v0, p2 │ │ - invoke-static {v13, v0, v1}, Lcom/mobiperf/measurements/RRCTask;->sendPacket(Ljava/net/InetAddress;ILcom/mobiperf/measurements/RRCTask$RRCDesc;)J │ + invoke-static {v11, v15, v0}, Lcom/mobiperf/measurements/RRCTask;->sendPacket(Ljava/net/InetAddress;ILcom/mobiperf/measurements/RRCTask$RRCDesc;)J │ │ .line 1197 │ - aget-object v17, p1, v8 │ - │ - invoke-virtual/range {v17 .. v17}, Ljava/lang/Integer;->intValue()I │ + aget-object v15, p1, v8 │ │ - move-result v17 │ + invoke-virtual {v15}, Ljava/lang/Integer;->intValue()I │ │ - move/from16 v0, v17 │ + move-result v15 │ │ - mul-int/lit16 v0, v0, 0x1f4 │ - │ - move/from16 v17, v0 │ + mul-int/lit16 v15, v15, 0x1f4 │ │ const/16 v18, 0x1 │ │ - invoke-static/range {v17 .. v18}, Lcom/mobiperf/measurements/RRCTask;->waitTime(IZ)V │ + move/from16 v0, v18 │ + │ + invoke-static {v15, v0}, Lcom/mobiperf/measurements/RRCTask;->waitTime(IZ)V │ │ .line 1200 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v15 │ + move-result-wide v16 │ │ .line 1202 │ move-object/from16 v0, p2 │ │ - iget-object v0, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->target:Ljava/lang/String; │ - │ - move-object/from16 v17, v0 │ + iget-object v15, v0, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->target:Ljava/lang/String; │ │ - invoke-static/range {v17 .. v17}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ + invoke-static {v15}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ │ - move-result-object v13 │ + move-result-object v11 │ │ .line 1204 │ new-instance v14, Ljava/net/Socket; │ │ - const/16 v17, 0x50 │ + const/16 v15, 0x50 │ │ - move/from16 v0, v17 │ - │ - invoke-direct {v14, v13, v0}, Ljava/net/Socket;->(Ljava/net/InetAddress;I)V │ + invoke-direct {v14, v11, v15}, Ljava/net/Socket;->(Ljava/net/InetAddress;I)V │ │ .line 1205 │ .local v14, "socket":Ljava/net/Socket; │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v6 │ │ .line 1208 │ - const-wide/16 v17, 0x7d0 │ + const-wide/16 v18, 0x7d0 │ │ - add-long v2, v2, v17 │ + add-long v2, v2, v18 │ │ .line 1213 │ - const/16 v17, 0x5 │ + const/4 v15, 0x5 │ │ const/16 v18, 0x4 │ │ - move/from16 v0, v17 │ - │ - move/from16 v1, v18 │ + move/from16 v0, v18 │ │ - invoke-virtual {v10, v0, v1}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->isTrafficInterfering(II)Z │ + invoke-virtual {v10, v15, v0}, Lcom/mobiperf/measurements/RRCTask$PacketMonitor;->isTrafficInterfering(II)Z │ │ - move-result v17 │ + move-result v15 │ │ - if-nez v17, :cond_3 │ + if-nez v15, :cond_3 │ │ .line 1214 │ invoke-virtual {v14}, Ljava/net/Socket;->close()V │ :try_end_0 │ .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_1 │ .catch Ljava/net/UnknownHostException; {:try_start_0 .. :try_end_0} :catch_2 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_3 │ │ .line 1221 │ .end local v10 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v13 # "serverAddr":Ljava/net/InetAddress; │ + .end local v11 # "serverAddr":Ljava/net/InetAddress; │ .end local v14 # "socket":Ljava/net/Socket; │ :cond_2 │ - sub-long v11, v6, v15 │ + sub-long v12, v6, v16 │ │ .line 1223 │ - .local v11, "rtt":J │ - long-to-int v0, v11 │ - │ - move/from16 v17, v0 │ + .local v12, "rtt":J │ + long-to-int v15, v12 │ │ :try_start_1 │ move-object/from16 v0, p2 │ │ - move/from16 v1, v17 │ - │ - invoke-virtual {v0, v8, v1}, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->setTcp(II)V │ + invoke-virtual {v0, v8, v15}, Lcom/mobiperf/measurements/RRCTask$RRCDesc;->setTcp(II)V │ :try_end_1 │ .catch Lcom/mobiperf/MeasurementError; {:try_start_1 .. :try_end_1} :catch_0 │ .catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_1 │ .catch Ljava/net/UnknownHostException; {:try_start_1 .. :try_end_1} :catch_2 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_3 │ │ .line 1227 │ :goto_3 │ :try_start_2 │ - new-instance v17, Ljava/lang/StringBuilder; │ + new-instance v15, Ljava/lang/StringBuilder; │ │ - invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v15}, Ljava/lang/StringBuilder;->()V │ │ const-string v18, "Time for TCP" │ │ - invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + move-object/from16 v0, v18 │ │ - move-result-object v17 │ + invoke-virtual {v15, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-object/from16 v0, v17 │ + move-result-object v15 │ │ - invoke-virtual {v0, v11, v12}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ + invoke-virtual {v15, v12, v13}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; │ │ - move-result-object v17 │ + move-result-object v15 │ │ - invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v17 │ + move-result-object v15 │ │ - invoke-static/range {v17 .. v17}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ + invoke-static {v15}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 1183 │ add-int/lit8 v8, v8, 0x1 │ │ goto/16 :goto_0 │ │ .line 1217 │ - .end local v11 # "rtt":J │ + .end local v12 # "rtt":J │ .restart local v10 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .restart local v13 # "serverAddr":Ljava/net/InetAddress; │ + .restart local v11 # "serverAddr":Ljava/net/InetAddress; │ .restart local v14 # "socket":Ljava/net/Socket; │ :cond_3 │ - const-wide/16 v15, 0x0 │ + const-wide/16 v16, 0x0 │ │ .line 1218 │ const-wide/16 v6, 0x0 │ │ .line 1219 │ invoke-virtual {v14}, Ljava/net/Socket;->close()V │ │ .line 1185 │ add-int/lit8 v9, v9, 0x1 │ │ goto/16 :goto_1 │ │ .line 1224 │ .end local v10 # "packetMonitor":Lcom/mobiperf/measurements/RRCTask$PacketMonitor; │ - .end local v13 # "serverAddr":Ljava/net/InetAddress; │ + .end local v11 # "serverAddr":Ljava/net/InetAddress; │ .end local v14 # "socket":Ljava/net/Socket; │ - .restart local v11 # "rtt":J │ + .restart local v12 # "rtt":J │ :catch_0 │ move-exception v4 │ │ .line 1225 │ .local v4, "e":Lcom/mobiperf/MeasurementError; │ invoke-virtual {v4}, Lcom/mobiperf/MeasurementError;->printStackTrace()V │ :try_end_2 │ @@ -3539,15 +3517,15 @@ │ .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_3 │ │ goto :goto_3 │ │ .line 1229 │ .end local v4 # "e":Lcom/mobiperf/MeasurementError; │ .end local v9 # "j":I │ - .end local v11 # "rtt":J │ + .end local v12 # "rtt":J │ :catch_1 │ move-exception v5 │ │ .line 1230 │ .local v5, "e1":Ljava/lang/InterruptedException; │ invoke-virtual {v5}, Ljava/lang/InterruptedException;->printStackTrace()V ├── smali/com/mobiperf/measurements/PingTask.smali │ @@ -164,22 +164,22 @@ │ "Lcom/mobiperf/MeasurementResult;" │ } │ .end annotation │ │ .prologue │ .line 205 │ .local p1, "rrtVals":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - const-wide v19, 0x7fefffffffffffffL # Double.MAX_VALUE │ + const-wide v18, 0x7fefffffffffffffL # Double.MAX_VALUE │ │ .line 206 │ - .local v19, "min":D │ - const-wide/16 v15, 0x1 │ + .local v18, "min":D │ + const-wide/16 v14, 0x1 │ │ .line 208 │ - .local v15, "max":D │ + .local v14, "max":D │ const-wide/16 v24, 0x0 │ │ .line 209 │ .local v24, "total":D │ const/4 v8, 0x1 │ │ .line 211 │ @@ -197,51 +197,50 @@ │ :goto_0 │ return-object v2 │ │ .line 215 │ :cond_0 │ invoke-virtual/range {p1 .. p1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ │ - move-result-object v14 │ + move-result-object v4 │ │ - .local v14, "i$":Ljava/util/Iterator; │ :goto_1 │ - invoke-interface {v14}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v3 │ │ if-eqz v3, :cond_3 │ │ - invoke-interface {v14}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ move-result-object v3 │ │ check-cast v3, Ljava/lang/Double; │ │ invoke-virtual {v3}, Ljava/lang/Double;->doubleValue()D │ │ move-result-wide v22 │ │ .line 216 │ .local v22, "rrt":D │ - cmpg-double v3, v22, v19 │ + cmpg-double v3, v22, v18 │ │ if-gez v3, :cond_1 │ │ .line 217 │ - move-wide/from16 v19, v22 │ + move-wide/from16 v18, v22 │ │ .line 219 │ :cond_1 │ - cmpl-double v3, v22, v15 │ + cmpl-double v3, v22, v14 │ │ if-lez v3, :cond_2 │ │ .line 220 │ - move-wide/from16 v15, v22 │ + move-wide/from16 v14, v22 │ │ .line 222 │ :cond_2 │ add-double v24, v24, v22 │ │ .line 223 │ goto :goto_1 │ @@ -249,53 +248,54 @@ │ .line 225 │ .end local v22 # "rrt":D │ :cond_3 │ invoke-virtual/range {p1 .. p1}, Ljava/util/ArrayList;->size()I │ │ move-result v3 │ │ - int-to-double v3, v3 │ + int-to-double v4, v3 │ │ - div-double v10, v24, v3 │ + div-double v10, v24, v4 │ │ .line 226 │ .local v10, "avg":D │ move-object/from16 v0, p1 │ │ invoke-static {v0, v10, v11}, Lcom/mobiperf/util/Util;->getStandardDeviation(Ljava/util/ArrayList;D)D │ │ - move-result-wide v17 │ + move-result-wide v16 │ │ .line 227 │ - .local v17, "mdev":D │ + .local v16, "mdev":D │ move-object/from16 v0, p0 │ │ move-object/from16 v1, p1 │ │ invoke-direct {v0, v1, v10, v11}, Lcom/mobiperf/measurements/PingTask;->filterPingResults(Ljava/util/ArrayList;D)D │ │ move-result-wide v12 │ │ .line 229 │ .local v12, "filteredAvg":D │ invoke-static {}, Lcom/mobiperf/util/PhoneUtils;->getPhoneUtils()Lcom/mobiperf/util/PhoneUtils; │ │ - move-result-object v21 │ + move-result-object v20 │ │ .line 231 │ - .local v21, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + .local v20, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ new-instance v2, Lcom/mobiperf/MeasurementResult; │ │ - invoke-virtual/range {v21 .. v21}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ + invoke-virtual/range {v20 .. v20}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ move-result-object v3 │ │ iget-object v3, v3, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ - invoke-virtual/range {v21 .. v21}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ + .line 232 │ + invoke-virtual/range {v20 .. v20}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ │ move-result-object v4 │ │ const-string v5, "ping" │ │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ @@ -329,33 +329,33 @@ │ move-result-object v4 │ │ invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 237 │ const-string v3, "min_rtt_ms" │ │ - invoke-static/range {v19 .. v20}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static/range {v18 .. v19}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ move-result-object v4 │ │ invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 238 │ const-string v3, "max_rtt_ms" │ │ - invoke-static/range {v15 .. v16}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static {v14, v15}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ move-result-object v4 │ │ invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 239 │ const-string v3, "stddev_rtt_ms" │ │ - invoke-static/range {v17 .. v18}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static/range {v16 .. v17}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ move-result-object v4 │ │ invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 240 │ cmpl-double v3, v12, v10 │ @@ -445,20 +445,20 @@ │ │ .line 433 │ .local v9, "errorMsg":Ljava/lang/String; │ const/16 v17, 0x0 │ │ .line 436 │ .local v17, "result":Lcom/mobiperf/MeasurementResult; │ - const-wide/16 v19, 0x0 │ + const-wide/16 v20, 0x0 │ │ .line 438 │ - .local v19, "totalPingDelay":J │ + .local v20, "totalPingDelay":J │ :try_start_0 │ - new-instance v21, Ljava/net/URL; │ + new-instance v19, Ljava/net/URL; │ │ new-instance v2, Ljava/lang/StringBuilder; │ │ invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ │ const-string v6, "http://" │ │ @@ -474,20 +474,20 @@ │ │ move-result-object v2 │ │ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v2 │ │ - move-object/from16 v0, v21 │ + move-object/from16 v0, v19 │ │ invoke-direct {v0, v2}, Ljava/net/URL;->(Ljava/lang/String;)V │ │ .line 440 │ - .local v21, "url":Ljava/net/URL; │ + .local v19, "url":Ljava/net/URL; │ const-wide v6, 0x40a7700000000000L # 3000.0 │ │ move-object/from16 v0, v16 │ │ iget v2, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingTimeoutSec:I │ │ int-to-double v0, v2 │ @@ -516,15 +516,15 @@ │ │ .line 444 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v14 │ │ .line 445 │ - invoke-virtual/range {v21 .. v21}, Ljava/net/URL;->openConnection()Ljava/net/URLConnection; │ + invoke-virtual/range {v19 .. v19}, Ljava/net/URL;->openConnection()Ljava/net/URLConnection; │ │ move-result-object v10 │ │ check-cast v10, Ljava/net/HttpURLConnection; │ │ .line 446 │ .local v10, "httpClient":Ljava/net/HttpURLConnection; │ @@ -683,15 +683,15 @@ │ .catch Ljava/net/MalformedURLException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_1 │ │ .line 470 │ .end local v4 # "packetLoss":D │ .end local v11 # "i":I │ .end local v18 # "timeOut":I │ - .end local v21 # "url":Ljava/net/URL; │ + .end local v19 # "url":Ljava/net/URL; │ :goto_1 │ if-eqz v17, :cond_1 │ │ .line 471 │ return-object v17 │ │ .line 463 │ @@ -801,28 +801,28 @@ │ } │ .end annotation │ │ .prologue │ .line 375 │ move-object/from16 v0, p0 │ │ - iget-object v15, v0, Lcom/mobiperf/measurements/PingTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v11, v0, Lcom/mobiperf/measurements/PingTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v15, Lcom/mobiperf/measurements/PingTask$PingDesc; │ + check-cast v11, Lcom/mobiperf/measurements/PingTask$PingDesc; │ │ .line 376 │ - .local v15, "pingTask":Lcom/mobiperf/measurements/PingTask$PingDesc; │ - const-wide/16 v13, 0x0 │ + .local v11, "pingTask":Lcom/mobiperf/measurements/PingTask$PingDesc; │ + const-wide/16 v14, 0x0 │ │ .line 377 │ - .local v13, "pingStartTime":J │ - const-wide/16 v11, 0x0 │ + .local v14, "pingStartTime":J │ + const-wide/16 v12, 0x0 │ │ .line 378 │ - .local v11, "pingEndTime":J │ + .local v12, "pingEndTime":J │ new-instance v3, Ljava/util/ArrayList; │ │ invoke-direct {v3}, Ljava/util/ArrayList;->()V │ │ .line 379 │ .local v3, "rrts":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ const-string v9, "" │ @@ -832,15 +832,15 @@ │ const/16 v16, 0x0 │ │ .line 383 │ .local v16, "result":Lcom/mobiperf/MeasurementResult; │ const-wide v6, 0x40a7700000000000L # 3000.0 │ │ :try_start_0 │ - iget v2, v15, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingTimeoutSec:I │ + iget v2, v11, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingTimeoutSec:I │ │ int-to-double v0, v2 │ │ move-wide/from16 v24, v0 │ │ mul-double v6, v6, v24 │ │ @@ -869,49 +869,49 @@ │ const/16 v2, 0xa │ │ if-ge v10, v2, :cond_1 │ │ .line 388 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v13 │ + move-result-wide v14 │ │ .line 389 │ move-object/from16 v0, p0 │ │ iget-object v2, v0, Lcom/mobiperf/measurements/PingTask;->targetIp:Ljava/lang/String; │ │ invoke-static {v2}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ │ move-result-object v2 │ │ move/from16 v0, v21 │ │ invoke-virtual {v2, v0}, Ljava/net/InetAddress;->isReachable(I)Z │ │ - move-result v19 │ + move-result v17 │ │ .line 390 │ - .local v19, "status":Z │ + .local v17, "status":Z │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v11 │ + move-result-wide v12 │ │ .line 391 │ - sub-long v17, v11, v13 │ + sub-long v18, v12, v14 │ │ .line 392 │ - .local v17, "rrtVal":J │ - if-eqz v19, :cond_0 │ + .local v18, "rrtVal":J │ + if-eqz v17, :cond_0 │ │ .line 393 │ - add-long v22, v22, v17 │ + add-long v22, v22, v18 │ │ .line 394 │ - move-wide/from16 v0, v17 │ + move-wide/from16 v0, v18 │ │ long-to-double v6, v0 │ │ invoke-static {v6, v7}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ move-result-object v2 │ │ @@ -938,16 +938,16 @@ │ │ .line 387 │ add-int/lit8 v10, v10, 0x1 │ │ goto :goto_0 │ │ .line 399 │ - .end local v17 # "rrtVal":J │ - .end local v19 # "status":Z │ + .end local v17 # "status":Z │ + .end local v18 # "rrtVal":J │ :cond_1 │ const-string v2, "java ping succeeds" │ │ invoke-static {v2}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 400 │ const-wide/high16 v6, 0x3ff0000000000000L # 1.0 │ @@ -968,15 +968,15 @@ │ │ .line 402 │ .local v4, "packetLoss":D │ move-object/from16 v0, p0 │ │ iget-wide v6, v0, Lcom/mobiperf/measurements/PingTask;->dataConsumed:J │ │ - iget v2, v15, Lcom/mobiperf/measurements/PingTask$PingDesc;->packetSizeByte:I │ + iget v2, v11, Lcom/mobiperf/measurements/PingTask$PingDesc;->packetSizeByte:I │ │ mul-int/lit8 v2, v2, 0xa │ │ mul-int/lit8 v2, v2, 0x2 │ │ int-to-long v0, v2 │ │ @@ -1112,820 +1112,826 @@ │ │ invoke-direct {v2, v9}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v2 │ .end method │ │ .method private executePingCmdTask(I)Lcom/mobiperf/MeasurementResult; │ - .locals 31 │ + .locals 32 │ .param p1, "ipByteLen" # I │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/mobiperf/MeasurementError; │ } │ .end annotation │ │ .prologue │ .line 283 │ - const-string v3, "Starting executePingCmdTask" │ + const-string v4, "Starting executePingCmdTask" │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 284 │ move-object/from16 v0, p0 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/PingTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - move-object/from16 v21, v0 │ + move-object/from16 v22, v0 │ │ - check-cast v21, Lcom/mobiperf/measurements/PingTask$PingDesc; │ + check-cast v22, Lcom/mobiperf/measurements/PingTask$PingDesc; │ │ .line 285 │ - .local v21, "pingTask":Lcom/mobiperf/measurements/PingTask$PingDesc; │ - const-string v13, "" │ + .local v22, "pingTask":Lcom/mobiperf/measurements/PingTask$PingDesc; │ + const-string v14, "" │ │ .line 286 │ - .local v13, "errorMsg":Ljava/lang/String; │ - const/16 v18, 0x0 │ + .local v14, "errorMsg":Ljava/lang/String; │ + const/16 v19, 0x0 │ │ .line 288 │ - .local v18, "measurementResult":Lcom/mobiperf/MeasurementResult; │ + .local v19, "measurementResult":Lcom/mobiperf/MeasurementResult; │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/PingTask;->parent:Landroid/content/Context; │ + iget-object v4, v0, Lcom/mobiperf/measurements/PingTask;->parent:Landroid/content/Context; │ │ move/from16 v0, p1 │ │ - invoke-static {v0, v3}, Lcom/mobiperf/util/Util;->pingExecutableBasedOnIPType(ILandroid/content/Context;)Ljava/lang/String; │ + invoke-static {v0, v4}, Lcom/mobiperf/util/Util;->pingExecutableBasedOnIPType(ILandroid/content/Context;)Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - move-object/from16 v0, v21 │ + move-object/from16 v0, v22 │ │ - iput-object v3, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingExe:Ljava/lang/String; │ + iput-object v4, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingExe:Ljava/lang/String; │ │ .line 289 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v8, "Ping executable is " │ + const-string v9, "Ping executable is " │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - move-object/from16 v0, v21 │ + move-object/from16 v0, v22 │ │ - iget-object v8, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingExe:Ljava/lang/String; │ + iget-object v9, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingExe:Ljava/lang/String; │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 290 │ - move-object/from16 v0, v21 │ + move-object/from16 v0, v22 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingExe:Ljava/lang/String; │ + iget-object v4, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingExe:Ljava/lang/String; │ │ - if-nez v3, :cond_0 │ + if-nez v4, :cond_0 │ │ .line 291 │ - const-string v3, "Ping executable not found" │ + const-string v4, "Ping executable not found" │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 292 │ - new-instance v3, Lcom/mobiperf/MeasurementError; │ + new-instance v4, Lcom/mobiperf/MeasurementError; │ │ - const-string v8, "Ping executable not found" │ + const-string v9, "Ping executable not found" │ │ - invoke-direct {v3, v8}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ + invoke-direct {v4, v9}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ - throw v3 │ + throw v4 │ │ .line 295 │ :cond_0 │ - const/16 v3, 0xa │ + const/16 v4, 0xa │ │ :try_start_0 │ - new-array v3, v3, [Ljava/lang/Object; │ + new-array v4, v4, [Ljava/lang/Object; │ │ - const/4 v8, 0x0 │ + const/4 v9, 0x0 │ │ - move-object/from16 v0, v21 │ + move-object/from16 v0, v22 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingExe:Ljava/lang/String; │ │ - move-object/from16 v25, v0 │ + move-object/from16 v26, v0 │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - const/4 v8, 0x1 │ + const/4 v9, 0x1 │ │ - const-string v25, "-i" │ + const-string v26, "-i" │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - const/4 v8, 0x2 │ + const/4 v9, 0x2 │ │ - const-wide/high16 v25, 0x3fe0000000000000L # 0.5 │ + const-wide/high16 v26, 0x3fe0000000000000L # 0.5 │ │ - invoke-static/range {v25 .. v26}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + .line 296 │ + invoke-static/range {v26 .. v27}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ - move-result-object v25 │ + move-result-object v26 │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - const/4 v8, 0x3 │ + const/4 v9, 0x3 │ │ - const-string v25, "-s" │ + const-string v26, "-s" │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - const/4 v8, 0x4 │ + const/4 v9, 0x4 │ │ - move-object/from16 v0, v21 │ + move-object/from16 v0, v22 │ │ iget v0, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->packetSizeByte:I │ │ - move/from16 v25, v0 │ + move/from16 v26, v0 │ │ - invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + .line 297 │ + invoke-static/range {v26 .. v26}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - move-result-object v25 │ + move-result-object v26 │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - const/4 v8, 0x5 │ + const/4 v9, 0x5 │ │ - const-string v25, "-w" │ + const-string v26, "-w" │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - const/4 v8, 0x6 │ + const/4 v9, 0x6 │ │ - move-object/from16 v0, v21 │ + move-object/from16 v0, v22 │ │ iget v0, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->pingTimeoutSec:I │ │ - move/from16 v25, v0 │ + move/from16 v26, v0 │ │ - invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static/range {v26 .. v26}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - move-result-object v25 │ + move-result-object v26 │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - const/4 v8, 0x7 │ + const/4 v9, 0x7 │ │ - const-string v25, "-c" │ + const-string v26, "-c" │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - const/16 v8, 0x8 │ + const/16 v9, 0x8 │ │ - const/16 v25, 0xa │ + const/16 v26, 0xa │ │ - invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + .line 298 │ + invoke-static/range {v26 .. v26}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - move-result-object v25 │ + move-result-object v26 │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - const/16 v8, 0x9 │ + const/16 v9, 0x9 │ │ move-object/from16 v0, p0 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/PingTask;->targetIp:Ljava/lang/String; │ │ - move-object/from16 v25, v0 │ + move-object/from16 v26, v0 │ │ - aput-object v25, v3, v8 │ + aput-object v26, v4, v9 │ │ - invoke-static {v3}, Lcom/mobiperf/util/Util;->constructCommand([Ljava/lang/Object;)Ljava/lang/String; │ + .line 295 │ + invoke-static {v4}, Lcom/mobiperf/util/Util;->constructCommand([Ljava/lang/Object;)Ljava/lang/String; │ │ - move-result-object v10 │ + move-result-object v11 │ │ .line 299 │ - .local v10, "command":Ljava/lang/String; │ - new-instance v3, Ljava/lang/StringBuilder; │ + .local v11, "command":Ljava/lang/String; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v8, "Running: " │ + const-string v9, "Running: " │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 300 │ invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3, v10}, Ljava/lang/Runtime;->exec(Ljava/lang/String;)Ljava/lang/Process; │ + invoke-virtual {v4, v11}, Ljava/lang/Runtime;->exec(Ljava/lang/String;)Ljava/lang/Process; │ │ - move-result-object v3 │ + move-result-object v4 │ │ move-object/from16 v0, p0 │ │ - iput-object v3, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ + iput-object v4, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ │ .line 302 │ move-object/from16 v0, p0 │ │ iget-wide v0, v0, Lcom/mobiperf/measurements/PingTask;->dataConsumed:J │ │ - move-wide/from16 v25, v0 │ + move-wide/from16 v26, v0 │ │ - move-object/from16 v0, v21 │ + move-object/from16 v0, v22 │ │ - iget v3, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->packetSizeByte:I │ + iget v4, v0, Lcom/mobiperf/measurements/PingTask$PingDesc;->packetSizeByte:I │ │ - mul-int/lit8 v3, v3, 0xa │ + mul-int/lit8 v4, v4, 0xa │ │ - mul-int/lit8 v3, v3, 0x2 │ + mul-int/lit8 v4, v4, 0x2 │ │ - int-to-long v0, v3 │ + int-to-long v0, v4 │ │ - move-wide/from16 v27, v0 │ + move-wide/from16 v28, v0 │ │ - add-long v25, v25, v27 │ + add-long v26, v26, v28 │ │ - move-wide/from16 v0, v25 │ + move-wide/from16 v0, v26 │ │ move-object/from16 v2, p0 │ │ iput-wide v0, v2, Lcom/mobiperf/measurements/PingTask;->dataConsumed:J │ │ .line 305 │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ + iget-object v4, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ │ - invoke-virtual {v3}, Ljava/lang/Process;->getInputStream()Ljava/io/InputStream; │ + invoke-virtual {v4}, Ljava/lang/Process;->getInputStream()Ljava/io/InputStream; │ │ - move-result-object v15 │ + move-result-object v16 │ │ .line 306 │ - .local v15, "is":Ljava/io/InputStream; │ - new-instance v9, Ljava/io/BufferedReader; │ + .local v16, "is":Ljava/io/InputStream; │ + new-instance v10, Ljava/io/BufferedReader; │ │ - new-instance v3, Ljava/io/InputStreamReader; │ + new-instance v4, Ljava/io/InputStreamReader; │ │ - invoke-direct {v3, v15}, Ljava/io/InputStreamReader;->(Ljava/io/InputStream;)V │ + move-object/from16 v0, v16 │ + │ + invoke-direct {v4, v0}, Ljava/io/InputStreamReader;->(Ljava/io/InputStream;)V │ │ - invoke-direct {v9, v3}, Ljava/io/BufferedReader;->(Ljava/io/Reader;)V │ + invoke-direct {v10, v4}, Ljava/io/BufferedReader;->(Ljava/io/Reader;)V │ │ .line 308 │ - .local v9, "br":Ljava/io/BufferedReader; │ - const/16 v16, 0x0 │ + .local v10, "br":Ljava/io/BufferedReader; │ + const/16 v17, 0x0 │ │ .line 309 │ - .local v16, "line":Ljava/lang/String; │ - const/16 v17, 0x0 │ + .local v17, "line":Ljava/lang/String; │ + const/16 v18, 0x0 │ │ .line 310 │ - .local v17, "lineCnt":I │ - new-instance v4, Ljava/util/ArrayList; │ + .local v18, "lineCnt":I │ + new-instance v5, Ljava/util/ArrayList; │ │ - invoke-direct {v4}, Ljava/util/ArrayList;->()V │ + invoke-direct {v5}, Ljava/util/ArrayList;->()V │ │ .line 311 │ - .local v4, "rrts":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - new-instance v22, Ljava/util/ArrayList; │ + .local v5, "rrts":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + new-instance v23, Ljava/util/ArrayList; │ │ - invoke-direct/range {v22 .. v22}, Ljava/util/ArrayList;->()V │ + invoke-direct/range {v23 .. v23}, Ljava/util/ArrayList;->()V │ │ .line 312 │ - .local v22, "receivedIcmpSeq":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - const-wide/16 v5, 0x1 │ + .local v23, "receivedIcmpSeq":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + const-wide/16 v6, 0x1 │ │ .line 313 │ - .local v5, "packetLoss":D │ - const/16 v7, 0xa │ + .local v6, "packetLoss":D │ + const/16 v8, 0xa │ │ .line 315 │ - .local v7, "packetsSent":I │ + .local v8, "packetsSent":I │ :goto_0 │ - invoke-virtual {v9}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String; │ + invoke-virtual {v10}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String; │ │ - move-result-object v16 │ + move-result-object v17 │ │ - if-eqz v16, :cond_3 │ + if-eqz v17, :cond_3 │ │ .line 318 │ - invoke-static/range {v16 .. v16}, Lcom/mobiperf/util/Util;->extractInfoFromPingOutput(Ljava/lang/String;)[Ljava/lang/String; │ + invoke-static/range {v17 .. v17}, Lcom/mobiperf/util/Util;->extractInfoFromPingOutput(Ljava/lang/String;)[Ljava/lang/String; │ │ - move-result-object v14 │ + move-result-object v15 │ │ .line 319 │ - .local v14, "extractedValues":[Ljava/lang/String; │ - if-eqz v14, :cond_1 │ + .local v15, "extractedValues":[Ljava/lang/String; │ + if-eqz v15, :cond_1 │ │ .line 320 │ - const/4 v3, 0x0 │ + const/4 v4, 0x0 │ │ - aget-object v3, v14, v3 │ + aget-object v4, v15, v4 │ │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v11 │ + move-result v12 │ │ .line 321 │ - .local v11, "curIcmpSeq":I │ - const/4 v3, 0x1 │ + .local v12, "curIcmpSeq":I │ + const/4 v4, 0x1 │ │ - aget-object v3, v14, v3 │ + aget-object v4, v15, v4 │ │ - invoke-static {v3}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ + invoke-static {v4}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ │ - move-result-wide v23 │ + move-result-wide v24 │ │ .line 324 │ - .local v23, "rrtVal":D │ - invoke-static {v11}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + .local v24, "rrtVal":D │ + invoke-static {v12}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - move-object/from16 v0, v22 │ + move-object/from16 v0, v23 │ │ - invoke-virtual {v0, v3}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z │ + invoke-virtual {v0, v4}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z │ │ - move-result v3 │ + move-result v4 │ │ - if-nez v3, :cond_1 │ + if-nez v4, :cond_1 │ │ .line 325 │ - invoke-static/range {v23 .. v24}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static/range {v24 .. v25}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v4, v3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ + invoke-virtual {v5, v4}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ │ .line 326 │ - invoke-static {v11}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static {v12}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - move-object/from16 v0, v22 │ + move-object/from16 v0, v23 │ │ - invoke-virtual {v0, v3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ + invoke-virtual {v0, v4}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ │ .line 330 │ - .end local v11 # "curIcmpSeq":I │ - .end local v23 # "rrtVal":D │ + .end local v12 # "curIcmpSeq":I │ + .end local v24 # "rrtVal":D │ :cond_1 │ - add-int/lit8 v17, v17, 0x1 │ + add-int/lit8 v18, v18, 0x1 │ │ - mul-int/lit8 v3, v17, 0x64 │ + mul-int/lit8 v4, v18, 0x64 │ │ - div-int/lit8 v3, v3, 0xa │ + div-int/lit8 v4, v4, 0xa │ │ move-object/from16 v0, p0 │ │ - iput v3, v0, Lcom/mobiperf/measurements/PingTask;->progress:I │ + iput v4, v0, Lcom/mobiperf/measurements/PingTask;->progress:I │ │ .line 331 │ - const/16 v3, 0x64 │ + const/16 v4, 0x64 │ │ move-object/from16 v0, p0 │ │ - iget v8, v0, Lcom/mobiperf/measurements/PingTask;->progress:I │ + iget v9, v0, Lcom/mobiperf/measurements/PingTask;->progress:I │ │ - invoke-static {v3, v8}, Ljava/lang/Math;->min(II)I │ + invoke-static {v4, v9}, Ljava/lang/Math;->min(II)I │ │ - move-result v3 │ + move-result v4 │ │ move-object/from16 v0, p0 │ │ - iput v3, v0, Lcom/mobiperf/measurements/PingTask;->progress:I │ + iput v4, v0, Lcom/mobiperf/measurements/PingTask;->progress:I │ │ .line 332 │ move-object/from16 v0, p0 │ │ - iget v3, v0, Lcom/mobiperf/measurements/PingTask;->progress:I │ + iget v4, v0, Lcom/mobiperf/measurements/PingTask;->progress:I │ │ move-object/from16 v0, p0 │ │ - invoke-virtual {v0, v3}, Lcom/mobiperf/measurements/PingTask;->broadcastProgressForUser(I)V │ + invoke-virtual {v0, v4}, Lcom/mobiperf/measurements/PingTask;->broadcastProgressForUser(I)V │ │ .line 334 │ - invoke-static/range {v16 .. v16}, Lcom/mobiperf/util/Util;->extractPacketLossInfoFromPingOutput(Ljava/lang/String;)[I │ + invoke-static/range {v17 .. v17}, Lcom/mobiperf/util/Util;->extractPacketLossInfoFromPingOutput(Ljava/lang/String;)[I │ │ - move-result-object v19 │ + move-result-object v20 │ │ .line 335 │ - .local v19, "packetLossInfo":[I │ - if-eqz v19, :cond_2 │ + .local v20, "packetLossInfo":[I │ + if-eqz v20, :cond_2 │ │ .line 336 │ - const/4 v3, 0x0 │ + const/4 v4, 0x0 │ │ - aget v7, v19, v3 │ + aget v8, v20, v4 │ │ .line 337 │ - const/4 v3, 0x1 │ + const/4 v4, 0x1 │ │ - aget v20, v19, v3 │ + aget v21, v20, v4 │ │ .line 338 │ - .local v20, "packetsReceived":I │ - const-wide/high16 v25, 0x3ff0000000000000L # 1.0 │ + .local v21, "packetsReceived":I │ + const-wide/high16 v26, 0x3ff0000000000000L # 1.0 │ │ - move/from16 v0, v20 │ + move/from16 v0, v21 │ │ int-to-double v0, v0 │ │ - move-wide/from16 v27, v0 │ + move-wide/from16 v28, v0 │ │ - int-to-double v0, v7 │ + int-to-double v0, v8 │ │ - move-wide/from16 v29, v0 │ + move-wide/from16 v30, v0 │ │ - div-double v27, v27, v29 │ + div-double v28, v28, v30 │ │ - sub-double v5, v25, v27 │ + sub-double v6, v26, v28 │ │ .line 341 │ - .end local v20 # "packetsReceived":I │ + .end local v21 # "packetsReceived":I │ :cond_2 │ - invoke-static/range {v16 .. v16}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static/range {v17 .. v17}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ :try_end_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 │ .catch Ljava/lang/SecurityException; {:try_start_0 .. :try_end_0} :catch_1 │ .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_2 │ .catch Ljava/security/InvalidParameterException; {:try_start_0 .. :try_end_0} :catch_3 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ goto :goto_0 │ │ .line 349 │ - .end local v4 # "rrts":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - .end local v5 # "packetLoss":D │ - .end local v7 # "packetsSent":I │ - .end local v9 # "br":Ljava/io/BufferedReader; │ - .end local v10 # "command":Ljava/lang/String; │ - .end local v14 # "extractedValues":[Ljava/lang/String; │ - .end local v15 # "is":Ljava/io/InputStream; │ - .end local v16 # "line":Ljava/lang/String; │ - .end local v17 # "lineCnt":I │ - .end local v19 # "packetLossInfo":[I │ - .end local v22 # "receivedIcmpSeq":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + .end local v5 # "rrts":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + .end local v6 # "packetLoss":D │ + .end local v8 # "packetsSent":I │ + .end local v10 # "br":Ljava/io/BufferedReader; │ + .end local v11 # "command":Ljava/lang/String; │ + .end local v15 # "extractedValues":[Ljava/lang/String; │ + .end local v16 # "is":Ljava/io/InputStream; │ + .end local v17 # "line":Ljava/lang/String; │ + .end local v18 # "lineCnt":I │ + .end local v20 # "packetLossInfo":[I │ + .end local v23 # "receivedIcmpSeq":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ :catch_0 │ - move-exception v12 │ + move-exception v13 │ │ .line 350 │ - .local v12, "e":Ljava/io/IOException; │ + .local v13, "e":Ljava/io/IOException; │ :try_start_1 │ - invoke-virtual {v12}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 351 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v12}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v9 │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-string v8, "\n" │ + const-string v9, "\n" │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ :try_end_1 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ - move-result-object v13 │ + move-result-object v14 │ │ .line 363 │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ + iget-object v4, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v3}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ + invoke-direct {v0, v4}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ │ .line 366 │ - .end local v12 # "e":Ljava/io/IOException; │ + .end local v13 # "e":Ljava/io/IOException; │ :goto_1 │ - if-nez v18, :cond_5 │ + if-nez v19, :cond_5 │ │ .line 367 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v8, "Error running ping: " │ + const-string v9, "Error running ping: " │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 368 │ - new-instance v3, Lcom/mobiperf/MeasurementError; │ + new-instance v4, Lcom/mobiperf/MeasurementError; │ │ - invoke-direct {v3, v13}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ + invoke-direct {v4, v14}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ - throw v3 │ + throw v4 │ │ .line 345 │ - .restart local v4 # "rrts":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - .restart local v5 # "packetLoss":D │ - .restart local v7 # "packetsSent":I │ - .restart local v9 # "br":Ljava/io/BufferedReader; │ - .restart local v10 # "command":Ljava/lang/String; │ - .restart local v15 # "is":Ljava/io/InputStream; │ - .restart local v16 # "line":Ljava/lang/String; │ - .restart local v17 # "lineCnt":I │ - .restart local v22 # "receivedIcmpSeq":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + .restart local v5 # "rrts":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + .restart local v6 # "packetLoss":D │ + .restart local v8 # "packetsSent":I │ + .restart local v10 # "br":Ljava/io/BufferedReader; │ + .restart local v11 # "command":Ljava/lang/String; │ + .restart local v16 # "is":Ljava/io/InputStream; │ + .restart local v17 # "line":Ljava/lang/String; │ + .restart local v18 # "lineCnt":I │ + .restart local v23 # "receivedIcmpSeq":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ :cond_3 │ - const-wide/16 v25, 0x1 │ + const-wide/16 v26, 0x1 │ │ - cmpl-double v3, v5, v25 │ + cmpl-double v4, v6, v26 │ │ - if-nez v3, :cond_4 │ + if-nez v4, :cond_4 │ │ .line 346 │ - const-wide/high16 v25, 0x3ff0000000000000L # 1.0 │ + const-wide/high16 v26, 0x3ff0000000000000L # 1.0 │ │ :try_start_2 │ - invoke-virtual {v4}, Ljava/util/ArrayList;->size()I │ + invoke-virtual {v5}, Ljava/util/ArrayList;->size()I │ │ - move-result v3 │ + move-result v4 │ │ - int-to-double v0, v3 │ + int-to-double v0, v4 │ │ - move-wide/from16 v27, v0 │ + move-wide/from16 v28, v0 │ │ - const-wide/high16 v29, 0x4024000000000000L # 10.0 │ + const-wide/high16 v30, 0x4024000000000000L # 10.0 │ │ - div-double v27, v27, v29 │ + div-double v28, v28, v30 │ │ - sub-double v5, v25, v27 │ + sub-double v6, v26, v28 │ │ .line 348 │ :cond_4 │ move-object/from16 v0, p0 │ │ - iget-object v8, v0, Lcom/mobiperf/measurements/PingTask;->PING_METHOD_CMD:Ljava/lang/String; │ + iget-object v9, v0, Lcom/mobiperf/measurements/PingTask;->PING_METHOD_CMD:Ljava/lang/String; │ │ - move-object/from16 v3, p0 │ + move-object/from16 v4, p0 │ │ - invoke-direct/range {v3 .. v8}, Lcom/mobiperf/measurements/PingTask;->constructResult(Ljava/util/ArrayList;DILjava/lang/String;)Lcom/mobiperf/MeasurementResult; │ + invoke-direct/range {v4 .. v9}, Lcom/mobiperf/measurements/PingTask;->constructResult(Ljava/util/ArrayList;DILjava/lang/String;)Lcom/mobiperf/MeasurementResult; │ :try_end_2 │ .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_0 │ .catch Ljava/lang/SecurityException; {:try_start_2 .. :try_end_2} :catch_1 │ .catch Ljava/lang/NumberFormatException; {:try_start_2 .. :try_end_2} :catch_2 │ .catch Ljava/security/InvalidParameterException; {:try_start_2 .. :try_end_2} :catch_3 │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ - move-result-object v18 │ + move-result-object v19 │ │ .line 363 │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ + iget-object v4, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v3}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ + invoke-direct {v0, v4}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ │ goto :goto_1 │ │ .line 352 │ - .end local v4 # "rrts":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - .end local v5 # "packetLoss":D │ - .end local v7 # "packetsSent":I │ - .end local v9 # "br":Ljava/io/BufferedReader; │ - .end local v10 # "command":Ljava/lang/String; │ - .end local v15 # "is":Ljava/io/InputStream; │ - .end local v16 # "line":Ljava/lang/String; │ - .end local v17 # "lineCnt":I │ - .end local v22 # "receivedIcmpSeq":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + .end local v5 # "rrts":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + .end local v6 # "packetLoss":D │ + .end local v8 # "packetsSent":I │ + .end local v10 # "br":Ljava/io/BufferedReader; │ + .end local v11 # "command":Ljava/lang/String; │ + .end local v16 # "is":Ljava/io/InputStream; │ + .end local v17 # "line":Ljava/lang/String; │ + .end local v18 # "lineCnt":I │ + .end local v23 # "receivedIcmpSeq":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ :catch_1 │ - move-exception v12 │ + move-exception v13 │ │ .line 353 │ - .local v12, "e":Ljava/lang/SecurityException; │ + .local v13, "e":Ljava/lang/SecurityException; │ :try_start_3 │ - invoke-virtual {v12}, Ljava/lang/SecurityException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/SecurityException;->getMessage()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 354 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v12}, Ljava/lang/SecurityException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/SecurityException;->getMessage()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v9 │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-string v8, "\n" │ + const-string v9, "\n" │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ :try_end_3 │ .catchall {:try_start_3 .. :try_end_3} :catchall_0 │ │ - move-result-object v13 │ + move-result-object v14 │ │ .line 363 │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ + iget-object v4, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v3}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ + invoke-direct {v0, v4}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ │ goto :goto_1 │ │ .line 355 │ - .end local v12 # "e":Ljava/lang/SecurityException; │ + .end local v13 # "e":Ljava/lang/SecurityException; │ :catch_2 │ - move-exception v12 │ + move-exception v13 │ │ .line 356 │ - .local v12, "e":Ljava/lang/NumberFormatException; │ + .local v13, "e":Ljava/lang/NumberFormatException; │ :try_start_4 │ - invoke-virtual {v12}, Ljava/lang/NumberFormatException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/NumberFormatException;->getMessage()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 357 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v12}, Ljava/lang/NumberFormatException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/lang/NumberFormatException;->getMessage()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v9 │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-string v8, "\n" │ + const-string v9, "\n" │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ :try_end_4 │ .catchall {:try_start_4 .. :try_end_4} :catchall_0 │ │ - move-result-object v13 │ + move-result-object v14 │ │ .line 363 │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ + iget-object v4, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v3}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ + invoke-direct {v0, v4}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ │ goto/16 :goto_1 │ │ .line 358 │ - .end local v12 # "e":Ljava/lang/NumberFormatException; │ + .end local v13 # "e":Ljava/lang/NumberFormatException; │ :catch_3 │ - move-exception v12 │ + move-exception v13 │ │ .line 359 │ - .local v12, "e":Ljava/security/InvalidParameterException; │ + .local v13, "e":Ljava/security/InvalidParameterException; │ :try_start_5 │ - invoke-virtual {v12}, Ljava/security/InvalidParameterException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/security/InvalidParameterException;->getMessage()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v4}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 360 │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v12}, Ljava/security/InvalidParameterException;->getMessage()Ljava/lang/String; │ + invoke-virtual {v13}, Ljava/security/InvalidParameterException;->getMessage()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v9 │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-string v8, "\n" │ + const-string v9, "\n" │ │ - invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ :try_end_5 │ .catchall {:try_start_5 .. :try_end_5} :catchall_0 │ │ - move-result-object v13 │ + move-result-object v14 │ │ .line 363 │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ + iget-object v4, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v3}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ + invoke-direct {v0, v4}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ │ goto/16 :goto_1 │ │ - .end local v12 # "e":Ljava/security/InvalidParameterException; │ + .end local v13 # "e":Ljava/security/InvalidParameterException; │ :catchall_0 │ - move-exception v3 │ + move-exception v4 │ │ move-object/from16 v0, p0 │ │ - iget-object v8, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ + iget-object v9, v0, Lcom/mobiperf/measurements/PingTask;->pingProc:Ljava/lang/Process; │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v8}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ + invoke-direct {v0, v9}, Lcom/mobiperf/measurements/PingTask;->cleanUp(Ljava/lang/Process;)V │ │ - throw v3 │ + throw v4 │ │ .line 370 │ :cond_5 │ - return-object v18 │ + return-object v19 │ .end method │ │ .method private filterPingResults(Ljava/util/ArrayList;D)D │ .locals 8 │ .param p2, "avg" # D │ .annotation system Ldalvik/annotation/Signature; │ value = { │ @@ -1946,14 +1952,15 @@ │ .local v2, "rrtAvg":D │ const-wide/16 v4, 0x1 │ │ const-wide v6, 0x3ff6666660000000L # 1.399999976158142 │ │ mul-double/2addr v6, v2 │ │ + .line 270 │ :try_start_0 │ invoke-static {p1, v4, v5, v6, v7}, Lcom/mobiperf/util/Util;->applyInnerBandFilter(Ljava/util/ArrayList;DD)Ljava/util/ArrayList; │ │ move-result-object v1 │ │ .line 272 │ .local v1, "filteredResults":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" ├── smali/com/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc.smali │ @@ -32,15 +32,15 @@ │ .field public target:Ljava/lang/String; │ │ .field public tcp_timeout_sec:D │ │ │ # direct methods │ .method public constructor (Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ - .locals 13 │ + .locals 16 │ .param p1, "key" # Ljava/lang/String; │ .param p2, "startTime" # Ljava/util/Date; │ .param p3, "endTime" # Ljava/util/Date; │ .param p4, "intervalSec" # D │ .param p6, "count" # J │ .param p8, "priority" # J │ .annotation system Ldalvik/annotation/Signature; │ @@ -63,106 +63,130 @@ │ Ljava/security/InvalidParameterException; │ } │ .end annotation │ │ .prologue │ .line 123 │ .local p10, "params":Ljava/util/Map;, "Ljava/util/Map;" │ - const-string v2, "tcpthroughput" │ + const-string v4, "tcpthroughput" │ │ - move-object v1, p0 │ + move-object/from16 v3, p0 │ │ - move-object v3, p1 │ + move-object/from16 v5, p1 │ │ - move-object v4, p2 │ + move-object/from16 v6, p2 │ │ - move-object/from16 v5, p3 │ + move-object/from16 v7, p3 │ │ - move-wide/from16 v6, p4 │ + move-wide/from16 v8, p4 │ │ - move-wide/from16 v8, p6 │ + move-wide/from16 v10, p6 │ │ - move-wide/from16 v10, p8 │ + move-wide/from16 v12, p8 │ │ - move-object/from16 v12, p10 │ + move-object/from16 v14, p10 │ │ - invoke-direct/range {v1 .. v12}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ + invoke-direct/range {v3 .. v14}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ │ .line 109 │ - const-wide/high16 v1, 0x4014000000000000L # 5.0 │ + const-wide/high16 v2, 0x4014000000000000L # 5.0 │ │ - iput-wide v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ + move-object/from16 v0, p0 │ + │ + iput-wide v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ │ .line 110 │ - const-wide/high16 v1, 0x4024000000000000L # 10.0 │ + const-wide/high16 v2, 0x4024000000000000L # 10.0 │ + │ + move-object/from16 v0, p0 │ │ - iput-wide v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ + iput-wide v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ │ .line 111 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ + │ + move-object/from16 v0, p0 │ │ - iput-boolean v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->dir_up:Z │ + iput-boolean v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->dir_up:Z │ │ .line 112 │ - const-wide/high16 v1, 0x402e000000000000L # 15.0 │ + const-wide/high16 v2, 0x402e000000000000L # 15.0 │ │ - iput-wide v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ + move-object/from16 v0, p0 │ + │ + iput-wide v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ │ .line 113 │ - const/16 v1, 0x54d │ + const/16 v2, 0x54d │ + │ + move-object/from16 v0, p0 │ │ - iput v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ + iput v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ │ .line 114 │ - const-wide/high16 v1, 0x3ff0000000000000L # 1.0 │ + const-wide/high16 v2, 0x3ff0000000000000L # 1.0 │ + │ + move-object/from16 v0, p0 │ │ - iput-wide v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->sample_period_sec:D │ + iput-wide v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->sample_period_sec:D │ │ .line 115 │ - const-wide/high16 v1, 0x4014000000000000L # 5.0 │ + const-wide/high16 v2, 0x4014000000000000L # 5.0 │ │ - iput-wide v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ + move-object/from16 v0, p0 │ + │ + iput-wide v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ │ .line 116 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ + │ + move-object/from16 v0, p0 │ │ - iput-object v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + iput-object v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ │ .line 117 │ - const-wide/high16 v1, 0x403e000000000000L # 30.0 │ + const-wide/high16 v2, 0x403e000000000000L # 30.0 │ + │ + move-object/from16 v0, p0 │ │ - iput-wide v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->tcp_timeout_sec:D │ + iput-wide v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->tcp_timeout_sec:D │ │ .line 125 │ - move-object/from16 v0, p10 │ + move-object/from16 v0, p0 │ │ - invoke-virtual {p0, v0}, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->initializeParams(Ljava/util/Map;)V │ + move-object/from16 v1, p10 │ + │ + invoke-virtual {v0, v1}, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->initializeParams(Ljava/util/Map;)V │ │ .line 126 │ - iget-object v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + move-object/from16 v0, p0 │ + │ + iget-object v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + │ + if-eqz v2, :cond_0 │ │ - if-eqz v1, :cond_0 │ + move-object/from16 v0, p0 │ │ - iget-object v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + iget-object v2, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v1}, Ljava/lang/String;->length()I │ + invoke-virtual {v2}, Ljava/lang/String;->length()I │ │ - move-result v1 │ + move-result v2 │ │ - if-nez v1, :cond_1 │ + if-nez v2, :cond_1 │ │ .line 127 │ :cond_0 │ - new-instance v1, Ljava/security/InvalidParameterException; │ + new-instance v2, Ljava/security/InvalidParameterException; │ │ - const-string v2, "TCPThroughputTask null target" │ + const-string v3, "TCPThroughputTask null target" │ │ - invoke-direct {v1, v2}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v2, v3}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v1 │ + throw v2 │ │ .line 129 │ :cond_1 │ return-void │ .end method │ │ │ @@ -173,38 +197,42 @@ │ │ .prologue │ .line 220 │ if-eqz p1, :cond_0 │ │ const-string v4, "" │ │ + .line 221 │ invoke-virtual {p1, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v4 │ │ if-nez v4, :cond_0 │ │ const-string v4, "[]" │ │ + .line 222 │ invoke-virtual {p1, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v4 │ │ if-nez v4, :cond_0 │ │ const/4 v4, 0x0 │ │ + .line 223 │ invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C │ │ move-result v4 │ │ const/16 v5, 0x5b │ │ if-ne v4, v5, :cond_0 │ │ + .line 224 │ invoke-virtual {p1}, Ljava/lang/String;->length()I │ │ move-result v4 │ │ add-int/lit8 v4, v4, -0x1 │ │ invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C │ @@ -277,14 +305,15 @@ │ │ div-int/lit8 v6, v2, 0x2 │ │ add-int/lit8 v6, v6, -0x1 │ │ aget-object v6, v3, v6 │ │ + .line 235 │ invoke-static {v6}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ │ move-result-wide v6 │ │ add-double/2addr v4, v6 │ │ const-wide/high16 v6, 0x4000000000000000L # 2.0 │ @@ -315,15 +344,15 @@ │ .line 208 │ const-string v0, "tcpthroughput" │ │ return-object v0 │ .end method │ │ .method protected initializeParams(Ljava/util/Map;)V │ - .locals 8 │ + .locals 10 │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Ljava/util/Map", │ "<", │ "Ljava/lang/String;", │ "Ljava/lang/String;", │ @@ -339,445 +368,452 @@ │ .line 204 │ :cond_0 │ :goto_0 │ return-void │ │ .line 137 │ :cond_1 │ - const-string v4, "target" │ + const-string v5, "target" │ │ - invoke-interface {p1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-interface {p1, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v4 │ + move-result-object v5 │ │ - check-cast v4, Ljava/lang/String; │ + check-cast v5, Ljava/lang/String; │ │ - iput-object v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + iput-object v5, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ │ .line 140 │ - const/4 v3, 0x0 │ + const/4 v4, 0x0 │ │ .line 141 │ - .local v3, "readVal":Ljava/lang/String; │ + .local v4, "readVal":Ljava/lang/String; │ :try_start_0 │ - const-string v4, "data_limit_mb_down" │ + const-string v5, "data_limit_mb_down" │ │ - invoke-interface {p1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-interface {p1, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v4 │ + move-result-object v5 │ │ - move-object v0, v4 │ + move-object v0, v5 │ │ check-cast v0, Ljava/lang/String; │ │ - move-object v3, v0 │ + move-object v4, v0 │ │ - if-eqz v3, :cond_2 │ + if-eqz v4, :cond_2 │ │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + invoke-virtual {v4}, Ljava/lang/String;->length()I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_2 │ + if-lez v5, :cond_2 │ │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + .line 142 │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_2 │ + if-lez v5, :cond_2 │ │ .line 143 │ - invoke-static {v3}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ + invoke-static {v4}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ │ - move-result-wide v4 │ + move-result-wide v6 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ │ .line 144 │ - iget-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ + iget-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ │ - const-wide/high16 v6, 0x4024000000000000L # 10.0 │ + const-wide/high16 v8, 0x4024000000000000L # 10.0 │ │ - cmpl-double v4, v4, v6 │ + cmpl-double v5, v6, v8 │ │ - if-lez v4, :cond_2 │ + if-lez v5, :cond_2 │ │ .line 145 │ - const-wide/high16 v4, 0x4024000000000000L # 10.0 │ + const-wide/high16 v6, 0x4024000000000000L # 10.0 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ │ .line 149 │ :cond_2 │ - const-string v4, "data_limit_mb_up" │ + const-string v5, "data_limit_mb_up" │ │ - invoke-interface {p1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-interface {p1, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v4 │ + move-result-object v5 │ │ - move-object v0, v4 │ + move-object v0, v5 │ │ check-cast v0, Ljava/lang/String; │ │ - move-object v3, v0 │ + move-object v4, v0 │ │ - if-eqz v3, :cond_3 │ + if-eqz v4, :cond_3 │ │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + invoke-virtual {v4}, Ljava/lang/String;->length()I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_3 │ + if-lez v5, :cond_3 │ │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + .line 150 │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_3 │ + if-lez v5, :cond_3 │ │ .line 151 │ - invoke-static {v3}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ + invoke-static {v4}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ │ - move-result-wide v4 │ + move-result-wide v6 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ │ .line 152 │ - iget-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ + iget-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ │ - const-wide/high16 v6, 0x4014000000000000L # 5.0 │ + const-wide/high16 v8, 0x4014000000000000L # 5.0 │ │ - cmpl-double v4, v4, v6 │ + cmpl-double v5, v6, v8 │ │ - if-lez v4, :cond_3 │ + if-lez v5, :cond_3 │ │ .line 153 │ - const-wide/high16 v4, 0x4014000000000000L # 5.0 │ + const-wide/high16 v6, 0x4014000000000000L # 5.0 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ │ .line 156 │ :cond_3 │ - const-string v4, "duration_period_sec" │ + const-string v5, "duration_period_sec" │ │ - invoke-interface {p1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-interface {p1, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v4 │ + move-result-object v5 │ │ - move-object v0, v4 │ + move-object v0, v5 │ │ check-cast v0, Ljava/lang/String; │ │ - move-object v3, v0 │ + move-object v4, v0 │ │ - if-eqz v3, :cond_4 │ + if-eqz v4, :cond_4 │ │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + invoke-virtual {v4}, Ljava/lang/String;->length()I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_4 │ + if-lez v5, :cond_4 │ │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + .line 157 │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_4 │ + if-lez v5, :cond_4 │ │ .line 158 │ - invoke-static {v3}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ + invoke-static {v4}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ │ - move-result-wide v4 │ + move-result-wide v6 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ │ .line 159 │ - iget-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ + iget-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ │ - const-wide/high16 v6, 0x402e000000000000L # 15.0 │ + const-wide/high16 v8, 0x402e000000000000L # 15.0 │ │ - cmpl-double v4, v4, v6 │ + cmpl-double v5, v6, v8 │ │ - if-lez v4, :cond_4 │ + if-lez v5, :cond_4 │ │ .line 160 │ - const-wide/high16 v4, 0x402e000000000000L # 15.0 │ + const-wide/high16 v6, 0x402e000000000000L # 15.0 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ │ .line 163 │ :cond_4 │ - const-string v4, "pkt_size_up_bytes" │ + const-string v5, "pkt_size_up_bytes" │ │ - invoke-interface {p1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-interface {p1, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v4 │ + move-result-object v5 │ │ - move-object v0, v4 │ + move-object v0, v5 │ │ check-cast v0, Ljava/lang/String; │ │ - move-object v3, v0 │ + move-object v4, v0 │ │ - if-eqz v3, :cond_6 │ + if-eqz v4, :cond_6 │ │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + invoke-virtual {v4}, Ljava/lang/String;->length()I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_6 │ + if-lez v5, :cond_6 │ │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + .line 164 │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_6 │ + if-lez v5, :cond_6 │ │ .line 165 │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - iput v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ + iput v5, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ │ .line 166 │ - iget v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ + iget v5, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ │ - const/16 v5, 0x54d │ + const/16 v6, 0x54d │ │ - if-le v4, v5, :cond_5 │ + if-le v5, v6, :cond_5 │ │ .line 167 │ - const/16 v4, 0x54d │ + const/16 v5, 0x54d │ │ - iput v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ + iput v5, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ │ .line 169 │ :cond_5 │ - iget v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ + iget v5, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ │ - const/16 v5, 0x2bc │ + const/16 v6, 0x2bc │ │ - if-ge v4, v5, :cond_6 │ + if-ge v5, v6, :cond_6 │ │ .line 170 │ - const/16 v4, 0x2bc │ + const/16 v5, 0x2bc │ │ - iput v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ + iput v5, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->pkt_size_up_bytes:I │ │ .line 173 │ :cond_6 │ - const-string v4, "sample_period_sec" │ + const-string v5, "sample_period_sec" │ │ - invoke-interface {p1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-interface {p1, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v4 │ + move-result-object v5 │ │ - move-object v0, v4 │ + move-object v0, v5 │ │ check-cast v0, Ljava/lang/String; │ │ - move-object v3, v0 │ + move-object v4, v0 │ │ - if-eqz v3, :cond_7 │ + if-eqz v4, :cond_7 │ │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + invoke-virtual {v4}, Ljava/lang/String;->length()I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_7 │ + if-lez v5, :cond_7 │ │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + .line 174 │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_7 │ + if-lez v5, :cond_7 │ │ .line 175 │ - invoke-static {v3}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ + invoke-static {v4}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ │ - move-result-wide v4 │ + move-result-wide v6 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->sample_period_sec:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->sample_period_sec:D │ │ .line 176 │ - iget-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->sample_period_sec:D │ + iget-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->sample_period_sec:D │ │ - const-wide/high16 v6, 0x401c000000000000L # 7.0 │ + const-wide/high16 v8, 0x401c000000000000L # 7.0 │ │ - cmpl-double v4, v4, v6 │ + cmpl-double v5, v6, v8 │ │ - if-lez v4, :cond_7 │ + if-lez v5, :cond_7 │ │ .line 177 │ - const-wide/high16 v4, 0x401c000000000000L # 7.0 │ + const-wide/high16 v6, 0x401c000000000000L # 7.0 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->sample_period_sec:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->sample_period_sec:D │ │ .line 180 │ :cond_7 │ - const-string v4, "slow_start_period_sec" │ + const-string v5, "slow_start_period_sec" │ │ - invoke-interface {p1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-interface {p1, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v4 │ + move-result-object v5 │ │ - move-object v0, v4 │ + move-object v0, v5 │ │ check-cast v0, Ljava/lang/String; │ │ - move-object v3, v0 │ + move-object v4, v0 │ │ - if-eqz v3, :cond_8 │ + if-eqz v4, :cond_8 │ │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + .line 181 │ + invoke-virtual {v4}, Ljava/lang/String;->length()I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_8 │ + if-lez v5, :cond_8 │ │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_8 │ + if-lez v5, :cond_8 │ │ .line 182 │ - invoke-static {v3}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ + invoke-static {v4}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D │ │ - move-result-wide v4 │ + move-result-wide v6 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ │ .line 183 │ - iget-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ + iget-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ │ - const-wide/high16 v6, 0x401c000000000000L # 7.0 │ + const-wide/high16 v8, 0x401c000000000000L # 7.0 │ │ - cmpl-double v4, v4, v6 │ + cmpl-double v5, v6, v8 │ │ - if-lez v4, :cond_8 │ + if-lez v5, :cond_8 │ │ .line 184 │ - const-wide/high16 v4, 0x401c000000000000L # 7.0 │ + const-wide/high16 v6, 0x401c000000000000L # 7.0 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ │ .line 187 │ :cond_8 │ - const-string v4, "tcp_timeout_sec" │ + const-string v5, "tcp_timeout_sec" │ │ - invoke-interface {p1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-interface {p1, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v4 │ + move-result-object v5 │ │ - move-object v0, v4 │ + move-object v0, v5 │ │ check-cast v0, Ljava/lang/String; │ │ - move-object v3, v0 │ + move-object v4, v0 │ │ - if-eqz v3, :cond_9 │ + if-eqz v4, :cond_9 │ │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + invoke-virtual {v4}, Ljava/lang/String;->length()I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_9 │ + if-lez v5, :cond_9 │ │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + .line 188 │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_9 │ + if-lez v5, :cond_9 │ │ .line 189 │ - invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ + invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - mul-int/lit16 v4, v4, 0x3e8 │ + mul-int/lit16 v5, v5, 0x3e8 │ │ - int-to-double v4, v4 │ + int-to-double v6, v5 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->tcp_timeout_sec:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->tcp_timeout_sec:D │ │ .line 190 │ - iget-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->tcp_timeout_sec:D │ + iget-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->tcp_timeout_sec:D │ │ - const-wide/high16 v6, 0x403e000000000000L # 30.0 │ + const-wide/high16 v8, 0x403e000000000000L # 30.0 │ │ - cmpl-double v4, v4, v6 │ + cmpl-double v5, v6, v8 │ │ - if-lez v4, :cond_9 │ + if-lez v5, :cond_9 │ │ .line 191 │ - const-wide/high16 v4, 0x403e000000000000L # 30.0 │ + const-wide/high16 v6, 0x403e000000000000L # 30.0 │ │ - iput-wide v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->tcp_timeout_sec:D │ + iput-wide v6, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->tcp_timeout_sec:D │ :try_end_0 │ .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 198 │ :cond_9 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ │ .line 199 │ - .local v1, "dir":Ljava/lang/String; │ - const-string v4, "dir_up" │ + .local v2, "dir":Ljava/lang/String; │ + const-string v5, "dir_up" │ │ - invoke-interface {p1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ + invoke-interface {p1, v5}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; │ │ - move-result-object v1 │ + move-result-object v2 │ │ - .end local v1 # "dir":Ljava/lang/String; │ - check-cast v1, Ljava/lang/String; │ + .end local v2 # "dir":Ljava/lang/String; │ + check-cast v2, Ljava/lang/String; │ │ - .restart local v1 # "dir":Ljava/lang/String; │ - if-eqz v1, :cond_0 │ + .restart local v2 # "dir":Ljava/lang/String; │ + if-eqz v2, :cond_0 │ │ - invoke-virtual {v1}, Ljava/lang/String;->length()I │ + invoke-virtual {v2}, Ljava/lang/String;->length()I │ │ - move-result v4 │ + move-result v5 │ │ - if-lez v4, :cond_0 │ + if-lez v5, :cond_0 │ │ .line 200 │ - const-string v4, "Up" │ + const-string v5, "Up" │ │ - invoke-virtual {v1, v4}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I │ + invoke-virtual {v2, v5}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - if-eqz v4, :cond_a │ + if-eqz v5, :cond_a │ │ - const-string v4, "true" │ + const-string v5, "true" │ │ - invoke-virtual {v1, v4}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I │ + invoke-virtual {v2, v5}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I │ │ - move-result v4 │ + move-result v5 │ │ - if-nez v4, :cond_0 │ + if-nez v5, :cond_0 │ │ .line 201 │ :cond_a │ - const/4 v4, 0x1 │ + const/4 v5, 0x1 │ │ - iput-boolean v4, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->dir_up:Z │ + iput-boolean v5, p0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->dir_up:Z │ │ goto/16 :goto_0 │ │ .line 194 │ - .end local v1 # "dir":Ljava/lang/String; │ + .end local v2 # "dir":Ljava/lang/String; │ :catch_0 │ - move-exception v2 │ + move-exception v3 │ │ .line 195 │ - .local v2, "e":Ljava/lang/NumberFormatException; │ - new-instance v4, Ljava/security/InvalidParameterException; │ + .local v3, "e":Ljava/lang/NumberFormatException; │ + new-instance v5, Ljava/security/InvalidParameterException; │ │ - const-string v5, "TCP Throughput Task invalid parameters." │ + const-string v6, "TCP Throughput Task invalid parameters." │ │ - invoke-direct {v4, v5}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v5, v6}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v4 │ + throw v5 │ .end method ├── smali/com/mobiperf/measurements/TCPThroughputTask.smali │ @@ -491,51 +491,51 @@ │ invoke-virtual {p1, v2}, Ljava/net/Socket;->setTcpNoDelay(Z)V │ │ .line 614 │ return-void │ .end method │ │ .method private downlink()V │ - .locals 19 │ + .locals 20 │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/mobiperf/MeasurementError;, │ Ljava/io/IOException; │ } │ .end annotation │ │ .prologue │ .line 515 │ - new-instance v13, Ljava/lang/StringBuilder; │ + new-instance v11, Ljava/lang/StringBuilder; │ │ - invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v11}, Ljava/lang/StringBuilder;->()V │ │ const-string v14, "Start downlink task on " │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v14 │ │ move-object/from16 v0, p0 │ │ - iget-object v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + check-cast v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ - iget-object v13, v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + iget-object v11, v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v14, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v14, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-static {v13}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v11}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 516 │ const/4 v9, 0x0 │ │ .line 517 │ .local v9, "tcpSocket":Ljava/net/Socket; │ const/4 v6, 0x0 │ @@ -551,25 +551,25 @@ │ │ .line 520 │ .end local v9 # "tcpSocket":Ljava/net/Socket; │ .local v10, "tcpSocket":Ljava/net/Socket; │ :try_start_1 │ move-object/from16 v0, p0 │ │ - iget-object v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + check-cast v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ - iget-object v13, v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + iget-object v11, v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ │ const/16 v14, 0x1771 │ │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v10, v13, v14}, Lcom/mobiperf/measurements/TCPThroughputTask;->buildUpSocket(Ljava/net/Socket;Ljava/lang/String;I)V │ + invoke-direct {v0, v10, v11, v14}, Lcom/mobiperf/measurements/TCPThroughputTask;->buildUpSocket(Ljava/net/Socket;Ljava/lang/String;I)V │ │ .line 522 │ invoke-virtual {v10}, Ljava/net/Socket;->getInputStream()Ljava/io/InputStream; │ :try_end_1 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_3 │ │ move-result-object v6 │ @@ -584,424 +584,434 @@ │ .line 533 │ .local v7, "progUpdateCount":I │ :try_start_2 │ invoke-virtual/range {p0 .. p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; │ │ invoke-virtual/range {p0 .. p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; │ │ - const/high16 v13, 0x100000 │ + const/high16 v11, 0x100000 │ │ - int-to-double v14, v13 │ + int-to-double v14, v11 │ │ move-object/from16 v0, p0 │ │ - iget-object v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + check-cast v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ - iget-wide v0, v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ + iget-wide v0, v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ │ move-wide/from16 v16, v0 │ │ - mul-double v13, v14, v16 │ + mul-double v14, v14, v16 │ │ - double-to-int v3, v13 │ + double-to-int v3, v14 │ │ .line 535 │ .local v3, "data_limit_byte_down":I │ invoke-virtual/range {p0 .. p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; │ │ - const/16 v13, 0x1388 │ + const/16 v11, 0x1388 │ │ - new-array v2, v13, [B │ + new-array v2, v11, [B │ │ .line 536 │ .local v2, "buffer":[B │ invoke-virtual/range {p0 .. p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; │ │ const-wide v14, 0x408f400000000000L # 1000.0 │ │ move-object/from16 v0, p0 │ │ - iget-object v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + check-cast v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ - iget-wide v0, v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ + iget-wide v0, v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->duration_period_sec:D │ │ move-wide/from16 v16, v0 │ │ mul-double v14, v14, v16 │ │ move-object/from16 v0, p0 │ │ - iget-object v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + check-cast v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ - iget-wide v0, v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ + iget-wide v0, v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ │ move-wide/from16 v16, v0 │ │ - add-double v13, v14, v16 │ + add-double v14, v14, v16 │ │ - double-to-long v11, v13 │ + double-to-long v12, v14 │ │ .line 540 │ - .local v11, "totalDuration":J │ + .local v12, "totalDuration":J │ :cond_0 │ - const/4 v13, 0x0 │ + const/4 v11, 0x0 │ │ array-length v14, v2 │ │ - invoke-virtual {v6, v2, v13, v14}, Ljava/io/InputStream;->read([BII)I │ + invoke-virtual {v6, v2, v11, v14}, Ljava/io/InputStream;->read([BII)I │ │ move-result v8 │ │ .line 541 │ move-object/from16 v0, p0 │ │ invoke-direct {v0, v8}, Lcom/mobiperf/measurements/TCPThroughputTask;->updateSize(I)V │ │ .line 543 │ move-object/from16 v0, p0 │ │ - iget v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->totalRevSize:I │ + iget v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->totalRevSize:I │ │ - add-int/2addr v13, v8 │ + add-int/2addr v11, v8 │ │ move-object/from16 v0, p0 │ │ - iput v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->totalRevSize:I │ + iput v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->totalRevSize:I │ │ .line 544 │ move-object/from16 v0, p0 │ │ - iget-boolean v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->DATA_LIMIT_ON:Z │ + iget-boolean v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->DATA_LIMIT_ON:Z │ │ - if-eqz v13, :cond_1 │ + if-eqz v11, :cond_1 │ │ move-object/from16 v0, p0 │ │ - iget v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->totalRevSize:I │ + iget v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->totalRevSize:I │ │ - if-lt v13, v3, :cond_1 │ + if-lt v11, v3, :cond_1 │ │ .line 546 │ - new-instance v13, Ljava/lang/StringBuilder; │ + new-instance v11, Ljava/lang/StringBuilder; │ │ - invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v11}, Ljava/lang/StringBuilder;->()V │ │ const-string v14, "Detect downlink data limitation exceed with " │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v14 │ │ move-object/from16 v0, p0 │ │ - iget-object v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + │ + check-cast v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + │ + iget-wide v0, v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ │ - check-cast v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + move-wide/from16 v16, v0 │ │ - iget-wide v15, v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_down:D │ + move-wide/from16 v0, v16 │ │ - invoke-virtual/range {v14 .. v16}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ + invoke-virtual {v14, v0, v1}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ const-string v14, " MB" │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-static {v13}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v11}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 548 │ - const/4 v13, 0x1 │ + const/4 v11, 0x1 │ │ move-object/from16 v0, p0 │ │ - iput-boolean v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->DATA_LIMIT_EXCEEDED:Z │ + iput-boolean v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->DATA_LIMIT_EXCEEDED:Z │ │ .line 563 │ :goto_0 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v13 │ + move-result-wide v14 │ │ - long-to-double v13, v13 │ + long-to-double v14, v14 │ │ move-object/from16 v0, p0 │ │ - iget-wide v15, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->taskStartTime:J │ + iget-wide v0, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->taskStartTime:J │ │ - long-to-double v15, v15 │ + move-wide/from16 v16, v0 │ │ - sub-double/2addr v13, v15 │ + move-wide/from16 v0, v16 │ │ - const-wide v15, 0x408f400000000000L # 1000.0 │ + long-to-double v0, v0 │ + │ + move-wide/from16 v16, v0 │ │ - div-double/2addr v13, v15 │ + sub-double v14, v14, v16 │ + │ + const-wide v16, 0x408f400000000000L # 1000.0 │ + │ + div-double v14, v14, v16 │ │ move-object/from16 v0, p0 │ │ - iput-wide v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->taskDuration:D │ + iput-wide v14, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->taskDuration:D │ │ .line 565 │ - new-instance v13, Ljava/lang/StringBuilder; │ + new-instance v11, Ljava/lang/StringBuilder; │ │ - invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v11}, Ljava/lang/StringBuilder;->()V │ │ const-string v14, "Total download data is " │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ move-object/from16 v0, p0 │ │ iget v14, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->totalRevSize:I │ │ int-to-double v14, v14 │ │ const-wide/high16 v16, 0x4130000000000000L # 1048576.0 │ │ div-double v14, v14, v16 │ │ - invoke-virtual {v13, v14, v15}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14, v15}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ const-string v14, " MB" │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-static {v13}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v11}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 566 │ - new-instance v13, Ljava/lang/StringBuilder; │ + new-instance v11, Ljava/lang/StringBuilder; │ │ - invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v11}, Ljava/lang/StringBuilder;->()V │ │ const-string v14, "Total number of sampling result is " │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ move-object/from16 v0, p0 │ │ iget-object v14, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->samplingResults:Ljava/util/ArrayList; │ │ invoke-virtual {v14}, Ljava/util/ArrayList;->size()I │ │ move-result v14 │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-static {v13}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v11}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ :try_end_2 │ .catch Ljava/lang/OutOfMemoryError; {:try_start_2 .. :try_end_2} :catch_1 │ .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_2 │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ .line 574 │ invoke-virtual {v6}, Ljava/io/InputStream;->close()V │ │ .line 575 │ invoke-virtual {v10}, Ljava/net/Socket;->close()V │ │ .line 576 │ - const-string v13, "Close downlink socket" │ + const-string v11, "Close downlink socket" │ │ - invoke-static {v13}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v11}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 578 │ return-void │ │ .line 523 │ .end local v2 # "buffer":[B │ .end local v3 # "data_limit_byte_down":I │ .end local v7 # "progUpdateCount":I │ .end local v8 # "read_bytes":I │ .end local v10 # "tcpSocket":Ljava/net/Socket; │ - .end local v11 # "totalDuration":J │ + .end local v12 # "totalDuration":J │ .restart local v9 # "tcpSocket":Ljava/net/Socket; │ :catch_0 │ move-exception v5 │ │ .line 524 │ .local v5, "i":Ljava/io/IOException; │ :goto_1 │ - new-instance v13, Ljava/lang/StringBuilder; │ + new-instance v11, Ljava/lang/StringBuilder; │ │ - invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v11}, Ljava/lang/StringBuilder;->()V │ │ const-string v14, "Downlink socket opening error" │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ invoke-virtual {v5}, Ljava/io/IOException;->getCause()Ljava/lang/Throwable; │ │ move-result-object v14 │ │ invoke-virtual {v14}, Ljava/lang/Throwable;->toString()Ljava/lang/String; │ │ move-result-object v14 │ │ - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-static {v13}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v11}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 525 │ new-instance v14, Lcom/mobiperf/MeasurementError; │ │ - new-instance v13, Ljava/lang/StringBuilder; │ + new-instance v11, Ljava/lang/StringBuilder; │ │ - invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v11}, Ljava/lang/StringBuilder;->()V │ │ const-string v15, "Error to open downlink socket at " │ │ - invoke-virtual {v13, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v15 │ │ move-object/from16 v0, p0 │ │ - iget-object v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + check-cast v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ - iget-object v13, v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + iget-object v11, v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v15, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v15, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ const-string v15, " with port " │ │ - invoke-virtual {v13, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ const/16 v15, 0x1771 │ │ - invoke-virtual {v13, v15}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v15}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-direct {v14, v13}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ + invoke-direct {v14, v11}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v14 │ │ .line 552 │ .end local v5 # "i":Ljava/io/IOException; │ .end local v9 # "tcpSocket":Ljava/net/Socket; │ .restart local v2 # "buffer":[B │ .restart local v3 # "data_limit_byte_down":I │ .restart local v7 # "progUpdateCount":I │ .restart local v8 # "read_bytes":I │ .restart local v10 # "tcpSocket":Ljava/net/Socket; │ - .restart local v11 # "totalDuration":J │ + .restart local v12 # "totalDuration":J │ :cond_1 │ :try_start_3 │ move-object/from16 v0, p0 │ │ - iget v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->MAXPROGRESS:I │ + iget v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->MAXPROGRESS:I │ │ - int-to-long v13, v13 │ + int-to-long v14, v11 │ │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v15 │ + move-result-wide v16 │ │ move-object/from16 v0, p0 │ │ iget-wide v0, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->taskStartTime:J │ │ - move-wide/from16 v17, v0 │ + move-wide/from16 v18, v0 │ │ - sub-long v15, v15, v17 │ + sub-long v16, v16, v18 │ │ - mul-long/2addr v13, v15 │ + mul-long v14, v14, v16 │ │ - div-long/2addr v13, v11 │ + div-long/2addr v14, v12 │ │ - long-to-int v13, v13 │ + long-to-int v11, v14 │ │ move-object/from16 v0, p0 │ │ - iput v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ + iput v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ │ .line 554 │ move-object/from16 v0, p0 │ │ - iget v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ + iget v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ │ move-object/from16 v0, p0 │ │ iget v14, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->MAXPROGRESS:I │ │ - invoke-static {v13, v14}, Ljava/lang/Math;->min(II)I │ + invoke-static {v11, v14}, Ljava/lang/Math;->min(II)I │ │ - move-result v13 │ + move-result v11 │ │ move-object/from16 v0, p0 │ │ - iput v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ + iput v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ │ .line 556 │ move-object/from16 v0, p0 │ │ - iget v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ + iget v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ │ add-int/lit8 v14, v7, 0x1 │ │ mul-int/lit8 v14, v14, 0x19 │ │ - if-lt v13, v14, :cond_2 │ + if-lt v11, v14, :cond_2 │ │ .line 557 │ move-object/from16 v0, p0 │ │ - iget v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ + iget v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->progress:I │ │ move-object/from16 v0, p0 │ │ - invoke-virtual {v0, v13}, Lcom/mobiperf/measurements/TCPThroughputTask;->broadcastProgressForUser(I)V │ + invoke-virtual {v0, v11}, Lcom/mobiperf/measurements/TCPThroughputTask;->broadcastProgressForUser(I)V │ :try_end_3 │ .catch Ljava/lang/OutOfMemoryError; {:try_start_3 .. :try_end_3} :catch_1 │ .catch Ljava/io/IOException; {:try_start_3 .. :try_end_3} :catch_2 │ .catchall {:try_start_3 .. :try_end_3} :catchall_0 │ │ .line 558 │ add-int/lit8 v7, v7, 0x1 │ @@ -1011,84 +1021,84 @@ │ if-gez v8, :cond_0 │ │ goto/16 :goto_0 │ │ .line 568 │ .end local v2 # "buffer":[B │ .end local v3 # "data_limit_byte_down":I │ - .end local v11 # "totalDuration":J │ + .end local v12 # "totalDuration":J │ :catch_1 │ move-exception v4 │ │ .line 569 │ .local v4, "e":Ljava/lang/OutOfMemoryError; │ :try_start_4 │ - new-instance v13, Lcom/mobiperf/MeasurementError; │ + new-instance v11, Lcom/mobiperf/MeasurementError; │ │ const-string v14, "Detect out of memory at Downlink task." │ │ - invoke-direct {v13, v14}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ + invoke-direct {v11, v14}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ - throw v13 │ + throw v11 │ :try_end_4 │ .catchall {:try_start_4 .. :try_end_4} :catchall_0 │ │ .line 574 │ .end local v4 # "e":Ljava/lang/OutOfMemoryError; │ :catchall_0 │ - move-exception v13 │ + move-exception v11 │ │ invoke-virtual {v6}, Ljava/io/InputStream;->close()V │ │ .line 575 │ invoke-virtual {v10}, Ljava/net/Socket;->close()V │ │ .line 576 │ const-string v14, "Close downlink socket" │ │ invoke-static {v14}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ - throw v13 │ + throw v11 │ │ .line 570 │ :catch_2 │ move-exception v4 │ │ .line 571 │ .local v4, "e":Ljava/io/IOException; │ :try_start_5 │ new-instance v14, Lcom/mobiperf/MeasurementError; │ │ - new-instance v13, Ljava/lang/StringBuilder; │ + new-instance v11, Ljava/lang/StringBuilder; │ │ - invoke-direct {v13}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v11}, Ljava/lang/StringBuilder;->()V │ │ const-string v15, "Error to receive data from " │ │ - invoke-virtual {v13, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v11, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v15 │ │ move-object/from16 v0, p0 │ │ - iget-object v13, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v11, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ + check-cast v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ - iget-object v13, v13, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ + iget-object v11, v11, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v15, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v15, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v11 │ │ - invoke-direct {v14, v13}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ + invoke-direct {v14, v11}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v14 │ :try_end_5 │ .catchall {:try_start_5 .. :try_end_5} :catchall_0 │ │ .line 523 │ .end local v4 # "e":Ljava/io/IOException; │ @@ -1155,15 +1165,15 @@ │ .line 289 │ const-class v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ return-object v0 │ .end method │ │ .method private insertWithOrder(Ljava/util/ArrayList;D)Ljava/util/ArrayList; │ - .locals 3 │ + .locals 4 │ .param p2, "item" # D │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Ljava/util/ArrayList", │ "<", │ "Ljava/lang/Double;", │ @@ -1193,17 +1203,17 @@ │ │ move-result-object v1 │ │ check-cast v1, Ljava/lang/Double; │ │ invoke-virtual {v1}, Ljava/lang/Double;->doubleValue()D │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - cmpg-double v1, p2, v1 │ + cmpg-double v1, p2, v2 │ │ if-gez v1, :cond_1 │ │ .line 630 │ :cond_0 │ invoke-static {p2, p3}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ @@ -1398,18 +1408,18 @@ │ invoke-virtual/range {v25 .. v25}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v25 │ │ invoke-static/range {v25 .. v25}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 423 │ - const/16 v19, 0x0 │ + const/4 v15, 0x0 │ │ .line 424 │ - .local v19, "tcpSocket":Ljava/net/Socket; │ + .local v15, "tcpSocket":Ljava/net/Socket; │ const/4 v9, 0x0 │ │ .line 425 │ .local v9, "iStream":Ljava/io/InputStream; │ const/4 v10, 0x0 │ │ .line 428 │ @@ -1418,15 +1428,15 @@ │ new-instance v20, Ljava/net/Socket; │ │ invoke-direct/range {v20 .. v20}, Ljava/net/Socket;->()V │ :try_end_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 429 │ - .end local v19 # "tcpSocket":Ljava/net/Socket; │ + .end local v15 # "tcpSocket":Ljava/net/Socket; │ .local v20, "tcpSocket":Ljava/net/Socket; │ :try_start_1 │ move-object/from16 v0, p0 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ move-object/from16 v25, v0 │ @@ -1462,19 +1472,19 @@ │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_3 │ │ move-result-object v9 │ │ .line 441 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v17 │ + move-result-wide v18 │ │ .line 442 │ - .local v17, "startTime":J │ - move-wide/from16 v6, v17 │ + .local v18, "startTime":J │ + move-wide/from16 v6, v18 │ │ .line 443 │ .local v6, "endTime":J │ move-object/from16 v0, p0 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ @@ -1482,29 +1492,29 @@ │ │ check-cast v25, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ move-object/from16 v0, v25 │ │ iget-wide v0, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ │ - move-wide/from16 v25, v0 │ + move-wide/from16 v26, v0 │ │ invoke-virtual/range {p0 .. p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; │ │ - const-wide/high16 v27, 0x4090000000000000L # 1024.0 │ + const-wide/high16 v28, 0x4090000000000000L # 1024.0 │ │ - mul-double v25, v25, v27 │ + mul-double v26, v26, v28 │ │ invoke-virtual/range {p0 .. p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; │ │ - const-wide/high16 v27, 0x4090000000000000L # 1024.0 │ + const-wide/high16 v28, 0x4090000000000000L # 1024.0 │ │ - mul-double v25, v25, v27 │ + mul-double v26, v26, v28 │ │ - move-wide/from16 v0, v25 │ + move-wide/from16 v0, v26 │ │ double-to-int v4, v0 │ │ .line 445 │ .local v4, "data_limit_byte_up":I │ move-object/from16 v0, p0 │ │ @@ -1570,24 +1580,24 @@ │ │ move-object/from16 v0, v25 │ │ iget-wide v0, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->slow_start_period_sec:D │ │ move-wide/from16 v28, v0 │ │ - add-double v25, v26, v28 │ + add-double v26, v26, v28 │ │ - move-wide/from16 v0, v25 │ + move-wide/from16 v0, v26 │ │ double-to-long v0, v0 │ │ - move-wide/from16 v21, v0 │ + move-wide/from16 v22, v0 │ │ .line 453 │ - .local v21, "totalDuration":J │ + .local v22, "totalDuration":J │ :cond_0 │ const/16 v25, 0x0 │ │ move-object/from16 v0, v24 │ │ array-length v0, v0 │ │ @@ -1676,17 +1686,21 @@ │ │ check-cast v25, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ move-object/from16 v0, v25 │ │ iget-wide v0, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->data_limit_mb_up:D │ │ - move-wide/from16 v27, v0 │ + move-wide/from16 v28, v0 │ │ - invoke-virtual/range {v26 .. v28}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ + move-object/from16 v0, v26 │ + │ + move-wide/from16 v1, v28 │ + │ + invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ │ move-result-object v25 │ │ const-string v26, " MB" │ │ invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ @@ -1705,27 +1719,27 @@ │ │ move-object/from16 v1, p0 │ │ iput-boolean v0, v1, Lcom/mobiperf/measurements/TCPThroughputTask;->DATA_LIMIT_EXCEEDED:Z │ │ .line 475 │ :goto_0 │ - sub-long v25, v6, v17 │ + sub-long v26, v6, v18 │ │ - move-wide/from16 v0, v25 │ + move-wide/from16 v0, v26 │ │ long-to-double v0, v0 │ │ - move-wide/from16 v25, v0 │ + move-wide/from16 v26, v0 │ │ - const-wide v27, 0x408f400000000000L # 1000.0 │ + const-wide v28, 0x408f400000000000L # 1000.0 │ │ - div-double v25, v25, v27 │ + div-double v26, v26, v28 │ │ - move-wide/from16 v0, v25 │ + move-wide/from16 v0, v26 │ │ move-object/from16 v2, p0 │ │ iput-wide v0, v2, Lcom/mobiperf/measurements/TCPThroughputTask;->taskDuration:D │ │ .line 476 │ new-instance v25, Ljava/lang/StringBuilder; │ @@ -1870,56 +1884,56 @@ │ .line 489 │ const-string v25, "#" │ │ move-object/from16 v0, v25 │ │ invoke-virtual {v14, v0}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ │ - move-result-object v23 │ + move-result-object v21 │ │ .line 491 │ - .local v23, "tps_result_str":[Ljava/lang/String; │ + .local v21, "tps_result_str":[Ljava/lang/String; │ const/4 v8, 0x0 │ │ .local v8, "i":I │ :goto_1 │ - move-object/from16 v0, v23 │ + move-object/from16 v0, v21 │ │ array-length v0, v0 │ │ move/from16 v25, v0 │ │ move/from16 v0, v25 │ │ if-ge v8, v0, :cond_3 │ │ .line 492 │ - aget-object v25, v23, v8 │ + aget-object v25, v21, v8 │ │ invoke-static/range {v25 .. v25}, Ljava/lang/Double;->valueOf(Ljava/lang/String;)Ljava/lang/Double; │ │ move-result-object v25 │ │ invoke-virtual/range {v25 .. v25}, Ljava/lang/Double;->doubleValue()D │ │ - move-result-wide v15 │ + move-result-wide v16 │ │ .line 493 │ - .local v15, "sampleResult":D │ + .local v16, "sampleResult":D │ move-object/from16 v0, p0 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->samplingResults:Ljava/util/ArrayList; │ │ move-object/from16 v25, v0 │ │ move-object/from16 v0, p0 │ │ move-object/from16 v1, v25 │ │ - move-wide v2, v15 │ + move-wide/from16 v2, v16 │ │ invoke-direct {v0, v1, v2, v3}, Lcom/mobiperf/measurements/TCPThroughputTask;->insertWithOrder(Ljava/util/ArrayList;D)Ljava/util/ArrayList; │ │ move-result-object v25 │ │ move-object/from16 v0, v25 │ │ @@ -1940,21 +1954,21 @@ │ .end local v4 # "data_limit_byte_up":I │ .end local v6 # "endTime":J │ .end local v8 # "i":I │ .end local v11 # "progUpdateCount":I │ .end local v12 # "resultMsg":[B │ .end local v13 # "resultMsgLen":I │ .end local v14 # "resultMsgStr":Ljava/lang/String; │ - .end local v15 # "sampleResult":D │ - .end local v17 # "startTime":J │ + .end local v16 # "sampleResult":D │ + .end local v18 # "startTime":J │ .end local v20 # "tcpSocket":Ljava/net/Socket; │ - .end local v21 # "totalDuration":J │ - .end local v23 # "tps_result_str":[Ljava/lang/String; │ + .end local v21 # "tps_result_str":[Ljava/lang/String; │ + .end local v22 # "totalDuration":J │ .end local v24 # "uplinkBuffer":[B │ - .restart local v19 # "tcpSocket":Ljava/net/Socket; │ + .restart local v15 # "tcpSocket":Ljava/net/Socket; │ :catch_0 │ move-exception v5 │ │ .line 434 │ .local v5, "e":Ljava/io/IOException; │ :goto_2 │ invoke-virtual {v5}, Ljava/io/IOException;->printStackTrace()V │ @@ -2028,43 +2042,43 @@ │ │ invoke-direct {v0, v1}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v26 │ │ .line 465 │ .end local v5 # "e":Ljava/io/IOException; │ - .end local v19 # "tcpSocket":Ljava/net/Socket; │ + .end local v15 # "tcpSocket":Ljava/net/Socket; │ .restart local v4 # "data_limit_byte_up":I │ .restart local v6 # "endTime":J │ .restart local v11 # "progUpdateCount":I │ - .restart local v17 # "startTime":J │ + .restart local v18 # "startTime":J │ .restart local v20 # "tcpSocket":Ljava/net/Socket; │ - .restart local v21 # "totalDuration":J │ + .restart local v22 # "totalDuration":J │ .restart local v24 # "uplinkBuffer":[B │ :cond_1 │ :try_start_3 │ move-object/from16 v0, p0 │ │ iget v0, v0, Lcom/mobiperf/measurements/TCPThroughputTask;->MAXPROGRESS:I │ │ move/from16 v25, v0 │ │ move/from16 v0, v25 │ │ int-to-long v0, v0 │ │ - move-wide/from16 v25, v0 │ + move-wide/from16 v26, v0 │ │ - sub-long v27, v6, v17 │ + sub-long v28, v6, v18 │ │ - mul-long v25, v25, v27 │ + mul-long v26, v26, v28 │ │ - div-long v25, v25, v21 │ + div-long v26, v26, v22 │ │ - move-wide/from16 v0, v25 │ + move-wide/from16 v0, v26 │ │ long-to-int v0, v0 │ │ move/from16 v25, v0 │ │ move/from16 v0, v25 │ │ @@ -2126,17 +2140,17 @@ │ invoke-virtual {v0, v1}, Lcom/mobiperf/measurements/TCPThroughputTask;->broadcastProgressForUser(I)V │ │ .line 470 │ add-int/lit8 v11, v11, 0x1 │ │ .line 472 │ :cond_2 │ - sub-long v25, v6, v17 │ + sub-long v26, v6, v18 │ │ - cmp-long v25, v25, v21 │ + cmp-long v25, v26, v22 │ │ if-ltz v25, :cond_0 │ │ goto/16 :goto_0 │ │ .line 496 │ .restart local v12 # "resultMsg":[B │ @@ -2192,15 +2206,15 @@ │ │ .line 509 │ return-void │ │ .line 498 │ .end local v12 # "resultMsg":[B │ .end local v13 # "resultMsgLen":I │ - .end local v21 # "totalDuration":J │ + .end local v22 # "totalDuration":J │ :catch_1 │ move-exception v5 │ │ .line 499 │ .local v5, "e":Ljava/lang/OutOfMemoryError; │ :try_start_4 │ new-instance v25, Lcom/mobiperf/MeasurementError; │ @@ -2293,23 +2307,23 @@ │ .catchall {:try_start_5 .. :try_end_5} :catchall_0 │ │ .line 433 │ .end local v4 # "data_limit_byte_up":I │ .end local v5 # "e":Ljava/io/IOException; │ .end local v6 # "endTime":J │ .end local v11 # "progUpdateCount":I │ - .end local v17 # "startTime":J │ + .end local v18 # "startTime":J │ .end local v24 # "uplinkBuffer":[B │ :catch_3 │ move-exception v5 │ │ - move-object/from16 v19, v20 │ + move-object/from16 v15, v20 │ │ .end local v20 # "tcpSocket":Ljava/net/Socket; │ - .restart local v19 # "tcpSocket":Ljava/net/Socket; │ + .restart local v15 # "tcpSocket":Ljava/net/Socket; │ goto/16 :goto_2 │ .end method │ │ │ # virtual methods │ .method public call()Lcom/mobiperf/MeasurementResult; │ .locals 14 │ @@ -2598,26 +2612,29 @@ │ .line 344 │ :goto_0 │ const/4 v6, 0x1 │ │ .line 355 │ new-instance v0, Lcom/mobiperf/MeasurementResult; │ │ + .line 356 │ invoke-virtual {v11}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ move-result-object v1 │ │ iget-object v1, v1, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ + .line 357 │ invoke-virtual {v11}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ │ move-result-object v2 │ │ const-string v3, "tcpthroughput" │ │ + .line 358 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v4 │ │ const-wide/16 v12, 0x3e8 │ │ mul-long/2addr v4, v12 │ @@ -2690,17 +2707,17 @@ │ │ .line 340 │ .end local v0 # "result":Lcom/mobiperf/MeasurementResult; │ :cond_4 │ :try_start_4 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - iput-wide v1, p0, Lcom/mobiperf/measurements/TCPThroughputTask;->taskStartTime:J │ + iput-wide v2, p0, Lcom/mobiperf/measurements/TCPThroughputTask;->taskStartTime:J │ │ .line 341 │ invoke-direct {p0}, Lcom/mobiperf/measurements/TCPThroughputTask;->downlink()V │ │ .line 342 │ const-string v1, "Downlink measurement result is:" │ │ @@ -2901,15 +2918,15 @@ │ │ .prologue │ .line 294 │ return-void │ .end method │ │ .method public toString()Ljava/lang/String; │ - .locals 5 │ + .locals 6 │ │ .prologue │ .line 272 │ iget-object v0, p0, Lcom/mobiperf/measurements/TCPThroughputTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ check-cast v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc; │ │ @@ -2947,17 +2964,17 @@ │ │ const-string v3, "\n Interval (sec): " │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ - iget-wide v3, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->intervalSec:D │ + iget-wide v4, v0, Lcom/mobiperf/measurements/TCPThroughputTask$TCPThroughputDesc;->intervalSec:D │ │ - invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ + invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ const-string v3, "\n Next run: " │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; ├── smali/com/mobiperf/measurements/TracerouteTask$HopInfo.smali │ @@ -29,15 +29,15 @@ │ .field public rtt:D │ │ .field final synthetic this$0:Lcom/mobiperf/measurements/TracerouteTask; │ │ │ # direct methods │ .method protected constructor (Lcom/mobiperf/measurements/TracerouteTask;Ljava/util/HashSet;D)V │ - .locals 0 │ + .locals 1 │ .param p3, "rtt" # D │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Ljava/util/HashSet", │ "<", │ "Ljava/lang/String;", ├── smali/com/mobiperf/measurements/TracerouteTask$ProcWrapper.smali │ @@ -75,58 +75,58 @@ │ │ return-object v0 │ .end method │ │ │ # virtual methods │ .method public run()V │ - .locals 5 │ + .locals 6 │ │ .prologue │ .line 461 │ :try_start_0 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ .line 462 │ - .local v1, "startTime":J │ - iget-object v3, p0, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->process:Ljava/lang/Process; │ + .local v2, "startTime":J │ + iget-object v1, p0, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->process:Ljava/lang/Process; │ │ - invoke-virtual {v3}, Ljava/lang/Process;->waitFor()I │ + invoke-virtual {v1}, Ljava/lang/Process;->waitFor()I │ │ - move-result v3 │ + move-result v1 │ │ - invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ - move-result-object v3 │ + move-result-object v1 │ │ - iput-object v3, p0, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->exitStatus:Ljava/lang/Integer; │ + iput-object v1, p0, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->exitStatus:Ljava/lang/Integer; │ │ .line 463 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ - sub-long/2addr v3, v1 │ + sub-long/2addr v4, v2 │ │ - iput-wide v3, p0, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->duration:J │ + iput-wide v4, p0, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->duration:J │ :try_end_0 │ .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 467 │ - .end local v1 # "startTime":J │ + .end local v2 # "startTime":J │ :goto_0 │ return-void │ │ .line 464 │ :catch_0 │ move-exception v0 │ │ .line 465 │ .local v0, "e":Ljava/lang/InterruptedException; │ - const-string v3, "Traceroute thread gets interrupted" │ + const-string v1, "Traceroute thread gets interrupted" │ │ - invoke-static {v3}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ + invoke-static {v1}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ goto :goto_0 │ .end method ├── smali/com/mobiperf/measurements/TracerouteTask$TracerouteDesc.smali │ @@ -28,15 +28,15 @@ │ .field private pingsPerHop:I │ │ .field public target:Ljava/lang/String; │ │ │ # direct methods │ .method public constructor (Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ - .locals 13 │ + .locals 16 │ .param p1, "key" # Ljava/lang/String; │ .param p2, "startTime" # Ljava/util/Date; │ .param p3, "endTime" # Ljava/util/Date; │ .param p4, "intervalSec" # D │ .param p6, "count" # J │ .param p8, "priority" # J │ .annotation system Ldalvik/annotation/Signature; │ @@ -59,61 +59,67 @@ │ Ljava/security/InvalidParameterException; │ } │ .end annotation │ │ .prologue │ .line 88 │ .local p10, "params":Ljava/util/Map;, "Ljava/util/Map;" │ - const-string v2, "traceroute" │ + const-string v4, "traceroute" │ │ - move-object v1, p0 │ + move-object/from16 v3, p0 │ │ - move-object v3, p1 │ + move-object/from16 v5, p1 │ │ - move-object v4, p2 │ + move-object/from16 v6, p2 │ │ - move-object/from16 v5, p3 │ + move-object/from16 v7, p3 │ │ - move-wide/from16 v6, p4 │ + move-wide/from16 v8, p4 │ │ - move-wide/from16 v8, p6 │ + move-wide/from16 v10, p6 │ │ - move-wide/from16 v10, p8 │ + move-wide/from16 v12, p8 │ │ - move-object/from16 v12, p10 │ + move-object/from16 v14, p10 │ │ - invoke-direct/range {v1 .. v12}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ + invoke-direct/range {v3 .. v14}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ │ .line 90 │ - move-object/from16 v0, p10 │ + move-object/from16 v0, p0 │ │ - invoke-virtual {p0, v0}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->initializeParams(Ljava/util/Map;)V │ + move-object/from16 v1, p10 │ + │ + invoke-virtual {v0, v1}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->initializeParams(Ljava/util/Map;)V │ │ .line 92 │ - iget-object v1, p0, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ + move-object/from16 v0, p0 │ │ - if-eqz v1, :cond_0 │ + iget-object v2, v0, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ │ - iget-object v1, p0, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ + if-eqz v2, :cond_0 │ │ - invoke-virtual {v1}, Ljava/lang/String;->length()I │ + move-object/from16 v0, p0 │ + │ + iget-object v2, v0, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ │ - move-result v1 │ + invoke-virtual {v2}, Ljava/lang/String;->length()I │ + │ + move-result v2 │ │ - if-nez v1, :cond_1 │ + if-nez v2, :cond_1 │ │ .line 93 │ :cond_0 │ - new-instance v1, Ljava/security/InvalidParameterException; │ + new-instance v2, Ljava/security/InvalidParameterException; │ │ - const-string v2, "Target of traceroute cannot be null" │ + const-string v3, "Target of traceroute cannot be null" │ │ - invoke-direct {v1, v2}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v2, v3}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v1 │ + throw v2 │ │ .line 95 │ :cond_1 │ return-void │ .end method │ │ .method static synthetic access$000(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ @@ -244,14 +250,15 @@ │ │ invoke-virtual {v1}, Ljava/lang/String;->length()I │ │ move-result v2 │ │ if-lez v2, :cond_1 │ │ + .line 114 │ invoke-static {v1}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v2 │ │ if-lez v2, :cond_1 │ │ .line 115 │ @@ -277,14 +284,15 @@ │ │ invoke-virtual {v1}, Ljava/lang/String;->length()I │ │ move-result v2 │ │ if-lez v2, :cond_2 │ │ + .line 120 │ invoke-static {v1}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v2 │ │ if-lez v2, :cond_2 │ │ .line 121 │ @@ -310,14 +318,15 @@ │ │ invoke-virtual {v1}, Ljava/lang/String;->length()I │ │ move-result v2 │ │ if-lez v2, :cond_3 │ │ + .line 126 │ invoke-static {v1}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v2 │ │ if-lez v2, :cond_3 │ │ .line 127 │ @@ -345,14 +354,15 @@ │ │ invoke-virtual {v1}, Ljava/lang/String;->length()I │ │ move-result v2 │ │ if-lez v2, :cond_4 │ │ + .line 132 │ invoke-static {v1}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v2 │ │ if-lez v2, :cond_4 │ │ .line 133 │ @@ -378,14 +388,15 @@ │ │ invoke-virtual {v1}, Ljava/lang/String;->length()I │ │ move-result v2 │ │ if-lez v2, :cond_5 │ │ + .line 138 │ invoke-static {v1}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v2 │ │ if-lez v2, :cond_5 │ │ .line 139 ├── smali/com/mobiperf/measurements/TracerouteTask.smali │ @@ -2,15 +2,14 @@ │ .super Lcom/mobiperf/MeasurementTask; │ .source "TracerouteTask.java" │ │ │ # annotations │ .annotation system Ldalvik/annotation/MemberClasses; │ value = { │ - Lcom/mobiperf/measurements/TracerouteTask$1;, │ Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;, │ Lcom/mobiperf/measurements/TracerouteTask$HopInfo;, │ Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ } │ .end annotation │ │ │ @@ -530,43 +529,43 @@ │ │ .prologue │ .line 170 │ move-object/from16 v0, p0 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/TracerouteTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - move-object/from16 v42, v0 │ + move-object/from16 v41, v0 │ │ - check-cast v42, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ + check-cast v41, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ │ .line 171 │ - .local v42, "task":Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ + .local v41, "task":Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc; │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->maxHopCount:I │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$000(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ + invoke-static/range {v41 .. v41}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$000(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ │ - move-result v31 │ + move-result v30 │ │ .line 172 │ - .local v31, "maxHopCount":I │ - const/16 v43, 0x1 │ + .local v30, "maxHopCount":I │ + const/16 v42, 0x1 │ │ .line 173 │ - .local v43, "ttl":I │ + .local v42, "ttl":I │ const/16 v24, 0x0 │ │ .line 174 │ .local v24, "hostIp":Ljava/lang/String; │ - move-object/from16 v0, v42 │ + move-object/from16 v0, v41 │ │ iget-object v0, v0, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ │ - move-object/from16 v41, v0 │ + move-object/from16 v40, v0 │ │ .line 175 │ - .local v41, "target":Ljava/lang/String; │ + .local v40, "target":Ljava/lang/String; │ const/4 v10, 0x0 │ │ .line 176 │ .local v10, "success":Z │ new-instance v18, Ljava/util/ArrayList; │ │ invoke-direct/range {v18 .. v18}, Ljava/util/ArrayList;->()V │ @@ -579,15 +578,15 @@ │ │ const-string v6, "Starting traceroute on host " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ - move-object/from16 v0, v42 │ + move-object/from16 v0, v41 │ │ iget-object v6, v0, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ @@ -595,15 +594,15 @@ │ │ move-result-object v5 │ │ invoke-static {v5}, Lcom/mobiperf/Logger;->d(Ljava/lang/String;)V │ │ .line 181 │ :try_start_0 │ - invoke-static/range {v41 .. v41}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ + invoke-static/range {v40 .. v40}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; │ │ move-result-object v23 │ │ .line 182 │ .local v23, "hostInetAddr":Ljava/net/InetAddress; │ invoke-virtual/range {v23 .. v23}, Ljava/net/InetAddress;->getHostAddress()Ljava/lang/String; │ │ @@ -612,29 +611,29 @@ │ .line 184 │ invoke-virtual/range {v23 .. v23}, Ljava/net/InetAddress;->getAddress()[B │ │ move-result-object v5 │ │ array-length v0, v5 │ │ - move/from16 v29, v0 │ + move/from16 v28, v0 │ │ .line 185 │ - .local v29, "ipByteLen":I │ + .local v28, "ipByteLen":I │ new-instance v5, Ljava/lang/StringBuilder; │ │ invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ const-string v6, "IP address length is " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ - move/from16 v0, v29 │ + move/from16 v0, v28 │ │ invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ @@ -666,21 +665,21 @@ │ invoke-static {v5}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 187 │ move-object/from16 v0, p0 │ │ iget-object v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->parent:Landroid/content/Context; │ │ - move/from16 v0, v29 │ + move/from16 v0, v28 │ │ invoke-static {v0, v5}, Lcom/mobiperf/util/Util;->pingExecutableBasedOnIPType(ILandroid/content/Context;)Ljava/lang/String; │ │ move-result-object v5 │ │ - move-object/from16 v0, v42 │ + move-object/from16 v0, v41 │ │ # setter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->pingExe:Ljava/lang/String; │ invoke-static {v0, v5}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$102(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;Ljava/lang/String;)Ljava/lang/String; │ │ .line 188 │ new-instance v5, Ljava/lang/StringBuilder; │ │ @@ -689,15 +688,15 @@ │ const-string v6, "Ping executable is " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->pingExe:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$100(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)Ljava/lang/String; │ + invoke-static/range {v41 .. v41}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$100(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)Ljava/lang/String; │ │ move-result-object v6 │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ @@ -705,15 +704,15 @@ │ │ move-result-object v5 │ │ invoke-static {v5}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 189 │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->pingExe:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$100(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)Ljava/lang/String; │ + invoke-static/range {v41 .. v41}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$100(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)Ljava/lang/String; │ │ move-result-object v5 │ │ if-nez v5, :cond_0 │ │ .line 190 │ const-string v5, "Ping Executable not found" │ @@ -729,15 +728,15 @@ │ │ throw v5 │ :try_end_0 │ .catch Ljava/net/UnknownHostException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 193 │ .end local v23 # "hostInetAddr":Ljava/net/InetAddress; │ - .end local v29 # "ipByteLen":I │ + .end local v28 # "ipByteLen":I │ :catch_0 │ move-exception v15 │ │ .line 194 │ .local v15, "e":Ljava/net/UnknownHostException; │ new-instance v5, Ljava/lang/StringBuilder; │ │ @@ -745,15 +744,15 @@ │ │ const-string v6, "Cannont resolve host " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ - move-object/from16 v0, v41 │ + move-object/from16 v0, v40 │ │ invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ @@ -770,15 +769,15 @@ │ │ const-string v7, "target " │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ - move-object/from16 v0, v41 │ + move-object/from16 v0, v40 │ │ invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ const-string v7, " cannot be resolved" │ │ @@ -793,34 +792,34 @@ │ invoke-direct {v5, v6}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v5 │ │ .line 197 │ .end local v15 # "e":Ljava/net/UnknownHostException; │ .restart local v23 # "hostInetAddr":Ljava/net/InetAddress; │ - .restart local v29 # "ipByteLen":I │ + .restart local v28 # "ipByteLen":I │ :cond_0 │ const/4 v4, 0x0 │ │ .local v4, "result":Lcom/mobiperf/MeasurementResult; │ - move-object/from16 v38, v4 │ + move-object/from16 v37, v4 │ │ .end local v4 # "result":Lcom/mobiperf/MeasurementResult; │ - .local v38, "result":Lcom/mobiperf/MeasurementResult; │ - move/from16 v32, v31 │ + .local v37, "result":Lcom/mobiperf/MeasurementResult; │ + move/from16 v31, v30 │ │ .line 199 │ - .end local v31 # "maxHopCount":I │ - .local v32, "maxHopCount":I │ + .end local v30 # "maxHopCount":I │ + .local v31, "maxHopCount":I │ :goto_0 │ - add-int/lit8 v31, v32, -0x1 │ + add-int/lit8 v30, v31, -0x1 │ │ - .end local v32 # "maxHopCount":I │ - .restart local v31 # "maxHopCount":I │ - if-ltz v32, :cond_a │ + .end local v31 # "maxHopCount":I │ + .restart local v30 # "maxHopCount":I │ + if-ltz v31, :cond_a │ │ move-object/from16 v0, p0 │ │ iget-boolean v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->stopRequested:Z │ │ if-nez v5, :cond_a │ │ @@ -828,15 +827,15 @@ │ const/16 v5, 0x8 │ │ new-array v5, v5, [Ljava/lang/Object; │ │ const/4 v6, 0x0 │ │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->pingExe:Ljava/lang/String; │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$100(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)Ljava/lang/String; │ + invoke-static/range {v41 .. v41}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$100(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)Ljava/lang/String; │ │ move-result-object v7 │ │ aput-object v7, v5, v6 │ │ const/4 v6, 0x1 │ │ @@ -848,30 +847,31 @@ │ │ const-string v7, "-t" │ │ aput-object v7, v5, v6 │ │ const/4 v6, 0x3 │ │ - invoke-static/range {v43 .. v43}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static/range {v42 .. v42}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ move-result-object v7 │ │ aput-object v7, v5, v6 │ │ const/4 v6, 0x4 │ │ const-string v7, "-s" │ │ aput-object v7, v5, v6 │ │ const/4 v6, 0x5 │ │ + .line 206 │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->packetSizeByte:I │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$200(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ + invoke-static/range {v41 .. v41}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$200(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ │ move-result v7 │ │ invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ move-result-object v7 │ │ @@ -881,26 +881,27 @@ │ │ const-string v7, "-c 1" │ │ aput-object v7, v5, v6 │ │ const/4 v6, 0x7 │ │ - aput-object v41, v5, v6 │ + aput-object v40, v5, v6 │ │ + .line 205 │ invoke-static {v5}, Lcom/mobiperf/util/Util;->constructCommand([Ljava/lang/Object;)Ljava/lang/String; │ │ move-result-object v14 │ │ .line 209 │ .local v14, "command":Ljava/lang/String; │ - const-wide/16 v39, 0x0 │ + const-wide/16 v38, 0x0 │ │ .line 210 │ - .local v39, "rtt":D │ + .local v38, "rtt":D │ :try_start_1 │ new-instance v25, Ljava/util/HashSet; │ │ invoke-direct/range {v25 .. v25}, Ljava/util/HashSet;->()V │ │ .line 211 │ .local v25, "hostsAtThisDistance":Ljava/util/HashSet;, "Ljava/util/HashSet;" │ @@ -909,15 +910,15 @@ │ .line 212 │ .local v16, "effectiveTask":I │ const/16 v26, 0x0 │ │ .local v26, "i":I │ :goto_1 │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->pingsPerHop:I │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$300(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ + invoke-static/range {v41 .. v41}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$300(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ │ move-result v5 │ │ move/from16 v0, v26 │ │ if-ge v0, v5, :cond_2 │ │ @@ -933,73 +934,69 @@ │ move-object/from16 v0, p0 │ │ iput-object v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->pingProc:Ljava/lang/Process; │ │ .line 217 │ move-object/from16 v0, p0 │ │ - iget-wide v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->dataConsumed:J │ + iget-wide v6, v0, Lcom/mobiperf/measurements/TracerouteTask;->dataConsumed:J │ │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->packetSizeByte:I │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$200(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ + invoke-static/range {v41 .. v41}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$200(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ │ - move-result v7 │ + move-result v5 │ │ - add-int/lit8 v7, v7, 0x1c │ + add-int/lit8 v5, v5, 0x1c │ │ - mul-int/lit8 v7, v7, 0x2 │ + mul-int/lit8 v5, v5, 0x2 │ │ - mul-int/lit8 v7, v7, 0x3 │ + mul-int/lit8 v5, v5, 0x3 │ │ - int-to-long v7, v7 │ + int-to-long v8, v5 │ │ - add-long/2addr v5, v7 │ + add-long/2addr v6, v8 │ │ move-object/from16 v0, p0 │ │ - iput-wide v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->dataConsumed:J │ + iput-wide v6, v0, Lcom/mobiperf/measurements/TracerouteTask;->dataConsumed:J │ │ .line 221 │ - new-instance v36, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ + new-instance v33, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ │ move-object/from16 v0, p0 │ │ iget-object v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->pingProc:Ljava/lang/Process; │ │ const/4 v6, 0x0 │ │ - move-object/from16 v0, v36 │ + move-object/from16 v0, v33 │ │ move-object/from16 v1, p0 │ │ invoke-direct {v0, v1, v5, v6}, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->(Lcom/mobiperf/measurements/TracerouteTask;Ljava/lang/Process;Lcom/mobiperf/measurements/TracerouteTask$1;)V │ │ .line 222 │ - .local v36, "procwrapper":Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ - invoke-virtual/range {v36 .. v36}, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->start()V │ + .local v33, "procwrapper":Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ + invoke-virtual/range {v33 .. v33}, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->start()V │ :try_end_1 │ .catch Ljava/lang/SecurityException; {:try_start_1 .. :try_end_1} :catch_3 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_5 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ .line 224 │ const-wide/16 v34, 0x1388 │ │ .line 225 │ .local v34, "pingThreadTimeout":J │ :try_start_2 │ - move-object/from16 v0, v36 │ - │ - move-wide/from16 v1, v34 │ - │ - invoke-virtual {v0, v1, v2}, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->join(J)V │ + invoke-virtual/range {v33 .. v35}, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->join(J)V │ │ .line 226 │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->exitStatus:Ljava/lang/Integer; │ - invoke-static/range {v36 .. v36}, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->access$500(Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;)Ljava/lang/Integer; │ + invoke-static/range {v33 .. v33}, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->access$500(Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;)Ljava/lang/Integer; │ │ move-result-object v5 │ │ if-nez v5, :cond_1 │ │ .line 227 │ new-instance v5, Ljava/util/concurrent/TimeoutException; │ @@ -1017,15 +1014,15 @@ │ .line 228 │ :catch_1 │ move-exception v17 │ │ .line 229 │ .local v17, "ex":Ljava/lang/InterruptedException; │ :try_start_3 │ - invoke-virtual/range {v36 .. v36}, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->interrupt()V │ + invoke-virtual/range {v33 .. v33}, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->interrupt()V │ │ .line 230 │ invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/Thread;->interrupt()V │ @@ -1077,23 +1074,23 @@ │ goto :goto_2 │ │ .line 300 │ .end local v15 # "e":Ljava/util/concurrent/TimeoutException; │ .end local v16 # "effectiveTask":I │ .end local v25 # "hostsAtThisDistance":Ljava/util/HashSet;, "Ljava/util/HashSet;" │ .end local v26 # "i":I │ + .end local v33 # "procwrapper":Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ .end local v34 # "pingThreadTimeout":J │ - .end local v36 # "procwrapper":Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ :catch_3 │ move-exception v15 │ │ - move-object/from16 v4, v38 │ + move-object/from16 v4, v37 │ │ .line 301 │ - .end local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v37 # "result":Lcom/mobiperf/MeasurementResult; │ .restart local v4 # "result":Lcom/mobiperf/MeasurementResult; │ .local v15, "e":Ljava/lang/SecurityException; │ :goto_3 │ :try_start_4 │ const-string v5, "Does not have the permission to run ping on this device" │ │ invoke-static {v5}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ @@ -1108,26 +1105,26 @@ │ move-object/from16 v0, p0 │ │ invoke-direct {v0, v5}, Lcom/mobiperf/measurements/TracerouteTask;->cleanUp(Ljava/lang/Process;)V │ │ .line 308 │ .end local v15 # "e":Ljava/lang/SecurityException; │ :goto_4 │ - add-int/lit8 v43, v43, 0x1 │ + add-int/lit8 v42, v42, 0x1 │ │ .line 309 │ - mul-int/lit8 v5, v43, 0x64 │ + mul-int/lit8 v5, v42, 0x64 │ │ - int-to-double v5, v5 │ + int-to-double v6, v5 │ │ - const-wide/high16 v7, 0x4034000000000000L # 20.0 │ + const-wide/high16 v8, 0x4034000000000000L # 20.0 │ │ - div-double/2addr v5, v7 │ + div-double/2addr v6, v8 │ │ - double-to-int v5, v5 │ + double-to-int v5, v6 │ │ move-object/from16 v0, p0 │ │ iput v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->progress:I │ │ .line 310 │ const/16 v5, 0x64 │ @@ -1149,62 +1146,62 @@ │ │ iget v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->progress:I │ │ move-object/from16 v0, p0 │ │ invoke-virtual {v0, v5}, Lcom/mobiperf/measurements/TracerouteTask;->broadcastProgressForUser(I)V │ │ - move-object/from16 v38, v4 │ + move-object/from16 v37, v4 │ │ .end local v4 # "result":Lcom/mobiperf/MeasurementResult; │ - .restart local v38 # "result":Lcom/mobiperf/MeasurementResult; │ - move/from16 v32, v31 │ + .restart local v37 # "result":Lcom/mobiperf/MeasurementResult; │ + move/from16 v31, v30 │ │ .line 312 │ - .end local v31 # "maxHopCount":I │ - .restart local v32 # "maxHopCount":I │ + .end local v30 # "maxHopCount":I │ + .restart local v31 # "maxHopCount":I │ goto/16 :goto_0 │ │ .line 239 │ - .end local v32 # "maxHopCount":I │ + .end local v31 # "maxHopCount":I │ .restart local v16 # "effectiveTask":I │ .restart local v25 # "hostsAtThisDistance":Ljava/util/HashSet;, "Ljava/util/HashSet;" │ .restart local v26 # "i":I │ - .restart local v31 # "maxHopCount":I │ + .restart local v30 # "maxHopCount":I │ + .restart local v33 # "procwrapper":Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ .restart local v34 # "pingThreadTimeout":J │ - .restart local v36 # "procwrapper":Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ :cond_1 │ :try_start_5 │ - move-object/from16 v0, v36 │ + move-object/from16 v0, v33 │ │ - iget-wide v5, v0, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->duration:J │ + iget-wide v6, v0, Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper;->duration:J │ │ - long-to-double v5, v5 │ + long-to-double v6, v6 │ │ - add-double v39, v39, v5 │ + add-double v38, v38, v6 │ │ .line 240 │ add-int/lit8 v16, v16, 0x1 │ │ .line 243 │ move-object/from16 v0, p0 │ │ iget-object v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->pingProc:Ljava/lang/Process; │ │ invoke-virtual {v5}, Ljava/lang/Process;->getInputStream()Ljava/io/InputStream; │ │ - move-result-object v30 │ + move-result-object v29 │ │ .line 244 │ - .local v30, "is":Ljava/io/InputStream; │ + .local v29, "is":Ljava/io/InputStream; │ new-instance v13, Ljava/io/BufferedReader; │ │ new-instance v5, Ljava/io/InputStreamReader; │ │ - move-object/from16 v0, v30 │ + move-object/from16 v0, v29 │ │ invoke-direct {v5, v0}, Ljava/io/InputStreamReader;->(Ljava/io/InputStream;)V │ │ invoke-direct {v13, v5}, Ljava/io/BufferedReader;->(Ljava/io/Reader;)V │ │ .line 247 │ .local v13, "br":Ljava/io/BufferedReader; │ @@ -1228,25 +1225,25 @@ │ .catch Ljava/lang/SecurityException; {:try_start_5 .. :try_end_5} :catch_3 │ .catch Ljava/io/IOException; {:try_start_5 .. :try_end_5} :catch_5 │ .catchall {:try_start_5 .. :try_end_5} :catchall_0 │ │ .line 250 │ :try_start_6 │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->pingIntervalSec:D │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$600(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)D │ + invoke-static/range {v41 .. v41}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$600(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)D │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ - const-wide v7, 0x408f400000000000L # 1000.0 │ + const-wide v8, 0x408f400000000000L # 1000.0 │ │ - mul-double/2addr v5, v7 │ + mul-double/2addr v6, v8 │ │ - double-to-long v5, v5 │ + double-to-long v6, v6 │ │ - invoke-static {v5, v6}, Ljava/lang/Thread;->sleep(J)V │ + invoke-static {v6, v7}, Ljava/lang/Thread;->sleep(J)V │ :try_end_6 │ .catch Ljava/lang/InterruptedException; {:try_start_6 .. :try_end_6} :catch_4 │ .catch Ljava/lang/SecurityException; {:try_start_6 .. :try_end_6} :catch_3 │ .catch Ljava/io/IOException; {:try_start_6 .. :try_end_6} :catch_5 │ .catchall {:try_start_6 .. :try_end_6} :catchall_0 │ │ goto/16 :goto_2 │ @@ -1270,24 +1267,24 @@ │ │ .line 302 │ .end local v13 # "br":Ljava/io/BufferedReader; │ .end local v15 # "e":Ljava/lang/InterruptedException; │ .end local v16 # "effectiveTask":I │ .end local v25 # "hostsAtThisDistance":Ljava/util/HashSet;, "Ljava/util/HashSet;" │ .end local v26 # "i":I │ - .end local v30 # "is":Ljava/io/InputStream; │ + .end local v29 # "is":Ljava/io/InputStream; │ + .end local v33 # "procwrapper":Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ .end local v34 # "pingThreadTimeout":J │ - .end local v36 # "procwrapper":Lcom/mobiperf/measurements/TracerouteTask$ProcWrapper; │ :catch_5 │ move-exception v15 │ │ - move-object/from16 v4, v38 │ + move-object/from16 v4, v37 │ │ .line 303 │ - .end local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v37 # "result":Lcom/mobiperf/MeasurementResult; │ .restart local v4 # "result":Lcom/mobiperf/MeasurementResult; │ .local v15, "e":Ljava/io/IOException; │ :goto_5 │ :try_start_8 │ const-string v5, "The ping program cannot be executed" │ │ invoke-static {v5}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ @@ -1314,43 +1311,43 @@ │ │ .line 255 │ .end local v4 # "result":Lcom/mobiperf/MeasurementResult; │ .end local v15 # "e":Ljava/io/IOException; │ .restart local v16 # "effectiveTask":I │ .restart local v25 # "hostsAtThisDistance":Ljava/util/HashSet;, "Ljava/util/HashSet;" │ .restart local v26 # "i":I │ - .restart local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .restart local v37 # "result":Lcom/mobiperf/MeasurementResult; │ :cond_2 │ if-eqz v16, :cond_3 │ │ move/from16 v0, v16 │ │ - int-to-double v5, v0 │ + int-to-double v6, v0 │ │ - div-double v39, v39, v5 │ + div-double v38, v38, v6 │ │ .line 256 │ :goto_6 │ - const-wide/high16 v5, -0x4010000000000000L # -1.0 │ + const-wide/high16 v6, -0x4010000000000000L # -1.0 │ │ - cmpl-double v5, v39, v5 │ + cmpl-double v5, v38, v6 │ │ if-nez v5, :cond_5 │ │ .line 257 │ :try_start_9 │ const-string v12, "" │ │ .line 258 │ .local v12, "Unreachablehost":Ljava/lang/String; │ const/16 v26, 0x0 │ │ :goto_7 │ # getter for: Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->pingsPerHop:I │ - invoke-static/range {v42 .. v42}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$300(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ + invoke-static/range {v41 .. v41}, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->access$300(Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;)I │ │ move-result v5 │ │ move/from16 v0, v26 │ │ if-ge v0, v5, :cond_4 │ │ @@ -1377,15 +1374,15 @@ │ add-int/lit8 v26, v26, 0x1 │ │ goto :goto_7 │ │ .line 255 │ .end local v12 # "Unreachablehost":Ljava/lang/String; │ :cond_3 │ - const-wide/high16 v39, -0x4010000000000000L # -1.0 │ + const-wide/high16 v38, -0x4010000000000000L # -1.0 │ │ goto :goto_6 │ │ .line 261 │ .restart local v12 # "Unreachablehost":Ljava/lang/String; │ :cond_4 │ move-object/from16 v0, v25 │ @@ -1401,15 +1398,15 @@ │ │ const-string v6, "RTT is " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ - move-wide/from16 v0, v39 │ + move-wide/from16 v0, v38 │ │ invoke-virtual {v5, v0, v1}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ @@ -1420,30 +1417,30 @@ │ .line 265 │ new-instance v5, Lcom/mobiperf/measurements/TracerouteTask$HopInfo; │ │ move-object/from16 v0, p0 │ │ move-object/from16 v1, v25 │ │ - move-wide/from16 v2, v39 │ + move-wide/from16 v2, v38 │ │ invoke-direct {v5, v0, v1, v2, v3}, Lcom/mobiperf/measurements/TracerouteTask$HopInfo;->(Lcom/mobiperf/measurements/TracerouteTask;Ljava/util/HashSet;D)V │ │ move-object/from16 v0, v18 │ │ invoke-virtual {v0, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ │ .line 268 │ - new-instance v37, Ljava/lang/StringBuffer; │ + new-instance v36, Ljava/lang/StringBuffer; │ │ new-instance v5, Ljava/lang/StringBuilder; │ │ invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - move/from16 v0, v43 │ + move/from16 v0, v42 │ │ invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ const-string v6, ": " │ │ @@ -1451,56 +1448,55 @@ │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ - move-object/from16 v0, v37 │ + move-object/from16 v0, v36 │ │ invoke-direct {v0, v5}, Ljava/lang/StringBuffer;->(Ljava/lang/String;)V │ │ .line 269 │ - .local v37, "progressStr":Ljava/lang/StringBuffer; │ + .local v36, "progressStr":Ljava/lang/StringBuffer; │ invoke-virtual/range {v25 .. v25}, Ljava/util/HashSet;->iterator()Ljava/util/Iterator; │ │ - move-result-object v27 │ + move-result-object v5 │ │ - .local v27, "i$":Ljava/util/Iterator; │ :goto_8 │ - invoke-interface/range {v27 .. v27}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v5 │ + move-result v6 │ │ - if-eqz v5, :cond_9 │ + if-eqz v6, :cond_9 │ │ - invoke-interface/range {v27 .. v27}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v28 │ + move-result-object v27 │ │ - check-cast v28, Ljava/lang/String; │ + check-cast v27, Ljava/lang/String; │ │ .line 271 │ - .local v28, "ip":Ljava/lang/String; │ - move-object/from16 v0, v28 │ + .local v27, "ip":Ljava/lang/String; │ + move-object/from16 v0, v27 │ │ move-object/from16 v1, v24 │ │ invoke-virtual {v0, v1}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I │ │ - move-result v5 │ + move-result v6 │ │ - if-nez v5, :cond_8 │ + if-nez v6, :cond_8 │ │ .line 272 │ new-instance v5, Ljava/lang/StringBuilder; │ │ invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - move/from16 v0, v43 │ + move/from16 v0, v42 │ │ invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ const-string v6, ": " │ │ @@ -1527,27 +1523,27 @@ │ │ const-string v6, " Finished! " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ - move-object/from16 v0, v41 │ + move-object/from16 v0, v40 │ │ invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ const-string v6, " reached in " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ - move/from16 v0, v43 │ + move/from16 v0, v42 │ │ invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ const-string v6, " hops" │ │ @@ -1563,32 +1559,34 @@ │ │ .line 275 │ const/4 v10, 0x1 │ │ .line 276 │ invoke-static {}, Lcom/mobiperf/util/PhoneUtils;->getPhoneUtils()Lcom/mobiperf/util/PhoneUtils; │ │ - move-result-object v33 │ + move-result-object v32 │ │ .line 277 │ - .local v33, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + .local v32, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ new-instance v4, Lcom/mobiperf/MeasurementResult; │ │ - invoke-virtual/range {v33 .. v33}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ + invoke-virtual/range {v32 .. v32}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ move-result-object v5 │ │ iget-object v5, v5, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ - invoke-virtual/range {v33 .. v33}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ + .line 278 │ + invoke-virtual/range {v32 .. v32}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ │ move-result-object v6 │ │ const-string v7, "traceroute" │ │ + .line 279 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ move-result-wide v8 │ │ const-wide/16 v44, 0x3e8 │ │ mul-long v8, v8, v44 │ @@ -1600,20 +1598,20 @@ │ invoke-direct/range {v4 .. v11}, Lcom/mobiperf/MeasurementResult;->(Ljava/lang/String;Lcom/mobiperf/DeviceProperty;Ljava/lang/String;JZLcom/mobiperf/MeasurementDesc;)V │ :try_end_9 │ .catch Ljava/lang/SecurityException; {:try_start_9 .. :try_end_9} :catch_3 │ .catch Ljava/io/IOException; {:try_start_9 .. :try_end_9} :catch_5 │ .catchall {:try_start_9 .. :try_end_9} :catchall_0 │ │ .line 280 │ - .end local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v37 # "result":Lcom/mobiperf/MeasurementResult; │ .restart local v4 # "result":Lcom/mobiperf/MeasurementResult; │ :try_start_a │ const-string v5, "num_hops" │ │ - invoke-static/range {v43 .. v43}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ + invoke-static/range {v42 .. v42}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ move-result-object v6 │ │ invoke-virtual {v4, v5, v6}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 281 │ const/16 v26, 0x0 │ @@ -1646,74 +1644,74 @@ │ .local v21, "hostIdx":I │ move-object/from16 v0, v19 │ │ iget-object v5, v0, Lcom/mobiperf/measurements/TracerouteTask$HopInfo;->hosts:Ljava/util/HashSet; │ │ invoke-virtual {v5}, Ljava/util/HashSet;->iterator()Ljava/util/Iterator; │ │ - move-result-object v27 │ + move-result-object v5 │ │ move/from16 v22, v21 │ │ .end local v21 # "hostIdx":I │ .local v22, "hostIdx":I │ :goto_a │ - invoke-interface/range {v27 .. v27}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v5 │ + move-result v6 │ │ - if-eqz v5, :cond_6 │ + if-eqz v6, :cond_6 │ │ - invoke-interface/range {v27 .. v27}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ move-result-object v20 │ │ check-cast v20, Ljava/lang/String; │ │ .line 285 │ .local v20, "host":Ljava/lang/String; │ - new-instance v5, Ljava/lang/StringBuilder; │ + new-instance v6, Ljava/lang/StringBuilder; │ │ - invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ - const-string v6, "hop_" │ + const-string v7, "hop_" │ │ - invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v6 │ │ move/from16 v0, v26 │ │ - invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v6 │ │ - const-string v6, "_addr_" │ + const-string v7, "_addr_" │ │ - invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v6 │ │ add-int/lit8 v21, v22, 0x1 │ │ .end local v22 # "hostIdx":I │ .restart local v21 # "hostIdx":I │ move/from16 v0, v22 │ │ - invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v6 │ │ - invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v6 │ │ move-object/from16 v0, v20 │ │ - invoke-virtual {v4, v5, v0}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ + invoke-virtual {v4, v6, v0}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ move/from16 v22, v21 │ │ .line 286 │ .end local v21 # "hostIdx":I │ .restart local v22 # "hostIdx":I │ goto :goto_a │ @@ -1797,65 +1795,65 @@ │ │ iget-object v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->pingProc:Ljava/lang/Process; │ │ move-object/from16 v0, p0 │ │ invoke-direct {v0, v5}, Lcom/mobiperf/measurements/TracerouteTask;->cleanUp(Ljava/lang/Process;)V │ │ + .line 290 │ return-object v4 │ │ .line 293 │ .end local v4 # "result":Lcom/mobiperf/MeasurementResult; │ - .end local v33 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ - .restart local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v32 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + .restart local v37 # "result":Lcom/mobiperf/MeasurementResult; │ :cond_8 │ :try_start_b │ - new-instance v5, Ljava/lang/StringBuilder; │ + new-instance v6, Ljava/lang/StringBuilder; │ │ - invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ - move-object/from16 v0, v28 │ + move-object/from16 v0, v27 │ │ - invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v6 │ │ - const-string v6, " | " │ + const-string v7, " | " │ │ - invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v5 │ + move-result-object v6 │ │ - invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v6 │ │ - move-object/from16 v0, v37 │ + move-object/from16 v0, v36 │ │ - invoke-virtual {v0, v5}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; │ + invoke-virtual {v0, v6}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; │ :try_end_b │ .catch Ljava/lang/SecurityException; {:try_start_b .. :try_end_b} :catch_3 │ .catch Ljava/io/IOException; {:try_start_b .. :try_end_b} :catch_5 │ .catchall {:try_start_b .. :try_end_b} :catchall_0 │ │ goto/16 :goto_8 │ │ .line 306 │ .end local v16 # "effectiveTask":I │ .end local v25 # "hostsAtThisDistance":Ljava/util/HashSet;, "Ljava/util/HashSet;" │ .end local v26 # "i":I │ - .end local v27 # "i$":Ljava/util/Iterator; │ - .end local v28 # "ip":Ljava/lang/String; │ - .end local v37 # "progressStr":Ljava/lang/StringBuffer; │ + .end local v27 # "ip":Ljava/lang/String; │ + .end local v36 # "progressStr":Ljava/lang/StringBuffer; │ :catchall_0 │ move-exception v5 │ │ - move-object/from16 v4, v38 │ + move-object/from16 v4, v37 │ │ - .end local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v37 # "result":Lcom/mobiperf/MeasurementResult; │ .restart local v4 # "result":Lcom/mobiperf/MeasurementResult; │ :goto_b │ move-object/from16 v0, p0 │ │ iget-object v6, v0, Lcom/mobiperf/measurements/TracerouteTask;->pingProc:Ljava/lang/Process; │ │ move-object/from16 v0, p0 │ @@ -1865,35 +1863,34 @@ │ throw v5 │ │ .line 297 │ .end local v4 # "result":Lcom/mobiperf/MeasurementResult; │ .restart local v16 # "effectiveTask":I │ .restart local v25 # "hostsAtThisDistance":Ljava/util/HashSet;, "Ljava/util/HashSet;" │ .restart local v26 # "i":I │ - .restart local v27 # "i$":Ljava/util/Iterator; │ - .restart local v37 # "progressStr":Ljava/lang/StringBuffer; │ - .restart local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .restart local v36 # "progressStr":Ljava/lang/StringBuffer; │ + .restart local v37 # "result":Lcom/mobiperf/MeasurementResult; │ :cond_9 │ :try_start_c │ - invoke-virtual/range {v37 .. v37}, Ljava/lang/StringBuffer;->length()I │ + invoke-virtual/range {v36 .. v36}, Ljava/lang/StringBuffer;->length()I │ │ move-result v5 │ │ add-int/lit8 v5, v5, -0x3 │ │ - invoke-virtual/range {v37 .. v37}, Ljava/lang/StringBuffer;->length()I │ + invoke-virtual/range {v36 .. v36}, Ljava/lang/StringBuffer;->length()I │ │ move-result v6 │ │ - move-object/from16 v0, v37 │ + move-object/from16 v0, v36 │ │ invoke-virtual {v0, v5, v6}, Ljava/lang/StringBuffer;->delete(II)Ljava/lang/StringBuffer; │ │ .line 298 │ - invoke-virtual/range {v37 .. v37}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String; │ + invoke-virtual/range {v36 .. v36}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ invoke-static {v5}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ :try_end_c │ .catch Ljava/lang/SecurityException; {:try_start_c .. :try_end_c} :catch_3 │ .catch Ljava/io/IOException; {:try_start_c .. :try_end_c} :catch_5 │ @@ -1904,43 +1901,42 @@ │ │ iget-object v5, v0, Lcom/mobiperf/measurements/TracerouteTask;->pingProc:Ljava/lang/Process; │ │ move-object/from16 v0, p0 │ │ invoke-direct {v0, v5}, Lcom/mobiperf/measurements/TracerouteTask;->cleanUp(Ljava/lang/Process;)V │ │ - move-object/from16 v4, v38 │ + move-object/from16 v4, v37 │ │ .line 307 │ - .end local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v37 # "result":Lcom/mobiperf/MeasurementResult; │ .restart local v4 # "result":Lcom/mobiperf/MeasurementResult; │ goto/16 :goto_4 │ │ .line 314 │ .end local v4 # "result":Lcom/mobiperf/MeasurementResult; │ .end local v14 # "command":Ljava/lang/String; │ .end local v16 # "effectiveTask":I │ .end local v25 # "hostsAtThisDistance":Ljava/util/HashSet;, "Ljava/util/HashSet;" │ .end local v26 # "i":I │ - .end local v27 # "i$":Ljava/util/Iterator; │ - .end local v37 # "progressStr":Ljava/lang/StringBuffer; │ - .end local v39 # "rtt":D │ - .restart local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v36 # "progressStr":Ljava/lang/StringBuffer; │ + .end local v38 # "rtt":D │ + .restart local v37 # "result":Lcom/mobiperf/MeasurementResult; │ :cond_a │ new-instance v5, Ljava/lang/StringBuilder; │ │ invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ const-string v6, "cannot perform traceroute to " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ - move-object/from16 v0, v42 │ + move-object/from16 v0, v41 │ │ iget-object v6, v0, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ @@ -1959,15 +1955,15 @@ │ │ const-string v7, "cannot perform traceroute to " │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ - move-object/from16 v0, v42 │ + move-object/from16 v0, v41 │ │ iget-object v7, v0, Lcom/mobiperf/measurements/TracerouteTask$TracerouteDesc;->target:Ljava/lang/String; │ │ invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v6 │ │ @@ -1976,31 +1972,30 @@ │ move-result-object v6 │ │ invoke-direct {v5, v6}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v5 │ │ .line 306 │ - .end local v38 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v37 # "result":Lcom/mobiperf/MeasurementResult; │ .restart local v4 # "result":Lcom/mobiperf/MeasurementResult; │ .restart local v14 # "command":Ljava/lang/String; │ - .restart local v39 # "rtt":D │ + .restart local v38 # "rtt":D │ :catchall_1 │ move-exception v5 │ │ goto :goto_b │ │ .line 302 │ .restart local v16 # "effectiveTask":I │ .restart local v25 # "hostsAtThisDistance":Ljava/util/HashSet;, "Ljava/util/HashSet;" │ .restart local v26 # "i":I │ - .restart local v27 # "i$":Ljava/util/Iterator; │ - .restart local v28 # "ip":Ljava/lang/String; │ - .restart local v33 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ - .restart local v37 # "progressStr":Ljava/lang/StringBuffer; │ + .restart local v27 # "ip":Ljava/lang/String; │ + .restart local v32 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + .restart local v36 # "progressStr":Ljava/lang/StringBuffer; │ :catch_6 │ move-exception v15 │ │ goto/16 :goto_5 │ │ .line 300 │ :catch_7 ├── smali/com/mobiperf/measurements/UDPBurstTask$MetricCalculator.smali │ @@ -69,15 +69,15 @@ │ .line 265 │ return-void │ .end method │ │ │ # virtual methods │ .method public addPacket(IJ)V │ - .locals 3 │ + .locals 4 │ .param p1, "packetNum" # I │ .param p2, "timestamp" # J │ │ .prologue │ .line 274 │ iget v0, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->maxPacketNum:I │ │ @@ -88,19 +88,19 @@ │ │ .line 280 │ :goto_0 │ iget-object v0, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->offsetedDelayList:Ljava/util/ArrayList; │ │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - sub-long/2addr v1, p2 │ + sub-long/2addr v2, p2 │ │ - invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ + invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ │ move-result-object v1 │ │ invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ │ .line 281 │ iget v0, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->packetCount:I │ @@ -120,142 +120,140 @@ │ │ iput v0, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->outOfOrderCount:I │ │ goto :goto_0 │ .end method │ │ .method public calculateJitter()J │ - .locals 11 │ + .locals 12 │ │ .prologue │ .line 305 │ - iget v7, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->packetCount:I │ + iget v6, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->packetCount:I │ │ - const/4 v8, 0x1 │ + const/4 v7, 0x1 │ │ - if-le v7, v8, :cond_2 │ + if-le v6, v7, :cond_2 │ │ .line 306 │ - const-wide/16 v5, 0x0 │ + const-wide/16 v4, 0x0 │ │ .line 307 │ - .local v5, "offsetedDelay_mean":D │ - iget-object v7, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->offsetedDelayList:Ljava/util/ArrayList; │ + .local v4, "offsetedDelay_mean":D │ + iget-object v6, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->offsetedDelayList:Ljava/util/ArrayList; │ │ - invoke-virtual {v7}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ + invoke-virtual {v6}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v7 │ │ - .local v0, "i$":Ljava/util/Iterator; │ :goto_0 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v7 │ + move-result v6 │ │ - if-eqz v7, :cond_0 │ + if-eqz v6, :cond_0 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - check-cast v7, Ljava/lang/Long; │ + check-cast v6, Ljava/lang/Long; │ │ - invoke-virtual {v7}, Ljava/lang/Long;->longValue()J │ + invoke-virtual {v6}, Ljava/lang/Long;->longValue()J │ │ - move-result-wide v3 │ + move-result-wide v2 │ │ .line 308 │ - .local v3, "offsetedDelay":J │ - long-to-double v7, v3 │ + .local v2, "offsetedDelay":J │ + long-to-double v8, v2 │ │ - iget v9, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->packetCount:I │ + iget v6, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->packetCount:I │ │ - int-to-double v9, v9 │ + int-to-double v10, v6 │ │ - div-double/2addr v7, v9 │ + div-double/2addr v8, v10 │ │ - add-double/2addr v5, v7 │ + add-double/2addr v4, v8 │ │ .line 309 │ goto :goto_0 │ │ .line 311 │ - .end local v3 # "offsetedDelay":J │ + .end local v2 # "offsetedDelay":J │ :cond_0 │ - const-wide/16 v1, 0x0 │ + const-wide/16 v0, 0x0 │ │ .line 312 │ - .local v1, "jitter":D │ - iget-object v7, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->offsetedDelayList:Ljava/util/ArrayList; │ + .local v0, "jitter":D │ + iget-object v6, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->offsetedDelayList:Ljava/util/ArrayList; │ │ - invoke-virtual {v7}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ + invoke-virtual {v6}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v7 │ │ :goto_1 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v7 │ + move-result v6 │ │ - if-eqz v7, :cond_1 │ + if-eqz v6, :cond_1 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - check-cast v7, Ljava/lang/Long; │ + check-cast v6, Ljava/lang/Long; │ │ - invoke-virtual {v7}, Ljava/lang/Long;->longValue()J │ + invoke-virtual {v6}, Ljava/lang/Long;->longValue()J │ │ - move-result-wide v3 │ + move-result-wide v2 │ │ .line 313 │ - .restart local v3 # "offsetedDelay":J │ - long-to-double v7, v3 │ + .restart local v2 # "offsetedDelay":J │ + long-to-double v8, v2 │ │ - sub-double/2addr v7, v5 │ + sub-double/2addr v8, v4 │ │ - long-to-double v9, v3 │ + long-to-double v10, v2 │ │ - sub-double/2addr v9, v5 │ + sub-double/2addr v10, v4 │ │ - mul-double/2addr v7, v9 │ + mul-double/2addr v8, v10 │ │ - iget v9, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->packetCount:I │ + iget v6, p0, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->packetCount:I │ │ - add-int/lit8 v9, v9, -0x1 │ + add-int/lit8 v6, v6, -0x1 │ │ - int-to-double v9, v9 │ + int-to-double v10, v6 │ │ - div-double/2addr v7, v9 │ + div-double/2addr v8, v10 │ │ - add-double/2addr v1, v7 │ + add-double/2addr v0, v8 │ │ .line 315 │ goto :goto_1 │ │ .line 316 │ - .end local v3 # "offsetedDelay":J │ + .end local v2 # "offsetedDelay":J │ :cond_1 │ - invoke-static {v1, v2}, Ljava/lang/Math;->sqrt(D)D │ + invoke-static {v0, v1}, Ljava/lang/Math;->sqrt(D)D │ │ - move-result-wide v1 │ + move-result-wide v0 │ │ .line 318 │ - double-to-long v7, v1 │ + double-to-long v6, v0 │ │ .line 321 │ - .end local v0 # "i$":Ljava/util/Iterator; │ - .end local v1 # "jitter":D │ - .end local v5 # "offsetedDelay_mean":D │ + .end local v0 # "jitter":D │ + .end local v4 # "offsetedDelay_mean":D │ :goto_2 │ - return-wide v7 │ + return-wide v6 │ │ :cond_2 │ - const-wide/16 v7, 0x0 │ + const-wide/16 v6, 0x0 │ │ goto :goto_2 │ .end method │ │ .method public calculateOutOfOrderRatio()D │ .locals 4 ├── smali/com/mobiperf/measurements/UDPBurstTask$UDPBurstDesc.smali │ @@ -26,15 +26,15 @@ │ .field public udpBurstCount:I │ │ .field public udpInterval:I │ │ │ # direct methods │ .method public constructor (Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ - .locals 13 │ + .locals 16 │ .param p1, "key" # Ljava/lang/String; │ .param p2, "startTime" # Ljava/util/Date; │ .param p3, "endTime" # Ljava/util/Date; │ .param p4, "intervalSec" # D │ .param p6, "count" # J │ .param p8, "priority" # J │ .annotation system Ldalvik/annotation/Signature; │ @@ -57,91 +57,109 @@ │ Ljava/security/InvalidParameterException; │ } │ .end annotation │ │ .prologue │ .line 117 │ .local p10, "params":Ljava/util/Map;, "Ljava/util/Map;" │ - const-string v2, "udp_burst" │ + const-string v4, "udp_burst" │ │ - move-object v1, p0 │ + move-object/from16 v3, p0 │ │ - move-object v3, p1 │ + move-object/from16 v5, p1 │ │ - move-object v4, p2 │ + move-object/from16 v6, p2 │ │ - move-object/from16 v5, p3 │ + move-object/from16 v7, p3 │ │ - move-wide/from16 v6, p4 │ + move-wide/from16 v8, p4 │ │ - move-wide/from16 v8, p6 │ + move-wide/from16 v10, p6 │ │ - move-wide/from16 v10, p8 │ + move-wide/from16 v12, p8 │ │ - move-object/from16 v12, p10 │ + move-object/from16 v14, p10 │ │ - invoke-direct/range {v1 .. v12}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ + invoke-direct/range {v3 .. v14}, Lcom/mobiperf/MeasurementDesc;->(Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;Ljava/util/Date;DJJLjava/util/Map;)V │ │ .line 106 │ - const/16 v1, 0x64 │ + const/16 v2, 0x64 │ │ - iput v1, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->packetSizeByte:I │ + move-object/from16 v0, p0 │ + │ + iput v2, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->packetSizeByte:I │ │ .line 107 │ - const/16 v1, 0x10 │ + const/16 v2, 0x10 │ + │ + move-object/from16 v0, p0 │ │ - iput v1, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->udpBurstCount:I │ + iput v2, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->udpBurstCount:I │ │ .line 108 │ - const/16 v1, 0x7a6d │ + const/16 v2, 0x7a6d │ + │ + move-object/from16 v0, p0 │ │ - iput v1, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->dstPort:I │ + iput v2, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->dstPort:I │ │ .line 109 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ │ - iput-object v1, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ + move-object/from16 v0, p0 │ + │ + iput-object v2, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ │ .line 110 │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ + │ + move-object/from16 v0, p0 │ │ - iput-boolean v1, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->dirUp:Z │ + iput-boolean v2, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->dirUp:Z │ │ .line 111 │ - const/4 v1, 0x1 │ + const/4 v2, 0x1 │ │ - iput v1, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->udpInterval:I │ + move-object/from16 v0, p0 │ + │ + iput v2, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->udpInterval:I │ │ .line 119 │ - move-object/from16 v0, p10 │ + move-object/from16 v0, p0 │ + │ + move-object/from16 v1, p10 │ │ - invoke-virtual {p0, v0}, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->initializeParams(Ljava/util/Map;)V │ + invoke-virtual {v0, v1}, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->initializeParams(Ljava/util/Map;)V │ │ .line 120 │ - iget-object v1, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ + move-object/from16 v0, p0 │ + │ + iget-object v2, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ + │ + if-eqz v2, :cond_0 │ │ - if-eqz v1, :cond_0 │ + move-object/from16 v0, p0 │ │ - iget-object v1, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ + iget-object v2, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v1}, Ljava/lang/String;->length()I │ + invoke-virtual {v2}, Ljava/lang/String;->length()I │ │ - move-result v1 │ + move-result v2 │ │ - if-nez v1, :cond_1 │ + if-nez v2, :cond_1 │ │ .line 121 │ :cond_0 │ - new-instance v1, Ljava/security/InvalidParameterException; │ + new-instance v2, Ljava/security/InvalidParameterException; │ │ - const-string v2, "UDPBurstTask null target" │ + const-string v3, "UDPBurstTask null target" │ │ - invoke-direct {v1, v2}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v2, v3}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v1 │ + throw v2 │ │ .line 123 │ :cond_1 │ return-void │ .end method │ │ │ @@ -221,14 +239,15 @@ │ │ invoke-virtual {v3}, Ljava/lang/String;->length()I │ │ move-result v4 │ │ if-lez v4, :cond_2 │ │ + .line 144 │ invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ │ move-result v4 │ │ if-lez v4, :cond_2 │ │ .line 145 │ @@ -250,14 +269,15 @@ │ │ check-cast v0, Ljava/lang/String; │ │ move-object v3, v0 │ │ if-eqz v3, :cond_4 │ │ + .line 148 │ invoke-virtual {v3}, Ljava/lang/String;->length()I │ │ move-result v4 │ │ if-lez v4, :cond_4 │ │ invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ @@ -306,14 +326,15 @@ │ │ check-cast v0, Ljava/lang/String; │ │ move-object v3, v0 │ │ if-eqz v3, :cond_5 │ │ + .line 158 │ invoke-virtual {v3}, Ljava/lang/String;->length()I │ │ move-result v4 │ │ if-lez v4, :cond_5 │ │ invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I │ @@ -351,14 +372,15 @@ │ │ check-cast v0, Ljava/lang/String; │ │ move-object v3, v0 │ │ if-eqz v3, :cond_6 │ │ + .line 165 │ invoke-virtual {v3}, Ljava/lang/String;->length()I │ │ move-result v4 │ │ if-lez v4, :cond_6 │ │ invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I ├── smali/com/mobiperf/measurements/UDPBurstTask$UDPPacket.smali │ @@ -102,17 +102,17 @@ │ move-result v3 │ │ iput v3, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->outOfOrderNum:I │ │ .line 364 │ invoke-virtual {v1}, Ljava/io/DataInputStream;->readLong()J │ │ - move-result-wide v3 │ + move-result-wide v4 │ │ - iput-wide v3, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->timestamp:J │ + iput-wide v4, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->timestamp:J │ │ .line 365 │ invoke-virtual {v1}, Ljava/io/DataInputStream;->readInt()I │ │ move-result v3 │ │ iput v3, p0, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->packetSize:I ├── smali/com/mobiperf/measurements/UDPBurstTask.smali │ @@ -180,15 +180,15 @@ │ │ invoke-direct {v2, v3}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v2 │ .end method │ │ .method private recvDownResponse(Ljava/net/DatagramSocket;)Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ - .locals 13 │ + .locals 14 │ .param p1, "sock" # Ljava/net/DatagramSocket; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/mobiperf/MeasurementError; │ } │ .end annotation │ │ @@ -242,25 +242,25 @@ │ │ .line 621 │ invoke-virtual {p1, v7}, Ljava/net/DatagramSocket;->receive(Ljava/net/DatagramPacket;)V │ :try_end_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 │ │ .line 626 │ - iget-wide v9, p0, Lcom/mobiperf/measurements/UDPBurstTask;->dataConsumed:J │ + iget-wide v10, p0, Lcom/mobiperf/measurements/UDPBurstTask;->dataConsumed:J │ │ invoke-virtual {v7}, Ljava/net/DatagramPacket;->getLength()I │ │ - move-result v11 │ + move-result v9 │ │ - int-to-long v11, v11 │ + int-to-long v12, v9 │ │ - add-long/2addr v9, v11 │ + add-long/2addr v10, v12 │ │ - iput-wide v9, p0, Lcom/mobiperf/measurements/UDPBurstTask;->dataConsumed:J │ + iput-wide v10, p0, Lcom/mobiperf/measurements/UDPBurstTask;->dataConsumed:J │ │ .line 628 │ new-instance v1, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket; │ │ invoke-virtual {v7}, Ljava/net/DatagramPacket;->getData()[B │ │ move-result-object v9 │ @@ -328,24 +328,24 @@ │ .line 655 │ .local v8, "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ iput v6, v8, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->packetCount:I │ │ .line 656 │ invoke-virtual {v5}, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->calculateOutOfOrderRatio()D │ │ - move-result-wide v9 │ + move-result-wide v10 │ │ - iput-wide v9, v8, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->outOfOrderRatio:D │ + iput-wide v10, v8, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->outOfOrderRatio:D │ │ .line 657 │ invoke-virtual {v5}, Lcom/mobiperf/measurements/UDPBurstTask$MetricCalculator;->calculateJitter()J │ │ - move-result-wide v9 │ + move-result-wide v10 │ │ - iput-wide v9, v8, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->jitter:J │ + iput-wide v10, v8, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->jitter:J │ │ .line 658 │ return-object v8 │ │ .line 622 │ .end local v8 # "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ :catch_0 │ @@ -499,15 +499,15 @@ │ │ invoke-direct {v9, v10}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v9 │ .end method │ │ .method private recvUpResponse(Ljava/net/DatagramSocket;)Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ - .locals 11 │ + .locals 12 │ .param p1, "sock" # Ljava/net/DatagramSocket; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/mobiperf/MeasurementError; │ } │ .end annotation │ │ @@ -742,28 +742,28 @@ │ iget v7, v5, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->packetNum:I │ │ iput v7, v6, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->packetCount:I │ │ .line 532 │ iget v7, v5, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->outOfOrderNum:I │ │ - int-to-double v7, v7 │ + int-to-double v8, v7 │ │ - iget v9, v5, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->packetNum:I │ + iget v7, v5, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->packetNum:I │ │ - int-to-double v9, v9 │ + int-to-double v10, v7 │ │ - div-double/2addr v7, v9 │ + div-double/2addr v8, v10 │ │ - iput-wide v7, v6, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->outOfOrderRatio:D │ + iput-wide v8, v6, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->outOfOrderRatio:D │ │ .line 534 │ - iget-wide v7, v5, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->timestamp:J │ + iget-wide v8, v5, Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket;->timestamp:J │ │ - iput-wide v7, v6, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->jitter:J │ + iput-wide v8, v6, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->jitter:J │ │ .line 535 │ return-object v6 │ │ .line 505 │ .end local v5 # "responsePacket":Lcom/mobiperf/measurements/UDPBurstTask$UDPPacket; │ :catch_0 │ @@ -864,23 +864,23 @@ │ │ invoke-direct {v7, v8}, Lcom/mobiperf/MeasurementError;->(Ljava/lang/String;)V │ │ throw v7 │ .end method │ │ .method private sendDownRequest()Ljava/net/DatagramSocket; │ - .locals 12 │ + .locals 13 │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/mobiperf/MeasurementError; │ } │ .end annotation │ │ .prologue │ - const/16 v11, 0x64 │ + const/16 v12, 0x64 │ │ .line 552 │ iget-object v2, p0, Lcom/mobiperf/measurements/UDPBurstTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ check-cast v2, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc; │ │ .line 554 │ @@ -1021,41 +1021,41 @@ │ │ .line 581 │ .local v4, "packet":Ljava/net/DatagramPacket; │ :try_start_1 │ invoke-virtual {v6, v4}, Ljava/net/DatagramSocket;->send(Ljava/net/DatagramPacket;)V │ │ .line 582 │ - iget-wide v7, p0, Lcom/mobiperf/measurements/UDPBurstTask;->dataConsumed:J │ + iget-wide v8, p0, Lcom/mobiperf/measurements/UDPBurstTask;->dataConsumed:J │ │ invoke-virtual {v4}, Ljava/net/DatagramPacket;->getLength()I │ │ - move-result v9 │ + move-result v7 │ │ - int-to-long v9, v9 │ + int-to-long v10, v7 │ │ - add-long/2addr v7, v9 │ + add-long/2addr v8, v10 │ │ - iput-wide v7, p0, Lcom/mobiperf/measurements/UDPBurstTask;->dataConsumed:J │ + iput-wide v8, p0, Lcom/mobiperf/measurements/UDPBurstTask;->dataConsumed:J │ :try_end_1 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_1 │ │ .line 589 │ iget v7, v2, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->udpBurstCount:I │ │ add-int/lit8 v7, v7, 0x1 │ │ - div-int v7, v11, v7 │ + div-int v7, v12, v7 │ │ iput v7, p0, Lcom/mobiperf/measurements/UDPBurstTask;->progress:I │ │ .line 590 │ iget v7, p0, Lcom/mobiperf/measurements/UDPBurstTask;->progress:I │ │ - invoke-static {v11, v7}, Ljava/lang/Math;->min(II)I │ + invoke-static {v12, v7}, Ljava/lang/Math;->min(II)I │ │ move-result v7 │ │ iput v7, p0, Lcom/mobiperf/measurements/UDPBurstTask;->progress:I │ │ .line 591 │ iget v7, p0, Lcom/mobiperf/measurements/UDPBurstTask;->progress:I │ @@ -1482,388 +1482,395 @@ │ :cond_0 │ return-object v7 │ .end method │ │ │ # virtual methods │ .method public call()Lcom/mobiperf/MeasurementResult; │ - .locals 19 │ + .locals 20 │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/mobiperf/MeasurementError; │ } │ .end annotation │ │ .prologue │ .line 671 │ - const/4 v15, 0x0 │ + const/16 v16, 0x0 │ │ .line 672 │ - .local v15, "socket":Ljava/net/DatagramSocket; │ - const/4 v14, 0x0 │ + .local v16, "socket":Ljava/net/DatagramSocket; │ + const/4 v15, 0x0 │ │ .line 674 │ - .local v14, "response":F │ - const/4 v13, 0x0 │ + .local v15, "response":F │ + const/4 v14, 0x0 │ │ .line 675 │ - .local v13, "pktRecv":I │ - const/4 v7, 0x0 │ + .local v14, "pktRecv":I │ + const/4 v8, 0x0 │ │ .line 677 │ - .local v7, "isMeasurementSuccessful":Z │ + .local v8, "isMeasurementSuccessful":Z │ move-object/from16 v0, p0 │ │ - iget-object v9, v0, Lcom/mobiperf/measurements/UDPBurstTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v10, v0, Lcom/mobiperf/measurements/UDPBurstTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - check-cast v9, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc; │ + check-cast v10, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc; │ │ .line 679 │ - .local v9, "desc":Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc; │ - iget-object v2, v9, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ + .local v10, "desc":Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc; │ + iget-object v3, v10, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ │ - const-string v3, "mlab" │ + const-string v4, "mlab" │ │ - invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ + invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ - move-result v2 │ + move-result v3 │ │ - if-nez v2, :cond_0 │ + if-nez v3, :cond_0 │ │ .line 680 │ - new-instance v2, Ljava/security/InvalidParameterException; │ + new-instance v3, Ljava/security/InvalidParameterException; │ │ - new-instance v3, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v4, "Unknown target " │ + const-string v5, "Unknown target " │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - iget-object v4, v9, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ + iget-object v5, v10, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-string v4, " for UDPBurstTask" │ + const-string v5, " for UDPBurstTask" │ │ - invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-direct {v2, v3}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v3, v4}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v2 │ + throw v3 │ │ .line 684 │ :cond_0 │ move-object/from16 v0, p0 │ │ - iget-object v2, v0, Lcom/mobiperf/measurements/UDPBurstTask;->context:Landroid/content/Context; │ + iget-object v3, v0, Lcom/mobiperf/measurements/UDPBurstTask;->context:Landroid/content/Context; │ │ - const-string v3, "mobiperf" │ + const-string v4, "mobiperf" │ │ - invoke-static {v2, v3}, Lcom/mobiperf/util/MLabNS;->Lookup(Landroid/content/Context;Ljava/lang/String;)Ljava/util/ArrayList; │ + invoke-static {v3, v4}, Lcom/mobiperf/util/MLabNS;->Lookup(Landroid/content/Context;Ljava/lang/String;)Ljava/util/ArrayList; │ │ - move-result-object v11 │ + move-result-object v12 │ │ .line 686 │ - .local v11, "mlabNSResult":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - invoke-virtual {v11}, Ljava/util/ArrayList;->size()I │ + .local v12, "mlabNSResult":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ + invoke-virtual {v12}, Ljava/util/ArrayList;->size()I │ │ - move-result v2 │ + move-result v3 │ │ - const/4 v3, 0x1 │ + const/4 v4, 0x1 │ │ - if-ne v2, v3, :cond_1 │ + if-ne v3, v4, :cond_1 │ │ .line 687 │ - const/4 v2, 0x0 │ + const/4 v3, 0x0 │ │ - invoke-virtual {v11, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; │ + invoke-virtual {v12, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - check-cast v2, Ljava/lang/String; │ + check-cast v3, Ljava/lang/String; │ │ - iput-object v2, v9, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ + iput-object v3, v10, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ │ .line 693 │ - new-instance v2, Ljava/lang/StringBuilder; │ + new-instance v3, Ljava/lang/StringBuilder; │ │ - invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ │ - const-string v3, "Setting target to: " │ + const-string v4, "Setting target to: " │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - iget-object v3, v9, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ + iget-object v4, v10, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - invoke-static {v2}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 695 │ invoke-static {}, Lcom/mobiperf/util/PhoneUtils;->getPhoneUtils()Lcom/mobiperf/util/PhoneUtils; │ │ - move-result-object v12 │ + move-result-object v13 │ │ .line 697 │ - .local v12, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ - new-instance v2, Ljava/lang/StringBuilder; │ + .local v13, "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + new-instance v3, Ljava/lang/StringBuilder; │ │ - invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v3}, Ljava/lang/StringBuilder;->()V │ │ - const-string v3, "Running UDPBurstTask on " │ + const-string v4, "Running UDPBurstTask on " │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - iget-object v3, v9, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ + iget-object v4, v10, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->target:Ljava/lang/String; │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - invoke-static {v2}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v3}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 699 │ :try_start_0 │ - iget-boolean v2, v9, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->dirUp:Z │ + iget-boolean v3, v10, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->dirUp:Z │ │ - const/4 v3, 0x1 │ + const/4 v4, 0x1 │ │ - if-ne v2, v3, :cond_2 │ + if-ne v3, v4, :cond_2 │ │ .line 700 │ invoke-direct/range {p0 .. p0}, Lcom/mobiperf/measurements/UDPBurstTask;->sendUpBurst()Ljava/net/DatagramSocket; │ │ - move-result-object v15 │ + move-result-object v16 │ │ .line 701 │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v15}, Lcom/mobiperf/measurements/UDPBurstTask;->recvUpResponse(Ljava/net/DatagramSocket;)Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ + move-object/from16 v1, v16 │ │ - move-result-object v16 │ + invoke-direct {v0, v1}, Lcom/mobiperf/measurements/UDPBurstTask;->recvUpResponse(Ljava/net/DatagramSocket;)Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ + │ + move-result-object v17 │ │ .line 702 │ - .local v16, "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ - move-object/from16 v0, v16 │ + .local v17, "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ + move-object/from16 v0, v17 │ │ - iget v13, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->packetCount:I │ + iget v14, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->packetCount:I │ │ .line 703 │ - int-to-float v2, v13 │ + int-to-float v3, v14 │ │ - iget v3, v9, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->udpBurstCount:I │ + iget v4, v10, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->udpBurstCount:I │ :try_end_0 │ .catch Lcom/mobiperf/MeasurementError; {:try_start_0 .. :try_end_0} :catch_0 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ - int-to-float v3, v3 │ + int-to-float v4, v4 │ │ - div-float v14, v2, v3 │ + div-float v15, v3, v4 │ │ .line 704 │ - const/4 v7, 0x1 │ + const/4 v8, 0x1 │ │ .line 719 │ :goto_0 │ - sget v2, Lcom/mobiperf/measurements/UDPBurstTask;->seq:I │ + sget v3, Lcom/mobiperf/measurements/UDPBurstTask;->seq:I │ │ - add-int/lit8 v2, v2, 0x1 │ + add-int/lit8 v3, v3, 0x1 │ │ - sput v2, Lcom/mobiperf/measurements/UDPBurstTask;->seq:I │ + sput v3, Lcom/mobiperf/measurements/UDPBurstTask;->seq:I │ │ .line 720 │ - invoke-virtual {v15}, Ljava/net/DatagramSocket;->close()V │ + invoke-virtual/range {v16 .. v16}, Ljava/net/DatagramSocket;->close()V │ │ .line 723 │ - new-instance v1, Lcom/mobiperf/MeasurementResult; │ + new-instance v2, Lcom/mobiperf/MeasurementResult; │ │ - invoke-virtual {v12}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ + .line 724 │ + invoke-virtual {v13}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ - move-result-object v2 │ + move-result-object v3 │ │ - iget-object v2, v2, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ + iget-object v3, v3, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ - invoke-virtual {v12}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ + .line 725 │ + invoke-virtual {v13}, Lcom/mobiperf/util/PhoneUtils;->getDeviceProperty()Lcom/mobiperf/DeviceProperty; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - const-string v4, "udp_burst" │ + const-string v5, "udp_burst" │ │ + .line 726 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ - const-wide/16 v17, 0x3e8 │ + const-wide/16 v18, 0x3e8 │ │ - mul-long v5, v5, v17 │ + mul-long v6, v6, v18 │ │ move-object/from16 v0, p0 │ │ - iget-object v8, v0, Lcom/mobiperf/measurements/UDPBurstTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ + iget-object v9, v0, Lcom/mobiperf/measurements/UDPBurstTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ - invoke-direct/range {v1 .. v8}, Lcom/mobiperf/MeasurementResult;->(Ljava/lang/String;Lcom/mobiperf/DeviceProperty;Ljava/lang/String;JZLcom/mobiperf/MeasurementDesc;)V │ + invoke-direct/range {v2 .. v9}, Lcom/mobiperf/MeasurementResult;->(Ljava/lang/String;Lcom/mobiperf/DeviceProperty;Ljava/lang/String;JZLcom/mobiperf/MeasurementDesc;)V │ │ .line 729 │ - .local v1, "result":Lcom/mobiperf/MeasurementResult; │ - const-string v2, "target_ip" │ + .local v2, "result":Lcom/mobiperf/MeasurementResult; │ + const-string v3, "target_ip" │ │ move-object/from16 v0, p0 │ │ - iget-object v3, v0, Lcom/mobiperf/measurements/UDPBurstTask;->targetIp:Ljava/lang/String; │ + iget-object v4, v0, Lcom/mobiperf/measurements/UDPBurstTask;->targetIp:Ljava/lang/String; │ │ - invoke-virtual {v1, v2, v3}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ + invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 730 │ - const-string v2, "loss_ratio" │ + const-string v3, "loss_ratio" │ │ - const-wide/high16 v3, 0x3ff0000000000000L # 1.0 │ + const-wide/high16 v4, 0x3ff0000000000000L # 1.0 │ │ - float-to-double v5, v14 │ + float-to-double v6, v15 │ │ - sub-double/2addr v3, v5 │ + sub-double/2addr v4, v6 │ │ - invoke-static {v3, v4}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static {v4, v5}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v1, v2, v3}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ + invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 731 │ - const-string v2, "out_of_order_ratio" │ + const-string v3, "out_of_order_ratio" │ │ - move-object/from16 v0, v16 │ + move-object/from16 v0, v17 │ │ - iget-wide v3, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->outOfOrderRatio:D │ + iget-wide v4, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->outOfOrderRatio:D │ │ - invoke-static {v3, v4}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ + invoke-static {v4, v5}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v1, v2, v3}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ + invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 732 │ - const-string v2, "jitter" │ + const-string v3, "jitter" │ │ - move-object/from16 v0, v16 │ + move-object/from16 v0, v17 │ │ - iget-wide v3, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->jitter:J │ + iget-wide v4, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->jitter:J │ │ - invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ + invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v1, v2, v3}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ + invoke-virtual {v2, v3, v4}, Lcom/mobiperf/MeasurementResult;->addResult(Ljava/lang/String;Ljava/lang/Object;)V │ │ .line 733 │ - return-object v1 │ + return-object v2 │ │ .line 689 │ - .end local v1 # "result":Lcom/mobiperf/MeasurementResult; │ - .end local v12 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ - .end local v16 # "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ + .end local v2 # "result":Lcom/mobiperf/MeasurementResult; │ + .end local v13 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + .end local v17 # "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ :cond_1 │ - new-instance v2, Ljava/security/InvalidParameterException; │ + new-instance v3, Ljava/security/InvalidParameterException; │ │ - const-string v3, "Invalid MLabNS query result for UDPBurstTask" │ + const-string v4, "Invalid MLabNS query result for UDPBurstTask" │ │ - invoke-direct {v2, v3}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v3, v4}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v2 │ + throw v3 │ │ .line 706 │ - .restart local v12 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ + .restart local v13 # "phoneUtils":Lcom/mobiperf/util/PhoneUtils; │ :cond_2 │ :try_start_1 │ invoke-direct/range {p0 .. p0}, Lcom/mobiperf/measurements/UDPBurstTask;->sendDownRequest()Ljava/net/DatagramSocket; │ │ - move-result-object v15 │ + move-result-object v16 │ │ .line 707 │ move-object/from16 v0, p0 │ │ - invoke-direct {v0, v15}, Lcom/mobiperf/measurements/UDPBurstTask;->recvDownResponse(Ljava/net/DatagramSocket;)Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ + move-object/from16 v1, v16 │ │ - move-result-object v16 │ + invoke-direct {v0, v1}, Lcom/mobiperf/measurements/UDPBurstTask;->recvDownResponse(Ljava/net/DatagramSocket;)Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ + │ + move-result-object v17 │ │ .line 708 │ - .restart local v16 # "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ - move-object/from16 v0, v16 │ + .restart local v17 # "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ + move-object/from16 v0, v17 │ │ - iget v13, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->packetCount:I │ + iget v14, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPResult;->packetCount:I │ │ .line 709 │ - int-to-float v2, v13 │ + int-to-float v3, v14 │ │ - iget v3, v9, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->udpBurstCount:I │ + iget v4, v10, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->udpBurstCount:I │ :try_end_1 │ .catch Lcom/mobiperf/MeasurementError; {:try_start_1 .. :try_end_1} :catch_0 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ - int-to-float v3, v3 │ + int-to-float v4, v4 │ │ - div-float v14, v2, v3 │ + div-float v15, v3, v4 │ │ .line 710 │ - const/4 v7, 0x1 │ + const/4 v8, 0x1 │ │ goto :goto_0 │ │ .line 712 │ - .end local v16 # "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ + .end local v17 # "udpResult":Lcom/mobiperf/measurements/UDPBurstTask$UDPResult; │ :catch_0 │ - move-exception v10 │ + move-exception v11 │ │ .line 713 │ - .local v10, "e":Lcom/mobiperf/MeasurementError; │ + .local v11, "e":Lcom/mobiperf/MeasurementError; │ :try_start_2 │ - throw v10 │ + throw v11 │ :try_end_2 │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ .line 719 │ - .end local v10 # "e":Lcom/mobiperf/MeasurementError; │ + .end local v11 # "e":Lcom/mobiperf/MeasurementError; │ :catchall_0 │ - move-exception v2 │ + move-exception v3 │ │ - sget v3, Lcom/mobiperf/measurements/UDPBurstTask;->seq:I │ + sget v4, Lcom/mobiperf/measurements/UDPBurstTask;->seq:I │ │ - add-int/lit8 v3, v3, 0x1 │ + add-int/lit8 v4, v4, 0x1 │ │ - sput v3, Lcom/mobiperf/measurements/UDPBurstTask;->seq:I │ + sput v4, Lcom/mobiperf/measurements/UDPBurstTask;->seq:I │ │ .line 720 │ - invoke-virtual {v15}, Ljava/net/DatagramSocket;->close()V │ + invoke-virtual/range {v16 .. v16}, Ljava/net/DatagramSocket;->close()V │ │ - throw v2 │ + throw v3 │ .end method │ │ .method public bridge synthetic call()Ljava/lang/Object; │ .locals 1 │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/lang/Exception; │ @@ -1972,15 +1979,15 @@ │ invoke-direct {p0}, Lcom/mobiperf/measurements/UDPBurstTask;->cleanUp()V │ │ .line 761 │ return-void │ .end method │ │ .method public toString()Ljava/lang/String; │ - .locals 5 │ + .locals 6 │ │ .prologue │ .line 769 │ iget-object v0, p0, Lcom/mobiperf/measurements/UDPBurstTask;->measurementDesc:Lcom/mobiperf/MeasurementDesc; │ │ check-cast v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc; │ │ @@ -2018,17 +2025,17 @@ │ │ const-string v3, "\n Interval (sec): " │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ - iget-wide v3, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->intervalSec:D │ + iget-wide v4, v0, Lcom/mobiperf/measurements/UDPBurstTask$UDPBurstDesc;->intervalSec:D │ │ - invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ + invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ const-string v3, "\n Next run: " │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; ├── smali/com/mobiperf/util/MLabNS.smali │ @@ -110,15 +110,15 @@ │ move-object/from16 v1, v18 │ │ if-eq v0, v1, :cond_1 │ │ .line 66 │ const/4 v12, 0x0 │ │ - .line 125 │ + .line 108 │ :cond_0 │ :goto_0 │ return-object v12 │ │ .line 70 │ :cond_1 │ :try_start_0 │ @@ -285,14 +285,15 @@ │ │ const-string v20, "Received status " │ │ invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v19 │ │ + .line 86 │ invoke-interface {v14}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; │ │ move-result-object v20 │ │ invoke-interface/range {v20 .. v20}, Lorg/apache/http/StatusLine;->getStatusCode()I │ │ move-result v20 │ @@ -560,14 +561,15 @@ │ │ const-string v20, "Unknown type " │ │ invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v19 │ │ + .line 105 │ move-object/from16 v0, p3 │ │ invoke-virtual {v9, v0}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object; │ │ move-result-object v20 │ │ invoke-virtual/range {v20 .. v20}, Ljava/lang/Object;->getClass()Ljava/lang/Class; │ @@ -584,14 +586,15 @@ │ │ const-string v20, " of value " │ │ invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v19 │ │ + .line 106 │ move-object/from16 v0, p3 │ │ invoke-virtual {v9, v0}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object; │ │ move-result-object v20 │ │ invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ @@ -876,15 +879,15 @@ │ :catch_2 │ move-exception v3 │ │ goto :goto_0 │ .end method │ │ .method private static getResponseBodyFromEntity(Lorg/apache/http/HttpEntity;)Ljava/lang/String; │ - .locals 11 │ + .locals 12 │ .param p0, "entity" # Lorg/apache/http/HttpEntity; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Ljava/io/IOException;, │ Lorg/apache/http/ParseException; │ } │ .end annotation │ @@ -955,19 +958,19 @@ │ │ .line 165 │ .end local v3 # "instream":Ljava/io/InputStream; │ .restart local v2 # "instream":Ljava/io/InputStream; │ :cond_2 │ invoke-interface {p0}, Lorg/apache/http/HttpEntity;->getContentLength()J │ │ - move-result-wide v7 │ + move-result-wide v8 │ │ - const-wide/32 v9, 0x7fffffff │ + const-wide/32 v10, 0x7fffffff │ │ - cmp-long v7, v7, v9 │ + cmp-long v7, v8, v10 │ │ if-lez v7, :cond_3 │ │ .line 166 │ new-instance v7, Ljava/lang/IllegalArgumentException; │ │ const-string v8, "HTTP entity too large to be buffered into memory" ├── smali/com/mobiperf/util/MeasurementJsonConvertor$DateTypeConverter.smali │ @@ -54,17 +54,14 @@ │ return-void │ .end method │ │ │ # virtual methods │ .method public bridge synthetic deserialize(Lcom/google/myjson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/myjson/JsonDeserializationContext;)Ljava/lang/Object; │ .locals 1 │ - .param p1, "x0" # Lcom/google/myjson/JsonElement; │ - .param p2, "x1" # Ljava/lang/reflect/Type; │ - .param p3, "x2" # Lcom/google/myjson/JsonDeserializationContext; │ .annotation system Ldalvik/annotation/Throws; │ value = { │ Lcom/google/myjson/JsonParseException; │ } │ .end annotation │ │ .prologue │ @@ -233,23 +230,19 @@ │ invoke-direct {v1, v2}, Lcom/google/myjson/JsonParseException;->(Ljava/lang/String;)V │ │ throw v1 │ .end method │ │ .method public bridge synthetic serialize(Ljava/lang/Object;Ljava/lang/reflect/Type;Lcom/google/myjson/JsonSerializationContext;)Lcom/google/myjson/JsonElement; │ .locals 1 │ - .param p1, "x0" # Ljava/lang/Object; │ - .param p2, "x1" # Ljava/lang/reflect/Type; │ - .param p3, "x2" # Lcom/google/myjson/JsonSerializationContext; │ │ .prologue │ .line 121 │ check-cast p1, Ljava/util/Date; │ │ - .end local p1 # "x0":Ljava/lang/Object; │ invoke-virtual {p0, p1, p2, p3}, Lcom/mobiperf/util/MeasurementJsonConvertor$DateTypeConverter;->serialize(Ljava/util/Date;Ljava/lang/reflect/Type;Lcom/google/myjson/JsonSerializationContext;)Lcom/google/myjson/JsonElement; │ │ move-result-object v0 │ │ return-object v0 │ .end method ├── smali/com/mobiperf/util/MeasurementJsonConvertor.smali │ @@ -2,15 +2,14 @@ │ .super Ljava/lang/Object; │ .source "MeasurementJsonConvertor.java" │ │ │ # annotations │ .annotation system Ldalvik/annotation/MemberClasses; │ value = { │ - Lcom/mobiperf/util/MeasurementJsonConvertor$1;, │ Lcom/mobiperf/util/MeasurementJsonConvertor$DateTypeConverter; │ } │ .end annotation │ │ │ # static fields │ .field private static final dateFormat:Ljava/text/DateFormat; │ @@ -36,20 +35,22 @@ │ │ new-instance v2, Lcom/mobiperf/util/MeasurementJsonConvertor$DateTypeConverter; │ │ const/4 v3, 0x0 │ │ invoke-direct {v2, v3}, Lcom/mobiperf/util/MeasurementJsonConvertor$DateTypeConverter;->(Lcom/mobiperf/util/MeasurementJsonConvertor$1;)V │ │ + .line 63 │ invoke-virtual {v0, v1, v2}, Lcom/google/myjson/GsonBuilder;->registerTypeAdapter(Ljava/lang/reflect/Type;Ljava/lang/Object;)Lcom/google/myjson/GsonBuilder; │ │ move-result-object v0 │ │ sget-object v1, Lcom/google/myjson/FieldNamingPolicy;->LOWER_CASE_WITH_UNDERSCORES:Lcom/google/myjson/FieldNamingPolicy; │ │ + .line 64 │ invoke-virtual {v0, v1}, Lcom/google/myjson/GsonBuilder;->setFieldNamingPolicy(Lcom/google/myjson/FieldNamingPolicy;)Lcom/google/myjson/GsonBuilder; │ │ move-result-object v0 │ │ invoke-virtual {v0}, Lcom/google/myjson/GsonBuilder;->create()Lcom/google/myjson/Gson; │ │ move-result-object v0 │ @@ -83,15 +84,14 @@ │ .method public constructor ()V │ .locals 0 │ │ .prologue │ .line 56 │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ - .line 121 │ return-void │ .end method │ │ .method static synthetic access$100(Ljava/util/Date;)Ljava/lang/String; │ .locals 1 │ .param p0, "x0" # Ljava/util/Date; │ │ @@ -270,14 +270,15 @@ │ │ const/4 v9, 0x1 │ │ const-class v10, Landroid/content/Context; │ │ aput-object v10, v8, v9 │ │ + .line 83 │ invoke-virtual {v6, v8}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor; │ │ move-result-object v0 │ │ .line 84 │ .local v0, "constructor":Ljava/lang/reflect/Constructor;, "Ljava/lang/reflect/Constructor;" │ invoke-virtual {v0, v1}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object; ├── smali/com/mobiperf/util/PhoneUtils$SignalStrengthChangeListener.smali │ @@ -101,14 +101,15 @@ │ │ invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v1 │ │ if-nez v1, :cond_2 │ │ + .line 638 │ # getter for: Lcom/mobiperf/util/PhoneUtils;->NETWORK_TYPES:[Ljava/lang/String; │ invoke-static {}, Lcom/mobiperf/util/PhoneUtils;->access$500()[Ljava/lang/String; │ │ move-result-object v1 │ │ const/4 v2, 0x6 │ │ @@ -116,14 +117,15 @@ │ │ invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z │ │ move-result v1 │ │ if-nez v1, :cond_2 │ │ + .line 639 │ # getter for: Lcom/mobiperf/util/PhoneUtils;->NETWORK_TYPES:[Ljava/lang/String; │ invoke-static {}, Lcom/mobiperf/util/PhoneUtils;->access$500()[Ljava/lang/String; │ │ move-result-object v1 │ │ const/16 v2, 0xc ├── smali/com/mobiperf/util/PhoneUtils.smali │ @@ -2,15 +2,14 @@ │ .super Ljava/lang/Object; │ .source "PhoneUtils.java" │ │ │ # annotations │ .annotation system Ldalvik/annotation/MemberClasses; │ value = { │ - Lcom/mobiperf/util/PhoneUtils$1;, │ Lcom/mobiperf/util/PhoneUtils$ConnectivityChangeReceiver;, │ Lcom/mobiperf/util/PhoneUtils$SignalStrengthChangeListener;, │ Lcom/mobiperf/util/PhoneUtils$PowerStateChangeReceiver;, │ Lcom/mobiperf/util/PhoneUtils$InterfaceType;, │ Lcom/mobiperf/util/PhoneUtils$LoggingLocationListener; │ } │ .end annotation │ @@ -408,24 +407,26 @@ │ │ .line 499 │ .local v3, "picture":Landroid/graphics/Picture; │ invoke-virtual {v3}, Landroid/graphics/Picture;->getWidth()I │ │ move-result v5 │ │ + .line 500 │ invoke-virtual {p0}, Landroid/webkit/WebView;->getWidth()I │ │ move-result v6 │ │ invoke-virtual {p0}, Landroid/webkit/WebView;->getVerticalScrollbarWidth()I │ │ move-result v7 │ │ sub-int/2addr v6, v7 │ │ + .line 499 │ invoke-static {v5, v6}, Ljava/lang/Math;->min(II)I │ │ move-result v4 │ │ .line 501 │ .local v4, "width":I │ invoke-virtual {v3}, Landroid/graphics/Picture;->getHeight()I │ @@ -562,26 +563,28 @@ │ │ const-string v5, "UnknownHostException in checkDomainNameResolvable() " │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ + .line 807 │ invoke-virtual {v0}, Ljava/net/UnknownHostException;->getMessage()Ljava/lang/String; │ │ move-result-object v5 │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 806 │ invoke-static {v4}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 808 │ iget v4, p0, Lcom/mobiperf/util/PhoneUtils;->DN_UNRESOLVABLE:I │ │ goto :goto_0 │ │ @@ -598,26 +601,28 @@ │ │ const-string v5, "InvalidParameterException in checkIPCompatibility(). " │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ + .line 812 │ invoke-virtual {v0}, Ljava/security/InvalidParameterException;->getMessage()Ljava/lang/String; │ │ move-result-object v5 │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ + .line 811 │ invoke-static {v4}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 813 │ iget v4, p0, Lcom/mobiperf/util/PhoneUtils;->DN_UNRESOLVABLE:I │ │ goto :goto_0 │ │ @@ -860,26 +865,28 @@ │ │ const-string v6, "Fail to setup TCP in checkIPCompatibility(). " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ + .line 760 │ invoke-virtual {v0}, Ljava/io/IOException;->getMessage()Ljava/lang/String; │ │ move-result-object v6 │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ + .line 759 │ invoke-static {v5}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 761 │ iget v5, p0, Lcom/mobiperf/util/PhoneUtils;->IP_TYPE_CANNOT_DECIDE:I │ :try_end_6 │ .catchall {:try_start_6 .. :try_end_6} :catchall_0 │ │ @@ -919,26 +926,28 @@ │ │ const-string v6, "InvalidParameterException in checkIPCompatibility(). " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ + .line 765 │ invoke-virtual {v0}, Ljava/security/InvalidParameterException;->getMessage()Ljava/lang/String; │ │ move-result-object v6 │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ + .line 764 │ invoke-static {v5}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 766 │ iget v5, p0, Lcom/mobiperf/util/PhoneUtils;->IP_TYPE_CANNOT_DECIDE:I │ :try_end_8 │ .catchall {:try_start_8 .. :try_end_8} :catchall_0 │ │ @@ -979,26 +988,28 @@ │ │ const-string v6, "IllegalArgumentException in checkIPCompatibility(). " │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ + .line 769 │ invoke-virtual {v0}, Ljava/lang/IllegalArgumentException;->getMessage()Ljava/lang/String; │ │ move-result-object v6 │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v5 │ │ + .line 768 │ invoke-static {v5}, Lcom/mobiperf/Logger;->e(Ljava/lang/String;)V │ │ .line 770 │ iget v5, p0, Lcom/mobiperf/util/PhoneUtils;->IP_TYPE_CANNOT_DECIDE:I │ :try_end_a │ .catchall {:try_start_a .. :try_end_a} :catchall_0 │ │ @@ -1489,20 +1500,22 @@ │ │ aput-object v3, v1, v2 │ │ const/4 v2, 0x2 │ │ sget v3, Landroid/os/Build$VERSION;->SDK_INT:I │ │ + .line 685 │ invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ move-result-object v3 │ │ aput-object v3, v1, v2 │ │ + .line 684 │ invoke-static {v0, v1}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; │ │ move-result-object v0 │ │ return-object v0 │ .end method │ │ @@ -1511,14 +1524,15 @@ │ │ .prologue │ .line 337 │ iget-object v2, p0, Lcom/mobiperf/util/PhoneUtils;->context:Landroid/content/Context; │ │ const-string v3, "wifi" │ │ + .line 338 │ invoke-virtual {v2, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ │ move-result-object v1 │ │ check-cast v1, Landroid/net/wifi/WifiManager; │ │ .line 339 │ @@ -1543,15 +1557,15 @@ │ :cond_0 │ const/4 v2, 0x0 │ │ goto :goto_0 │ .end method │ │ .method private declared-synchronized initLocation()V │ - .locals 12 │ + .locals 11 │ │ .prologue │ .line 378 │ monitor-enter p0 │ │ :try_start_0 │ iget-object v2, p0, Lcom/mobiperf/util/PhoneUtils;->locationManager:Landroid/location/LocationManager; │ @@ -1559,14 +1573,15 @@ │ if-nez v2, :cond_2 │ │ .line 379 │ iget-object v2, p0, Lcom/mobiperf/util/PhoneUtils;->context:Landroid/content/Context; │ │ const-string v3, "location" │ │ + .line 380 │ invoke-virtual {v2, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ │ move-result-object v0 │ │ check-cast v0, Landroid/location/LocationManager; │ │ .line 382 │ @@ -1585,180 +1600,181 @@ │ const/4 v2, 0x1 │ │ invoke-virtual {v7, v2}, Landroid/location/Criteria;->setPowerRequirement(I)V │ │ .line 391 │ const/4 v2, 0x1 │ │ + .line 392 │ invoke-virtual {v0, v7, v2}, Landroid/location/LocationManager;->getBestProvider(Landroid/location/Criteria;Z)Ljava/lang/String; │ │ move-result-object v1 │ │ .line 394 │ .local v1, "providerName":Ljava/lang/String; │ invoke-virtual {v0}, Landroid/location/LocationManager;->getAllProviders()Ljava/util/List; │ │ - move-result-object v10 │ + move-result-object v9 │ │ .line 395 │ - .local v10, "providers":Ljava/util/List;, "Ljava/util/List;" │ - invoke-interface {v10}, Ljava/util/List;->iterator()Ljava/util/Iterator; │ + .local v9, "providers":Ljava/util/List;, "Ljava/util/List;" │ + invoke-interface {v9}, Ljava/util/List;->iterator()Ljava/util/Iterator; │ │ - move-result-object v8 │ + move-result-object v3 │ │ - .local v8, "i$":Ljava/util/Iterator; │ :goto_0 │ - invoke-interface {v8}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v2 │ │ if-eqz v2, :cond_1 │ │ - invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - check-cast v9, Ljava/lang/String; │ + check-cast v8, Ljava/lang/String; │ :try_end_0 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ .line 397 │ - .local v9, "providerNameIter":Ljava/lang/String; │ + .local v8, "providerNameIter":Ljava/lang/String; │ :try_start_1 │ - invoke-virtual {v0, v9}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider; │ + invoke-virtual {v0, v8}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider; │ :try_end_1 │ .catch Ljava/lang/SecurityException; {:try_start_1 .. :try_end_1} :catch_0 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ .line 403 │ :try_start_2 │ new-instance v2, Ljava/lang/StringBuilder; │ │ invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v2, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ - const-string v3, ": " │ + const-string v4, ": " │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v3 │ + move-result-object v4 │ │ - invoke-virtual {v0, v9}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z │ + .line 404 │ + invoke-virtual {v0, v8}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z │ │ move-result v2 │ │ if-eqz v2, :cond_0 │ │ const-string v2, "enabled" │ │ :goto_1 │ - invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v2 │ │ + .line 403 │ invoke-static {v2}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ :try_end_2 │ .catchall {:try_start_2 .. :try_end_2} :catchall_0 │ │ goto :goto_0 │ │ .line 378 │ .end local v0 # "manager":Landroid/location/LocationManager; │ .end local v1 # "providerName":Ljava/lang/String; │ .end local v7 # "criteriaCoarse":Landroid/location/Criteria; │ - .end local v8 # "i$":Ljava/util/Iterator; │ - .end local v9 # "providerNameIter":Ljava/lang/String; │ - .end local v10 # "providers":Ljava/util/List;, "Ljava/util/List;" │ + .end local v8 # "providerNameIter":Ljava/lang/String; │ + .end local v9 # "providers":Ljava/util/List;, "Ljava/util/List;" │ :catchall_0 │ move-exception v2 │ │ monitor-exit p0 │ │ throw v2 │ │ .line 398 │ .restart local v0 # "manager":Landroid/location/LocationManager; │ .restart local v1 # "providerName":Ljava/lang/String; │ .restart local v7 # "criteriaCoarse":Landroid/location/Criteria; │ - .restart local v8 # "i$":Ljava/util/Iterator; │ - .restart local v9 # "providerNameIter":Ljava/lang/String; │ - .restart local v10 # "providers":Ljava/util/List;, "Ljava/util/List;" │ + .restart local v8 # "providerNameIter":Ljava/lang/String; │ + .restart local v9 # "providers":Ljava/util/List;, "Ljava/util/List;" │ :catch_0 │ - move-exception v11 │ + move-exception v10 │ │ .line 400 │ - .local v11, "se":Ljava/lang/SecurityException; │ + .local v10, "se":Ljava/lang/SecurityException; │ :try_start_3 │ new-instance v2, Ljava/lang/StringBuilder; │ │ invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ │ - const-string v3, "Unable to use provider " │ + const-string v4, "Unable to use provider " │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ - invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v2, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ move-result-object v2 │ │ invoke-static {v2}, Lcom/mobiperf/Logger;->w(Ljava/lang/String;)V │ │ goto :goto_0 │ │ - .line 403 │ - .end local v11 # "se":Ljava/lang/SecurityException; │ + .line 404 │ + .end local v10 # "se":Ljava/lang/SecurityException; │ :cond_0 │ const-string v2, "disabled" │ │ goto :goto_1 │ │ .line 412 │ - .end local v9 # "providerNameIter":Ljava/lang/String; │ + .end local v8 # "providerNameIter":Ljava/lang/String; │ :cond_1 │ const-wide/16 v2, 0x0 │ │ const/4 v4, 0x0 │ │ new-instance v5, Lcom/mobiperf/util/PhoneUtils$LoggingLocationListener; │ │ const/4 v6, 0x0 │ │ invoke-direct {v5, v6}, Lcom/mobiperf/util/PhoneUtils$LoggingLocationListener;->(Lcom/mobiperf/util/PhoneUtils$1;)V │ │ + .line 416 │ invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper; │ │ move-result-object v6 │ │ + .line 412 │ invoke-virtual/range {v0 .. v6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V │ │ .line 417 │ iput-object v0, p0, Lcom/mobiperf/util/PhoneUtils;->locationManager:Landroid/location/LocationManager; │ │ .line 418 │ iput-object v1, p0, Lcom/mobiperf/util/PhoneUtils;->locationProviderName:Ljava/lang/String; │ │ .line 420 │ .end local v0 # "manager":Landroid/location/LocationManager; │ .end local v1 # "providerName":Ljava/lang/String; │ .end local v7 # "criteriaCoarse":Landroid/location/Criteria; │ - .end local v8 # "i$":Ljava/util/Iterator; │ - .end local v10 # "providers":Ljava/util/List;, "Ljava/util/List;" │ + .end local v9 # "providers":Ljava/util/List;, "Ljava/util/List;" │ :cond_2 │ sget-boolean v2, Lcom/mobiperf/util/PhoneUtils;->$assertionsDisabled:Z │ │ if-nez v2, :cond_3 │ │ iget-object v2, p0, Lcom/mobiperf/util/PhoneUtils;->locationManager:Landroid/location/LocationManager; │ │ @@ -1792,194 +1808,190 @@ │ :cond_4 │ monitor-exit p0 │ │ return-void │ .end method │ │ .method private declared-synchronized initNetwork()V │ - .locals 9 │ + .locals 8 │ │ .prologue │ .line 239 │ monitor-enter p0 │ │ :try_start_0 │ - iget-object v7, p0, Lcom/mobiperf/util/PhoneUtils;->connectivityManager:Landroid/net/ConnectivityManager; │ + iget-object v4, p0, Lcom/mobiperf/util/PhoneUtils;->connectivityManager:Landroid/net/ConnectivityManager; │ │ - if-nez v7, :cond_1 │ + if-nez v4, :cond_1 │ │ .line 240 │ - iget-object v7, p0, Lcom/mobiperf/util/PhoneUtils;->context:Landroid/content/Context; │ + iget-object v4, p0, Lcom/mobiperf/util/PhoneUtils;->context:Landroid/content/Context; │ │ - const-string v8, "connectivity" │ + const-string v5, "connectivity" │ │ - invoke-virtual {v7, v8}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ + .line 241 │ + invoke-virtual {v4, v5}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ │ - move-result-object v5 │ + move-result-object v2 │ │ - check-cast v5, Landroid/net/ConnectivityManager; │ + check-cast v2, Landroid/net/ConnectivityManager; │ │ .line 243 │ - .local v5, "tryConnectivityManager":Landroid/net/ConnectivityManager; │ - iget-object v7, p0, Lcom/mobiperf/util/PhoneUtils;->context:Landroid/content/Context; │ + .local v2, "tryConnectivityManager":Landroid/net/ConnectivityManager; │ + iget-object v4, p0, Lcom/mobiperf/util/PhoneUtils;->context:Landroid/content/Context; │ │ - const-string v8, "phone" │ + const-string v5, "phone" │ │ - invoke-virtual {v7, v8}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ + .line 244 │ + invoke-virtual {v4, v5}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ │ - move-result-object v6 │ + move-result-object v3 │ │ - check-cast v6, Landroid/telephony/TelephonyManager; │ + check-cast v3, Landroid/telephony/TelephonyManager; │ │ .line 248 │ - .local v6, "tryTelephonyManager":Landroid/telephony/TelephonyManager; │ - iput-object v5, p0, Lcom/mobiperf/util/PhoneUtils;->connectivityManager:Landroid/net/ConnectivityManager; │ + .local v3, "tryTelephonyManager":Landroid/telephony/TelephonyManager; │ + iput-object v2, p0, Lcom/mobiperf/util/PhoneUtils;->connectivityManager:Landroid/net/ConnectivityManager; │ │ .line 249 │ - iput-object v6, p0, Lcom/mobiperf/util/PhoneUtils;->telephonyManager:Landroid/telephony/TelephonyManager; │ + iput-object v3, p0, Lcom/mobiperf/util/PhoneUtils;->telephonyManager:Landroid/telephony/TelephonyManager; │ │ .line 252 │ - iget-object v7, p0, Lcom/mobiperf/util/PhoneUtils;->connectivityManager:Landroid/net/ConnectivityManager; │ + iget-object v4, p0, Lcom/mobiperf/util/PhoneUtils;->connectivityManager:Landroid/net/ConnectivityManager; │ │ - invoke-virtual {v7}, Landroid/net/ConnectivityManager;->getAllNetworkInfo()[Landroid/net/NetworkInfo; │ + invoke-virtual {v4}, Landroid/net/ConnectivityManager;->getAllNetworkInfo()[Landroid/net/NetworkInfo; │ │ - move-result-object v2 │ + move-result-object v0 │ │ .line 253 │ - .local v2, "infos":[Landroid/net/NetworkInfo; │ - move-object v0, v2 │ - │ - .local v0, "arr$":[Landroid/net/NetworkInfo; │ - array-length v3, v0 │ + .local v0, "infos":[Landroid/net/NetworkInfo; │ + array-length v5, v0 │ │ - .local v3, "len$":I │ - const/4 v1, 0x0 │ + const/4 v4, 0x0 │ │ - .local v1, "i$":I │ :goto_0 │ - if-ge v1, v3, :cond_0 │ + if-ge v4, v5, :cond_0 │ │ - aget-object v4, v0, v1 │ + aget-object v1, v0, v4 │ │ .line 254 │ - .local v4, "networkInfo":Landroid/net/NetworkInfo; │ - new-instance v7, Ljava/lang/StringBuilder; │ + .local v1, "networkInfo":Landroid/net/NetworkInfo; │ + new-instance v6, Ljava/lang/StringBuilder; │ │ - invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ │ - const-string v8, "Network: " │ + const-string v7, "Network: " │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - invoke-static {v7}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + invoke-static {v6}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 253 │ - add-int/lit8 v1, v1, 0x1 │ + add-int/lit8 v4, v4, 0x1 │ │ goto :goto_0 │ │ .line 256 │ - .end local v4 # "networkInfo":Landroid/net/NetworkInfo; │ + .end local v1 # "networkInfo":Landroid/net/NetworkInfo; │ :cond_0 │ - new-instance v7, Ljava/lang/StringBuilder; │ + new-instance v4, Ljava/lang/StringBuilder; │ │ - invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v4}, Ljava/lang/StringBuilder;->()V │ │ - const-string v8, "Phone type: " │ + const-string v5, "Phone type: " │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v4 │ │ invoke-direct {p0}, Lcom/mobiperf/util/PhoneUtils;->getTelephonyPhoneType()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v5 │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v4 │ │ - const-string v8, ", Carrier: " │ + const-string v5, ", Carrier: " │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v4 │ │ + .line 257 │ invoke-direct {p0}, Lcom/mobiperf/util/PhoneUtils;->getTelephonyCarrierName()Ljava/lang/String; │ │ - move-result-object v8 │ + move-result-object v5 │ │ - invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v7 │ + move-result-object v4 │ │ - invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v7 │ + move-result-object v4 │ │ - invoke-static {v7}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ + .line 256 │ + invoke-static {v4}, Lcom/mobiperf/Logger;->i(Ljava/lang/String;)V │ │ .line 259 │ - .end local v0 # "arr$":[Landroid/net/NetworkInfo; │ - .end local v1 # "i$":I │ - .end local v2 # "infos":[Landroid/net/NetworkInfo; │ - .end local v3 # "len$":I │ - .end local v5 # "tryConnectivityManager":Landroid/net/ConnectivityManager; │ - .end local v6 # "tryTelephonyManager":Landroid/telephony/TelephonyManager; │ + .end local v0 # "infos":[Landroid/net/NetworkInfo; │ + .end local v2 # "tryConnectivityManager":Landroid/net/ConnectivityManager; │ + .end local v3 # "tryTelephonyManager":Landroid/telephony/TelephonyManager; │ :cond_1 │ - sget-boolean v7, Lcom/mobiperf/util/PhoneUtils;->$assertionsDisabled:Z │ + sget-boolean v4, Lcom/mobiperf/util/PhoneUtils;->$assertionsDisabled:Z │ │ - if-nez v7, :cond_2 │ + if-nez v4, :cond_2 │ │ - iget-object v7, p0, Lcom/mobiperf/util/PhoneUtils;->connectivityManager:Landroid/net/ConnectivityManager; │ + iget-object v4, p0, Lcom/mobiperf/util/PhoneUtils;->connectivityManager:Landroid/net/ConnectivityManager; │ │ - if-nez v7, :cond_2 │ + if-nez v4, :cond_2 │ │ - new-instance v7, Ljava/lang/AssertionError; │ + new-instance v4, Ljava/lang/AssertionError; │ │ - invoke-direct {v7}, Ljava/lang/AssertionError;->()V │ + invoke-direct {v4}, Ljava/lang/AssertionError;->()V │ │ - throw v7 │ + throw v4 │ :try_end_0 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ .line 239 │ :catchall_0 │ - move-exception v7 │ + move-exception v4 │ │ monitor-exit p0 │ │ - throw v7 │ + throw v4 │ │ .line 260 │ :cond_2 │ :try_start_1 │ - sget-boolean v7, Lcom/mobiperf/util/PhoneUtils;->$assertionsDisabled:Z │ + sget-boolean v4, Lcom/mobiperf/util/PhoneUtils;->$assertionsDisabled:Z │ │ - if-nez v7, :cond_3 │ + if-nez v4, :cond_3 │ │ - iget-object v7, p0, Lcom/mobiperf/util/PhoneUtils;->telephonyManager:Landroid/telephony/TelephonyManager; │ + iget-object v4, p0, Lcom/mobiperf/util/PhoneUtils;->telephonyManager:Landroid/telephony/TelephonyManager; │ │ - if-nez v7, :cond_3 │ + if-nez v4, :cond_3 │ │ - new-instance v7, Ljava/lang/AssertionError; │ + new-instance v4, Ljava/lang/AssertionError; │ │ - invoke-direct {v7}, Ljava/lang/AssertionError;->()V │ + invoke-direct {v4}, Ljava/lang/AssertionError;->()V │ │ - throw v7 │ + throw v4 │ :try_end_1 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ .line 261 │ :cond_3 │ monitor-exit p0 │ │ @@ -2224,14 +2236,15 @@ │ monitor-enter p0 │ │ :try_start_0 │ iget-object v2, p0, Lcom/mobiperf/util/PhoneUtils;->context:Landroid/content/Context; │ │ const-string v3, "connectivity" │ │ + .line 652 │ invoke-virtual {v2, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ │ move-result-object v1 │ │ check-cast v1, Landroid/net/ConnectivityManager; │ │ .line 653 │ @@ -2395,14 +2408,15 @@ │ │ .line 221 │ .local v2, "network":Ljava/lang/String; │ const-string v4, "Wifi" │ │ if-ne v2, v4, :cond_1 │ │ + .line 222 │ invoke-direct {p0}, Lcom/mobiperf/util/PhoneUtils;->getWifiCarrierName()Ljava/lang/String; │ │ move-result-object v0 │ │ .line 224 │ .local v0, "carrier":Ljava/lang/String; │ :goto_1 │ @@ -2426,26 +2440,28 @@ │ │ invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ sget-object v5, Landroid/os/Build$VERSION;->RELEASE:Ljava/lang/String; │ │ + .line 226 │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ + .line 227 │ invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ @@ -2458,14 +2474,15 @@ │ │ move-result-object v5 │ │ invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v4 │ │ + .line 228 │ invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ invoke-virtual {p0}, Lcom/mobiperf/util/PhoneUtils;->isLandscape()Z │ │ move-result v4 │ @@ -2490,25 +2507,25 @@ │ .end local v2 # "network":Ljava/lang/String; │ .end local v3 # "stringBuilder":Ljava/lang/StringBuilder; │ :cond_0 │ sget-object v1, Landroid/os/Build;->DEVICE:Ljava/lang/String; │ │ goto :goto_0 │ │ - .line 221 │ + .line 222 │ .restart local v1 # "device":Ljava/lang/String; │ .restart local v2 # "network":Ljava/lang/String; │ :cond_1 │ invoke-direct {p0}, Lcom/mobiperf/util/PhoneUtils;->getTelephonyCarrierName()Ljava/lang/String; │ │ move-result-object v0 │ │ goto :goto_1 │ │ - .line 225 │ + .line 228 │ .restart local v0 # "carrier":Ljava/lang/String; │ .restart local v3 # "stringBuilder":Ljava/lang/StringBuilder; │ :cond_2 │ const-string v4, "Portrait" │ │ goto :goto_2 │ .end method │ @@ -2589,66 +2606,65 @@ │ .param p1, "cidOnly" # Z │ │ .prologue │ .line 354 │ invoke-direct {p0}, Lcom/mobiperf/util/PhoneUtils;->initNetwork()V │ │ .line 355 │ - iget-object v5, p0, Lcom/mobiperf/util/PhoneUtils;->telephonyManager:Landroid/telephony/TelephonyManager; │ + iget-object v4, p0, Lcom/mobiperf/util/PhoneUtils;->telephonyManager:Landroid/telephony/TelephonyManager; │ │ - invoke-virtual {v5}, Landroid/telephony/TelephonyManager;->getNeighboringCellInfo()Ljava/util/List; │ + invoke-virtual {v4}, Landroid/telephony/TelephonyManager;->getNeighboringCellInfo()Ljava/util/List; │ │ - move-result-object v3 │ + move-result-object v2 │ │ .line 356 │ - .local v3, "infos":Ljava/util/List;, "Ljava/util/List;" │ + .local v2, "infos":Ljava/util/List;, "Ljava/util/List;" │ new-instance v0, Ljava/lang/StringBuffer; │ │ invoke-direct {v0}, Ljava/lang/StringBuffer;->()V │ │ .line 357 │ .local v0, "buf":Ljava/lang/StringBuffer; │ - const-string v4, "" │ + const-string v3, "" │ │ .line 358 │ - .local v4, "tempResult":Ljava/lang/String; │ - invoke-interface {v3}, Ljava/util/List;->size()I │ + .local v3, "tempResult":Ljava/lang/String; │ + invoke-interface {v2}, Ljava/util/List;->size()I │ │ - move-result v5 │ + move-result v4 │ │ - if-lez v5, :cond_2 │ + if-lez v4, :cond_2 │ │ .line 359 │ - invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator; │ + invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator; │ │ - move-result-object v1 │ + move-result-object v4 │ │ - .local v1, "i$":Ljava/util/Iterator; │ :goto_0 │ - invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v5 │ │ if-eqz v5, :cond_1 │ │ - invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v2 │ + move-result-object v1 │ │ - check-cast v2, Landroid/telephony/NeighboringCellInfo; │ + check-cast v1, Landroid/telephony/NeighboringCellInfo; │ │ .line 360 │ - .local v2, "info":Landroid/telephony/NeighboringCellInfo; │ + .local v1, "info":Landroid/telephony/NeighboringCellInfo; │ if-eqz p1, :cond_0 │ │ new-instance v5, Ljava/lang/StringBuilder; │ │ invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v2}, Landroid/telephony/NeighboringCellInfo;->getCid()I │ + invoke-virtual {v1}, Landroid/telephony/NeighboringCellInfo;->getCid()I │ │ move-result v6 │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ @@ -2656,57 +2672,58 @@ │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v4 │ + move-result-object v3 │ │ .line 362 │ :goto_1 │ - invoke-virtual {v0, v4}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; │ + invoke-virtual {v0, v3}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; │ │ goto :goto_0 │ │ .line 360 │ :cond_0 │ new-instance v5, Ljava/lang/StringBuilder; │ │ invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v2}, Landroid/telephony/NeighboringCellInfo;->getLac()I │ + invoke-virtual {v1}, Landroid/telephony/NeighboringCellInfo;->getLac()I │ │ move-result v6 │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ const-string v6, "," │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ - invoke-virtual {v2}, Landroid/telephony/NeighboringCellInfo;->getCid()I │ + .line 361 │ + invoke-virtual {v1}, Landroid/telephony/NeighboringCellInfo;->getCid()I │ │ move-result v6 │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ const-string v6, "," │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ - invoke-virtual {v2}, Landroid/telephony/NeighboringCellInfo;->getRssi()I │ + invoke-virtual {v1}, Landroid/telephony/NeighboringCellInfo;->getRssi()I │ │ move-result v6 │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ @@ -2714,41 +2731,40 @@ │ │ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v5 │ │ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v4 │ + move-result-object v3 │ │ goto :goto_1 │ │ .line 365 │ - .end local v2 # "info":Landroid/telephony/NeighboringCellInfo; │ + .end local v1 # "info":Landroid/telephony/NeighboringCellInfo; │ :cond_1 │ invoke-virtual {v0}, Ljava/lang/StringBuffer;->length()I │ │ - move-result v5 │ + move-result v4 │ │ - add-int/lit8 v5, v5, -0x1 │ + add-int/lit8 v4, v4, -0x1 │ │ - invoke-virtual {v0, v5}, Ljava/lang/StringBuffer;->deleteCharAt(I)Ljava/lang/StringBuffer; │ + invoke-virtual {v0, v4}, Ljava/lang/StringBuffer;->deleteCharAt(I)Ljava/lang/StringBuffer; │ │ .line 366 │ invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v4 │ │ .line 368 │ - .end local v1 # "i$":Ljava/util/Iterator; │ :goto_2 │ - return-object v5 │ + return-object v4 │ │ :cond_2 │ - const/4 v5, 0x0 │ + const/4 v4, 0x0 │ │ goto :goto_2 │ .end method │ │ .method public declared-synchronized getCurrentBatteryLevel()I │ .locals 1 │ │ @@ -3025,62 +3041,68 @@ │ │ invoke-virtual/range {p0 .. p0}, Lcom/mobiperf/util/PhoneUtils;->getDeviceInfo()Lcom/mobiperf/DeviceInfo; │ │ move-result-object v3 │ │ iget-object v3, v3, Lcom/mobiperf/DeviceInfo;->deviceId:Ljava/lang/String; │ │ + .line 877 │ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J │ │ - move-result-wide v5 │ + move-result-wide v6 │ │ const-wide/16 v10, 0x3e8 │ │ - mul-long/2addr v5, v10 │ + mul-long v5, v6, v10 │ │ invoke-direct/range {p0 .. p0}, Lcom/mobiperf/util/PhoneUtils;->getVersionStr()Ljava/lang/String; │ │ move-result-object v7 │ │ + .line 878 │ invoke-virtual/range {v22 .. v22}, Landroid/location/Location;->getLongitude()D │ │ move-result-wide v10 │ │ invoke-virtual/range {v22 .. v22}, Landroid/location/Location;->getLatitude()D │ │ move-result-wide v12 │ │ + .line 879 │ invoke-virtual/range {v22 .. v22}, Landroid/location/Location;->getProvider()Ljava/lang/String; │ │ move-result-object v14 │ │ + .line 880 │ invoke-virtual/range {v23 .. v23}, Lcom/mobiperf/util/PhoneUtils;->getCurrentBatteryLevel()I │ │ move-result v17 │ │ invoke-virtual/range {v23 .. v23}, Lcom/mobiperf/util/PhoneUtils;->isCharging()Z │ │ move-result v18 │ │ const/16 v19, 0x0 │ │ + .line 881 │ move-object/from16 v0, v23 │ │ move/from16 v1, v19 │ │ invoke-virtual {v0, v1}, Lcom/mobiperf/util/PhoneUtils;->getCellInfo(Z)Ljava/lang/String; │ │ move-result-object v19 │ │ invoke-virtual/range {v23 .. v23}, Lcom/mobiperf/util/PhoneUtils;->getCurrentRssi()I │ │ move-result v20 │ │ invoke-direct/range {v2 .. v20}, Lcom/mobiperf/DeviceProperty;->(Ljava/lang/String;Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;DDLjava/lang/String;Ljava/lang/String;Ljava/lang/String;IZLjava/lang/String;I)V │ │ + .line 876 │ return-object v2 │ │ .line 861 │ .end local v4 # "versionName":Ljava/lang/String; │ .end local v8 # "ipConnectivity":Ljava/lang/String; │ .end local v9 # "dnResolvability":Ljava/lang/String; │ .end local v15 # "networkType":Ljava/lang/String; │ @@ -3359,22 +3381,24 @@ │ invoke-direct {p0}, Lcom/mobiperf/util/PhoneUtils;->initNetwork()V │ │ .line 276 │ iget-object v1, p0, Lcom/mobiperf/util/PhoneUtils;->connectivityManager:Landroid/net/ConnectivityManager; │ │ const/4 v2, 0x1 │ │ + .line 277 │ invoke-virtual {v1, v2}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo; │ │ move-result-object v0 │ │ .line 278 │ .local v0, "networkInfo":Landroid/net/NetworkInfo; │ if-eqz v0, :cond_0 │ │ + .line 279 │ invoke-virtual {v0}, Landroid/net/NetworkInfo;->getState()Landroid/net/NetworkInfo$State; │ │ move-result-object v1 │ │ sget-object v2, Landroid/net/NetworkInfo$State;->CONNECTED:Landroid/net/NetworkInfo$State; │ │ if-ne v1, v2, :cond_0 ├── smali/com/mobiperf/util/Util.smali │ @@ -11,15 +11,15 @@ │ .line 44 │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ return-void │ .end method │ │ .method public static applyInnerBandFilter(Ljava/util/ArrayList;DD)Ljava/util/ArrayList; │ - .locals 12 │ + .locals 13 │ .param p1, "lowerBound" # D │ .param p3, "upperBound" # D │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Ljava/util/ArrayList", │ "<", │ @@ -43,32 +43,32 @@ │ .local p0, "vals":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ const-wide/16 v6, 0x0 │ │ .line 57 │ .local v6, "rrtTotal":D │ invoke-virtual {p0}, Ljava/util/ArrayList;->size()I │ │ - move-result v3 │ + move-result v2 │ │ .line 58 │ - .local v3, "initResultLen":I │ - if-nez v3, :cond_0 │ + .local v2, "initResultLen":I │ + if-nez v2, :cond_0 │ │ .line 60 │ - new-instance v10, Ljava/security/InvalidParameterException; │ + new-instance v3, Ljava/security/InvalidParameterException; │ │ - const-string v11, "The array size passed in is zero" │ + const-string v10, "The array size passed in is zero" │ │ - invoke-direct {v10, v11}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ + invoke-direct {v3, v10}, Ljava/security/InvalidParameterException;->(Ljava/lang/String;)V │ │ - throw v10 │ + throw v3 │ │ .line 63 │ :cond_0 │ - int-to-double v10, v3 │ + int-to-double v10, v2 │ │ div-double v4, v6, v10 │ │ .line 65 │ .local v4, "rrtAvg":D │ new-instance v1, Ljava/util/ArrayList; │ │ @@ -81,51 +81,50 @@ │ .line 67 │ .local v0, "finalResultCnt":I │ const-wide/16 v6, 0x0 │ │ .line 68 │ invoke-virtual {p0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ │ - move-result-object v2 │ + move-result-object v10 │ │ - .local v2, "i$":Ljava/util/Iterator; │ :cond_1 │ :goto_0 │ - invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v10}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v10 │ + move-result v3 │ │ - if-eqz v10, :cond_2 │ + if-eqz v3, :cond_2 │ │ - invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v10}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v10 │ + move-result-object v3 │ │ - check-cast v10, Ljava/lang/Double; │ + check-cast v3, Ljava/lang/Double; │ │ - invoke-virtual {v10}, Ljava/lang/Double;->doubleValue()D │ + invoke-virtual {v3}, Ljava/lang/Double;->doubleValue()D │ │ move-result-wide v8 │ │ .line 69 │ .local v8, "rrtVal":D │ - cmpg-double v10, v8, p3 │ + cmpg-double v3, v8, p3 │ │ - if-gtz v10, :cond_1 │ + if-gtz v3, :cond_1 │ │ - cmpl-double v10, v8, p1 │ + cmpl-double v3, v8, p1 │ │ - if-ltz v10, :cond_1 │ + if-ltz v3, :cond_1 │ │ .line 70 │ invoke-static {v8, v9}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double; │ │ - move-result-object v10 │ + move-result-object v3 │ │ - invoke-virtual {v1, v10}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ + invoke-virtual {v1, v3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ │ goto :goto_0 │ │ .line 74 │ .end local v8 # "rrtVal":D │ :cond_2 │ return-object v1 │ @@ -457,15 +456,15 @@ │ │ aput-object v1, v2, v3 │ │ goto :goto_0 │ .end method │ │ .method public static getStandardDeviation(Ljava/util/ArrayList;D)D │ - .locals 12 │ + .locals 13 │ .param p1, "avg" # D │ .annotation system Ldalvik/annotation/Signature; │ value = { │ "(", │ "Ljava/util/ArrayList", │ "<", │ "Ljava/lang/Double;", │ @@ -474,80 +473,79 @@ │ .end annotation │ │ .prologue │ .local p0, "values":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ const-wide/16 v8, 0x0 │ │ .line 123 │ - const-wide/16 v3, 0x0 │ + const-wide/16 v2, 0x0 │ │ .line 124 │ - .local v3, "total":D │ + .local v2, "total":D │ invoke-virtual {p0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ │ - move-result-object v2 │ + move-result-object v7 │ │ - .local v2, "i$":Ljava/util/Iterator; │ :goto_0 │ - invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v7 │ + move-result v6 │ │ - if-eqz v7, :cond_0 │ + if-eqz v6, :cond_0 │ │ - invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v7 │ + move-result-object v6 │ │ - check-cast v7, Ljava/lang/Double; │ + check-cast v6, Ljava/lang/Double; │ │ - invoke-virtual {v7}, Ljava/lang/Double;->doubleValue()D │ + invoke-virtual {v6}, Ljava/lang/Double;->doubleValue()D │ │ - move-result-wide v5 │ + move-result-wide v4 │ │ .line 125 │ - .local v5, "val":D │ - sub-double v0, v5, p1 │ + .local v4, "val":D │ + sub-double v0, v4, p1 │ │ .line 126 │ .local v0, "dev":D │ mul-double v10, v0, v0 │ │ - add-double/2addr v3, v10 │ + add-double/2addr v2, v10 │ │ .line 127 │ goto :goto_0 │ │ .line 128 │ .end local v0 # "dev":D │ - .end local v5 # "val":D │ + .end local v4 # "val":D │ :cond_0 │ - cmpl-double v7, v3, v8 │ + cmpl-double v6, v2, v8 │ │ - if-lez v7, :cond_1 │ + if-lez v6, :cond_1 │ │ .line 129 │ invoke-virtual {p0}, Ljava/util/ArrayList;->size()I │ │ - move-result v7 │ + move-result v6 │ │ - int-to-double v7, v7 │ + int-to-double v6, v6 │ │ - div-double v7, v3, v7 │ + div-double v6, v2, v6 │ │ - invoke-static {v7, v8}, Ljava/lang/Math;->sqrt(D)D │ + invoke-static {v6, v7}, Ljava/lang/Math;->sqrt(D)D │ │ - move-result-wide v7 │ + move-result-wide v6 │ │ .line 131 │ :goto_1 │ - return-wide v7 │ + return-wide v6 │ │ :cond_1 │ - move-wide v7, v8 │ + move-wide v6, v8 │ │ goto :goto_1 │ .end method │ │ .method public static getSum(Ljava/util/ArrayList;)D │ .locals 6 │ .annotation system Ldalvik/annotation/Signature; │ @@ -559,259 +557,249 @@ │ ">;)D" │ } │ .end annotation │ │ .prologue │ .line 83 │ .local p0, "vals":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" │ - const-wide/16 v1, 0x0 │ + const-wide/16 v0, 0x0 │ │ .line 84 │ - .local v1, "sum":D │ + .local v0, "sum":D │ invoke-virtual {p0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ │ - move-result-object v0 │ + move-result-object v5 │ │ - .local v0, "i$":Ljava/util/Iterator; │ :goto_0 │ - invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z │ │ - move-result v5 │ + move-result v4 │ │ - if-eqz v5, :cond_0 │ + if-eqz v4, :cond_0 │ │ - invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ - move-result-object v5 │ + move-result-object v4 │ │ - check-cast v5, Ljava/lang/Double; │ + check-cast v4, Ljava/lang/Double; │ │ - invoke-virtual {v5}, Ljava/lang/Double;->doubleValue()D │ + invoke-virtual {v4}, Ljava/lang/Double;->doubleValue()D │ │ - move-result-wide v3 │ + move-result-wide v2 │ │ .line 85 │ - .local v3, "val":D │ - add-double/2addr v1, v3 │ + .local v2, "val":D │ + add-double/2addr v0, v2 │ │ .line 86 │ goto :goto_0 │ │ .line 87 │ - .end local v3 # "val":D │ + .end local v2 # "val":D │ :cond_0 │ - return-wide v1 │ + return-wide v0 │ .end method │ │ .method public static getTimeStringFromMicrosecond(J)Ljava/lang/String; │ - .locals 3 │ + .locals 4 │ .param p0, "microsecond" # J │ │ .prologue │ .line 136 │ new-instance v0, Ljava/util/Date; │ │ - const-wide/16 v1, 0x3e8 │ + const-wide/16 v2, 0x3e8 │ │ - div-long v1, p0, v1 │ + div-long v2, p0, v2 │ │ - invoke-direct {v0, v1, v2}, Ljava/util/Date;->(J)V │ + invoke-direct {v0, v2, v3}, Ljava/util/Date;->(J)V │ │ .line 137 │ .local v0, "timestamp":Ljava/util/Date; │ invoke-virtual {v0}, Ljava/util/Date;->toString()Ljava/lang/String; │ │ move-result-object v1 │ │ return-object v1 │ .end method │ │ .method public static pingExecutableBasedOnIPType(ILandroid/content/Context;)Ljava/lang/String; │ - .locals 10 │ + .locals 9 │ .param p0, "ipByteLen" # I │ .param p1, "context" # Landroid/content/Context; │ │ .prologue │ .line 198 │ - const/4 v7, 0x0 │ + const/4 v4, 0x0 │ │ .line 199 │ - .local v7, "testPingProc":Ljava/lang/Process; │ + .local v4, "testPingProc":Ljava/lang/Process; │ invoke-static {}, Lcom/mobiperf/util/Util;->fetchEnvPaths()[Ljava/lang/String; │ │ - move-result-object v6 │ + move-result-object v3 │ │ .line 200 │ - .local v6, "progList":[Ljava/lang/String; │ - const/4 v4, 0x0 │ + .local v3, "progList":[Ljava/lang/String; │ + const/4 v1, 0x0 │ │ .line 201 │ - .local v4, "pingExecutable":Ljava/lang/String; │ - if-eqz v6, :cond_1 │ + .local v1, "pingExecutable":Ljava/lang/String; │ + if-eqz v3, :cond_1 │ │ - array-length v8, v6 │ + array-length v5, v3 │ │ - if-eqz v8, :cond_1 │ + if-eqz v5, :cond_1 │ │ .line 202 │ - move-object v0, v6 │ - │ - .local v0, "arr$":[Ljava/lang/String; │ - array-length v3, v0 │ + array-length v6, v3 │ │ - .local v3, "len$":I │ - const/4 v2, 0x0 │ + const/4 v5, 0x0 │ │ - .local v2, "i$":I │ :goto_0 │ - if-ge v2, v3, :cond_1 │ + if-ge v5, v6, :cond_1 │ │ - aget-object v5, v0, v2 │ + aget-object v2, v3, v5 │ │ .line 204 │ - .local v5, "pingLocation":Ljava/lang/String; │ - const/4 v8, 0x4 │ + .local v2, "pingLocation":Ljava/lang/String; │ + const/4 v7, 0x4 │ │ - if-ne p0, v8, :cond_2 │ + if-ne p0, v7, :cond_2 │ │ .line 205 │ :try_start_0 │ - new-instance v8, Ljava/lang/StringBuilder; │ + new-instance v7, Ljava/lang/StringBuilder; │ │ - invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const-string v9, "/" │ + const-string v8, "/" │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const v9, 0x7f070003 │ + const v8, 0x7f070003 │ │ - invoke-virtual {p1, v9}, Landroid/content/Context;->getString(I)Ljava/lang/String; │ + .line 206 │ + invoke-virtual {p1, v8}, Landroid/content/Context;->getString(I)Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v4 │ + move-result-object v1 │ │ .line 211 │ :cond_0 │ :goto_1 │ invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8, v4}, Ljava/lang/Runtime;->exec(Ljava/lang/String;)Ljava/lang/Process; │ + invoke-virtual {v7, v1}, Ljava/lang/Runtime;->exec(Ljava/lang/String;)Ljava/lang/Process; │ :try_end_0 │ .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 │ .catchall {:try_start_0 .. :try_end_0} :catchall_0 │ │ - move-result-object v7 │ + move-result-object v4 │ │ .line 218 │ - if-eqz v7, :cond_1 │ + if-eqz v4, :cond_1 │ │ .line 219 │ - invoke-virtual {v7}, Ljava/lang/Process;->destroy()V │ + invoke-virtual {v4}, Ljava/lang/Process;->destroy()V │ │ .line 224 │ - .end local v0 # "arr$":[Ljava/lang/String; │ - .end local v2 # "i$":I │ - .end local v3 # "len$":I │ - .end local v5 # "pingLocation":Ljava/lang/String; │ + .end local v2 # "pingLocation":Ljava/lang/String; │ :cond_1 │ - return-object v4 │ + return-object v1 │ │ .line 207 │ - .restart local v0 # "arr$":[Ljava/lang/String; │ - .restart local v2 # "i$":I │ - .restart local v3 # "len$":I │ - .restart local v5 # "pingLocation":Ljava/lang/String; │ + .restart local v2 # "pingLocation":Ljava/lang/String; │ :cond_2 │ - const/16 v8, 0x10 │ + const/16 v7, 0x10 │ │ - if-ne p0, v8, :cond_0 │ + if-ne p0, v7, :cond_0 │ │ .line 208 │ :try_start_1 │ - new-instance v8, Ljava/lang/StringBuilder; │ + new-instance v7, Ljava/lang/StringBuilder; │ │ - invoke-direct {v8}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v7}, Ljava/lang/StringBuilder;->()V │ │ - invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const-string v9, "/" │ + const-string v8, "/" │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - const v9, 0x7f070004 │ + const v8, 0x7f070004 │ │ - invoke-virtual {p1, v9}, Landroid/content/Context;->getString(I)Ljava/lang/String; │ + .line 209 │ + invoke-virtual {p1, v8}, Landroid/content/Context;->getString(I)Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v8 │ │ - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v8 │ + move-result-object v7 │ │ - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ :try_end_1 │ .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_0 │ .catchall {:try_start_1 .. :try_end_1} :catchall_0 │ │ - move-result-object v4 │ + move-result-object v1 │ │ goto :goto_1 │ │ .line 212 │ :catch_0 │ - move-exception v1 │ + move-exception v0 │ │ .line 214 │ - .local v1, "e":Ljava/io/IOException; │ - const/4 v4, 0x0 │ + .local v0, "e":Ljava/io/IOException; │ + const/4 v1, 0x0 │ │ .line 218 │ - if-eqz v7, :cond_3 │ + if-eqz v4, :cond_3 │ │ .line 219 │ - invoke-virtual {v7}, Ljava/lang/Process;->destroy()V │ + invoke-virtual {v4}, Ljava/lang/Process;->destroy()V │ │ .line 202 │ :cond_3 │ - add-int/lit8 v2, v2, 0x1 │ + add-int/lit8 v5, v5, 0x1 │ │ goto :goto_0 │ │ .line 218 │ - .end local v1 # "e":Ljava/io/IOException; │ + .end local v0 # "e":Ljava/io/IOException; │ :catchall_0 │ - move-exception v8 │ + move-exception v5 │ │ - if-eqz v7, :cond_4 │ + if-eqz v4, :cond_4 │ │ .line 219 │ - invoke-virtual {v7}, Ljava/lang/Process;->destroy()V │ + invoke-virtual {v4}, Ljava/lang/Process;->destroy()V │ │ :cond_4 │ - throw v8 │ + throw v5 │ .end method │ │ .method public static prepareUserAgent(Landroid/content/Context;)Ljava/lang/String; │ .locals 5 │ .param p0, "context" # Landroid/content/Context; │ │ .prologue ├── original/AndroidManifest.xml │ @@ -1,377 +1,365 @@ │ -00000000: 0300 0800 8417 0000 0100 1c00 ec0a 0000 ................ │ -00000010: 3a00 0000 0000 0000 0000 0000 0401 0000 :............... │ +00000000: 0300 0800 c816 0000 0100 1c00 6c0a 0000 ............l... │ +00000010: 3900 0000 0000 0000 0000 0000 0001 0000 9............... │ 00000020: 0000 0000 0000 0000 1a00 0000 3400 0000 ............4... │ 00000030: 4000 0000 6400 0000 8200 0000 8e00 0000 @...d........... │ 00000040: 9c00 0000 aa00 0000 c200 0000 d600 0000 ................ │ 00000050: e800 0000 4001 0000 4401 0000 5601 0000 ....@...D...V... │ -00000060: 6a01 0000 8601 0000 9201 0000 b401 0000 j............... │ -00000070: ee01 0000 3002 0000 7802 0000 c202 0000 ....0...x....... │ -00000080: 1803 0000 6c03 0000 be03 0000 0a04 0000 ....l........... │ -00000090: 4e04 0000 8a04 0000 e004 0000 f404 0000 N............... │ -000000a0: 0e05 0000 2205 0000 4405 0000 6205 0000 ...."...D...b... │ -000000b0: 7205 0000 ac05 0000 c005 0000 0206 0000 r............... │ -000000c0: 3006 0000 6806 0000 ac06 0000 dc06 0000 0...h........... │ -000000d0: 0e07 0000 4a07 0000 8a07 0000 d407 0000 ....J........... │ -000000e0: e607 0000 1408 0000 2808 0000 5608 0000 ........(...V... │ -000000f0: a208 0000 de08 0000 ee08 0000 0c09 0000 ................ │ -00000100: 2c09 0000 3c09 0000 9209 0000 0b00 7600 ,...<.........v. │ -00000110: 6500 7200 7300 6900 6f00 6e00 4e00 6100 e.r.s.i.o.n.N.a. │ -00000120: 6d00 6500 0000 0b00 7600 6500 7200 7300 m.e.....v.e.r.s. │ -00000130: 6900 6f00 6e00 4300 6f00 6400 6500 0000 i.o.n.C.o.d.e... │ -00000140: 0400 6e00 6100 6d00 6500 0000 1000 7400 ..n.a.m.e.....t. │ -00000150: 6100 7200 6700 6500 7400 5300 6400 6b00 a.r.g.e.t.S.d.k. │ -00000160: 5600 6500 7200 7300 6900 6f00 6e00 0000 V.e.r.s.i.o.n... │ -00000170: 0d00 6d00 6900 6e00 5300 6400 6b00 5600 ..m.i.n.S.d.k.V. │ -00000180: 6500 7200 7300 6900 6f00 6e00 0000 0400 e.r.s.i.o.n..... │ -00000190: 6900 6300 6f00 6e00 0000 0500 6c00 6100 i.c.o.n.....l.a. │ -000001a0: 6200 6500 6c00 0000 0500 7400 6800 6500 b.e.l.....t.h.e. │ -000001b0: 6d00 6500 0000 0a00 6c00 6100 7500 6e00 m.e.....l.a.u.n. │ -000001c0: 6300 6800 4d00 6f00 6400 6500 0000 0800 c.h.M.o.d.e..... │ -000001d0: 6500 7800 7000 6f00 7200 7400 6500 6400 e.x.p.o.r.t.e.d. │ -000001e0: 0000 0700 6100 6e00 6400 7200 6f00 6900 ....a.n.d.r.o.i. │ -000001f0: 6400 0000 2a00 6800 7400 7400 7000 3a00 d...*.h.t.t.p.:. │ -00000200: 2f00 2f00 7300 6300 6800 6500 6d00 6100 /./.s.c.h.e.m.a. │ -00000210: 7300 2e00 6100 6e00 6400 7200 6f00 6900 s...a.n.d.r.o.i. │ -00000220: 6400 2e00 6300 6f00 6d00 2f00 6100 7000 d...c.o.m./.a.p. │ -00000230: 6b00 2f00 7200 6500 7300 2f00 6100 6e00 k./.r.e.s./.a.n. │ -00000240: 6400 7200 6f00 6900 6400 0000 0000 0000 d.r.o.i.d....... │ -00000250: 0700 7000 6100 6300 6b00 6100 6700 6500 ..p.a.c.k.a.g.e. │ -00000260: 0000 0800 6d00 6100 6e00 6900 6600 6500 ....m.a.n.i.f.e. │ -00000270: 7300 7400 0000 0c00 6300 6f00 6d00 2e00 s.t.....c.o.m... │ -00000280: 6d00 6f00 6200 6900 7000 6500 7200 6600 m.o.b.i.p.e.r.f. │ -00000290: 0000 0400 7600 3200 2e00 3500 0000 0f00 ....v.2...5..... │ -000002a0: 7500 7300 6500 7300 2d00 7000 6500 7200 u.s.e.s.-.p.e.r. │ -000002b0: 6d00 6900 7300 7300 6900 6f00 6e00 0000 m.i.s.s.i.o.n... │ -000002c0: 1b00 6100 6e00 6400 7200 6f00 6900 6400 ..a.n.d.r.o.i.d. │ -000002d0: 2e00 7000 6500 7200 6d00 6900 7300 7300 ..p.e.r.m.i.s.s. │ -000002e0: 6900 6f00 6e00 2e00 4900 4e00 5400 4500 i.o.n...I.N.T.E. │ -000002f0: 5200 4e00 4500 5400 0000 1f00 6100 6e00 R.N.E.T.....a.n. │ -00000300: 6400 7200 6f00 6900 6400 2e00 7000 6500 d.r.o.i.d...p.e. │ -00000310: 7200 6d00 6900 7300 7300 6900 6f00 6e00 r.m.i.s.s.i.o.n. │ -00000320: 2e00 4700 4500 5400 5f00 4100 4300 4300 ..G.E.T._.A.C.C. │ -00000330: 4f00 5500 4e00 5400 5300 0000 2200 6100 O.U.N.T.S...".a. │ -00000340: 6e00 6400 7200 6f00 6900 6400 2e00 7000 n.d.r.o.i.d...p. │ -00000350: 6500 7200 6d00 6900 7300 7300 6900 6f00 e.r.m.i.s.s.i.o. │ -00000360: 6e00 2e00 5500 5300 4500 5f00 4300 5200 n...U.S.E._.C.R. │ -00000370: 4500 4400 4500 4e00 5400 4900 4100 4c00 E.D.E.N.T.I.A.L. │ -00000380: 5300 0000 2300 6100 6e00 6400 7200 6f00 S...#.a.n.d.r.o. │ -00000390: 6900 6400 2e00 7000 6500 7200 6d00 6900 i.d...p.e.r.m.i. │ -000003a0: 7300 7300 6900 6f00 6e00 2e00 5200 4500 s.s.i.o.n...R.E. │ -000003b0: 4100 4400 5f00 5000 4800 4f00 4e00 4500 A.D._.P.H.O.N.E. │ -000003c0: 5f00 5300 5400 4100 5400 4500 0000 2900 _.S.T.A.T.E...). │ -000003d0: 6100 6e00 6400 7200 6f00 6900 6400 2e00 a.n.d.r.o.i.d... │ -000003e0: 7000 6500 7200 6d00 6900 7300 7300 6900 p.e.r.m.i.s.s.i. │ -000003f0: 6f00 6e00 2e00 4100 4300 4300 4500 5300 o.n...A.C.C.E.S. │ -00000400: 5300 5f00 4300 4f00 4100 5200 5300 4500 S._.C.O.A.R.S.E. │ -00000410: 5f00 4c00 4f00 4300 4100 5400 4900 4f00 _.L.O.C.A.T.I.O. │ -00000420: 4e00 0000 2800 6100 6e00 6400 7200 6f00 N...(.a.n.d.r.o. │ -00000430: 6900 6400 2e00 7000 6500 7200 6d00 6900 i.d...p.e.r.m.i. │ -00000440: 7300 7300 6900 6f00 6e00 2e00 4100 4300 s.s.i.o.n...A.C. │ -00000450: 4300 4500 5300 5300 5f00 4300 4f00 4100 C.E.S.S._.C.O.A. │ -00000460: 5200 5300 4500 5f00 5500 5000 4400 4100 R.S.E._.U.P.D.A. │ -00000470: 5400 4500 5300 0000 2700 6100 6e00 6400 T.E.S...'.a.n.d. │ -00000480: 7200 6f00 6900 6400 2e00 7000 6500 7200 r.o.i.d...p.e.r. │ -00000490: 6d00 6900 7300 7300 6900 6f00 6e00 2e00 m.i.s.s.i.o.n... │ -000004a0: 4100 4300 4300 4500 5300 5300 5f00 4e00 A.C.C.E.S.S._.N. │ -000004b0: 4500 5400 5700 4f00 5200 4b00 5f00 5300 E.T.W.O.R.K._.S. │ -000004c0: 5400 4100 5400 4500 0000 2400 6100 6e00 T.A.T.E...$.a.n. │ -000004d0: 6400 7200 6f00 6900 6400 2e00 7000 6500 d.r.o.i.d...p.e. │ -000004e0: 7200 6d00 6900 7300 7300 6900 6f00 6e00 r.m.i.s.s.i.o.n. │ -000004f0: 2e00 4100 4300 4300 4500 5300 5300 5f00 ..A.C.C.E.S.S._. │ -00000500: 5700 4900 4600 4900 5f00 5300 5400 4100 W.I.F.I._.S.T.A. │ -00000510: 5400 4500 0000 2000 6100 6e00 6400 7200 T.E... .a.n.d.r. │ -00000520: 6f00 6900 6400 2e00 7000 6500 7200 6d00 o.i.d...p.e.r.m. │ -00000530: 6900 7300 7300 6900 6f00 6e00 2e00 4200 i.s.s.i.o.n...B. │ -00000540: 4100 5400 5400 4500 5200 5900 5f00 5300 A.T.T.E.R.Y._.S. │ -00000550: 5400 4100 5400 5300 0000 1c00 6100 6e00 T.A.T.S.....a.n. │ -00000560: 6400 7200 6f00 6900 6400 2e00 7000 6500 d.r.o.i.d...p.e. │ -00000570: 7200 6d00 6900 7300 7300 6900 6f00 6e00 r.m.i.s.s.i.o.n. │ -00000580: 2e00 5700 4100 4b00 4500 5f00 4c00 4f00 ..W.A.K.E._.L.O. │ -00000590: 4300 4b00 0000 2900 6100 6e00 6400 7200 C.K...).a.n.d.r. │ -000005a0: 6f00 6900 6400 2e00 7000 6500 7200 6d00 o.i.d...p.e.r.m. │ -000005b0: 6900 7300 7300 6900 6f00 6e00 2e00 5200 i.s.s.i.o.n...R. │ -000005c0: 4500 4300 4500 4900 5600 4500 5f00 4200 E.C.E.I.V.E._.B. │ -000005d0: 4f00 4f00 5400 5f00 4300 4f00 4d00 5000 O.O.T._.C.O.M.P. │ -000005e0: 4c00 4500 5400 4500 4400 0000 0800 7500 L.E.T.E.D.....u. │ -000005f0: 7300 6500 7300 2d00 7300 6400 6b00 0000 s.e.s.-.s.d.k... │ -00000600: 0b00 6100 7000 7000 6c00 6900 6300 6100 ..a.p.p.l.i.c.a. │ -00000610: 7400 6900 6f00 6e00 0000 0800 6100 6300 t.i.o.n.....a.c. │ -00000620: 7400 6900 7600 6900 7400 7900 0000 0f00 t.i.v.i.t.y..... │ -00000630: 2e00 5300 7000 6500 6500 6400 6f00 6d00 ..S.p.e.e.d.o.m. │ -00000640: 6500 7400 6500 7200 4100 7000 7000 0000 e.t.e.r.A.p.p... │ -00000650: 0d00 6900 6e00 7400 6500 6e00 7400 2d00 ..i.n.t.e.n.t.-. │ -00000660: 6600 6900 6c00 7400 6500 7200 0000 0600 f.i.l.t.e.r..... │ -00000670: 6100 6300 7400 6900 6f00 6e00 0000 1b00 a.c.t.i.o.n..... │ -00000680: 6300 6f00 6d00 2e00 6d00 6f00 6200 6900 c.o.m...m.o.b.i. │ -00000690: 7000 6500 7200 6600 2e00 5300 7000 6500 p.e.r.f...S.p.e. │ -000006a0: 6500 6400 6f00 6d00 6500 7400 6500 7200 e.d.o.m.e.t.e.r. │ -000006b0: 4100 7000 7000 0000 0800 6300 6100 7400 A.p.p.....c.a.t. │ -000006c0: 6500 6700 6f00 7200 7900 0000 1f00 6100 e.g.o.r.y.....a. │ -000006d0: 6e00 6400 7200 6f00 6900 6400 2e00 6900 n.d.r.o.i.d...i. │ -000006e0: 6e00 7400 6500 6e00 7400 2e00 6300 6100 n.t.e.n.t...c.a. │ -000006f0: 7400 6500 6700 6f00 7200 7900 2e00 4400 t.e.g.o.r.y...D. │ -00000700: 4500 4600 4100 5500 4c00 5400 0000 1500 E.F.A.U.L.T..... │ -00000710: 2e00 5300 7000 6c00 6100 7300 6800 5300 ..S.p.l.a.s.h.S. │ -00000720: 6300 7200 6500 6500 6e00 4100 6300 7400 c.r.e.e.n.A.c.t. │ -00000730: 6900 7600 6900 7400 7900 0000 1a00 6100 i.v.i.t.y.....a. │ -00000740: 6e00 6400 7200 6f00 6900 6400 2e00 6900 n.d.r.o.i.d...i. │ -00000750: 6e00 7400 6500 6e00 7400 2e00 6100 6300 n.t.e.n.t...a.c. │ -00000760: 7400 6900 6f00 6e00 2e00 4d00 4100 4900 t.i.o.n...M.A.I. │ -00000770: 4e00 0000 2000 6100 6e00 6400 7200 6f00 N... .a.n.d.r.o. │ -00000780: 6900 6400 2e00 6900 6e00 7400 6500 6e00 i.d...i.n.t.e.n. │ -00000790: 7400 2e00 6300 6100 7400 6500 6700 6f00 t...c.a.t.e.g.o. │ -000007a0: 7200 7900 2e00 4c00 4100 5500 4e00 4300 r.y...L.A.U.N.C. │ -000007b0: 4800 4500 5200 0000 1600 2e00 5300 7900 H.E.R.......S.y. │ -000007c0: 7300 7400 6500 6d00 4300 6f00 6e00 7300 s.t.e.m.C.o.n.s. │ -000007d0: 6f00 6c00 6500 4100 6300 7400 6900 7600 o.l.e.A.c.t.i.v. │ -000007e0: 6900 7400 7900 0000 1700 2e00 5200 6500 i.t.y.......R.e. │ -000007f0: 7300 7500 6c00 7400 7300 4300 6f00 6e00 s.u.l.t.s.C.o.n. │ -00000800: 7300 6f00 6c00 6500 4100 6300 7400 6900 s.o.l.e.A.c.t.i. │ -00000810: 7600 6900 7400 7900 0000 1c00 2e00 4d00 v.i.t.y.......M. │ -00000820: 6500 6100 7300 7500 7200 6500 6d00 6500 e.a.s.u.r.e.m.e. │ -00000830: 6e00 7400 4300 7200 6500 6100 7400 6900 n.t.C.r.e.a.t.i. │ -00000840: 6f00 6e00 4100 6300 7400 6900 7600 6900 o.n.A.c.t.i.v.i. │ -00000850: 7400 7900 0000 1e00 2e00 5300 7000 6500 t.y.......S.p.e. │ -00000860: 6500 6400 6f00 6d00 6500 7400 6500 7200 e.d.o.m.e.t.e.r. │ -00000870: 5000 7200 6500 6600 6500 7200 6500 6e00 P.r.e.f.e.r.e.n. │ -00000880: 6300 6500 4100 6300 7400 6900 7600 6900 c.e.A.c.t.i.v.i. │ -00000890: 7400 7900 0000 2300 2e00 4d00 6500 6100 t.y...#...M.e.a. │ -000008a0: 7300 7500 7200 6500 6d00 6500 6e00 7400 s.u.r.e.m.e.n.t. │ -000008b0: 5300 6300 6800 6500 6400 7500 6c00 6500 S.c.h.e.d.u.l.e. │ -000008c0: 4300 6f00 6e00 7300 6f00 6c00 6500 4100 C.o.n.s.o.l.e.A. │ -000008d0: 6300 7400 6900 7600 6900 7400 7900 0000 c.t.i.v.i.t.y... │ -000008e0: 0700 7300 6500 7200 7600 6900 6300 6500 ..s.e.r.v.i.c.e. │ -000008f0: 0000 1500 2e00 4d00 6500 6100 7300 7500 ......M.e.a.s.u. │ -00000900: 7200 6500 6d00 6500 6e00 7400 5300 6300 r.e.m.e.n.t.S.c. │ -00000910: 6800 6500 6400 7500 6c00 6500 7200 0000 h.e.d.u.l.e.r... │ -00000920: 0800 7200 6500 6300 6500 6900 7600 6500 ..r.e.c.e.i.v.e. │ -00000930: 7200 0000 1500 2e00 5700 6100 7400 6300 r.......W.a.t.c. │ -00000940: 6800 6400 6f00 6700 4200 6f00 6f00 7400 h.d.o.g.B.o.o.t. │ -00000950: 5200 6500 6300 6500 6900 7600 6500 7200 R.e.c.e.i.v.e.r. │ -00000960: 0000 2400 6100 6e00 6400 7200 6f00 6900 ..$.a.n.d.r.o.i. │ -00000970: 6400 2e00 6900 6e00 7400 6500 6e00 7400 d...i.n.t.e.n.t. │ -00000980: 2e00 6100 6300 7400 6900 6f00 6e00 2e00 ..a.c.t.i.o.n... │ -00000990: 4200 4f00 4f00 5400 5f00 4300 4f00 4d00 B.O.O.T._.C.O.M. │ -000009a0: 5000 4c00 4500 5400 4500 4400 0000 1c00 P.L.E.T.E.D..... │ -000009b0: 6100 6e00 6400 7200 6f00 6900 6400 2e00 a.n.d.r.o.i.d... │ -000009c0: 6900 6e00 7400 6500 6e00 7400 2e00 6300 i.n.t.e.n.t...c. │ -000009d0: 6100 7400 6500 6700 6f00 7200 7900 2e00 a.t.e.g.o.r.y... │ -000009e0: 4800 4f00 4d00 4500 0000 0600 2e00 4100 H.O.M.E.......A. │ -000009f0: 6200 6f00 7500 7400 0000 0d00 6200 7500 b.o.u.t.....b.u. │ -00000a00: 6900 6c00 6400 7300 6500 7200 7600 6500 i.l.d.s.e.r.v.e. │ -00000a10: 7200 6900 6400 0000 0e00 6600 6400 7200 r.i.d.....f.d.r. │ -00000a20: 6f00 6900 6400 7300 6500 7200 7600 6500 o.i.d.s.e.r.v.e. │ -00000a30: 7200 6900 6400 0000 0600 6600 6400 7200 r.i.d.....f.d.r. │ -00000a40: 6f00 6900 6400 0000 2900 3800 3700 6200 o.i.d...).8.7.b. │ -00000a50: 3000 3400 6300 3600 3900 3200 3100 3000 0.4.c.6.9.2.1.0. │ -00000a60: 6200 6400 6400 3100 3300 6400 3100 3400 b.d.d.1.3.d.1.4. │ -00000a70: 3500 6300 6100 3300 3600 3200 6600 6600 5.c.a.3.6.2.f.f. │ -00000a80: 6600 3500 6400 6100 3300 3800 6600 3800 f.5.d.a.3.8.f.8. │ -00000a90: 6100 3800 3400 3000 3400 2000 0000 2900 a.8.4.0.4. ...). │ -00000aa0: 3900 6300 3400 6100 3500 3200 3900 6600 9.c.4.a.5.2.9.f. │ -00000ab0: 3500 6200 3200 3700 3500 3500 3500 6100 5.b.2.7.5.5.5.a. │ -00000ac0: 6300 6500 6200 3200 6100 3200 6400 3400 c.e.b.2.a.2.d.4. │ -00000ad0: 6500 3200 3300 3400 6100 3300 3000 3900 e.2.3.4.a.3.0.9. │ -00000ae0: 3400 3800 3600 3300 6200 3900 3600 3000 4.8.6.3.b.9.6.0. │ -00000af0: 2000 0000 8001 0800 3000 0000 1c02 0101 .......0....... │ -00000b00: 1b02 0101 0300 0101 7002 0101 0c02 0101 ........p....... │ -00000b10: 0200 0101 0100 0101 0000 0101 1d00 0101 ................ │ -00000b20: 1000 0101 0001 1000 1800 0000 0200 0000 ................ │ -00000b30: ffff ffff 0a00 0000 0b00 0000 0201 1000 ................ │ -00000b40: 6000 0000 0200 0000 ffff ffff ffff ffff `............... │ -00000b50: 0e00 0000 1400 1400 0300 0000 0000 0000 ................ │ -00000b60: 0b00 0000 0100 0000 ffff ffff 0800 0010 ................ │ -00000b70: 1a04 0000 0b00 0000 0000 0000 1000 0000 ................ │ -00000b80: 0800 0003 1000 0000 ffff ffff 0d00 0000 ................ │ -00000b90: 0f00 0000 0800 0003 0f00 0000 0201 1000 ................ │ -00000ba0: 3800 0000 0500 0000 ffff ffff ffff ffff 8............... │ -00000bb0: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000bc0: 0b00 0000 0200 0000 1200 0000 0800 0003 ................ │ -00000bd0: 1200 0000 0301 1000 1800 0000 0500 0000 ................ │ -00000be0: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000bf0: 3800 0000 0600 0000 ffff ffff ffff ffff 8............... │ -00000c00: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000c10: 0b00 0000 0200 0000 1300 0000 0800 0003 ................ │ -00000c20: 1300 0000 0301 1000 1800 0000 0600 0000 ................ │ -00000c30: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000c40: 3800 0000 0700 0000 ffff ffff ffff ffff 8............... │ -00000c50: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000c60: 0b00 0000 0200 0000 1400 0000 0800 0003 ................ │ -00000c70: 1400 0000 0301 1000 1800 0000 0700 0000 ................ │ -00000c80: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000c90: 3800 0000 0800 0000 ffff ffff ffff ffff 8............... │ -00000ca0: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000cb0: 0b00 0000 0200 0000 1500 0000 0800 0003 ................ │ -00000cc0: 1500 0000 0301 1000 1800 0000 0800 0000 ................ │ -00000cd0: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000ce0: 3800 0000 0900 0000 ffff ffff ffff ffff 8............... │ -00000cf0: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000d00: 0b00 0000 0200 0000 1600 0000 0800 0003 ................ │ -00000d10: 1600 0000 0301 1000 1800 0000 0900 0000 ................ │ -00000d20: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000d30: 3800 0000 0a00 0000 ffff ffff ffff ffff 8............... │ -00000d40: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000d50: 0b00 0000 0200 0000 1700 0000 0800 0003 ................ │ -00000d60: 1700 0000 0301 1000 1800 0000 0a00 0000 ................ │ -00000d70: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000d80: 3800 0000 0b00 0000 ffff ffff ffff ffff 8............... │ -00000d90: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000da0: 0b00 0000 0200 0000 1800 0000 0800 0003 ................ │ -00000db0: 1800 0000 0301 1000 1800 0000 0b00 0000 ................ │ -00000dc0: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000dd0: 3800 0000 0c00 0000 ffff ffff ffff ffff 8............... │ -00000de0: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000df0: 0b00 0000 0200 0000 1900 0000 0800 0003 ................ │ -00000e00: 1900 0000 0301 1000 1800 0000 0c00 0000 ................ │ -00000e10: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000e20: 3800 0000 0d00 0000 ffff ffff ffff ffff 8............... │ -00000e30: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000e40: 0b00 0000 0200 0000 1a00 0000 0800 0003 ................ │ -00000e50: 1a00 0000 0301 1000 1800 0000 0d00 0000 ................ │ -00000e60: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000e70: 3800 0000 0e00 0000 ffff ffff ffff ffff 8............... │ -00000e80: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000e90: 0b00 0000 0200 0000 1b00 0000 0800 0003 ................ │ -00000ea0: 1b00 0000 0301 1000 1800 0000 0e00 0000 ................ │ -00000eb0: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000ec0: 3800 0000 0f00 0000 ffff ffff ffff ffff 8............... │ -00000ed0: 1100 0000 1400 1400 0100 0000 0000 0000 ................ │ -00000ee0: 0b00 0000 0200 0000 1c00 0000 0800 0003 ................ │ -00000ef0: 1c00 0000 0301 1000 1800 0000 0f00 0000 ................ │ -00000f00: ffff ffff ffff ffff 1100 0000 0201 1000 ................ │ -00000f10: 4c00 0000 1000 0000 ffff ffff ffff ffff L............... │ -00000f20: 1d00 0000 1400 1400 0200 0000 0000 0000 ................ │ -00000f30: 0b00 0000 0400 0000 ffff ffff 0800 0010 ................ │ -00000f40: 0900 0000 0b00 0000 0300 0000 ffff ffff ................ │ -00000f50: 0800 0010 0900 0000 0301 1000 1800 0000 ................ │ -00000f60: 1000 0000 ffff ffff ffff ffff 1d00 0000 ................ │ -00000f70: 0201 1000 6000 0000 1200 0000 ffff ffff ....`........... │ -00000f80: ffff ffff 1e00 0000 1400 1400 0300 0000 ................ │ -00000f90: 0000 0000 0b00 0000 0700 0000 ffff ffff ................ │ -00000fa0: 0800 0001 0c00 0301 0b00 0000 0600 0000 ................ │ -00000fb0: ffff ffff 0800 0001 0000 077f 0b00 0000 ................ │ -00000fc0: 0500 0000 ffff ffff 0800 0001 0900 027f ................ │ -00000fd0: 0201 1000 7400 0000 1700 0000 ffff ffff ....t........... │ -00000fe0: ffff ffff 1f00 0000 1400 1400 0400 0000 ................ │ -00000ff0: 0000 0000 0b00 0000 0700 0000 ffff ffff ................ │ -00001000: 0800 0001 0d00 0301 0b00 0000 0600 0000 ................ │ -00001010: ffff ffff 0800 0001 0000 077f 0b00 0000 ................ │ -00001020: 0200 0000 2000 0000 0800 0003 2000 0000 .... ....... ... │ -00001030: 0b00 0000 0800 0000 ffff ffff 0800 0010 ................ │ -00001040: 0200 0000 0201 1000 2400 0000 1c00 0000 ........$....... │ -00001050: ffff ffff ffff ffff 2100 0000 1400 1400 ........!....... │ -00001060: 0000 0000 0000 0000 0201 1000 3800 0000 ............8... │ -00001070: 1d00 0000 ffff ffff ffff ffff 2200 0000 ............"... │ -00001080: 1400 1400 0100 0000 0000 0000 0b00 0000 ................ │ -00001090: 0200 0000 2300 0000 0800 0003 2300 0000 ....#.......#... │ -000010a0: 0301 1000 1800 0000 1d00 0000 ffff ffff ................ │ -000010b0: ffff ffff 2200 0000 0201 1000 3800 0000 ....".......8... │ -000010c0: 1e00 0000 ffff ffff ffff ffff 2400 0000 ............$... │ -000010d0: 1400 1400 0100 0000 0000 0000 0b00 0000 ................ │ -000010e0: 0200 0000 2500 0000 0800 0003 2500 0000 ....%.......%... │ -000010f0: 0301 1000 1800 0000 1e00 0000 ffff ffff ................ │ -00001100: ffff ffff 2400 0000 0301 1000 1800 0000 ....$........... │ -00001110: 1f00 0000 ffff ffff ffff ffff 2100 0000 ............!... │ -00001120: 0301 1000 1800 0000 2000 0000 ffff ffff ........ ....... │ -00001130: ffff ffff 1f00 0000 0201 1000 7400 0000 ............t... │ -00001140: 2100 0000 ffff ffff ffff ffff 1f00 0000 !............... │ -00001150: 1400 1400 0400 0000 0000 0000 0b00 0000 ................ │ -00001160: 0700 0000 ffff ffff 0800 0001 0d00 0301 ................ │ -00001170: 0b00 0000 0600 0000 ffff ffff 0800 0001 ................ │ -00001180: 0000 077f 0b00 0000 0200 0000 2600 0000 ............&... │ -00001190: 0800 0003 2600 0000 0b00 0000 0800 0000 ....&........... │ -000011a0: ffff ffff 0800 0010 0200 0000 0201 1000 ................ │ -000011b0: 2400 0000 2600 0000 ffff ffff ffff ffff $...&........... │ -000011c0: 2100 0000 1400 1400 0000 0000 0000 0000 !............... │ -000011d0: 0201 1000 3800 0000 2700 0000 ffff ffff ....8...'....... │ -000011e0: ffff ffff 2200 0000 1400 1400 0100 0000 ...."........... │ -000011f0: 0000 0000 0b00 0000 0200 0000 2700 0000 ............'... │ -00001200: 0800 0003 2700 0000 0301 1000 1800 0000 ....'........... │ -00001210: 2700 0000 ffff ffff ffff ffff 2200 0000 '..........."... │ -00001220: 0201 1000 3800 0000 2800 0000 ffff ffff ....8...(....... │ -00001230: ffff ffff 2400 0000 1400 1400 0100 0000 ....$........... │ -00001240: 0000 0000 0b00 0000 0200 0000 2800 0000 ............(... │ -00001250: 0800 0003 2800 0000 0301 1000 1800 0000 ....(........... │ -00001260: 2800 0000 ffff ffff ffff ffff 2400 0000 (...........$... │ -00001270: 0301 1000 1800 0000 2900 0000 ffff ffff ........)....... │ -00001280: ffff ffff 2100 0000 0301 1000 1800 0000 ....!........... │ -00001290: 2a00 0000 ffff ffff ffff ffff 1f00 0000 *............... │ -000012a0: 0201 1000 6000 0000 2b00 0000 ffff ffff ....`...+....... │ -000012b0: ffff ffff 1f00 0000 1400 1400 0300 0000 ................ │ -000012c0: 0000 0000 0b00 0000 0700 0000 ffff ffff ................ │ -000012d0: 0800 0001 0d00 0301 0b00 0000 0200 0000 ................ │ -000012e0: 2900 0000 0800 0003 2900 0000 0b00 0000 ).......)....... │ -000012f0: 0800 0000 ffff ffff 0800 0010 0200 0000 ................ │ -00001300: 0301 1000 1800 0000 2f00 0000 ffff ffff ......../....... │ -00001310: ffff ffff 1f00 0000 0201 1000 6000 0000 ............`... │ -00001320: 3000 0000 ffff ffff ffff ffff 1f00 0000 0............... │ -00001330: 1400 1400 0300 0000 0000 0000 0b00 0000 ................ │ -00001340: 0700 0000 ffff ffff 0800 0001 0d00 0301 ................ │ -00001350: 0b00 0000 0200 0000 2a00 0000 0800 0003 ........*....... │ -00001360: 2a00 0000 0b00 0000 0800 0000 ffff ffff *............... │ -00001370: 0800 0010 0200 0000 0301 1000 1800 0000 ................ │ -00001380: 3400 0000 ffff ffff ffff ffff 1f00 0000 4............... │ -00001390: 0201 1000 6000 0000 3500 0000 ffff ffff ....`...5....... │ -000013a0: ffff ffff 1f00 0000 1400 1400 0300 0000 ................ │ -000013b0: 0000 0000 0b00 0000 0700 0000 ffff ffff ................ │ -000013c0: 0800 0001 0d00 0301 0b00 0000 0200 0000 ................ │ -000013d0: 2b00 0000 0800 0003 2b00 0000 0b00 0000 +.......+....... │ -000013e0: 0800 0000 ffff ffff 0800 0010 0200 0000 ................ │ -000013f0: 0301 1000 1800 0000 3900 0000 ffff ffff ........9....... │ -00001400: ffff ffff 1f00 0000 0201 1000 6000 0000 ............`... │ -00001410: 3a00 0000 ffff ffff ffff ffff 1f00 0000 :............... │ -00001420: 1400 1400 0300 0000 0000 0000 0b00 0000 ................ │ -00001430: 0700 0000 ffff ffff 0800 0001 0d00 0301 ................ │ -00001440: 0b00 0000 0200 0000 2c00 0000 0800 0003 ........,....... │ -00001450: 2c00 0000 0b00 0000 0800 0000 ffff ffff ,............... │ -00001460: 0800 0010 0200 0000 0301 1000 1800 0000 ................ │ -00001470: 3e00 0000 ffff ffff ffff ffff 1f00 0000 >............... │ -00001480: 0201 1000 6000 0000 3f00 0000 ffff ffff ....`...?....... │ -00001490: ffff ffff 1f00 0000 1400 1400 0300 0000 ................ │ -000014a0: 0000 0000 0b00 0000 0700 0000 ffff ffff ................ │ -000014b0: 0800 0001 0d00 0301 0b00 0000 0200 0000 ................ │ -000014c0: 2d00 0000 0800 0003 2d00 0000 0b00 0000 -.......-....... │ -000014d0: 0800 0000 ffff ffff 0800 0010 0200 0000 ................ │ -000014e0: 0301 1000 1800 0000 4300 0000 ffff ffff ........C....... │ -000014f0: ffff ffff 1f00 0000 0201 1000 4c00 0000 ............L... │ -00001500: 4400 0000 ffff ffff ffff ffff 2e00 0000 D............... │ -00001510: 1400 1400 0200 0000 0000 0000 0b00 0000 ................ │ -00001520: 0200 0000 2f00 0000 0800 0003 2f00 0000 ..../......./... │ -00001530: 0b00 0000 0900 0000 ffff ffff 0800 0012 ................ │ -00001540: 0000 0000 0301 1000 1800 0000 4700 0000 ............G... │ -00001550: ffff ffff ffff ffff 2e00 0000 0201 1000 ................ │ -00001560: 3800 0000 4800 0000 ffff ffff ffff ffff 8...H........... │ -00001570: 3000 0000 1400 1400 0100 0000 0000 0000 0............... │ -00001580: 0b00 0000 0200 0000 3100 0000 0800 0003 ........1....... │ -00001590: 3100 0000 0201 1000 2400 0000 4900 0000 1.......$...I... │ -000015a0: ffff ffff ffff ffff 2100 0000 1400 1400 ........!....... │ -000015b0: 0000 0000 0000 0000 0201 1000 3800 0000 ............8... │ -000015c0: 4a00 0000 ffff ffff ffff ffff 2200 0000 J..........."... │ -000015d0: 1400 1400 0100 0000 0000 0000 0b00 0000 ................ │ -000015e0: 0200 0000 3200 0000 0800 0003 3200 0000 ....2.......2... │ -000015f0: 0301 1000 1800 0000 4a00 0000 ffff ffff ........J....... │ -00001600: ffff ffff 2200 0000 0201 1000 3800 0000 ....".......8... │ -00001610: 4b00 0000 ffff ffff ffff ffff 2400 0000 K...........$... │ -00001620: 1400 1400 0100 0000 0000 0000 0b00 0000 ................ │ -00001630: 0200 0000 3300 0000 0800 0003 3300 0000 ....3.......3... │ -00001640: 0301 1000 1800 0000 4b00 0000 ffff ffff ........K....... │ -00001650: ffff ffff 2400 0000 0301 1000 1800 0000 ....$........... │ -00001660: 4c00 0000 ffff ffff ffff ffff 2100 0000 L...........!... │ -00001670: 0301 1000 1800 0000 4d00 0000 ffff ffff ........M....... │ -00001680: ffff ffff 3000 0000 0201 1000 3800 0000 ....0.......8... │ -00001690: 4e00 0000 ffff ffff ffff ffff 1f00 0000 N............... │ -000016a0: 1400 1400 0100 0000 0000 0000 0b00 0000 ................ │ -000016b0: 0200 0000 3400 0000 0800 0003 3400 0000 ....4.......4... │ -000016c0: 0301 1000 1800 0000 4e00 0000 ffff ffff ........N....... │ -000016d0: ffff ffff 1f00 0000 0301 1000 1800 0000 ................ │ -000016e0: 4f00 0000 ffff ffff ffff ffff 1e00 0000 O............... │ -000016f0: 0201 1000 4c00 0000 5000 0000 ffff ffff ....L...P....... │ -00001700: ffff ffff 3700 0000 1400 1400 0200 0000 ....7........... │ -00001710: 0000 0000 ffff ffff 3500 0000 3800 0000 ........5...8... │ -00001720: 0800 0003 3800 0000 ffff ffff 3600 0000 ....8.......6... │ -00001730: 3900 0000 0800 0003 3900 0000 0301 1000 9.......9....... │ -00001740: 1800 0000 5200 0000 ffff ffff ffff ffff ....R........... │ -00001750: 3700 0000 0301 1000 1800 0000 5200 0000 7...........R... │ -00001760: ffff ffff ffff ffff 0e00 0000 0101 1000 ................ │ -00001770: 1800 0000 5200 0000 ffff ffff 0a00 0000 ....R........... │ -00001780: 0b00 0000 .... │ +00000060: 8a01 0000 be01 0000 d201 0000 ee01 0000 ................ │ +00000070: fa01 0000 0202 0000 1002 0000 3202 0000 ............2... │ +00000080: 6c02 0000 ae02 0000 f602 0000 4003 0000 l...........@... │ +00000090: 9603 0000 ea03 0000 3c04 0000 8804 0000 ........<....... │ +000000a0: cc04 0000 0805 0000 5e05 0000 7205 0000 ........^...r... │ +000000b0: 8c05 0000 a005 0000 c205 0000 e005 0000 ................ │ +000000c0: f005 0000 2a06 0000 3e06 0000 8006 0000 ....*...>....... │ +000000d0: ae06 0000 e606 0000 2a07 0000 5a07 0000 ........*...Z... │ +000000e0: 8c07 0000 c807 0000 0808 0000 5208 0000 ............R... │ +000000f0: 6408 0000 9208 0000 a608 0000 d408 0000 d............... │ +00000100: 2009 0000 5c09 0000 0b00 7600 6500 7200 ...\.....v.e.r. │ +00000110: 7300 6900 6f00 6e00 4e00 6100 6d00 6500 s.i.o.n.N.a.m.e. │ +00000120: 0000 0b00 7600 6500 7200 7300 6900 6f00 ....v.e.r.s.i.o. │ +00000130: 6e00 4300 6f00 6400 6500 0000 0400 6e00 n.C.o.d.e.....n. │ +00000140: 6100 6d00 6500 0000 1000 7400 6100 7200 a.m.e.....t.a.r. │ +00000150: 6700 6500 7400 5300 6400 6b00 5600 6500 g.e.t.S.d.k.V.e. │ +00000160: 7200 7300 6900 6f00 6e00 0000 0d00 6d00 r.s.i.o.n.....m. │ +00000170: 6900 6e00 5300 6400 6b00 5600 6500 7200 i.n.S.d.k.V.e.r. │ +00000180: 7300 6900 6f00 6e00 0000 0400 6900 6300 s.i.o.n.....i.c. │ +00000190: 6f00 6e00 0000 0500 6c00 6100 6200 6500 o.n.....l.a.b.e. │ +000001a0: 6c00 0000 0500 7400 6800 6500 6d00 6500 l.....t.h.e.m.e. │ +000001b0: 0000 0a00 6c00 6100 7500 6e00 6300 6800 ....l.a.u.n.c.h. │ +000001c0: 4d00 6f00 6400 6500 0000 0800 6500 7800 M.o.d.e.....e.x. │ +000001d0: 7000 6f00 7200 7400 6500 6400 0000 0700 p.o.r.t.e.d..... │ +000001e0: 6100 6e00 6400 7200 6f00 6900 6400 0000 a.n.d.r.o.i.d... │ +000001f0: 2a00 6800 7400 7400 7000 3a00 2f00 2f00 *.h.t.t.p.:././. │ +00000200: 7300 6300 6800 6500 6d00 6100 7300 2e00 s.c.h.e.m.a.s... │ +00000210: 6100 6e00 6400 7200 6f00 6900 6400 2e00 a.n.d.r.o.i.d... │ +00000220: 6300 6f00 6d00 2f00 6100 7000 6b00 2f00 c.o.m./.a.p.k./. │ +00000230: 7200 6500 7300 2f00 6100 6e00 6400 7200 r.e.s./.a.n.d.r. │ +00000240: 6f00 6900 6400 0000 0000 0000 0700 7000 o.i.d.........p. │ +00000250: 6100 6300 6b00 6100 6700 6500 0000 1800 a.c.k.a.g.e..... │ +00000260: 7000 6c00 6100 7400 6600 6f00 7200 6d00 p.l.a.t.f.o.r.m. │ +00000270: 4200 7500 6900 6c00 6400 5600 6500 7200 B.u.i.l.d.V.e.r. │ +00000280: 7300 6900 6f00 6e00 4300 6f00 6400 6500 s.i.o.n.C.o.d.e. │ +00000290: 0000 1800 7000 6c00 6100 7400 6600 6f00 ....p.l.a.t.f.o. │ +000002a0: 7200 6d00 4200 7500 6900 6c00 6400 5600 r.m.B.u.i.l.d.V. │ +000002b0: 6500 7200 7300 6900 6f00 6e00 4e00 6100 e.r.s.i.o.n.N.a. │ +000002c0: 6d00 6500 0000 0800 6d00 6100 6e00 6900 m.e.....m.a.n.i. │ +000002d0: 6600 6500 7300 7400 0000 0c00 6300 6f00 f.e.s.t.....c.o. │ +000002e0: 6d00 2e00 6d00 6f00 6200 6900 7000 6500 m...m.o.b.i.p.e. │ +000002f0: 7200 6600 0000 0400 7600 3200 2e00 3500 r.f.....v.2...5. │ +00000300: 0000 0200 3100 3000 0000 0500 3200 2e00 ....1.0.....2... │ +00000310: 3300 2e00 3300 0000 0f00 7500 7300 6500 3...3.....u.s.e. │ +00000320: 7300 2d00 7000 6500 7200 6d00 6900 7300 s.-.p.e.r.m.i.s. │ +00000330: 7300 6900 6f00 6e00 0000 1b00 6100 6e00 s.i.o.n.....a.n. │ +00000340: 6400 7200 6f00 6900 6400 2e00 7000 6500 d.r.o.i.d...p.e. │ +00000350: 7200 6d00 6900 7300 7300 6900 6f00 6e00 r.m.i.s.s.i.o.n. │ +00000360: 2e00 4900 4e00 5400 4500 5200 4e00 4500 ..I.N.T.E.R.N.E. │ +00000370: 5400 0000 1f00 6100 6e00 6400 7200 6f00 T.....a.n.d.r.o. │ +00000380: 6900 6400 2e00 7000 6500 7200 6d00 6900 i.d...p.e.r.m.i. │ +00000390: 7300 7300 6900 6f00 6e00 2e00 4700 4500 s.s.i.o.n...G.E. │ +000003a0: 5400 5f00 4100 4300 4300 4f00 5500 4e00 T._.A.C.C.O.U.N. │ +000003b0: 5400 5300 0000 2200 6100 6e00 6400 7200 T.S...".a.n.d.r. │ +000003c0: 6f00 6900 6400 2e00 7000 6500 7200 6d00 o.i.d...p.e.r.m. │ +000003d0: 6900 7300 7300 6900 6f00 6e00 2e00 5500 i.s.s.i.o.n...U. │ +000003e0: 5300 4500 5f00 4300 5200 4500 4400 4500 S.E._.C.R.E.D.E. │ +000003f0: 4e00 5400 4900 4100 4c00 5300 0000 2300 N.T.I.A.L.S...#. │ +00000400: 6100 6e00 6400 7200 6f00 6900 6400 2e00 a.n.d.r.o.i.d... │ +00000410: 7000 6500 7200 6d00 6900 7300 7300 6900 p.e.r.m.i.s.s.i. │ +00000420: 6f00 6e00 2e00 5200 4500 4100 4400 5f00 o.n...R.E.A.D._. │ +00000430: 5000 4800 4f00 4e00 4500 5f00 5300 5400 P.H.O.N.E._.S.T. │ +00000440: 4100 5400 4500 0000 2900 6100 6e00 6400 A.T.E...).a.n.d. │ +00000450: 7200 6f00 6900 6400 2e00 7000 6500 7200 r.o.i.d...p.e.r. │ +00000460: 6d00 6900 7300 7300 6900 6f00 6e00 2e00 m.i.s.s.i.o.n... │ +00000470: 4100 4300 4300 4500 5300 5300 5f00 4300 A.C.C.E.S.S._.C. │ +00000480: 4f00 4100 5200 5300 4500 5f00 4c00 4f00 O.A.R.S.E._.L.O. │ +00000490: 4300 4100 5400 4900 4f00 4e00 0000 2800 C.A.T.I.O.N...(. │ +000004a0: 6100 6e00 6400 7200 6f00 6900 6400 2e00 a.n.d.r.o.i.d... │ +000004b0: 7000 6500 7200 6d00 6900 7300 7300 6900 p.e.r.m.i.s.s.i. │ +000004c0: 6f00 6e00 2e00 4100 4300 4300 4500 5300 o.n...A.C.C.E.S. │ +000004d0: 5300 5f00 4300 4f00 4100 5200 5300 4500 S._.C.O.A.R.S.E. │ +000004e0: 5f00 5500 5000 4400 4100 5400 4500 5300 _.U.P.D.A.T.E.S. │ +000004f0: 0000 2700 6100 6e00 6400 7200 6f00 6900 ..'.a.n.d.r.o.i. │ +00000500: 6400 2e00 7000 6500 7200 6d00 6900 7300 d...p.e.r.m.i.s. │ +00000510: 7300 6900 6f00 6e00 2e00 4100 4300 4300 s.i.o.n...A.C.C. │ +00000520: 4500 5300 5300 5f00 4e00 4500 5400 5700 E.S.S._.N.E.T.W. │ +00000530: 4f00 5200 4b00 5f00 5300 5400 4100 5400 O.R.K._.S.T.A.T. │ +00000540: 4500 0000 2400 6100 6e00 6400 7200 6f00 E...$.a.n.d.r.o. │ +00000550: 6900 6400 2e00 7000 6500 7200 6d00 6900 i.d...p.e.r.m.i. │ +00000560: 7300 7300 6900 6f00 6e00 2e00 4100 4300 s.s.i.o.n...A.C. │ +00000570: 4300 4500 5300 5300 5f00 5700 4900 4600 C.E.S.S._.W.I.F. │ +00000580: 4900 5f00 5300 5400 4100 5400 4500 0000 I._.S.T.A.T.E... │ +00000590: 2000 6100 6e00 6400 7200 6f00 6900 6400 .a.n.d.r.o.i.d. │ +000005a0: 2e00 7000 6500 7200 6d00 6900 7300 7300 ..p.e.r.m.i.s.s. │ +000005b0: 6900 6f00 6e00 2e00 4200 4100 5400 5400 i.o.n...B.A.T.T. │ +000005c0: 4500 5200 5900 5f00 5300 5400 4100 5400 E.R.Y._.S.T.A.T. │ +000005d0: 5300 0000 1c00 6100 6e00 6400 7200 6f00 S.....a.n.d.r.o. │ +000005e0: 6900 6400 2e00 7000 6500 7200 6d00 6900 i.d...p.e.r.m.i. │ +000005f0: 7300 7300 6900 6f00 6e00 2e00 5700 4100 s.s.i.o.n...W.A. │ +00000600: 4b00 4500 5f00 4c00 4f00 4300 4b00 0000 K.E._.L.O.C.K... │ +00000610: 2900 6100 6e00 6400 7200 6f00 6900 6400 ).a.n.d.r.o.i.d. │ +00000620: 2e00 7000 6500 7200 6d00 6900 7300 7300 ..p.e.r.m.i.s.s. │ +00000630: 6900 6f00 6e00 2e00 5200 4500 4300 4500 i.o.n...R.E.C.E. │ +00000640: 4900 5600 4500 5f00 4200 4f00 4f00 5400 I.V.E._.B.O.O.T. │ +00000650: 5f00 4300 4f00 4d00 5000 4c00 4500 5400 _.C.O.M.P.L.E.T. │ +00000660: 4500 4400 0000 0800 7500 7300 6500 7300 E.D.....u.s.e.s. │ +00000670: 2d00 7300 6400 6b00 0000 0b00 6100 7000 -.s.d.k.....a.p. │ +00000680: 7000 6c00 6900 6300 6100 7400 6900 6f00 p.l.i.c.a.t.i.o. │ +00000690: 6e00 0000 0800 6100 6300 7400 6900 7600 n.....a.c.t.i.v. │ +000006a0: 6900 7400 7900 0000 0f00 2e00 5300 7000 i.t.y.......S.p. │ +000006b0: 6500 6500 6400 6f00 6d00 6500 7400 6500 e.e.d.o.m.e.t.e. │ +000006c0: 7200 4100 7000 7000 0000 0d00 6900 6e00 r.A.p.p.....i.n. │ +000006d0: 7400 6500 6e00 7400 2d00 6600 6900 6c00 t.e.n.t.-.f.i.l. │ +000006e0: 7400 6500 7200 0000 0600 6100 6300 7400 t.e.r.....a.c.t. │ +000006f0: 6900 6f00 6e00 0000 1b00 6300 6f00 6d00 i.o.n.....c.o.m. │ +00000700: 2e00 6d00 6f00 6200 6900 7000 6500 7200 ..m.o.b.i.p.e.r. │ +00000710: 6600 2e00 5300 7000 6500 6500 6400 6f00 f...S.p.e.e.d.o. │ +00000720: 6d00 6500 7400 6500 7200 4100 7000 7000 m.e.t.e.r.A.p.p. │ +00000730: 0000 0800 6300 6100 7400 6500 6700 6f00 ....c.a.t.e.g.o. │ +00000740: 7200 7900 0000 1f00 6100 6e00 6400 7200 r.y.....a.n.d.r. │ +00000750: 6f00 6900 6400 2e00 6900 6e00 7400 6500 o.i.d...i.n.t.e. │ +00000760: 6e00 7400 2e00 6300 6100 7400 6500 6700 n.t...c.a.t.e.g. │ +00000770: 6f00 7200 7900 2e00 4400 4500 4600 4100 o.r.y...D.E.F.A. │ +00000780: 5500 4c00 5400 0000 1500 2e00 5300 7000 U.L.T.......S.p. │ +00000790: 6c00 6100 7300 6800 5300 6300 7200 6500 l.a.s.h.S.c.r.e. │ +000007a0: 6500 6e00 4100 6300 7400 6900 7600 6900 e.n.A.c.t.i.v.i. │ +000007b0: 7400 7900 0000 1a00 6100 6e00 6400 7200 t.y.....a.n.d.r. │ +000007c0: 6f00 6900 6400 2e00 6900 6e00 7400 6500 o.i.d...i.n.t.e. │ +000007d0: 6e00 7400 2e00 6100 6300 7400 6900 6f00 n.t...a.c.t.i.o. │ +000007e0: 6e00 2e00 4d00 4100 4900 4e00 0000 2000 n...M.A.I.N... . │ +000007f0: 6100 6e00 6400 7200 6f00 6900 6400 2e00 a.n.d.r.o.i.d... │ +00000800: 6900 6e00 7400 6500 6e00 7400 2e00 6300 i.n.t.e.n.t...c. │ +00000810: 6100 7400 6500 6700 6f00 7200 7900 2e00 a.t.e.g.o.r.y... │ +00000820: 4c00 4100 5500 4e00 4300 4800 4500 5200 L.A.U.N.C.H.E.R. │ +00000830: 0000 1600 2e00 5300 7900 7300 7400 6500 ......S.y.s.t.e. │ +00000840: 6d00 4300 6f00 6e00 7300 6f00 6c00 6500 m.C.o.n.s.o.l.e. │ +00000850: 4100 6300 7400 6900 7600 6900 7400 7900 A.c.t.i.v.i.t.y. │ +00000860: 0000 1700 2e00 5200 6500 7300 7500 6c00 ......R.e.s.u.l. │ +00000870: 7400 7300 4300 6f00 6e00 7300 6f00 6c00 t.s.C.o.n.s.o.l. │ +00000880: 6500 4100 6300 7400 6900 7600 6900 7400 e.A.c.t.i.v.i.t. │ +00000890: 7900 0000 1c00 2e00 4d00 6500 6100 7300 y.......M.e.a.s. │ +000008a0: 7500 7200 6500 6d00 6500 6e00 7400 4300 u.r.e.m.e.n.t.C. │ +000008b0: 7200 6500 6100 7400 6900 6f00 6e00 4100 r.e.a.t.i.o.n.A. │ +000008c0: 6300 7400 6900 7600 6900 7400 7900 0000 c.t.i.v.i.t.y... │ +000008d0: 1e00 2e00 5300 7000 6500 6500 6400 6f00 ....S.p.e.e.d.o. │ +000008e0: 6d00 6500 7400 6500 7200 5000 7200 6500 m.e.t.e.r.P.r.e. │ +000008f0: 6600 6500 7200 6500 6e00 6300 6500 4100 f.e.r.e.n.c.e.A. │ +00000900: 6300 7400 6900 7600 6900 7400 7900 0000 c.t.i.v.i.t.y... │ +00000910: 2300 2e00 4d00 6500 6100 7300 7500 7200 #...M.e.a.s.u.r. │ +00000920: 6500 6d00 6500 6e00 7400 5300 6300 6800 e.m.e.n.t.S.c.h. │ +00000930: 6500 6400 7500 6c00 6500 4300 6f00 6e00 e.d.u.l.e.C.o.n. │ +00000940: 7300 6f00 6c00 6500 4100 6300 7400 6900 s.o.l.e.A.c.t.i. │ +00000950: 7600 6900 7400 7900 0000 0700 7300 6500 v.i.t.y.....s.e. │ +00000960: 7200 7600 6900 6300 6500 0000 1500 2e00 r.v.i.c.e....... │ +00000970: 4d00 6500 6100 7300 7500 7200 6500 6d00 M.e.a.s.u.r.e.m. │ +00000980: 6500 6e00 7400 5300 6300 6800 6500 6400 e.n.t.S.c.h.e.d. │ +00000990: 7500 6c00 6500 7200 0000 0800 7200 6500 u.l.e.r.....r.e. │ +000009a0: 6300 6500 6900 7600 6500 7200 0000 1500 c.e.i.v.e.r..... │ +000009b0: 2e00 5700 6100 7400 6300 6800 6400 6f00 ..W.a.t.c.h.d.o. │ +000009c0: 6700 4200 6f00 6f00 7400 5200 6500 6300 g.B.o.o.t.R.e.c. │ +000009d0: 6500 6900 7600 6500 7200 0000 2400 6100 e.i.v.e.r...$.a. │ +000009e0: 6e00 6400 7200 6f00 6900 6400 2e00 6900 n.d.r.o.i.d...i. │ +000009f0: 6e00 7400 6500 6e00 7400 2e00 6100 6300 n.t.e.n.t...a.c. │ +00000a00: 7400 6900 6f00 6e00 2e00 4200 4f00 4f00 t.i.o.n...B.O.O. │ +00000a10: 5400 5f00 4300 4f00 4d00 5000 4c00 4500 T._.C.O.M.P.L.E. │ +00000a20: 5400 4500 4400 0000 1c00 6100 6e00 6400 T.E.D.....a.n.d. │ +00000a30: 7200 6f00 6900 6400 2e00 6900 6e00 7400 r.o.i.d...i.n.t. │ +00000a40: 6500 6e00 7400 2e00 6300 6100 7400 6500 e.n.t...c.a.t.e. │ +00000a50: 6700 6f00 7200 7900 2e00 4800 4f00 4d00 g.o.r.y...H.O.M. │ +00000a60: 4500 0000 0600 2e00 4100 6200 6f00 7500 E.......A.b.o.u. │ +00000a70: 7400 0000 8001 0800 3000 0000 1c02 0101 t.......0....... │ +00000a80: 1b02 0101 0300 0101 7002 0101 0c02 0101 ........p....... │ +00000a90: 0200 0101 0100 0101 0000 0101 1d00 0101 ................ │ +00000aa0: 1000 0101 0001 1000 1800 0000 0200 0000 ................ │ +00000ab0: ffff ffff 0a00 0000 0b00 0000 0201 1000 ................ │ +00000ac0: 8800 0000 0200 0000 ffff ffff ffff ffff ................ │ +00000ad0: 1000 0000 1400 1400 0500 0000 0000 0000 ................ │ +00000ae0: 0b00 0000 0100 0000 ffff ffff 0800 0010 ................ │ +00000af0: 1a04 0000 0b00 0000 0000 0000 1200 0000 ................ │ +00000b00: 0800 0003 1200 0000 ffff ffff 0d00 0000 ................ │ +00000b10: 1100 0000 0800 0003 1100 0000 ffff ffff ................ │ +00000b20: 0e00 0000 1300 0000 0800 0010 0a00 0000 ................ │ +00000b30: ffff ffff 0f00 0000 1400 0000 0800 0003 ................ │ +00000b40: 1400 0000 0201 1000 3800 0000 0500 0000 ........8....... │ +00000b50: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000b60: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000b70: 1600 0000 0800 0003 1600 0000 0301 1000 ................ │ +00000b80: 1800 0000 0500 0000 ffff ffff ffff ffff ................ │ +00000b90: 1500 0000 0201 1000 3800 0000 0600 0000 ........8....... │ +00000ba0: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000bb0: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000bc0: 1700 0000 0800 0003 1700 0000 0301 1000 ................ │ +00000bd0: 1800 0000 0600 0000 ffff ffff ffff ffff ................ │ +00000be0: 1500 0000 0201 1000 3800 0000 0700 0000 ........8....... │ +00000bf0: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000c00: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000c10: 1800 0000 0800 0003 1800 0000 0301 1000 ................ │ +00000c20: 1800 0000 0700 0000 ffff ffff ffff ffff ................ │ +00000c30: 1500 0000 0201 1000 3800 0000 0800 0000 ........8....... │ +00000c40: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000c50: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000c60: 1900 0000 0800 0003 1900 0000 0301 1000 ................ │ +00000c70: 1800 0000 0800 0000 ffff ffff ffff ffff ................ │ +00000c80: 1500 0000 0201 1000 3800 0000 0900 0000 ........8....... │ +00000c90: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000ca0: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000cb0: 1a00 0000 0800 0003 1a00 0000 0301 1000 ................ │ +00000cc0: 1800 0000 0900 0000 ffff ffff ffff ffff ................ │ +00000cd0: 1500 0000 0201 1000 3800 0000 0a00 0000 ........8....... │ +00000ce0: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000cf0: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000d00: 1b00 0000 0800 0003 1b00 0000 0301 1000 ................ │ +00000d10: 1800 0000 0a00 0000 ffff ffff ffff ffff ................ │ +00000d20: 1500 0000 0201 1000 3800 0000 0b00 0000 ........8....... │ +00000d30: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000d40: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000d50: 1c00 0000 0800 0003 1c00 0000 0301 1000 ................ │ +00000d60: 1800 0000 0b00 0000 ffff ffff ffff ffff ................ │ +00000d70: 1500 0000 0201 1000 3800 0000 0c00 0000 ........8....... │ +00000d80: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000d90: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000da0: 1d00 0000 0800 0003 1d00 0000 0301 1000 ................ │ +00000db0: 1800 0000 0c00 0000 ffff ffff ffff ffff ................ │ +00000dc0: 1500 0000 0201 1000 3800 0000 0d00 0000 ........8....... │ +00000dd0: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000de0: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000df0: 1e00 0000 0800 0003 1e00 0000 0301 1000 ................ │ +00000e00: 1800 0000 0d00 0000 ffff ffff ffff ffff ................ │ +00000e10: 1500 0000 0201 1000 3800 0000 0e00 0000 ........8....... │ +00000e20: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000e30: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000e40: 1f00 0000 0800 0003 1f00 0000 0301 1000 ................ │ +00000e50: 1800 0000 0e00 0000 ffff ffff ffff ffff ................ │ +00000e60: 1500 0000 0201 1000 3800 0000 0f00 0000 ........8....... │ +00000e70: ffff ffff ffff ffff 1500 0000 1400 1400 ................ │ +00000e80: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00000e90: 2000 0000 0800 0003 2000 0000 0301 1000 ....... ....... │ +00000ea0: 1800 0000 0f00 0000 ffff ffff ffff ffff ................ │ +00000eb0: 1500 0000 0201 1000 4c00 0000 1000 0000 ........L....... │ +00000ec0: ffff ffff ffff ffff 2100 0000 1400 1400 ........!....... │ +00000ed0: 0200 0000 0000 0000 0b00 0000 0400 0000 ................ │ +00000ee0: ffff ffff 0800 0010 0900 0000 0b00 0000 ................ │ +00000ef0: 0300 0000 ffff ffff 0800 0010 0900 0000 ................ │ +00000f00: 0301 1000 1800 0000 1000 0000 ffff ffff ................ │ +00000f10: ffff ffff 2100 0000 0201 1000 6000 0000 ....!.......`... │ +00000f20: 1200 0000 ffff ffff ffff ffff 2200 0000 ............"... │ +00000f30: 1400 1400 0300 0000 0000 0000 0b00 0000 ................ │ +00000f40: 0700 0000 ffff ffff 0800 0001 0c00 0301 ................ │ +00000f50: 0b00 0000 0600 0000 ffff ffff 0800 0001 ................ │ +00000f60: 0000 077f 0b00 0000 0500 0000 ffff ffff ................ │ +00000f70: 0800 0001 0900 027f 0201 1000 7400 0000 ............t... │ +00000f80: 1700 0000 ffff ffff ffff ffff 2300 0000 ............#... │ +00000f90: 1400 1400 0400 0000 0000 0000 0b00 0000 ................ │ +00000fa0: 0700 0000 ffff ffff 0800 0001 0d00 0301 ................ │ +00000fb0: 0b00 0000 0600 0000 ffff ffff 0800 0001 ................ │ +00000fc0: 0000 077f 0b00 0000 0200 0000 2400 0000 ............$... │ +00000fd0: 0800 0003 2400 0000 0b00 0000 0800 0000 ....$........... │ +00000fe0: ffff ffff 0800 0010 0200 0000 0201 1000 ................ │ +00000ff0: 2400 0000 1c00 0000 ffff ffff ffff ffff $............... │ +00001000: 2500 0000 1400 1400 0000 0000 0000 0000 %............... │ +00001010: 0201 1000 3800 0000 1d00 0000 ffff ffff ....8........... │ +00001020: ffff ffff 2600 0000 1400 1400 0100 0000 ....&........... │ +00001030: 0000 0000 0b00 0000 0200 0000 2700 0000 ............'... │ +00001040: 0800 0003 2700 0000 0301 1000 1800 0000 ....'........... │ +00001050: 1d00 0000 ffff ffff ffff ffff 2600 0000 ............&... │ +00001060: 0201 1000 3800 0000 1e00 0000 ffff ffff ....8........... │ +00001070: ffff ffff 2800 0000 1400 1400 0100 0000 ....(........... │ +00001080: 0000 0000 0b00 0000 0200 0000 2900 0000 ............)... │ +00001090: 0800 0003 2900 0000 0301 1000 1800 0000 ....)........... │ +000010a0: 1e00 0000 ffff ffff ffff ffff 2800 0000 ............(... │ +000010b0: 0301 1000 1800 0000 1f00 0000 ffff ffff ................ │ +000010c0: ffff ffff 2500 0000 0301 1000 1800 0000 ....%........... │ +000010d0: 2000 0000 ffff ffff ffff ffff 2300 0000 ...........#... │ +000010e0: 0201 1000 7400 0000 2100 0000 ffff ffff ....t...!....... │ +000010f0: ffff ffff 2300 0000 1400 1400 0400 0000 ....#........... │ +00001100: 0000 0000 0b00 0000 0700 0000 ffff ffff ................ │ +00001110: 0800 0001 0d00 0301 0b00 0000 0600 0000 ................ │ +00001120: ffff ffff 0800 0001 0000 077f 0b00 0000 ................ │ +00001130: 0200 0000 2a00 0000 0800 0003 2a00 0000 ....*.......*... │ +00001140: 0b00 0000 0800 0000 ffff ffff 0800 0010 ................ │ +00001150: 0200 0000 0201 1000 2400 0000 2600 0000 ........$...&... │ +00001160: ffff ffff ffff ffff 2500 0000 1400 1400 ........%....... │ +00001170: 0000 0000 0000 0000 0201 1000 3800 0000 ............8... │ +00001180: 2700 0000 ffff ffff ffff ffff 2600 0000 '...........&... │ +00001190: 1400 1400 0100 0000 0000 0000 0b00 0000 ................ │ +000011a0: 0200 0000 2b00 0000 0800 0003 2b00 0000 ....+.......+... │ +000011b0: 0301 1000 1800 0000 2700 0000 ffff ffff ........'....... │ +000011c0: ffff ffff 2600 0000 0201 1000 3800 0000 ....&.......8... │ +000011d0: 2800 0000 ffff ffff ffff ffff 2800 0000 (...........(... │ +000011e0: 1400 1400 0100 0000 0000 0000 0b00 0000 ................ │ +000011f0: 0200 0000 2c00 0000 0800 0003 2c00 0000 ....,.......,... │ +00001200: 0301 1000 1800 0000 2800 0000 ffff ffff ........(....... │ +00001210: ffff ffff 2800 0000 0301 1000 1800 0000 ....(........... │ +00001220: 2900 0000 ffff ffff ffff ffff 2500 0000 )...........%... │ +00001230: 0301 1000 1800 0000 2a00 0000 ffff ffff ........*....... │ +00001240: ffff ffff 2300 0000 0201 1000 6000 0000 ....#.......`... │ +00001250: 2b00 0000 ffff ffff ffff ffff 2300 0000 +...........#... │ +00001260: 1400 1400 0300 0000 0000 0000 0b00 0000 ................ │ +00001270: 0700 0000 ffff ffff 0800 0001 0d00 0301 ................ │ +00001280: 0b00 0000 0200 0000 2d00 0000 0800 0003 ........-....... │ +00001290: 2d00 0000 0b00 0000 0800 0000 ffff ffff -............... │ +000012a0: 0800 0010 0200 0000 0301 1000 1800 0000 ................ │ +000012b0: 2f00 0000 ffff ffff ffff ffff 2300 0000 /...........#... │ +000012c0: 0201 1000 6000 0000 3000 0000 ffff ffff ....`...0....... │ +000012d0: ffff ffff 2300 0000 1400 1400 0300 0000 ....#........... │ +000012e0: 0000 0000 0b00 0000 0700 0000 ffff ffff ................ │ +000012f0: 0800 0001 0d00 0301 0b00 0000 0200 0000 ................ │ +00001300: 2e00 0000 0800 0003 2e00 0000 0b00 0000 ................ │ +00001310: 0800 0000 ffff ffff 0800 0010 0200 0000 ................ │ +00001320: 0301 1000 1800 0000 3400 0000 ffff ffff ........4....... │ +00001330: ffff ffff 2300 0000 0201 1000 6000 0000 ....#.......`... │ +00001340: 3500 0000 ffff ffff ffff ffff 2300 0000 5...........#... │ +00001350: 1400 1400 0300 0000 0000 0000 0b00 0000 ................ │ +00001360: 0700 0000 ffff ffff 0800 0001 0d00 0301 ................ │ +00001370: 0b00 0000 0200 0000 2f00 0000 0800 0003 ......../....... │ +00001380: 2f00 0000 0b00 0000 0800 0000 ffff ffff /............... │ +00001390: 0800 0010 0200 0000 0301 1000 1800 0000 ................ │ +000013a0: 3900 0000 ffff ffff ffff ffff 2300 0000 9...........#... │ +000013b0: 0201 1000 6000 0000 3a00 0000 ffff ffff ....`...:....... │ +000013c0: ffff ffff 2300 0000 1400 1400 0300 0000 ....#........... │ +000013d0: 0000 0000 0b00 0000 0700 0000 ffff ffff ................ │ +000013e0: 0800 0001 0d00 0301 0b00 0000 0200 0000 ................ │ +000013f0: 3000 0000 0800 0003 3000 0000 0b00 0000 0.......0....... │ +00001400: 0800 0000 ffff ffff 0800 0010 0200 0000 ................ │ +00001410: 0301 1000 1800 0000 3e00 0000 ffff ffff ........>....... │ +00001420: ffff ffff 2300 0000 0201 1000 6000 0000 ....#.......`... │ +00001430: 3f00 0000 ffff ffff ffff ffff 2300 0000 ?...........#... │ +00001440: 1400 1400 0300 0000 0000 0000 0b00 0000 ................ │ +00001450: 0700 0000 ffff ffff 0800 0001 0d00 0301 ................ │ +00001460: 0b00 0000 0200 0000 3100 0000 0800 0003 ........1....... │ +00001470: 3100 0000 0b00 0000 0800 0000 ffff ffff 1............... │ +00001480: 0800 0010 0200 0000 0301 1000 1800 0000 ................ │ +00001490: 4300 0000 ffff ffff ffff ffff 2300 0000 C...........#... │ +000014a0: 0201 1000 4c00 0000 4400 0000 ffff ffff ....L...D....... │ +000014b0: ffff ffff 3200 0000 1400 1400 0200 0000 ....2........... │ +000014c0: 0000 0000 0b00 0000 0200 0000 3300 0000 ............3... │ +000014d0: 0800 0003 3300 0000 0b00 0000 0900 0000 ....3........... │ +000014e0: ffff ffff 0800 0012 0000 0000 0301 1000 ................ │ +000014f0: 1800 0000 4700 0000 ffff ffff ffff ffff ....G........... │ +00001500: 3200 0000 0201 1000 3800 0000 4800 0000 2.......8...H... │ +00001510: ffff ffff ffff ffff 3400 0000 1400 1400 ........4....... │ +00001520: 0100 0000 0000 0000 0b00 0000 0200 0000 ................ │ +00001530: 3500 0000 0800 0003 3500 0000 0201 1000 5.......5....... │ +00001540: 2400 0000 4900 0000 ffff ffff ffff ffff $...I........... │ +00001550: 2500 0000 1400 1400 0000 0000 0000 0000 %............... │ +00001560: 0201 1000 3800 0000 4a00 0000 ffff ffff ....8...J....... │ +00001570: ffff ffff 2600 0000 1400 1400 0100 0000 ....&........... │ +00001580: 0000 0000 0b00 0000 0200 0000 3600 0000 ............6... │ +00001590: 0800 0003 3600 0000 0301 1000 1800 0000 ....6........... │ +000015a0: 4a00 0000 ffff ffff ffff ffff 2600 0000 J...........&... │ +000015b0: 0201 1000 3800 0000 4b00 0000 ffff ffff ....8...K....... │ +000015c0: ffff ffff 2800 0000 1400 1400 0100 0000 ....(........... │ +000015d0: 0000 0000 0b00 0000 0200 0000 3700 0000 ............7... │ +000015e0: 0800 0003 3700 0000 0301 1000 1800 0000 ....7........... │ +000015f0: 4b00 0000 ffff ffff ffff ffff 2800 0000 K...........(... │ +00001600: 0301 1000 1800 0000 4c00 0000 ffff ffff ........L....... │ +00001610: ffff ffff 2500 0000 0301 1000 1800 0000 ....%........... │ +00001620: 4d00 0000 ffff ffff ffff ffff 3400 0000 M...........4... │ +00001630: 0201 1000 3800 0000 4e00 0000 ffff ffff ....8...N....... │ +00001640: ffff ffff 2300 0000 1400 1400 0100 0000 ....#........... │ +00001650: 0000 0000 0b00 0000 0200 0000 3800 0000 ............8... │ +00001660: 0800 0003 3800 0000 0301 1000 1800 0000 ....8........... │ +00001670: 4e00 0000 ffff ffff ffff ffff 2300 0000 N...........#... │ +00001680: 0301 1000 1800 0000 4f00 0000 ffff ffff ........O....... │ +00001690: ffff ffff 2200 0000 0301 1000 1800 0000 ...."........... │ +000016a0: 5000 0000 ffff ffff ffff ffff 1000 0000 P............... │ +000016b0: 0101 1000 1800 0000 5000 0000 ffff ffff ........P....... │ +000016c0: 0a00 0000 0b00 0000 ........