mount("ext4", "EMMC", "/dev/block/mmcblk0p12", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p13", "/data");
assert(file_getprop("/system/build.prop", "ro.build.fingerprint") == "Huawei/U8860/hwu8860:4.0.3/HuaweiU8860/CHNC00B923SP03:user/ota-rel-keys,release-keys" ||
       file_getprop("/system/build.prop", "ro.build.fingerprint") == "Huawei/U8860/hwu8860:4.0.3/HuaweiU8860/CHNC00B923SP03:user/ota-rel-keys,release-keys");
assert(getprop("ro.product.device") == "hwu8860" ||
       getprop("ro.build.product") == "hwu8860" || getprop("ro.product.device") == "u8860" || getprop("ro.build.product") == "u8860");
delete_recursive("/data/dalvik-cache");
ui_print("Verifying current system...");
show_progress(0.100000, 0);
assert(apply_patch_check("/system/app/AirkanPhoneService.apk", "dad9a16266b192581eb5544980eae040ee2a3f49", "d14f86c52fc2623afac8a8c7b2fb8f4ea1bb6404"));
set_progress(0.005659);
assert(apply_patch_check("/system/app/AntiSpam.apk", "c3cb5aaa33444374624334946158eba29bda6f29", "ec248c7cf211a0fa8a9ba30934e651165ad2ad65"));
set_progress(0.007822);
assert(apply_patch_check("/system/app/Backup.apk", "e868b6c007247fe257d814aad4c14dae5480dc29", "baae0f5f28be69acaa9a4c0aecca8d14a3682738"));
set_progress(0.014322);
assert(apply_patch_check("/system/app/Browser.apk", "6d047681e4d994370d72731a2c4c7d0ead1e7f7c", "92096cb9453953cada9d0d2a31df9cf247c44bbd"));
set_progress(0.070351);
assert(apply_patch_check("/system/app/BugReport.apk", "9abdde3b49636f99984107c49793e6e38729d733", "f6c9ac713b793aff0410bd58a95c3bc5d984bf35"));
set_progress(0.072769);
assert(apply_patch_check("/system/app/Calculator.apk", "6d1649bb12c0c619937fbb90853bfa77695e47ca", "57d6093a07350b368c87c5de081010fab9742cfe"));
set_progress(0.074539);
assert(apply_patch_check("/system/app/Calendar.apk", "1e6c79879d5628ad7a31468a5c10ca9b8ebe6d5b", "f7d99e4f9d871b2a70bcb14bae07b527c4d3ec97"));
set_progress(0.084436);
assert(apply_patch_check("/system/app/CalendarProvider.apk", "8088bab2e95f81d897f6d075aacb2092c283d6b3", "488c6c067b2c1e97fad031d1b762c8363de53405"));
set_progress(0.086189);
assert(apply_patch_check("/system/app/CloudService.apk", "21f5b99114a04fda420bda87e403b45530d694bd", "aef6a726c80da81b00aa9be358300b3d40fbbb42"));
set_progress(0.089038);
assert(apply_patch_check("/system/app/Contacts.apk", "41b94480d395e8edc4ca4aa411f0ee15c5b3fdeb", "2271bb8df521529024846dbad64203a3b02439bc"));
set_progress(0.131437);
assert(apply_patch_check("/system/app/ContactsProvider.apk", "083c6182ad4b83b88d488df7bb38d2c522bab450", "e1d2b776299cfe66f4216d899517fdf07fa8eca7"));
set_progress(0.138707);
assert(apply_patch_check("/system/app/DataHubProvider.apk", "f30a9a566001e7b4bf39e3a977bd2b4a3ea79280", "49662a68ff413418f9f8de1f728709ef24aa3a9b"));
set_progress(0.138842);
assert(apply_patch_check("/system/app/DownloadProvider.apk", "864478ab57e3f90ad34e3c1d3c56b1833c1ca4b4", "7a305982c3b4da02d8b9a1e12fe46d64f9c03933"));
set_progress(0.140215);
assert(apply_patch_check("/system/app/DownloadProviderUi.apk", "fed53135c3568c0bd332f27009a2d7b996ec9470", "2332b88bd731d79215449f810304cbf29e323526"));
set_progress(0.141981);
assert(apply_patch_check("/system/app/Email.apk", "017f829535ef8d8e93010fd630376cd641aa63a2", "70cef1f445ab7d63054a19736227c0f21efda297"));
set_progress(0.161274);
assert(apply_patch_check("/system/app/FileExplorer.apk", "1bbf2c98e9551b2334ce84e8845d8b547d4c44e8", "54f2b7f25b5027c8c2d4c1522bd9a8d31cc1eda6"));
set_progress(0.189120);
assert(apply_patch_check("/system/app/LatinIME.apk", "74884d1a158a668ef071d7e09128ac4a104658a9", "dc68ffd6a7ef281af4d2969f275ad7d8b94445a0"));
set_progress(0.209070);
assert(apply_patch_check("/system/app/MiuiGallery.apk", "ddb9accceff70dedaf6da013602a6e8645de456e", "05b27a96111a57a03a3e7069cfeeb561131374be"));
set_progress(0.258019);
assert(apply_patch_check("/system/app/MiuiSystemUI.apk", "ff4cc3e480ab0332af1edd64fc2a50a43f1283f5", "83728c1255384114e5182b42089c739a18a37f44"));
set_progress(0.291184);
assert(apply_patch_check("/system/app/MiuiVideoPlayer.apk", "3bb07b95a7a761725eade0f0c4b5b93102afdaca", "2129152eb31446390f1612e82a4aa64dd291d3da"));
set_progress(0.301801);
assert(apply_patch_check("/system/app/Mms.apk", "267a208de94b02db8a5f7e92c52678a80b0d82d3", "f1a30023f0cdd24765bfe2d4d48fb6f3cbe22ab2"));
set_progress(0.388631);
assert(apply_patch_check("/system/app/Music.apk", "b7b9d2b10851930768244c61be0dd2bb712c266c", "9897c008cdfa0dd422784d65852641ba7251f3a3"));
set_progress(0.445452);
assert(apply_patch_check("/system/app/NetworkAssistant.apk", "8a06b304608ae818fe414cffc5acfa4beff87409", "55d73f59bd2e4125e590e8f06427d773d243d345"));
set_progress(0.449717);
assert(apply_patch_check("/system/app/Notes.apk", "9528472a153d80e9b74cd32778070e3446084ac3", "8b2875f4ccdb367b4f8219d2319ef73c998a1d97"));
set_progress(0.495501);
assert(apply_patch_check("/system/app/PackageInstaller.apk", "df3a269a41aaab1d98d4aef35f6c0114f94b752d", "8709d83af5fd8f192adf806794f3393c245076f4"));
set_progress(0.496256);
assert(apply_patch_check("/system/app/Phone.apk", "c42a216776aa15af0201abe56b1fe121759da7f0", "aca1304c4028050b4ea47fee5abd5c3f17857a51"));
set_progress(0.531380);
assert(apply_patch_check("/system/app/Provision.apk", "43f69bc6c8a0ead06375db8516cfebc7958e4f76", "e3255d4f855458cf72ab914b120ae85efe397a61"));
set_progress(0.531434);
assert(apply_patch_check("/system/app/QuickSearchBox.apk", "60ab6c93e5b8705963e8b65c8472d47f13ba0a51", "dd34a38b50cc627cdd3c91b5c2c8fb62c0eefbbe"));
set_progress(0.536778);
assert(apply_patch_check("/system/app/Settings.apk", "fe7792150a9ec06549c865b3f3f637b1b60a513a", "746c42cc8d395af5a72ca694633b8bdee97307ad"));
set_progress(0.589661);
assert(apply_patch_check("/system/app/SoundRecorder.apk", "39f9dfbf38ef98541ad8406819a7d45a16e20b8f", "96f76ac86fd563a8ed69b83e737038e0db5b96d7"));
set_progress(0.606299);
assert(apply_patch_check("/system/app/TelephonyProvider.apk", "ef797f3afafc426e3c30b2f1f5cd85131edf643a", "6d36a91166468f2c5c6cc944a3ede2870041ffdc"));
set_progress(0.607428);
assert(apply_patch_check("/system/app/TelocationProvider.apk", "b7fe67673b70f352781478bdb2a57ff0357c4b25", "0156e5c95a2a6e0f54c3e62dd7537f0a51cbe17c"));
set_progress(0.607641);
assert(apply_patch_check("/system/app/ThemeManager.apk", "adfef989232e359ab5c65e421d2f36ece2d0202b", "7f5179cb75b108c7eb4caf737f592ec363bfa915"));
set_progress(0.616201);
assert(apply_patch_check("/system/app/Updater.apk", "53de7f7c746929fcbf5e7d7cd576c5c046efeb4f", "62c1c9bf7d770b6bcbf8fdd56d71ed2fbc55d8e8"));
set_progress(0.633998);
assert(apply_patch_check("/system/app/VpnDialogs.apk", "ba431bab65991be0c2d56372ea859c682827a258", "6bf4b03b2b389bdff3f3d64af99c40dd260943aa"));
set_progress(0.634187);
assert(apply_patch_check("/system/app/WeatherProvider.apk", "8d8e2e233c3b4720e62f1991d3ab5c6541903666", "29c1d58aa82a1297831937103beb936504e26020"));
set_progress(0.634328);
assert(apply_patch_check("/system/app/XiaomiServiceFramework.apk", "8ac46b7b10861dc91b7af7940c07a2aaa1531d1e", "918a1f46f6ffeaa334cd30027281a1f618186afa"));
set_progress(0.646824);
assert(apply_patch_check("/system/build.prop", "335797d4c34444de3f5d2947e2a05953dd41b38d", "bc279e0f219f14bdb22799d10a2ac2f10fbfac32"));
set_progress(0.647034);
assert(apply_patch_check("/system/etc/unicode_py_index.td", "06033859846df779a28d46cacd867dc7c2ef3b5d", "e6013f3555284d9307607923d3e97eec557dc838"));
set_progress(0.647938);
assert(apply_patch_check("/system/framework/android.policy.jar", "9016e547b81ff530cab8671f47dfd7ab48bd5341", "ec3a8360ab48fbf45a545b43a9bf628f797f6e8d"));
set_progress(0.652672);
assert(apply_patch_check("/system/framework/framework-miui-res.apk", "2dea6bc30afe50b396b9f71554306e2577bbf612", "479b13ee931f7a3ca170c7f62c3b6eddd59ad7ca"));
set_progress(0.695303);
assert(apply_patch_check("/system/framework/framework.jar", "f173c243cc59beafad62c521436091db01d9f134", "1db1422947368a0c207b535ad22efdcaffed45ec"));
set_progress(0.756196);
assert(apply_patch_check("/system/framework/framework2.jar", "0f174ae2c29db01e16a5f0cef4484f6ca150217f", "753e95634046141e2bbf395b19909084db2e332a"));
set_progress(0.767032);
assert(apply_patch_check("/system/framework/miui-framework.jar", "b2b236fc81b77f315ecef5b7940b615c7ff241ff", "add294a129f6124aced37ccc7a60567d1737c925"));
set_progress(0.773049);
assert(apply_patch_check("/system/framework/services.jar", "f7b72e5d7586b747658f93a2bcef400e45fb6b5c", "612ff4d7d962ffeda724cae1ae05a797452abc33"));
set_progress(0.787357);
assert(apply_patch_check("/system/media/bootanimation.zip", "43b7712d5d5a6d1db0ef606a6f3518e244103846", "04806010b5d6d3245aca4f539d46e138e49d9b3d"));
set_progress(0.803875);
assert(apply_patch_check("/system/media/theme/default/icons", "24e3c58d550e9961d479014d45d6cbe40e98d2b8", "7e55f84269c82f6c6870b6970ca2371631e147ed"));
set_progress(0.827503);
assert(apply_patch_check("/system/media/theme/default/lockscreen", "96bc3ef87bfa873b6a8218170da44c423c616a3d", "039e55c60ffb7fb2828c898573b72ad9e2a1ab5f"));
set_progress(0.837440);
assert(apply_patch_space(10800358));

# ---- 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", "-",
            8f709ba5f3e6d28b08be015f30336ee904f32bbb, 10800386,
            6163e9abf99bac007c01f27b5ff0967f353c82f9, package_extract_file("patch/data/preinstall_apps/VoiceAssist.apk.p"));
