mount("ext4", "EMMC", "/dev/block/mmcblk0p12", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p15", "/data");
assert(file_getprop("/system/build.prop", "ro.build.fingerprint") == "htccn_chs_cmcc/endeavortd/endeavortd:4.1.1/JRO03C/140683.3:user/release-keys" ||
       file_getprop("/system/build.prop", "ro.build.fingerprint") == "htccn_chs_cmcc/endeavortd/endeavortd:4.1.1/JRO03C/140683.3:user/release-keys");
assert(getprop("ro.product.device") == "endeavoru" ||
       getprop("ro.build.product") == "endeavoru");
ui_print("Verifying current system...");
show_progress(0.100000, 0);
assert(apply_patch_check("/system/app/AirkanPhoneService.apk", "1d0ba9e80143462cdd05ae3b1330b07bb1056d06", "35cae1feeb5b6183039ad7215c47a3d1f4d4b1e3"));
set_progress(0.002647);
assert(apply_patch_check("/system/app/AntiSpam.apk", "a23470910daf23741757675ce58c02d962969f69", "d647dfff7e0ea78cde9e7487bbc187508c163f88"));
set_progress(0.003520);
assert(apply_patch_check("/system/app/Backup.apk", "ae5981afe41911fb2fcdfb81ea717fab02975ad9", "5b96c4e608799b188eae11a56699a7bb77a02741"));
set_progress(0.010277);
assert(apply_patch_check("/system/app/Bluetooth.apk", "1856adb53200704ca30060730d3192cae21b8e4f", "f81cb8508b6a622162dbccb0f38d9192260c9d88"));
set_progress(0.011235);
assert(apply_patch_check("/system/app/Browser.apk", "0f0ddbb00399f7d4172367469dfe8847849e00e1", "db91f774aa60576e8e4649ec223d6e82a4339334"));
set_progress(0.058039);
assert(apply_patch_check("/system/app/BugReport.apk", "d4cd4ed68b15ff9d0962138ceb1d6e050204207b", "416ba1f621e226942e34f6b644729ad877d5724f"));
set_progress(0.059230);
assert(apply_patch_check("/system/app/Calculator.apk", "f9a9ee3c1555bbf6cd1e48d5e8ac80cee7c83b85", "574d613f02ffce43f57a7fe33a83969b607ef3b7"));
set_progress(0.072585);
assert(apply_patch_check("/system/app/Calendar.apk", "c1e702cf67c4e8690bcba2e6c230ed725f329312", "d5f1448616f6a27562f1100c3df8fcf8269c7aad"));
set_progress(0.081214);
assert(apply_patch_check("/system/app/CalendarProvider.apk", "4b66c8674c47755747e2b4feda7243fe6e1a5ac6", "26dc5e334064134c504741128d7918167187ea6e"));
set_progress(0.082281);
assert(apply_patch_check("/system/app/Camera.apk", "8e60dcc92067d7b4e704077d72a032965464caf7", "36b26970787216834dd4ad095d8dc5b22875df4e"));
set_progress(0.121639);
assert(apply_patch_check("/system/app/CloudService.apk", "58ee1d7464206bfe264d02a909434ef5a756c072", "59246c78f18c1aa1996248133e70d6c5c6836ed4"));
set_progress(0.123357);
assert(apply_patch_check("/system/app/Contacts.apk", "bccc44302e40c6593ced9c6630b43b82c8f6f2b2", "73d8813f49aced960f31af0a59c76837a2f0eb76"));
set_progress(0.150830);
assert(apply_patch_check("/system/app/ContactsProvider.apk", "707ee11e84bc03d76e22b7964e5b3e55a069f69e", "137d34fcb139cefa23305053f1e749bb82c92764"));
set_progress(0.152986);
assert(apply_patch_check("/system/app/DataHubProvider.apk", "8ebfa580c2ad8b861ba6c68bea7b9741e2833240", "996042a5fb220f697e08a18613d609b1da55d689"));
set_progress(0.153060);
assert(apply_patch_check("/system/app/DeskClock.apk", "038ab9274d45b5c41e8cfabd4c940074864228ea", "16c38984ae7097f17b370407b893f36232f7d792"));
set_progress(0.163011);
assert(apply_patch_check("/system/app/DownloadProvider.apk", "e45c04cc55a22c8fdc6fd9e40a5fc8e7d56d8a3d", "8e1609c0217175b3bda996935ad1806c43b32244"));
set_progress(0.163875);
assert(apply_patch_check("/system/app/DownloadProviderUi.apk", "6cc3c938997d2eeee24ef93fbb51a527e97f90e9", "e7cdce047e88a689d3873f62b6c122eb71ccf45f"));
set_progress(0.164564);
assert(apply_patch_check("/system/app/Email.apk", "25b8d9e46ef148fee7aa1296562266e460cc7faa", "d8955d63529fe81c82c8f0429735d452c829200c"));
set_progress(0.183162);
assert(apply_patch_check("/system/app/FileExplorer.apk", "8370106359a0a7a3e0454dca7c7dcb9e9786edcb", "bd9143da43f80c3618a50ec0cca99044fbefc06c"));
set_progress(0.196949);
assert(apply_patch_check("/system/app/HTCAlbum.apk", "c34866efd9d1f1d638d9afc2c08cc0440c99f25c", "e86e081b018ac5b61a0413002cfccfb42b03bf3d"));
set_progress(0.240210);
assert(apply_patch_check("/system/app/MiuiCompass.apk", "d71801b29c5a33f99a7e72e8435388dd61143c2a", "a104d946faf61581aea93e048d3fce06cb15fc06"));
set_progress(0.246937);
assert(apply_patch_check("/system/app/MiuiGallery.apk", "b432d0bf198b529dd077c1f0422d34accc2ee485", "8b64e438dc361ad229d62871d9fd7076e1cff1af"));
set_progress(0.268221);
assert(apply_patch_check("/system/app/MiuiHome.apk", "56c987414355c5949c2b23bcf05e759f124a64a1", "b7ab1523aa841992e514045a8c5842a9ce081208"));
set_progress(0.297902);
assert(apply_patch_check("/system/app/MiuiSystemUI.apk", "20d7f717f020d68b1e4e68573bfa0c554eea1c2b", "bc02d48da8538c369a4363534b030be909a5e445"));
set_progress(0.313099);
assert(apply_patch_check("/system/app/MiuiVideoPlayer.apk", "4692addcb547447b0839057db15463061c515ee3", "b1ef7780811ea3713b5bc175d9fd49cfc045f898"));
set_progress(0.319940);
assert(apply_patch_check("/system/app/Mms.apk", "3e0e7cbaa1d36bcb36eeb20ddd3f04ef84c0755b", "f329e358267ce5758925ee74a804855baab7daa1"));
set_progress(0.338475);
assert(apply_patch_check("/system/app/Music.apk", "52c4dba92828ccf87059473b7dc777dbc39c1f8c", "31a85a0ac1d66b7676b06861c1be680c81c53dc5"));
set_progress(0.388957);
assert(apply_patch_check("/system/app/Notes.apk", "8a11163a3420422ecef95e4796fc2779f957fb6f", "2531a235a704290fe369dd44dfe182625d9f9a07"));
set_progress(0.457096);
assert(apply_patch_check("/system/app/PackageInstaller.apk", "c44e05ccefaf254bc7cb4db37696ae4a35f5953e", "d711682dc05240e7e06ebbd46827bed6696cb10a"));
set_progress(0.458984);
assert(apply_patch_check("/system/app/Phone.apk", "b2423d81e28ba3f37f543ad147d23bd4665992f6", "0804dc28f2466b53068c4b9236077d119535878f"));
set_progress(0.478905);
assert(apply_patch_check("/system/app/Provision.apk", "9506cb4e1636c7ac87e5b6276daa738c713d6cc1", "fdc4cffdbdd4994dad243018d16cf12e72b1192c"));
set_progress(0.486129);
assert(apply_patch_check("/system/app/QuickSearchBox.apk", "c21b638ae6edbe0b6d797e307ff5e4f55a2964f7", "8bd939dae2115287afc8fe208d093885169212f3"));
set_progress(0.488723);
assert(apply_patch_check("/system/app/Settings.apk", "93a570ed1c00a67e519a8da37c432e644369df73", "a47156b18bd8e2bf9b48cbb873748d559ae61033"));
set_progress(0.582010);
assert(apply_patch_check("/system/app/SettingsProvider.apk", "b4a934616f380f3176c0f95426a2f20b08b7af73", "2c3bedb1038471c1291ce021b62cfd5b5f238e36"));
set_progress(0.582333);
assert(apply_patch_check("/system/app/SoundRecorder.apk", "fb1d0b96dec8f6bcd7034db7157aa480948589bb", "791c4f8a57091683022eef1e308ed6201d26be5a"));
set_progress(0.606371);
assert(apply_patch_check("/system/app/Stk.apk", "6150198cde05f306cecafab59f2d8d3e33e22ed2", "b08d3a6cd3cdf7317e76ba8e944d3fbd3ef276a1"));
set_progress(0.606742);
assert(apply_patch_check("/system/app/StockSettings.apk", "33357f6cd1d941b95c6e85904962a7de225479bf", "e872609b093c878fa33e42608fc49d0d76104f3e"));
set_progress(0.606918);
assert(apply_patch_check("/system/app/SuperMarket.apk", "0f0be93ff085008dcbd072b7c6d5e9dd24cd9b5a", "4bd0495ef9ec1ae6ceecc6ff986d513865c5a5f1"));
set_progress(0.611624);
assert(apply_patch_check("/system/app/TelephonyProvider.apk", "311817ef13ef2f3d228fa455da05d9c3887b8fee", "9afb696a16ad4d58a7e66d57b261f7cf14518c1e"));
set_progress(0.612226);
assert(apply_patch_check("/system/app/ThemeManager.apk", "79938219dbfe70a650b6b71d635c783f3ea186a4", "939881529df214d446000fe74c9c4baa1bd0204d"));
set_progress(0.619222);
assert(apply_patch_check("/system/app/Transfer.apk", "8b1f3d2b603a7f6971a6c9b7d47754984bc96a33", "3a4b8aaa2efd472b9e59d3da00c95b2e839b7009"));
set_progress(0.625801);
assert(apply_patch_check("/system/app/Updater.apk", "4ad50d3e84cec0dd15963e9432b06baca0351ff6", "5f711a576ddfbf9add5f401f334bd31ff862305b"));
set_progress(0.635450);
assert(apply_patch_check("/system/app/VpnDialogs.apk", "b8685036c4470363f5a6a34a6a48b6d4dc1dd43a", "b7bbd4c1a36851f303619ee6b2c2e2bf14983d7f"));
set_progress(0.635532);
assert(apply_patch_check("/system/app/Weather.apk", "968ab44a460c2553f8e7bd6489e524786d03be37", "9f7820cfa75a85648a73706d116c2e47576dc77a"));
set_progress(0.644202);
assert(apply_patch_check("/system/app/WeatherProvider.apk", "db552a196399770690ffa5b4347fa37ef610e917", "2f1192c6536b2b75d6370a640a75c1e9d5e01c47"));
set_progress(0.644264);
assert(apply_patch_check("/system/app/XiaomiServiceFramework.apk", "9cee857c0eae470bcdbd73772986bdc445809446", "5bff5ce283e5cf88f8e3792f5dcb8f5cb7e4eb8e"));
set_progress(0.667543);
assert(apply_patch_check("/system/app/YellowPage.apk", "d552e1b93d3335e1659118fa79f8266f089bc30c", "e8156ef8793b25a0887b6ba4943825e81485a64e"));
set_progress(0.672233);
assert(apply_patch_check("/system/build.prop", "293197a5c84bfb3540cdb1dc648ee08842d505c7", "93e070ab0255be7452945e67275b87513ce2a3a8"));
set_progress(0.672282);
assert(apply_patch_check("/system/etc/weather_city.db", "d0e574aca052ae4f8950dd0665356e3b40c31a6f", "c48944f9914cf13f3f45f9b465b2a4abadaace7f"));
set_progress(0.674020);
assert(apply_patch_check("/system/framework/HTCExtension.jar", "d8c2f00f8afef9ce8ca6f246d0487dbea8b536be", "98827e8c9eb89f3912c18f29f0ecd82239181cb5"));
set_progress(0.692871);
assert(apply_patch_check("/system/framework/android.policy.jar", "c73129eb7bf5aa4fe5ca2ded8ee357ad89d6844c", "5c6a1e680952de2bac4e2c901f1dc21146e0803d"));
set_progress(0.694621);
assert(apply_patch_check("/system/framework/framework-miui-res.apk", "61f28252074049edb68bbe71b99887701bd399e9", "3af00f3df500a4eabad4150b1fa45eea0660e05b"));
set_progress(0.754411);
assert(apply_patch_check("/system/framework/framework-res.apk", "174f73d34ecc46287a48f4cf9864a9f8a7ca285c", "36a77f9f22c24c6de01d525bad86bcd7178f07dd"));
set_progress(0.855987);
assert(apply_patch_check("/system/framework/framework.jar", "5cfc69a9a6b320b477f52ea243d4a5983918ab78", "8dcc6093af0d507bf5c46b685c58cafac9ecdcc6"));
set_progress(0.884331);
assert(apply_patch_check("/system/framework/framework2.jar", "b7b537b71e9277dc76ae0bf637cd100b3c5905ba", "3bfe2e381878019992a592399e6690d080012808"));
set_progress(0.904151);
assert(apply_patch_check("/system/framework/services.jar", "1a4617d1ffafb7ec221680d6606424a9c380ea84", "10d148d926ad73252899de8af8718fdb56b16331"));
set_progress(0.914380);
assert(apply_patch_check("/system/media/theme/default/alarmscreen", "396b13d7b770c26fbb4d3ed3401f3dbe5136c879", "b7b02e4aa2ab399842fd07678e1bcecc2b002a77"));
set_progress(0.918632);
assert(apply_patch_check("/system/media/theme/default/icons", "74f8b154208a9cbea2d8f1a31c2910154ab544e9", "7377055a96b76c00d183453f7bde8e9b36d96a5d"));
set_progress(0.921560);
assert(apply_patch_check("/system/media/theme/default/lockscreen", "19682f7a77a9e2afb05451de6bd81fa493fb3a3d", "9b0d4209783d8aff7960f02bdd08ecfaa1469617"));
set_progress(0.926548);
assert(apply_patch_space(15260290));

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

ui_print("Removing unneeded files...");
delete("/system/lib/libimageprocessor_jni.so",
       "/data/preinstall_apps/MiuiVideo.apk",
       "/system/recovery.img");
show_progress(0.800000, 0);
ui_print("Patching system files...");
apply_patch("/data/preinstall_apps/VoiceAssist.apk", "-",
            c8d891b49732c0b205f62bcaa9127639a5c34b3b, 11035198,
            b603699888b292ecb89758e43b5d0ce1f2e0b2ff, package_extract_file("patch/data/preinstall_apps/VoiceAssist.apk.p"));
set_progress(0.072237);
apply_patch("/system/app/AirkanPhoneService.apk", "-",
            1d0ba9e80143462cdd05ae3b1330b07bb1056d06, 397862,
            35cae1feeb5b6183039ad7215c47a3d1f4d4b1e3, package_extract_file("patch/system/app/AirkanPhoneService.apk.p"));
set_progress(0.074841);
apply_patch("/system/app/AntiSpam.apk", "-",
            a23470910daf23741757675ce58c02d962969f69, 133159,
            d647dfff7e0ea78cde9e7487bbc187508c163f88, package_extract_file("patch/system/app/AntiSpam.apk.p"));
set_progress(0.075713);
apply_patch("/system/app/Backup.apk", "-",
            ae5981afe41911fb2fcdfb81ea717fab02975ad9, 1014021,
            5b96c4e608799b188eae11a56699a7bb77a02741, package_extract_file("patch/system/app/Backup.apk.p"));
set_progress(0.082351);
apply_patch("/system/app/Bluetooth.apk", "-",
            1856adb53200704ca30060730d3192cae21b8e4f, 143994,
            f81cb8508b6a622162dbccb0f38d9192260c9d88, package_extract_file("patch/system/app/Bluetooth.apk.p"));
set_progress(0.083293);
apply_patch("/system/app/Browser.apk", "-",
            0f0ddbb00399f7d4172367469dfe8847849e00e1, 7566188,
            db91f774aa60576e8e4649ec223d6e82a4339334, package_extract_file("patch/system/app/Browser.apk.p"));
set_progress(0.132822);
apply_patch("/system/app/BugReport.apk", "-",
            d4cd4ed68b15ff9d0962138ceb1d6e050204207b, 178935,
            416ba1f621e226942e34f6b644729ad877d5724f, package_extract_file("patch/system/app/BugReport.apk.p"));
set_progress(0.133993);
apply_patch("/system/app/Calculator.apk", "-",
            f9a9ee3c1555bbf6cd1e48d5e8ac80cee7c83b85, 2007290,
            574d613f02ffce43f57a7fe33a83969b607ef3b7, package_extract_file("patch/system/app/Calculator.apk.p"));
set_progress(0.147133);
apply_patch("/system/app/Calendar.apk", "-",
            c1e702cf67c4e8690bcba2e6c230ed725f329312, 1300288,
            d5f1448616f6a27562f1100c3df8fcf8269c7aad, package_extract_file("patch/system/app/Calendar.apk.p"));
set_progress(0.155645);
apply_patch("/system/app/CalendarProvider.apk", "-",
            4b66c8674c47755747e2b4feda7243fe6e1a5ac6, 164810,
            26dc5e334064134c504741128d7918167187ea6e, package_extract_file("patch/system/app/CalendarProvider.apk.p"));
set_progress(0.156724);
apply_patch("/system/app/Camera.apk", "-",
            8e60dcc92067d7b4e704077d72a032965464caf7, 5912973,
            36b26970787216834dd4ad095d8dc5b22875df4e, package_extract_file("patch/system/app/Camera.apk.p"));
set_progress(0.195430);
apply_patch("/system/app/CloudService.apk", "-",
            58ee1d7464206bfe264d02a909434ef5a756c072, 258633,
            59246c78f18c1aa1996248133e70d6c5c6836ed4, package_extract_file("patch/system/app/CloudService.apk.p"));
set_progress(0.197123);
apply_patch("/system/app/Contacts.apk", "-",
            bccc44302e40c6593ced9c6630b43b82c8f6f2b2, 4128930,
            73d8813f49aced960f31af0a59c76837a2f0eb76, package_extract_file("patch/system/app/Contacts.apk.p"));
set_progress(0.224151);
apply_patch("/system/app/ContactsProvider.apk", "-",
            707ee11e84bc03d76e22b7964e5b3e55a069f69e, 324034,
            137d34fcb139cefa23305053f1e749bb82c92764, package_extract_file("patch/system/app/ContactsProvider.apk.p"));
set_progress(0.226272);
apply_patch("/system/app/DataHubProvider.apk", "-",
            8ebfa580c2ad8b861ba6c68bea7b9741e2833240, 11015,
            996042a5fb220f697e08a18613d609b1da55d689, package_extract_file("patch/system/app/DataHubProvider.apk.p"));
set_progress(0.226344);
apply_patch("/system/app/DeskClock.apk", "-",
            038ab9274d45b5c41e8cfabd4c940074864228ea, 1494029,
            16c38984ae7097f17b370407b893f36232f7d792, package_extract_file("patch/system/app/DeskClock.apk.p"));
set_progress(0.236124);
apply_patch("/system/app/DownloadProvider.apk", "-",
            e45c04cc55a22c8fdc6fd9e40a5fc8e7d56d8a3d, 130130,
            8e1609c0217175b3bda996935ad1806c43b32244, package_extract_file("patch/system/app/DownloadProvider.apk.p"));
set_progress(0.236976);
apply_patch("/system/app/DownloadProviderUi.apk", "-",
            6cc3c938997d2eeee24ef93fbb51a527e97f90e9, 88692,
            e7cdce047e88a689d3873f62b6c122eb71ccf45f, package_extract_file("patch/system/app/DownloadProviderUi.apk.p"));
set_progress(0.237557);
apply_patch("/system/app/Email.apk", "-",
            25b8d9e46ef148fee7aa1296562266e460cc7faa, 2793794,
            d8955d63529fe81c82c8f0429735d452c829200c, package_extract_file("patch/system/app/Email.apk.p"));
set_progress(0.255845);
apply_patch("/system/app/FileExplorer.apk", "-",
            8370106359a0a7a3e0454dca7c7dcb9e9786edcb, 2070044,
            bd9143da43f80c3618a50ec0cca99044fbefc06c, package_extract_file("patch/system/app/FileExplorer.apk.p"));
set_progress(0.269396);
apply_patch("/system/app/HTCAlbum.apk", "-",
            c34866efd9d1f1d638d9afc2c08cc0440c99f25c, 6499248,
            e86e081b018ac5b61a0413002cfccfb42b03bf3d, package_extract_file("patch/system/app/HTCAlbum.apk.p"));
set_progress(0.311940);
apply_patch("/system/app/MiuiCompass.apk", "-",
            d71801b29c5a33f99a7e72e8435388dd61143c2a, 1011531,
            a104d946faf61581aea93e048d3fce06cb15fc06, package_extract_file("patch/system/app/MiuiCompass.apk.p"));
set_progress(0.318562);
apply_patch("/system/app/MiuiGallery.apk", "-",
            b432d0bf198b529dd077c1f0422d34accc2ee485, 3460907,
            8b64e438dc361ad229d62871d9fd7076e1cff1af, package_extract_file("patch/system/app/MiuiGallery.apk.p"));
set_progress(0.341217);
apply_patch("/system/app/MiuiHome.apk", "-",
            56c987414355c5949c2b23bcf05e759f124a64a1, 4478001,
            b7ab1523aa841992e514045a8c5842a9ce081208, package_extract_file("patch/system/app/MiuiHome.apk.p"));
set_progress(0.370530);
apply_patch("/system/app/MiuiSystemUI.apk", "-",
            20d7f717f020d68b1e4e68573bfa0c554eea1c2b, 2311314,
            bc02d48da8538c369a4363534b030be909a5e445, package_extract_file("patch/system/app/MiuiSystemUI.apk.p"));
set_progress(0.385660);
apply_patch("/system/app/MiuiVideoPlayer.apk", "-",
            4692addcb547447b0839057db15463061c515ee3, 1027953,
            b1ef7780811ea3713b5bc175d9fd49cfc045f898, package_extract_file("patch/system/app/MiuiVideoPlayer.apk.p"));
set_progress(0.392389);
apply_patch("/system/app/Mms.apk", "-",
            3e0e7cbaa1d36bcb36eeb20ddd3f04ef84c0755b, 3328178,
            f329e358267ce5758925ee74a804855baab7daa1, package_extract_file("patch/system/app/Mms.apk.p"));
set_progress(0.414175);
apply_patch("/system/app/Music.apk", "-",
            52c4dba92828ccf87059473b7dc777dbc39c1f8c, 7811111,
            31a85a0ac1d66b7676b06861c1be680c81c53dc5, package_extract_file("patch/system/app/Music.apk.p"));
set_progress(0.465307);
apply_patch("/system/app/Notes.apk", "-",
            8a11163a3420422ecef95e4796fc2779f957fb6f, 10318985,
            2531a235a704290fe369dd44dfe182625d9f9a07, package_extract_file("patch/system/app/Notes.apk.p"));
set_progress(0.532856);
apply_patch("/system/app/PackageInstaller.apk", "-",
            c44e05ccefaf254bc7cb4db37696ae4a35f5953e, 283533,
            d711682dc05240e7e06ebbd46827bed6696cb10a, package_extract_file("patch/system/app/PackageInstaller.apk.p"));
set_progress(0.534712);
apply_patch("/system/app/Phone.apk", "-",
            b2423d81e28ba3f37f543ad147d23bd4665992f6, 2987238,
            0804dc28f2466b53068c4b9236077d119535878f, package_extract_file("patch/system/app/Phone.apk.p"));
set_progress(0.554266);
apply_patch("/system/app/Provision.apk", "-",
            9506cb4e1636c7ac87e5b6276daa738c713d6cc1, 1085497,
            fdc4cffdbdd4994dad243018d16cf12e72b1192c, package_extract_file("patch/system/app/Provision.apk.p"));
set_progress(0.561372);
apply_patch("/system/app/QuickSearchBox.apk", "-",
            c21b638ae6edbe0b6d797e307ff5e4f55a2964f7, 389668,
            8bd939dae2115287afc8fe208d093885169212f3, package_extract_file("patch/system/app/QuickSearchBox.apk.p"));
set_progress(0.563923);
apply_patch("/system/app/Settings.apk", "-",
            93a570ed1c00a67e519a8da37c432e644369df73, 14007367,
            a47156b18bd8e2bf9b48cbb873748d559ae61033, package_extract_file("patch/system/app/Settings.apk.p"));
set_progress(0.655615);
apply_patch("/system/app/SettingsProvider.apk", "-",
            b4a934616f380f3176c0f95426a2f20b08b7af73, 48439,
            2c3bedb1038471c1291ce021b62cfd5b5f238e36, package_extract_file("patch/system/app/SettingsProvider.apk.p"));
set_progress(0.655932);
apply_patch("/system/app/SoundRecorder.apk", "-",
            fb1d0b96dec8f6bcd7034db7157aa480948589bb, 3613331,
            791c4f8a57091683022eef1e308ed6201d26be5a, package_extract_file("patch/system/app/SoundRecorder.apk.p"));
set_progress(0.679585);
apply_patch("/system/app/Stk.apk", "-",
            6150198cde05f306cecafab59f2d8d3e33e22ed2, 55786,
            b08d3a6cd3cdf7317e76ba8e944d3fbd3ef276a1, package_extract_file("patch/system/app/Stk.apk.p"));
set_progress(0.679951);
apply_patch("/system/app/StockSettings.apk", "-",
            33357f6cd1d941b95c6e85904962a7de225479bf, 26450,
            e872609b093c878fa33e42608fc49d0d76104f3e, package_extract_file("patch/system/app/StockSettings.apk.p"));
set_progress(0.680124);
apply_patch("/system/app/SuperMarket.apk", "-",
            0f0be93ff085008dcbd072b7c6d5e9dd24cd9b5a, 622918,
            4bd0495ef9ec1ae6ceecc6ff986d513865c5a5f1, package_extract_file("patch/system/app/SuperMarket.apk.p"));
set_progress(0.684201);
apply_patch("/system/app/TelephonyProvider.apk", "-",
            311817ef13ef2f3d228fa455da05d9c3887b8fee, 90577,
            9afb696a16ad4d58a7e66d57b261f7cf14518c1e, package_extract_file("patch/system/app/TelephonyProvider.apk.p"));
set_progress(0.684794);
apply_patch("/system/app/ThemeManager.apk", "-",
            79938219dbfe70a650b6b71d635c783f3ea186a4, 1050570,
            939881529df214d446000fe74c9c4baa1bd0204d, package_extract_file("patch/system/app/ThemeManager.apk.p"));
set_progress(0.691671);
apply_patch("/system/app/Transfer.apk", "-",
            8b1f3d2b603a7f6971a6c9b7d47754984bc96a33, 996972,
            3a4b8aaa2efd472b9e59d3da00c95b2e839b7009, package_extract_file("patch/system/app/Transfer.apk.p"));
set_progress(0.698198);
apply_patch("/system/app/Updater.apk", "-",
            4ad50d3e84cec0dd15963e9432b06baca0351ff6, 1703228,
            5f711a576ddfbf9add5f401f334bd31ff862305b, package_extract_file("patch/system/app/Updater.apk.p"));
set_progress(0.709347);
apply_patch("/system/app/VpnDialogs.apk", "-",
            b8685036c4470363f5a6a34a6a48b6d4dc1dd43a, 12390,
            b7bbd4c1a36851f303619ee6b2c2e2bf14983d7f, package_extract_file("patch/system/app/VpnDialogs.apk.p"));
set_progress(0.709428);
apply_patch("/system/app/Weather.apk", "-",
            968ab44a460c2553f8e7bd6489e524786d03be37, 1594756,
            9f7820cfa75a85648a73706d116c2e47576dc77a, package_extract_file("patch/system/app/Weather.apk.p"));
set_progress(0.719867);
apply_patch("/system/app/WeatherProvider.apk", "-",
            db552a196399770690ffa5b4347fa37ef610e917, 10223,
            2f1192c6536b2b75d6370a640a75c1e9d5e01c47, package_extract_file("patch/system/app/WeatherProvider.apk.p"));
set_progress(0.719934);
apply_patch("/system/app/XiaomiServiceFramework.apk", "-",
            9cee857c0eae470bcdbd73772986bdc445809446, 3471374,
            5bff5ce283e5cf88f8e3792f5dcb8f5cb7e4eb8e, package_extract_file("patch/system/app/XiaomiServiceFramework.apk.p"));
set_progress(0.742658);
apply_patch("/system/app/YellowPage.apk", "-",
            d552e1b93d3335e1659118fa79f8266f089bc30c, 710126,
            e8156ef8793b25a0887b6ba4943825e81485a64e, package_extract_file("patch/system/app/YellowPage.apk.p"));
set_progress(0.747307);
apply_patch("/system/etc/weather_city.db", "-",
            d0e574aca052ae4f8950dd0665356e3b40c31a6f, 296960,
            c48944f9914cf13f3f45f9b465b2a4abadaace7f, package_extract_file("patch/system/etc/weather_city.db.p"));
set_progress(0.749250);
apply_patch("/system/framework/HTCExtension.jar", "-",
            d8c2f00f8afef9ce8ca6f246d0487dbea8b536be, 2832044,
            98827e8c9eb89f3912c18f29f0ecd82239181cb5, package_extract_file("patch/system/framework/HTCExtension.jar.p"));
set_progress(0.767789);
apply_patch("/system/framework/android.policy.jar", "-",
            c73129eb7bf5aa4fe5ca2ded8ee357ad89d6844c, 263025,
            5c6a1e680952de2bac4e2c901f1dc21146e0803d, package_extract_file("patch/system/framework/android.policy.jar.p"));
set_progress(0.769511);
apply_patch("/system/framework/framework-miui-res.apk", "-",
            61f28252074049edb68bbe71b99887701bd399e9, 9398254,
            3af00f3df500a4eabad4150b1fa45eea0660e05b, package_extract_file("patch/system/framework/framework-miui-res.apk.p"));
set_progress(0.831032);
apply_patch("/system/framework/framework-res.apk", "-",
            174f73d34ecc46287a48f4cf9864a9f8a7ca285c, 15178873,
            36a77f9f22c24c6de01d525bad86bcd7178f07dd, package_extract_file("patch/system/framework/framework-res.apk.p"));
set_progress(0.930394);
apply_patch("/system/framework/framework.jar", "-",
            5cfc69a9a6b320b477f52ea243d4a5983918ab78, 4258798,
            8dcc6093af0d507bf5c46b685c58cafac9ecdcc6, package_extract_file("patch/system/framework/framework.jar.p"));
set_progress(0.958272);
apply_patch("/system/framework/framework2.jar", "-",
            b7b537b71e9277dc76ae0bf637cd100b3c5905ba, 2999426,
            3bfe2e381878019992a592399e6690d080012808, package_extract_file("patch/system/framework/framework2.jar.p"));
set_progress(0.977906);
apply_patch("/system/framework/services.jar", "-",
            1a4617d1ffafb7ec221680d6606424a9c380ea84, 1539730,
            10d148d926ad73252899de8af8718fdb56b16331, package_extract_file("patch/system/framework/services.jar.p"));
set_progress(0.987985);
apply_patch("/system/media/theme/default/alarmscreen", "-",
            396b13d7b770c26fbb4d3ed3401f3dbe5136c879, 638705,
            b7b02e4aa2ab399842fd07678e1bcecc2b002a77, package_extract_file("patch/system/media/theme/default/alarmscreen.p"));
set_progress(0.992166);
apply_patch("/system/media/theme/default/icons", "-",
            74f8b154208a9cbea2d8f1a31c2910154ab544e9, 440011,
            7377055a96b76c00d183453f7bde8e9b36d96a5d, package_extract_file("patch/system/media/theme/default/icons.p"));
set_progress(0.995047);
apply_patch("/system/media/theme/default/lockscreen", "-",
            19682f7a77a9e2afb05451de6bd81fa493fb3a3d, 749325,
            9b0d4209783d8aff7960f02bdd08ecfaa1469617, package_extract_file("patch/system/media/theme/default/lockscreen.p"));
set_progress(0.999952);
show_progress(0.100000, 10);
ui_print("Unpacking new files...");
package_extract_dir("system", "/system");
package_extract_dir("data", "/data");
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, 0, 0644, "/system/bin/clockd");
set_perm(0, 0, 0644, "/system/bin/dmagent");
set_perm(0, 3003, 02750, "/system/bin/netcfg");
set_perm(0, 3004, 02755, "/system/bin/ping");
set_perm(0, 0, 0644, "/system/bin/qb_offmode_alarm");
set_perm(0, 2000, 06755, "/system/bin/reboot");
set_perm(0, 2000, 06750, "/system/bin/run-as");
set_perm_recursive(1002, 1002, 0755, 0440, "/system/etc/bluetooth");
set_perm(0, 0, 0755, "/system/etc/bluetooth");
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, 0, 0400, "/system/etc/hsml.key");
set_perm_recursive(0, 2000, 0755, 0750, "/system/etc/init.d");
set_perm(0, 0, 0755, "/system/etc/init.d");
set_perm(0, 0, 0644, "/system/etc/init.d/placeholder");
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/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, 0644, "/system/xbin/reboot-monitor.sh");
set_perm(0, 1000, 06750, "/system/xbin/shelld");
set_perm(0, 0, 06755, "/system/xbin/su");
ui_print("Patching remaining system files...");
apply_patch("/system/build.prop", "-",
            293197a5c84bfb3540cdb1dc648ee08842d505c7, 7355,
            93e070ab0255be7452945e67275b87513ce2a3a8, package_extract_file("patch/system/build.prop.p"));
set_perm(0, 0, 0644, "/system/build.prop");
unmount("/data");
unmount("/system");
