mount("ext4", "EMMC", "/dev/block/mmcblk0p22", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p23", "/data");
assert(file_getprop("/system/build.prop", "ro.build.fingerprint") == "htc_asia_wwe/htc_shooteru/shooteru:4.0.3/IML74K/385730.1:user/release-keys" ||
       file_getprop("/system/build.prop", "ro.build.fingerprint") == "htc_asia_wwe/htc_shooteru/shooteru:4.0.3/IML74K/385730.1:user/release-keys");
assert(getprop("ro.product.device") == "shooteru" ||
       getprop("ro.build.product") == "shooteru");
delete_recursive("/data/dalvik-cache");
ui_print("Verifying current system...");
show_progress(0.100000, 0);
assert(apply_patch_check("/system/app/AntiSpam.apk", "def098a2db12fcf12f7ad4e05262add730e35f33", "f7e5e226f04786d0a427f2cf732403a608ecc22f"));
set_progress(0.001880);
assert(apply_patch_check("/system/app/Backup.apk", "c55032da48dccaf55bd21de406552c01a18f46ce", "896a8489840f0fd6066a64e20b3cd78c36fcbc07"));
set_progress(0.007534);
assert(apply_patch_check("/system/app/Bluetooth.apk", "e4fa7e8fb2ff3aff27631576eb6a70fbfa447971", "87ec068dba789c8a1bb16da36d2e229055a9a897"));
set_progress(0.009375);
assert(apply_patch_check("/system/app/Browser.apk", "774ff35e124703cb3dc56c75082e53781e57fd82", "9c719e1c489678ee3cb54e6c3780f8b472c36128"));
set_progress(0.058087);
assert(apply_patch_check("/system/app/BugReport.apk", "76af10011c18cfe0ed2587b5e9602646c87bf2be", "d96c2866e2fc2b9521c8a7dcf06e01354c8b1282"));
set_progress(0.060190);
assert(apply_patch_check("/system/app/Calculator.apk", "78f8809f9c1bc843d29f582f4b1f43685662b2c2", "647b1d1caeeb7640552a8e580433672f6ecab414"));
set_progress(0.071828);
assert(apply_patch_check("/system/app/Calendar.apk", "4d622be7301bfc5e29c7571d94bec16894895a00", "e42d1101f56b31027e32ad4b6a585cfd8e3ce154"));
set_progress(0.080433);
assert(apply_patch_check("/system/app/CalendarProvider.apk", "432ef0cd6aa9adb4b2e8030a793684d9ad6057f0", "186cbdf49809640dbc0e0e2644669c15639155af"));
set_progress(0.081957);
assert(apply_patch_check("/system/app/CloudService.apk", "b59fce92b45f559bd07e314d529ab1f200449f3f", "c21c586887068b7380053fe9624affd86a88322f"));
set_progress(0.084425);
assert(apply_patch_check("/system/app/Contacts.apk", "035da48c6b7e4a0026e0bf2eb1f6acf905efc808", "2350cfbc7a320a4bff7454e3ca2d411db2b4df65"));
set_progress(0.121501);
assert(apply_patch_check("/system/app/ContactsProvider.apk", "adca78a96cc72977fbfa9af1432d06085fc55dc1", "eebfef076398ad00e2901a3682105118a719a7d2"));
set_progress(0.127821);
assert(apply_patch_check("/system/app/DataHubProvider.apk", "93f9574e3c9fcc98e1d34993f2cd4b362e5021af", "df046971097632925aa31855a8651c2b13aec5fe"));
set_progress(0.127938);
assert(apply_patch_check("/system/app/DeskClock.apk", "13f24e0ef3dda068090c5786d3c5a5f36f9bb930", "0bc3f39a090c97b552bfe5fcbc26639b93fc09ba"));
set_progress(0.171107);
assert(apply_patch_check("/system/app/DownloadProvider.apk", "79efcfd744ae42438bf8a0e6206f87292e972092", "7860485b8d425ca71439e7fb69faef7530026031"));
set_progress(0.172301);
assert(apply_patch_check("/system/app/DownloadProviderUi.apk", "5bef519cd045f724ac39ab1e38c4cc17797fc89b", "387e7957f56d859f651570f98240211830ded4f5"));
set_progress(0.173836);
assert(apply_patch_check("/system/app/FileExplorer.apk", "3335f0b8aed2befd090bac3e23c0370a59b2099a", "f48c2cf8a39da26497c1ac4be91def971efb2853"));
set_progress(0.199116);
assert(apply_patch_check("/system/app/MiuiCompass.apk", "dfc92ca41d0bbbf0861f01544a1db670f80d121a", "6994d321438b9dac89d038652184200afcac7bac"));
set_progress(0.226580);
assert(apply_patch_check("/system/app/MiuiGallery.apk", "e71f70c935c5ccd0b6a09e735e488cf6127bd364", "fa516bcfa14ba0817f3d072409005b5da9c65461"));
set_progress(0.268483);
assert(apply_patch_check("/system/app/MiuiSystemUI.apk", "c6b660e268c22cdac4c67ce18a5732681825b29f", "a7f233d566ef4034b902f2af69e14ab90a2c3318"));
set_progress(0.295727);
assert(apply_patch_check("/system/app/Mms.apk", "22667021058e7809a186bb876ef310781b332996", "ed00138b176be44bf81a563a154c1e57a1ff0cba"));
set_progress(0.379003);
assert(apply_patch_check("/system/app/Music.apk", "96bbd1fb78b763c5752107b1b1c0e46334bf0bbf", "e8d4c5a7acb3f2b2e4b8c18fbdbee0020e898030"));
set_progress(0.428465);
assert(apply_patch_check("/system/app/NetworkAssistant.apk", "4f0590f6701450e12a6caacee2f4e5939845b4a5", "4328fe553637c8692ea05bc4dad76d1b5cbe90f4"));
set_progress(0.432175);
assert(apply_patch_check("/system/app/Notes.apk", "83476addd791f0ad6b99d0e4e31a2a74a4a256c6", "cacee237b6eb1797b0a9927a6f9d1eb953407a80"));
set_progress(0.471976);
assert(apply_patch_check("/system/app/PackageInstaller.apk", "2a6388acb05efe2712b20679b720a5af05c479ae", "a5f7853e136a80fef889f4d723c4fd95d0de535c"));
set_progress(0.472633);
assert(apply_patch_check("/system/app/Phone.apk", "8bb7902f2b2adedbfbddc03ae2123bf2ea509f48", "5c8d9d68f11ea509e15b36c299585b890636ec46"));
set_progress(0.503182);
assert(apply_patch_check("/system/app/Provision.apk", "2ca1bfc3c933add7644e04ee5fd99e75205ad8a3", "6b7d479990bd1aac4d9ffe25afe1be2daf926fd4"));
set_progress(0.503229);
assert(apply_patch_check("/system/app/QuickSearchBox.apk", "fc680d5d8d4d007e9305c1fe3cd83024f5fd875b", "760edb00e15bff5d1cbae6ed25b38e73d8400151"));
set_progress(0.507875);
assert(apply_patch_check("/system/app/Settings.apk", "c863cecb706f6a42c8d0b57aa6680c570b8dca9f", "21e1942cc05dc5bc05b477c45ae4789d6d6d625b"));
set_progress(0.589128);
assert(apply_patch_check("/system/app/SettingsProvider.apk", "c3a4b1c6b965ff8e5ba1e650beb9c6bcc9e9b277", "25d65c3fd3cb9cdac45f366239e41119c969d2bf"));
set_progress(0.589681);
assert(apply_patch_check("/system/app/SoundRecorder.apk", "965b661882dee640053611c5f43e7fa96f400d85", "e1ad4d8e56f4d357beaa285707beba1ce4f1036a"));
set_progress(0.604148);
assert(apply_patch_check("/system/app/Stk.apk", "c6356d54330373905d7a7b284c5b4ecdfbf4c1a6", "42127c23a6ed8c0048d04935e7342151088d8e5b"));
set_progress(0.604848);
assert(apply_patch_check("/system/app/TelephonyProvider.apk", "4bc4c6b83c445d6102d744962b20691b1ab26953", "0f9f16f88306c9354d7968188ff3a127fb2d702a"));
set_progress(0.605832);
assert(apply_patch_check("/system/app/TelocationProvider.apk", "3f65ac7122de30ca137c55da1f6fa0c735f12116", "1e02a79589b564d7c086a812b12288a0216f93c3"));
set_progress(0.606017);
assert(apply_patch_check("/system/app/ThemeManager.apk", "7dbfaee9d8a1280e38600041cbbc4727be57bc94", "5dd7ce26f333c9da1bdd724240c39b0bded25c1a"));
set_progress(0.613473);
assert(apply_patch_check("/system/app/VpnDialogs.apk", "654623927191db90c11145e0e268cd4c35bd414f", "8a2c57cefdbba960e58cb010041e4013003f1d24"));
set_progress(0.613637);
assert(apply_patch_check("/system/app/WeatherProvider.apk", "f731eb9705781e68becd74945756645d8bf722fe", "81f872d4318c96887d8fd463042fdd745d4d1fd3"));
set_progress(0.613760);
assert(apply_patch_check("/system/app/XiaomiServiceFramework.apk", "db20c8843b32ddd55112df5407f6fd2ae7733127", "b44079b8bf79ccd9f1a80174947c9791e9e61e06"));
set_progress(0.629156);
assert(apply_patch_check("/system/build.prop", "96d10bdfbeddb4367930745746264d0f69f9c14e", "f0ed0b5504799636a71c0426ee8d0350dbe44f7a"));
set_progress(0.629238);
assert(apply_patch_check("/system/framework/HTCExtension.jar", "d588f6a64377f1660e9f59f79d62fab41bfe1c74", "8d464fb9b35e6e973bf061875e11ce85a83e5da9"));
set_progress(0.668242);
assert(apply_patch_check("/system/framework/android.policy.jar", "aa432a7c60c513a5cb6267cd6a0142753d583d0a", "06b9724eae1ceeca2d362fd7f3bea227119cf43f"));
set_progress(0.672622);
assert(apply_patch_check("/system/framework/framework-miui-res.apk", "1978488bf515e9ec8b45835aeb4cd378610ce32c", "769a0520b02696458e3c8eea64fe33291ff976a9"));
set_progress(0.709685);
assert(apply_patch_check("/system/framework/framework.jar", "55ce940a722ac2f12b92ee1d2ceffabc65e9c09c", "366930cff3f5ee2dcd430d4c20971368758a8ea5"));
set_progress(0.762769);
assert(apply_patch_check("/system/framework/framework2.jar", "fdb829904693a5388c6800c2171406a0c8bbe496", "e3d3c0f8fdad56fd28f3c14d37bac991257f66d8"));
set_progress(0.785688);
assert(apply_patch_check("/system/framework/miui-framework.jar", "783d65fe7ce372cc6c448756dc13fec6bd4bd816", "872ef5b2a912cdc67ed0e108f7a6c6609caf85f6"));
set_progress(0.790982);
assert(apply_patch_check("/system/framework/services.jar", "e57c61de5eca004a49c24222cffc1038540bbf7e", "5231db627f7523c3b386522f5e53cb7babc57bb4"));
set_progress(0.806086);
assert(apply_patch_check("/system/media/bootanimation.zip", "04806010b5d6d3245aca4f539d46e138e49d9b3d", "3335f046c327621b7da81a5236eb391545072b56"));
set_progress(0.829384);
assert(apply_patch_check("/system/media/theme/default/icons", "54a121f2f5b660a92501bbc11fde562143679b81", "186c7f64443445fdc5dea2c6dd4735b0f7552d81"));
set_progress(0.850037);
assert(apply_patch_check("/system/media/theme/default/lockscreen", "03071763431018d4be2b324a731f318284b963dc", "dc4143178f64febe1d76b0f185f64d79eb1b512f"));
set_progress(0.858676);
assert(apply_patch_space(10800870));

# ---- start making changes here ----

ui_print("Removing unneeded files...");
delete("/system/recovery.img");
show_progress(0.800000, 0);
ui_print("Patching system files...");
apply_patch("/data/preinstall_apps/VoiceAssist.apk", "-",
            a6fdb8fefa07a930e4612aa36de7d33549c30034, 10800862,
            65d97e26c2d012541e0625e58239e87d591071e4, package_extract_file("patch/data/preinstall_apps/VoiceAssist.apk.p"));
set_progress(0.142595);
apply_patch("/system/app/AntiSpam.apk", "-",
            def098a2db12fcf12f7ad4e05262add730e35f33, 143711,
            f7e5e226f04786d0a427f2cf732403a608ecc22f, package_extract_file("patch/system/app/AntiSpam.apk.p"));
set_progress(0.144492);
apply_patch("/system/app/Backup.apk", "-",
            c55032da48dccaf55bd21de406552c01a18f46ce, 432080,
            896a8489840f0fd6066a64e20b3cd78c36fcbc07, package_extract_file("patch/system/app/Backup.apk.p"));
set_progress(0.150197);
apply_patch("/system/app/Bluetooth.apk", "-",
            e4fa7e8fb2ff3aff27631576eb6a70fbfa447971, 140678,
            87ec068dba789c8a1bb16da36d2e229055a9a897, package_extract_file("patch/system/app/Bluetooth.apk.p"));
set_progress(0.152054);
apply_patch("/system/app/Browser.apk", "-",
            774ff35e124703cb3dc56c75082e53781e57fd82, 3722855,
            9c719e1c489678ee3cb54e6c3780f8b472c36128, package_extract_file("patch/system/app/Browser.apk.p"));
set_progress(0.201204);
apply_patch("/system/app/BugReport.apk", "-",
            76af10011c18cfe0ed2587b5e9602646c87bf2be, 160733,
            d96c2866e2fc2b9521c8a7dcf06e01354c8b1282, package_extract_file("patch/system/app/BugReport.apk.p"));
set_progress(0.203326);
apply_patch("/system/app/Calculator.apk", "-",
            78f8809f9c1bc843d29f582f4b1f43685662b2c2, 889503,
            647b1d1caeeb7640552a8e580433672f6ecab414, package_extract_file("patch/system/app/Calculator.apk.p"));
set_progress(0.215069);
apply_patch("/system/app/Calendar.apk", "-",
            4d622be7301bfc5e29c7571d94bec16894895a00, 657619,
            e42d1101f56b31027e32ad4b6a585cfd8e3ce154, package_extract_file("patch/system/app/Calendar.apk.p"));
set_progress(0.223751);
apply_patch("/system/app/CalendarProvider.apk", "-",
            432ef0cd6aa9adb4b2e8030a793684d9ad6057f0, 116460,
            186cbdf49809640dbc0e0e2644669c15639155af, package_extract_file("patch/system/app/CalendarProvider.apk.p"));
set_progress(0.225289);
apply_patch("/system/app/CloudService.apk", "-",
            b59fce92b45f559bd07e314d529ab1f200449f3f, 188680,
            c21c586887068b7380053fe9624affd86a88322f, package_extract_file("patch/system/app/CloudService.apk.p"));
set_progress(0.227780);
apply_patch("/system/app/Contacts.apk", "-",
            035da48c6b7e4a0026e0bf2eb1f6acf905efc808, 2833375,
            2350cfbc7a320a4bff7454e3ca2d411db2b4df65, package_extract_file("patch/system/app/Contacts.apk.p"));
set_progress(0.265186);
apply_patch("/system/app/ContactsProvider.apk", "-",
            adca78a96cc72977fbfa9af1432d06085fc55dc1, 482679,
            eebfef076398ad00e2901a3682105118a719a7d2, package_extract_file("patch/system/app/ContactsProvider.apk.p"));
set_progress(0.271559);
apply_patch("/system/app/DataHubProvider.apk", "-",
            93f9574e3c9fcc98e1d34993f2cd4b362e5021af, 8935,
            df046971097632925aa31855a8651c2b13aec5fe, package_extract_file("patch/system/app/DataHubProvider.apk.p"));
set_progress(0.271677);
apply_patch("/system/app/DeskClock.apk", "-",
            13f24e0ef3dda068090c5786d3c5a5f36f9bb930, 3299288,
            0bc3f39a090c97b552bfe5fcbc26639b93fc09ba, package_extract_file("patch/system/app/DeskClock.apk.p"));
set_progress(0.315235);
apply_patch("/system/app/DownloadProvider.apk", "-",
            79efcfd744ae42438bf8a0e6206f87292e972092, 91262,
            7860485b8d425ca71439e7fb69faef7530026031, package_extract_file("patch/system/app/DownloadProvider.apk.p"));
set_progress(0.316439);
apply_patch("/system/app/DownloadProviderUi.apk", "-",
            5bef519cd045f724ac39ab1e38c4cc17797fc89b, 117297,
            387e7957f56d859f651570f98240211830ded4f5, package_extract_file("patch/system/app/DownloadProviderUi.apk.p"));
set_progress(0.317988);
apply_patch("/system/app/FileExplorer.apk", "-",
            3335f0b8aed2befd090bac3e23c0370a59b2099a, 1932044,
            f48c2cf8a39da26497c1ac4be91def971efb2853, package_extract_file("patch/system/app/FileExplorer.apk.p"));
set_progress(0.343495);
apply_patch("/system/app/MiuiCompass.apk", "-",
            dfc92ca41d0bbbf0861f01544a1db670f80d121a, 2098309,
            6994d321438b9dac89d038652184200afcac7bac, package_extract_file("patch/system/app/MiuiCompass.apk.p"));
set_progress(0.371197);
apply_patch("/system/app/MiuiGallery.apk", "-",
            e71f70c935c5ccd0b6a09e735e488cf6127bd364, 3202703,
            fa516bcfa14ba0817f3d072409005b5da9c65461, package_extract_file("patch/system/app/MiuiGallery.apk.p"));
set_progress(0.413480);
apply_patch("/system/app/MiuiSystemUI.apk", "-",
            c6b660e268c22cdac4c67ce18a5732681825b29f, 2082331,
            a7f233d566ef4034b902f2af69e14ab90a2c3318, package_extract_file("patch/system/app/MiuiSystemUI.apk.p"));
set_progress(0.440971);
apply_patch("/system/app/Mms.apk", "-",
            22667021058e7809a186bb876ef310781b332996, 6364501,
            ed00138b176be44bf81a563a154c1e57a1ff0cba, package_extract_file("patch/system/app/Mms.apk.p"));
set_progress(0.524997);
apply_patch("/system/app/Music.apk", "-",
            96bbd1fb78b763c5752107b1b1c0e46334bf0bbf, 3780134,
            e8d4c5a7acb3f2b2e4b8c18fbdbee0020e898030, package_extract_file("patch/system/app/Music.apk.p"));
set_progress(0.574903);
apply_patch("/system/app/NetworkAssistant.apk", "-",
            4f0590f6701450e12a6caacee2f4e5939845b4a5, 284786,
            4328fe553637c8692ea05bc4dad76d1b5cbe90f4, package_extract_file("patch/system/app/NetworkAssistant.apk.p"));
set_progress(0.578663);
apply_patch("/system/app/Notes.apk", "-",
            83476addd791f0ad6b99d0e4e31a2a74a4a256c6, 3041816,
            cacee237b6eb1797b0a9927a6f9d1eb953407a80, package_extract_file("patch/system/app/Notes.apk.p"));
set_progress(0.618821);
apply_patch("/system/app/PackageInstaller.apk", "-",
            2a6388acb05efe2712b20679b720a5af05c479ae, 50205,
            a5f7853e136a80fef889f4d723c4fd95d0de535c, package_extract_file("patch/system/app/PackageInstaller.apk.p"));
set_progress(0.619484);
apply_patch("/system/app/Phone.apk", "-",
            8bb7902f2b2adedbfbddc03ae2123bf2ea509f48, 2334753,
            5c8d9d68f11ea509e15b36c299585b890636ec46, package_extract_file("patch/system/app/Phone.apk.p"));
set_progress(0.650308);
apply_patch("/system/app/Provision.apk", "-",
            2ca1bfc3c933add7644e04ee5fd99e75205ad8a3, 3596,
            6b7d479990bd1aac4d9ffe25afe1be2daf926fd4, package_extract_file("patch/system/app/Provision.apk.p"));
set_progress(0.650355);
apply_patch("/system/app/QuickSearchBox.apk", "-",
            fc680d5d8d4d007e9305c1fe3cd83024f5fd875b, 355039,
            760edb00e15bff5d1cbae6ed25b38e73d8400151, package_extract_file("patch/system/app/QuickSearchBox.apk.p"));
set_progress(0.655043);
apply_patch("/system/app/Settings.apk", "-",
            c863cecb706f6a42c8d0b57aa6680c570b8dca9f, 6209850,
            21e1942cc05dc5bc05b477c45ae4789d6d6d625b, package_extract_file("patch/system/app/Settings.apk.p"));
set_progress(0.737026);
apply_patch("/system/app/SettingsProvider.apk", "-",
            c3a4b1c6b965ff8e5ba1e650beb9c6bcc9e9b277, 42246,
            25d65c3fd3cb9cdac45f366239e41119c969d2bf, package_extract_file("patch/system/app/SettingsProvider.apk.p"));
set_progress(0.737584);
apply_patch("/system/app/SoundRecorder.apk", "-",
            965b661882dee640053611c5f43e7fa96f400d85, 1105697,
            e1ad4d8e56f4d357beaa285707beba1ce4f1036a, package_extract_file("patch/system/app/SoundRecorder.apk.p"));
set_progress(0.752182);
apply_patch("/system/app/Stk.apk", "-",
            c6356d54330373905d7a7b284c5b4ecdfbf4c1a6, 53528,
            42127c23a6ed8c0048d04935e7342151088d8e5b, package_extract_file("patch/system/app/Stk.apk.p"));
set_progress(0.752888);
apply_patch("/system/app/TelephonyProvider.apk", "-",
            4bc4c6b83c445d6102d744962b20691b1ab26953, 75180,
            0f9f16f88306c9354d7968188ff3a127fb2d702a, package_extract_file("patch/system/app/TelephonyProvider.apk.p"));
set_progress(0.753881);
apply_patch("/system/app/TelocationProvider.apk", "-",
            3f65ac7122de30ca137c55da1f6fa0c735f12116, 14166,
            1e02a79589b564d7c086a812b12288a0216f93c3, package_extract_file("patch/system/app/TelocationProvider.apk.p"));
set_progress(0.754068);
apply_patch("/system/app/ThemeManager.apk", "-",
            7dbfaee9d8a1280e38600041cbbc4727be57bc94, 569978,
            5dd7ce26f333c9da1bdd724240c39b0bded25c1a, package_extract_file("patch/system/app/ThemeManager.apk.p"));
set_progress(0.761593);
apply_patch("/system/app/VpnDialogs.apk", "-",
            654623927191db90c11145e0e268cd4c35bd414f, 12538,
            8a2c57cefdbba960e58cb010041e4013003f1d24, package_extract_file("patch/system/app/VpnDialogs.apk.p"));
set_progress(0.761758);
apply_patch("/system/app/WeatherProvider.apk", "-",
            f731eb9705781e68becd74945756645d8bf722fe, 9371,
            81f872d4318c96887d8fd463042fdd745d4d1fd3, package_extract_file("patch/system/app/WeatherProvider.apk.p"));
set_progress(0.761882);
apply_patch("/system/app/XiaomiServiceFramework.apk", "-",
            db20c8843b32ddd55112df5407f6fd2ae7733127, 1176708,
            b44079b8bf79ccd9f1a80174947c9791e9e61e06, package_extract_file("patch/system/app/XiaomiServiceFramework.apk.p"));
set_progress(0.777417);
apply_patch("/system/framework/HTCExtension.jar", "-",
            d588f6a64377f1660e9f59f79d62fab41bfe1c74, 2980935,
            8d464fb9b35e6e973bf061875e11ce85a83e5da9, package_extract_file("patch/system/framework/HTCExtension.jar.p"));
set_progress(0.816772);
apply_patch("/system/framework/android.policy.jar", "-",
            aa432a7c60c513a5cb6267cd6a0142753d583d0a, 336183,
            06b9724eae1ceeca2d362fd7f3bea227119cf43f, package_extract_file("patch/system/framework/android.policy.jar.p"));
set_progress(0.821210);
apply_patch("/system/framework/framework-miui-res.apk", "-",
            1978488bf515e9ec8b45835aeb4cd378610ce32c, 2832570,
            769a0520b02696458e3c8eea64fe33291ff976a9, package_extract_file("patch/system/framework/framework-miui-res.apk.p"));
set_progress(0.858606);
apply_patch("/system/framework/framework.jar", "-",
            55ce940a722ac2f12b92ee1d2ceffabc65e9c09c, 4057068,
            366930cff3f5ee2dcd430d4c20971368758a8ea5, package_extract_file("patch/system/framework/framework.jar.p"));
set_progress(0.912169);
apply_patch("/system/framework/framework2.jar", "-",
            fdb829904693a5388c6800c2171406a0c8bbe496, 1751542,
            e3d3c0f8fdad56fd28f3c14d37bac991257f66d8, package_extract_file("patch/system/framework/framework2.jar.p"));
set_progress(0.935293);
apply_patch("/system/framework/miui-framework.jar", "-",
            783d65fe7ce372cc6c448756dc13fec6bd4bd816, 404572,
            872ef5b2a912cdc67ed0e108f7a6c6609caf85f6, package_extract_file("patch/system/framework/miui-framework.jar.p"));
set_progress(0.940634);
apply_patch("/system/framework/services.jar", "-",
            e57c61de5eca004a49c24222cffc1038540bbf7e, 1154389,
            5231db627f7523c3b386522f5e53cb7babc57bb4, package_extract_file("patch/system/framework/services.jar.p"));
set_progress(0.955874);
apply_patch("/system/media/bootanimation.zip", "-",
            04806010b5d6d3245aca4f539d46e138e49d9b3d, 1097403,
            3335f046c327621b7da81a5236eb391545072b56, package_extract_file("patch/system/media/bootanimation.zip.p"));
set_progress(0.970363);
apply_patch("/system/media/theme/default/icons", "-",
            54a121f2f5b660a92501bbc11fde562143679b81, 1578427,
            186c7f64443445fdc5dea2c6dd4735b0f7552d81, package_extract_file("patch/system/media/theme/default/icons.p"));
set_progress(0.991201);
apply_patch("/system/media/theme/default/lockscreen", "-",
            03071763431018d4be2b324a731f318284b963dc, 660248,
            dc4143178f64febe1d76b0f185f64d79eb1b512f, package_extract_file("patch/system/media/theme/default/lockscreen.p"));
set_progress(0.999918);
show_progress(0.100000, 10);
ui_print("Symlinks and permissions...");
set_perm_recursive(1000, 1000, 0755, 0644, "/data/preinstall_apps");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
set_perm(0, 1000, 04750, "/system/bin/iptables");
set_perm(0, 3003, 02750, "/system/bin/netcfg");
set_perm(0, 3004, 02755, "/system/bin/ping");
set_perm(0, 2000, 06750, "/system/bin/run-as");
set_perm(0, 1000, 04750, "/system/bin/tc");
set_perm_recursive(1002, 1002, 0755, 0440, "/system/etc/bluetooth");
set_perm(0, 0, 0755, "/system/etc/bluetooth");
set_perm(0, 0, 0644, "/system/etc/bluetooth/a2dp_avrcp.conf");
set_perm(1000, 1000, 0640, "/system/etc/bluetooth/auto_pairing.conf");
set_perm(3002, 3002, 0444, "/system/etc/bluetooth/blacklist.conf");
set_perm(1002, 1002, 0440, "/system/etc/dbus.conf");
set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.3/left_eye-y0-yi45-p0-pi45-r0-ri20.2d_n2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.3/left_eye-y0-yi45-p0-pi45-rn7-ri20.2d_n2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.3/left_eye-y0-yi45-p0-pi45-rp7-ri20.2d_n2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.3/nose_base-y0-yi45-p0-pi45-r0-ri20.2d_n2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.3/nose_base-y0-yi45-p0-pi45-rn7-ri20.2d_n2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.3/nose_base-y0-yi45-p0-pi45-rp7-ri20.2d_n2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.3/right_eye-y0-yi45-p0-pi45-r0-ri20.2d_n2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.3/right_eye-y0-yi45-p0-pi45-rn7-ri20.2d_n2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.3/right_eye-y0-yi45-p0-pi45-rp7-ri20.2d_n2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/yaw_roll_face_detectors.3/head-y0-yi45-p0-pi45-r0-ri30.4a/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/yaw_roll_face_detectors.3/head-y0-yi45-p0-pi45-rn30-ri30.5/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/yaw_roll_face_detectors.3/head-y0-yi45-p0-pi45-rp30-ri30.5/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/recognition/face.face.y0-y0-22-b-N/full_model.bin");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/busybox");
set_perm(0, 2000, 06755, "/system/xbin/insecure");
set_perm(0, 0, 06755, "/system/xbin/invoke-as");
set_perm(0, 0, 06755, "/system/xbin/su");
ui_print("Patching remaining system files...");
apply_patch("/system/build.prop", "-",
            96d10bdfbeddb4367930745746264d0f69f9c14e, 6214,
            f0ed0b5504799636a71c0426ee8d0350dbe44f7a, package_extract_file("patch/system/build.prop.p"));
set_perm(0, 0, 0644, "/system/build.prop");
unmount("/data");
unmount("/system");