set_progress(0.162445);
apply_patch("/system/app/AirkanPhoneService.apk", "-",
            dad9a16266b192581eb5544980eae040ee2a3f49, 377233,
            d14f86c52fc2623afac8a8c7b2fb8f4ea1bb6404, package_extract_file("patch/system/app/AirkanPhoneService.apk.p"));
set_progress(0.168119);
apply_patch("/system/app/AntiSpam.apk", "-",
            c3cb5aaa33444374624334946158eba29bda6f29, 143715,
            ec248c7cf211a0fa8a9ba30934e651165ad2ad65, package_extract_file("patch/system/app/AntiSpam.apk.p"));
set_progress(0.170281);
apply_patch("/system/app/Backup.apk", "-",
            e868b6c007247fe257d814aad4c14dae5480dc29, 431860,
            baae0f5f28be69acaa9a4c0aecca8d14a3682738, package_extract_file("patch/system/app/Backup.apk.p"));
set_progress(0.176776);
apply_patch("/system/app/Browser.apk", "-",
            6d047681e4d994370d72731a2c4c7d0ead1e7f7c, 3722495,
            92096cb9453953cada9d0d2a31df9cf247c44bbd, package_extract_file("patch/system/app/Browser.apk.p"));
set_progress(0.232765);
apply_patch("/system/app/BugReport.apk", "-",
            9abdde3b49636f99984107c49793e6e38729d733, 160645,
            f6c9ac713b793aff0410bd58a95c3bc5d984bf35, package_extract_file("patch/system/app/BugReport.apk.p"));
set_progress(0.235181);
apply_patch("/system/app/Calculator.apk", "-",
            6d1649bb12c0c619937fbb90853bfa77695e47ca, 117586,
            57d6093a07350b368c87c5de081010fab9742cfe, package_extract_file("patch/system/app/Calculator.apk.p"));
set_progress(0.236950);
apply_patch("/system/app/Calendar.apk", "-",
            1e6c79879d5628ad7a31468a5c10ca9b8ebe6d5b, 657619,
            f7d99e4f9d871b2a70bcb14bae07b527c4d3ec97, package_extract_file("patch/system/app/Calendar.apk.p"));
set_progress(0.246841);
apply_patch("/system/app/CalendarProvider.apk", "-",
            8088bab2e95f81d897f6d075aacb2092c283d6b3, 116460,
            488c6c067b2c1e97fad031d1b762c8363de53405, package_extract_file("patch/system/app/CalendarProvider.apk.p"));
set_progress(0.248592);
apply_patch("/system/app/CloudService.apk", "-",
            21f5b99114a04fda420bda87e403b45530d694bd, 189384,
            aef6a726c80da81b00aa9be358300b3d40fbbb42, package_extract_file("patch/system/app/CloudService.apk.p"));
set_progress(0.251441);
apply_patch("/system/app/Contacts.apk", "-",
            41b94480d395e8edc4ca4aa411f0ee15c5b3fdeb, 2816950,
            2271bb8df521529024846dbad64203a3b02439bc, package_extract_file("patch/system/app/Contacts.apk.p"));
set_progress(0.293810);
apply_patch("/system/app/ContactsProvider.apk", "-",
            083c6182ad4b83b88d488df7bb38d2c522bab450, 482987,
            e1d2b776299cfe66f4216d899517fdf07fa8eca7, package_extract_file("patch/system/app/ContactsProvider.apk.p"));
set_progress(0.301074);
apply_patch("/system/app/DataHubProvider.apk", "-",
            f30a9a566001e7b4bf39e3a977bd2b4a3ea79280, 8935,
            49662a68ff413418f9f8de1f728709ef24aa3a9b, package_extract_file("patch/system/app/DataHubProvider.apk.p"));
set_progress(0.301208);
apply_patch("/system/app/DownloadProvider.apk", "-",
            864478ab57e3f90ad34e3c1d3c56b1833c1ca4b4, 91258,
            7a305982c3b4da02d8b9a1e12fe46d64f9c03933, package_extract_file("patch/system/app/DownloadProvider.apk.p"));
set_progress(0.302581);
apply_patch("/system/app/DownloadProviderUi.apk", "-",
            fed53135c3568c0bd332f27009a2d7b996ec9470, 117289,
            2332b88bd731d79215449f810304cbf29e323526, package_extract_file("patch/system/app/DownloadProviderUi.apk.p"));
set_progress(0.304345);
apply_patch("/system/app/Email.apk", "-",
            017f829535ef8d8e93010fd630376cd641aa63a2, 1281949,
            70cef1f445ab7d63054a19736227c0f21efda297, package_extract_file("patch/system/app/Email.apk.p"));
set_progress(0.323626);
apply_patch("/system/app/FileExplorer.apk", "-",
            1bbf2c98e9551b2334ce84e8845d8b547d4c44e8, 1850261,
            54f2b7f25b5027c8c2d4c1522bd9a8d31cc1eda6, package_extract_file("patch/system/app/FileExplorer.apk.p"));
set_progress(0.351456);
apply_patch("/system/app/LatinIME.apk", "-",
            74884d1a158a668ef071d7e09128ac4a104658a9, 1325434,
            dc68ffd6a7ef281af4d2969f275ad7d8b94445a0, package_extract_file("patch/system/app/LatinIME.apk.p"));
set_progress(0.371391);
apply_patch("/system/app/MiuiGallery.apk", "-",
            ddb9accceff70dedaf6da013602a6e8645de456e, 3255481,
            05b27a96111a57a03a3e7069cfeeb561131374be, package_extract_file("patch/system/app/MiuiGallery.apk.p"));
set_progress(0.420356);
apply_patch("/system/app/MiuiSystemUI.apk", "-",
            ff4cc3e480ab0332af1edd64fc2a50a43f1283f5, 2203438,
            83728c1255384114e5182b42089c739a18a37f44, package_extract_file("patch/system/app/MiuiSystemUI.apk.p"));
set_progress(0.453497);
apply_patch("/system/app/MiuiVideoPlayer.apk", "-",
            3bb07b95a7a761725eade0f0c4b5b93102afdaca, 706256,
            2129152eb31446390f1612e82a4aa64dd291d3da, package_extract_file("patch/system/app/MiuiVideoPlayer.apk.p"));
set_progress(0.464119);
apply_patch("/system/app/Mms.apk", "-",
            267a208de94b02db8a5f7e92c52678a80b0d82d3, 5768882,
            f1a30023f0cdd24765bfe2d4d48fb6f3cbe22ab2, package_extract_file("patch/system/app/Mms.apk.p"));
set_progress(0.550887);
apply_patch("/system/app/Music.apk", "-",
            b7b9d2b10851930768244c61be0dd2bb712c266c, 3775271,
            9897c008cdfa0dd422784d65852641ba7251f3a3, package_extract_file("patch/system/app/Music.apk.p"));
set_progress(0.607670);
apply_patch("/system/app/NetworkAssistant.apk", "-",
            8a06b304608ae818fe414cffc5acfa4beff87409, 283354,
            55d73f59bd2e4125e590e8f06427d773d243d345, package_extract_file("patch/system/app/NetworkAssistant.apk.p"));
set_progress(0.611932);
apply_patch("/system/app/Notes.apk", "-",
            9528472a153d80e9b74cd32778070e3446084ac3, 3041816,
            8b2875f4ccdb367b4f8219d2319ef73c998a1d97, package_extract_file("patch/system/app/Notes.apk.p"));
set_progress(0.657683);
apply_patch("/system/app/PackageInstaller.apk", "-",
            df3a269a41aaab1d98d4aef35f6c0114f94b752d, 50205,
            8709d83af5fd8f192adf806794f3393c245076f4, package_extract_file("patch/system/app/PackageInstaller.apk.p"));
set_progress(0.658438);
apply_patch("/system/app/Phone.apk", "-",
            c42a216776aa15af0201abe56b1fe121759da7f0, 2333737,
            aca1304c4028050b4ea47fee5abd5c3f17857a51, package_extract_file("patch/system/app/Phone.apk.p"));
set_progress(0.693539);
apply_patch("/system/app/Provision.apk", "-",
            43f69bc6c8a0ead06375db8516cfebc7958e4f76, 3596,
            e3255d4f855458cf72ab914b120ae85efe397a61, package_extract_file("patch/system/app/Provision.apk.p"));
set_progress(0.693593);
apply_patch("/system/app/QuickSearchBox.apk", "-",
            60ab6c93e5b8705963e8b65c8472d47f13ba0a51, 355039,
            dd34a38b50cc627cdd3c91b5c2c8fb62c0eefbbe, package_extract_file("patch/system/app/QuickSearchBox.apk.p"));
set_progress(0.698933);
apply_patch("/system/app/Settings.apk", "-",
            fe7792150a9ec06549c865b3f3f637b1b60a513a, 3513509,
            746c42cc8d395af5a72ca694633b8bdee97307ad, package_extract_file("patch/system/app/Settings.apk.p"));
set_progress(0.751779);
apply_patch("/system/app/SoundRecorder.apk", "-",
            39f9dfbf38ef98541ad8406819a7d45a16e20b8f, 1104925,
            96f76ac86fd563a8ed69b83e737038e0db5b96d7, package_extract_file("patch/system/app/SoundRecorder.apk.p"));
set_progress(0.768397);
apply_patch("/system/app/TelephonyProvider.apk", "-",
            ef797f3afafc426e3c30b2f1f5cd85131edf643a, 75180,
            6d36a91166468f2c5c6cc944a3ede2870041ffdc, package_extract_file("patch/system/app/TelephonyProvider.apk.p"));
set_progress(0.769528);
apply_patch("/system/app/TelocationProvider.apk", "-",
            b7fe67673b70f352781478bdb2a57ff0357c4b25, 14158,
            0156e5c95a2a6e0f54c3e62dd7537f0a51cbe17c, package_extract_file("patch/system/app/TelocationProvider.apk.p"));
set_progress(0.769741);
apply_patch("/system/app/ThemeManager.apk", "-",
            adfef989232e359ab5c65e421d2f36ece2d0202b, 568966,
            7f5179cb75b108c7eb4caf737f592ec363bfa915, package_extract_file("patch/system/app/ThemeManager.apk.p"));
set_progress(0.778299);
apply_patch("/system/app/Updater.apk", "-",
            53de7f7c746929fcbf5e7d7cd576c5c046efeb4f, 1182513,
            62c1c9bf7d770b6bcbf8fdd56d71ed2fbc55d8e8, package_extract_file("patch/system/app/Updater.apk.p"));
set_progress(0.796084);
apply_patch("/system/app/VpnDialogs.apk", "-",
            ba431bab65991be0c2d56372ea859c682827a258, 12538,
            6bf4b03b2b389bdff3f3d64af99c40dd260943aa, package_extract_file("patch/system/app/VpnDialogs.apk.p"));
set_progress(0.796273);
apply_patch("/system/app/WeatherProvider.apk", "-",
            8d8e2e233c3b4720e62f1991d3ab5c6541903666, 9371,
            29c1d58aa82a1297831937103beb936504e26020, package_extract_file("patch/system/app/WeatherProvider.apk.p"));
set_progress(0.796414);
apply_patch("/system/app/XiaomiServiceFramework.apk", "-",
            8ac46b7b10861dc91b7af7940c07a2aaa1531d1e, 835563,
            918a1f46f6ffeaa334cd30027281a1f618186afa, package_extract_file("patch/system/app/XiaomiServiceFramework.apk.p"));
set_progress(0.808981);
apply_patch("/system/etc/unicode_py_index.td", "-",
            06033859846df779a28d46cacd867dc7c2ef3b5d, 60056,
            e6013f3555284d9307607923d3e97eec557dc838, package_extract_file("patch/system/etc/unicode_py_index.td.p"));
set_progress(0.809885);
apply_patch("/system/framework/android.policy.jar", "-",
            9016e547b81ff530cab8671f47dfd7ab48bd5341, 314561,
            ec3a8360ab48fbf45a545b43a9bf628f797f6e8d, package_extract_file("patch/system/framework/android.policy.jar.p"));
set_progress(0.814616);
apply_patch("/system/framework/framework-miui-res.apk", "-",
            2dea6bc30afe50b396b9f71554306e2577bbf612, 2832404,
            479b13ee931f7a3ca170c7f62c3b6eddd59ad7ca, package_extract_file("patch/system/framework/framework-miui-res.apk.p"));
set_progress(0.857217);
apply_patch("/system/framework/framework.jar", "-",
            f173c243cc59beafad62c521436091db01d9f134, 4046405,
            1db1422947368a0c207b535ad22efdcaffed45ec, package_extract_file("patch/system/framework/framework.jar.p"));
set_progress(0.918078);
apply_patch("/system/framework/framework2.jar", "-",
            0f174ae2c29db01e16a5f0cef4484f6ca150217f, 719993,
            753e95634046141e2bbf395b19909084db2e332a, package_extract_file("patch/system/framework/framework2.jar.p"));
set_progress(0.928907);
apply_patch("/system/framework/miui-framework.jar", "-",
            b2b236fc81b77f315ecef5b7940b615c7ff241ff, 402033,
            add294a129f6124aced37ccc7a60567d1737c925, package_extract_file("patch/system/framework/miui-framework.jar.p"));
set_progress(0.934954);
apply_patch("/system/framework/services.jar", "-",
            f7b72e5d7586b747658f93a2bcef400e45fb6b5c, 950678,
            612ff4d7d962ffeda724cae1ae05a797452abc33, package_extract_file("patch/system/framework/services.jar.p"));
set_progress(0.949253);
apply_patch("/system/media/bootanimation.zip", "-",
            43b7712d5d5a6d1db0ef606a6f3518e244103846, 1129978,
            04806010b5d6d3245aca4f539d46e138e49d9b3d, package_extract_file("patch/system/media/bootanimation.zip.p"));
set_progress(0.966248);
apply_patch("/system/media/theme/default/icons", "-",
            24e3c58d550e9961d479014d45d6cbe40e98d2b8, 1569814,
            7e55f84269c82f6c6870b6970ca2371631e147ed, package_extract_file("patch/system/media/theme/default/icons.p"));
set_progress(0.989859);
apply_patch("/system/media/theme/default/lockscreen", "-",
            96bc3ef87bfa873b6a8218170da44c423c616a3d, 660248,
            039e55c60ffb7fb2828c898573b72ad9e2a1ab5f, package_extract_file("patch/system/media/theme/default/lockscreen.p"));
set_progress(0.999790);
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, 3003, 06755, "/system/bin/ip");
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_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, 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_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/busybox");
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", "-",
            335797d4c34444de3f5d2947e2a05953dd41b38d, 13961,
            bc279e0f219f14bdb22799d10a2ac2f10fbfac32, package_extract_file("patch/system/build.prop.p"));
set_perm(0, 0, 0644, "/system/build.prop");
unmount("/data");
unmount("/system");
