mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/APP", "/system");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/UDA", "/data");
assert(file_getprop("/system/build.prop", "ro.build.fingerprint") == "K-TOUCH/enterprise/enterprise:4.1.1/JRO03C/TBW780823_8370_V0323:user/release-keys" ||
       file_getprop("/system/build.prop", "ro.build.fingerprint") == "K-TOUCH/enterprise/enterprise:4.1.1/JRO03C/TBW780823_8370_V0323:user/release-keys");
assert(getprop("ro.product.device") == "enterprise" ||
       getprop("ro.build.product") == "enterprise" || getprop("ro.product.device") == "v8" || getprop("ro.build.product") == "v8");
ui_print("Verifying current system...");
show_progress(0.100000, 0);
assert(apply_patch_check("/system/app/AirkanPhoneService.apk", "1d0ba9e80143462cdd05ae3b1330b07bb1056d06", "c622f94f35546300fd96ac965f5e203a6bb9f564"));
set_progress(0.002323);
assert(apply_patch_check("/system/app/AntiSpam.apk", "a23470910daf23741757675ce58c02d962969f69", "2121f6748837be059b300f28c5f7cc8093cbf4f9"));
set_progress(0.003102);
assert(apply_patch_check("/system/app/ApplicationsProvider.apk", "cc3a83c991148cd20d4735eda0ba3cc6745ff9f6", "762c06b4347c664ba2f28d999aa23a09c60a905e"));
set_progress(0.003202);
assert(apply_patch_check("/system/app/AssistantGps.apk", "b98f1bb403d39659ec6c744e7f2e30c4cfc1c043", "3cb61ba3bdc5ea041044cbc80e665e38e72fefd4"));
set_progress(0.003443);
assert(apply_patch_check("/system/app/Backup.apk", "ae5981afe41911fb2fcdfb81ea717fab02975ad9", "88e1949f9d5ef86d3e8241faef766ddb5f995839"));
set_progress(0.009373);
assert(apply_patch_check("/system/app/BackupRestoreConfirmation.apk", "3d756c1aa9eaefc6478a6916e18d3db72ec93070", "bfe5be07b673f237b773f05e7a12887ad868aeb1"));
set_progress(0.009456);
assert(apply_patch_check("/system/app/Bluetooth.apk", "1856adb53200704ca30060730d3192cae21b8e4f", "92efc7701e312aab8b445e9df3b9183d833fcc4f"));
set_progress(0.010298);
assert(apply_patch_check("/system/app/Browser.apk", "0f0ddbb00399f7d4172367469dfe8847849e00e1", "f95a78d4b1fcf0283e4b73d90e6bfb893f525ddd"));
set_progress(0.051382);
assert(apply_patch_check("/system/app/BugReport.apk", "d4cd4ed68b15ff9d0962138ceb1d6e050204207b", "b555eeda082ded90852cb025822b7fdf466ff6cc"));
set_progress(0.052427);
assert(apply_patch_check("/system/app/Calculator.apk", "f9a9ee3c1555bbf6cd1e48d5e8ac80cee7c83b85", "6d97e277a21d83c3da827fd40ef1f082d96f8e20"));
set_progress(0.064151);
assert(apply_patch_check("/system/app/Calendar.apk", "c1e702cf67c4e8690bcba2e6c230ed725f329312", "6823523289c603d8d14b79165ba605d958ec6717"));
set_progress(0.071725);
assert(apply_patch_check("/system/app/CalendarProvider.apk", "4b66c8674c47755747e2b4feda7243fe6e1a5ac6", "e2f7833b43982a4ad7e776e3c2c66ea80db1e257"));
set_progress(0.072662);
assert(apply_patch_check("/system/app/CertInstaller.apk", "fb6ff365e8b32ae3f13baa2efdd594287da8a28d", "4ad86319f375fdb8e2d5cd505d91b2b9df5a6720"));
set_progress(0.072832);
assert(apply_patch_check("/system/app/CloudService.apk", "58ee1d7464206bfe264d02a909434ef5a756c072", "0f37d12c94dbe10adedb3cbbaf00e74b22c8bbd2"));
set_progress(0.074340);
assert(apply_patch_check("/system/app/Contacts.apk", "bccc44302e40c6593ced9c6630b43b82c8f6f2b2", "93ed6fc140b1f506e227df269ea672fd954a7c52"));
set_progress(0.098455);
assert(apply_patch_check("/system/app/ContactsProvider.apk", "707ee11e84bc03d76e22b7964e5b3e55a069f69e", "b898c98978fafac4f835261b1a2765cbb5941d58"));
set_progress(0.100348);
assert(apply_patch_check("/system/app/CpuSettings.apk", "108c5516f3e81c670d9f0d653097ea6a3ce68d12", "d99d0b133a8dc98a9b66d276ac6dc9f9b89790d4"));
set_progress(0.102416);
assert(apply_patch_check("/system/app/DataHubProvider.apk", "8ebfa580c2ad8b861ba6c68bea7b9741e2833240", "0674061d7fb88c17fb40f7d0ed7df5491eb950cb"));
set_progress(0.102480);
assert(apply_patch_check("/system/app/DefaultContainerService.apk", "1e5d4ec9250a0675b48b5ba570a3fa12b3e9cca9", "b632094b18d3c8e3dc44273d7e0302c4e9bead83"));
set_progress(0.102558);
assert(apply_patch_check("/system/app/DeskClock.apk", "038ab9274d45b5c41e8cfabd4c940074864228ea", "36c7d9938ce2e496076427dfa7a421179f9a39ec"));
set_progress(0.111294);
assert(apply_patch_check("/system/app/DolbyMobileAudioEffectService.apk", "27116d2b1d737c755e4777cd630342f204e53498", "94ad72a81ef33f1976f327dfcf07d338883de67e"));
set_progress(0.111351);
assert(apply_patch_check("/system/app/DownloadProvider.apk", "e45c04cc55a22c8fdc6fd9e40a5fc8e7d56d8a3d", "fadc2437a3630abca0005f6f22bcf98554bd11bd"));
set_progress(0.112109);
assert(apply_patch_check("/system/app/DownloadProviderUi.apk", "6cc3c938997d2eeee24ef93fbb51a527e97f90e9", "c413d382214ea772576e6f3d888aa259e19d23ae"));
set_progress(0.112714);
assert(apply_patch_check("/system/app/DrmProvider.apk", "762932bb118900a087064a604f00833566cb216c", "0fc38d68d6aeae7e032f63c0b555bb1c8aaddb76"));
set_progress(0.112776);
assert(apply_patch_check("/system/app/Email.apk", "25b8d9e46ef148fee7aa1296562266e460cc7faa", "87fcbc124ae85e9acad7561ed0328b17ec7d36dc"));
set_progress(0.129100);
assert(apply_patch_check("/system/app/Exchange2.apk", "ece16d3a945b3de20151654a8ca272c092b06bf6", "d43f1ca13971ca99b1f4080469f416ba45777284"));
set_progress(0.133725);
assert(apply_patch_check("/system/app/FileExplorer.apk", "8370106359a0a7a3e0454dca7c7dcb9e9786edcb", "6984ffada045b20eaedec3a0191033ee03331b8c"));
set_progress(0.145828);
assert(apply_patch_check("/system/app/Gallery2.apk", "3bc11c91714d523d37597234f52bb109e7236ef7", "cd3297dfced55eb254a8dd4eb93a9d217eccb802"));
set_progress(0.185431);
assert(apply_patch_check("/system/app/HiFiToggle.apk", "24eea0b742c7acd26b55c552973edfaab3517fde", "68ee17e3c75e92ec48bdb17f6162d9be2b4d6175"));
set_progress(0.187779);
assert(apply_patch_check("/system/app/InputDevices.apk", "26b1a33a75f5242fbc7d8f8605ea5b30515613cf", "70d0856165da0468fe28653cddafae1678ff5965"));
set_progress(0.188061);
assert(apply_patch_check("/system/app/KTDaemon.apk", "9d4640eb63a533d02956d5886110c82cf67ee843", "1084c0d2117cd2fe6b0a5033340f4945add2962c"));
set_progress(0.188279);
assert(apply_patch_check("/system/app/KeyChain.apk", "fb1ab3c186b993843188226235130e6db17da748", "57d350c10298ee386055edec29fe8ed7af531b74"));
set_progress(0.188404);
assert(apply_patch_check("/system/app/LatinIME.apk", "a66301f7717546b32d0e96d694f8b65a3709babd", "4f76e14b85eeb82eab00a2616a76d78fd537777f"));
set_progress(0.238817);
assert(apply_patch_check("/system/app/LiveWallpapersPicker.apk", "947d24498beb9b6b18aaca8b5e609d99304e8dc4", "0b5c323440846a352cb379844cfbbfcca12063dd"));
set_progress(0.240009);
assert(apply_patch_check("/system/app/MMI.apk", "25ca860fabb182cbe54016d8b6d3a5058a4456ec", "495d151747dd4f40f267d1b50d7c8f098993bdca"));
set_progress(0.246008);
assert(apply_patch_check("/system/app/MediaProvider.apk", "4551db7e368f13b012fd154b4caadfdb9e637521", "8c53ca185261e96ccc720f80a5a15d13e9a33f50"));
set_progress(0.246406);
assert(apply_patch_check("/system/app/MiuiCompass.apk", "d71801b29c5a33f99a7e72e8435388dd61143c2a", "d57139e2ed922a1d0836dfac01b7489da6ee0888"));
set_progress(0.252311);
assert(apply_patch_check("/system/app/MiuiGallery.apk", "4411c7b021359e7e6835a08a15eb5303e683e0b1", "43bafee2819ce7772b7b3bc0b6e661735ca458e4"));
set_progress(0.265668);
assert(apply_patch_check("/system/app/MiuiHome.apk", "f0263f15b20f6279390e6e86139dc7694c396b2d", "87d6e2107df2f08e28bfd87f2f554bb74cfa914f"));
set_progress(0.288855);
assert(apply_patch_check("/system/app/MiuiSystemUI.apk", "6351f4e24a7bb72ea215cab69546edaac92d09ac", "2d6145a23ef24c47c9034a51f5ef882633700492"));
set_progress(0.302272);
assert(apply_patch_check("/system/app/MiuiVideoPlayer.apk", "4692addcb547447b0839057db15463061c515ee3", "03019ed56da81bc0d3c2a69090edf56b6f91a8f3"));
set_progress(0.308276);
assert(apply_patch_check("/system/app/Mms.apk", "28035e2a79effbf2409632f0f63855f98f22f0b1", "a09efc3c36fcc07d5b75e51eddc47aba7d3b7983"));
set_progress(0.324547);
assert(apply_patch_check("/system/app/Music.apk", "3577d4e822522b9a5e79b357e115529a86c2d107", "c9607b971581b30d9aab9299e652c3e3b0d819dc"));
set_progress(0.368858);
assert(apply_patch_check("/system/app/NetworkAssistant.apk", "a67d29d54351807a65140e181a5cc2f13a81c6c0", "1d66603a155fbc01df2208c935d7c9ede2e2dba1"));
set_progress(0.372607);
assert(apply_patch_check("/system/app/Notes.apk", "8a11163a3420422ecef95e4796fc2779f957fb6f", "fa502549505778ab59dd0736ebad55190ea15526"));
set_progress(0.432418);
assert(apply_patch_check("/system/app/NvCPLSvc.apk", "20874e484dc7dd6a9b57687517b621a55b00a9d6", "5add96b01badb80a22616ddc35b645893777037f"));
set_progress(0.432619);
assert(apply_patch_check("/system/app/PackageInstaller.apk", "c44e05ccefaf254bc7cb4db37696ae4a35f5953e", "c4b1b92fc3dcafb9d3774412c57cedbfd6999603"));
set_progress(0.434274);
assert(apply_patch_check("/system/app/Phone.apk", "cc12497d0cf68d7adee64fbae446ec8d84c3258b", "baa383af984332c73f3404bd811a7ba8c4e882fe"));
set_progress(0.451768);
assert(apply_patch_check("/system/app/PowerSave.apk", "3f9586d4f46d3dbb6121f6ab130790edcc3636c0", "205dce06e4dec8da57390b4e1e01f9254a5d781e"));
set_progress(0.452033);
assert(apply_patch_check("/system/app/Provision.apk", "9506cb4e1636c7ac87e5b6276daa738c713d6cc1", "2b5ba04fa7badb5ea947ea55107500cd2c8ed26e"));
set_progress(0.458375);
assert(apply_patch_check("/system/app/QuickSearchBox.apk", "c21b638ae6edbe0b6d797e307ff5e4f55a2964f7", "99aa9b7ae57567a6dc7473508b0bfa96a8c0b8dc"));
set_progress(0.460652);
assert(apply_patch_check("/system/app/Settings.apk", "995a70ad2cf8c5a0ebddd30e30724f5a84b95873", "f3398e05ed17d243704a7e0a920b2a9ad1d71123"));
set_progress(0.542558);
assert(apply_patch_check("/system/app/SettingsProvider.apk", "b4a934616f380f3176c0f95426a2f20b08b7af73", "834b364ecda0635e75ae70ead795f97cf9b02510"));
set_progress(0.542841);
assert(apply_patch_check("/system/app/SharedStorageBackup.apk", "dcbd215b71d79e7ff2cb77d699bc7aa5b497a900", "666c4928c3415f1afd58a1daabf700f27cae4495"));
set_progress(0.542868);
assert(apply_patch_check("/system/app/SoundRecorder.apk", "fb1d0b96dec8f6bcd7034db7157aa480948589bb", "e50dd784f9a8dc677c5b0e7e43966e233ba0e6d3"));
set_progress(0.563968);
assert(apply_patch_check("/system/app/Stk.apk", "6150198cde05f306cecafab59f2d8d3e33e22ed2", "f54ff6533ab20c083d38a381a3476b228b249fba"));
set_progress(0.564294);
assert(apply_patch_check("/system/app/SuperMarket.apk", "0f0be93ff085008dcbd072b7c6d5e9dd24cd9b5a", "ca5a13c1b5146c2b2eb888b50a458a1440f3db6c"));
set_progress(0.568424);
assert(apply_patch_check("/system/app/TelephonyProvider.apk", "311817ef13ef2f3d228fa455da05d9c3887b8fee", "a168f9b9010b4622f503ab4a3d96fc28223ac6b8"));
set_progress(0.568953);
assert(apply_patch_check("/system/app/ThemeManager.apk", "79938219dbfe70a650b6b71d635c783f3ea186a4", "187bb1735bfd105bf78f5d7e2dee969edf35a745"));
set_progress(0.577585);
assert(apply_patch_check("/system/app/Transfer.apk", "8b1f3d2b603a7f6971a6c9b7d47754984bc96a33", "013ffd7d4c81414cce14dc28ab3a29690f01ce38"));
set_progress(0.583360);
assert(apply_patch_check("/system/app/Updater.apk", "4ad50d3e84cec0dd15963e9432b06baca0351ff6", "3359b42a8dc7fb2fde561c2e94c5ba406919f816"));
set_progress(0.591829);
assert(apply_patch_check("/system/app/UsbConnectionMode.apk", "8401c7fee6976ab10fc6513202a9f4b843a8008a", "19d5be7a7eea5eee173c39c3b6d3d59a98c8d6f1"));
set_progress(0.592120);
assert(apply_patch_check("/system/app/UserDictionaryProvider.apk", "a57afeb3b657ca6895f43ad16de6c9a6b8bf250e", "c957da89460a2fa852d0387593494a3570d70d3e"));
set_progress(0.592184);
assert(apply_patch_check("/system/app/VpnDialogs.apk", "b8685036c4470363f5a6a34a6a48b6d4dc1dd43a", "ca0d38b6a87789c5993ebb1e3f28a4ba2ed50fc8"));
set_progress(0.592256);
assert(apply_patch_check("/system/app/Weather.apk", "968ab44a460c2553f8e7bd6489e524786d03be37", "7dfc801df94cbe6ef5410c59b5497842bcec3171"));
set_progress(0.599866);
assert(apply_patch_check("/system/app/WeatherProvider.apk", "db552a196399770690ffa5b4347fa37ef610e917", "c4100dc6c6faf5a46cec42b7d9495cfcd055c8ba"));
set_progress(0.599921);
assert(apply_patch_check("/system/app/XiaomiServiceFramework.apk", "9cee857c0eae470bcdbd73772986bdc445809446", "573892e6d87f45dc455637d96eec0545cc347f20"));
set_progress(0.620355);
assert(apply_patch_check("/system/app/YellowPage.apk", "d552e1b93d3335e1659118fa79f8266f089bc30c", "5ae7bb418515067639da2e766b8580f64ca3a9c9"));
set_progress(0.624472);
assert(apply_patch_check("/system/build.prop", "9763666d33e239a6a4fc839fcaba8f18969fd4ee", "8a1507cedca1e9bec69954baae8c36fd0edf68b4"));
set_progress(0.624494);
assert(apply_patch_check("/system/etc/weather_city.db", "d0e574aca052ae4f8950dd0665356e3b40c31a6f", "c48944f9914cf13f3f45f9b465b2a4abadaace7f"));
set_progress(0.626020);
assert(apply_patch_check("/system/framework/android.policy.jar", "cb65070115c5375a7d77639596179ed27d978101", "1dd46f848c17a7b6f1656666dd3fc0218765b1b4"));
set_progress(0.627185);
assert(apply_patch_check("/system/framework/framework-miui-res.apk", "cdcf598c86e3a92b0873d1f874cd21914a699885", "391f2a6d3499981d25947a8be2fc58f6108cb39b"));
set_progress(0.679667);
assert(apply_patch_check("/system/framework/framework-res.apk", "f14958e9016a2b644b4aef78c8c18450ec5e4f55", "747ac7772526ac33e5ce8798b66c808cb6c42666"));
set_progress(0.751666);
assert(apply_patch_check("/system/framework/framework.jar", "401693c9502c2e29499df950fa813d5707e15782", "bc1c094b0d65e7aefe889912fd8989bf7005211e"));
set_progress(0.777094);
assert(apply_patch_check("/system/framework/framework2.jar", "5226c81323f48d4b06cf14eab32515d67e9a855e", "bb122e2a4c2e31e21ae422c20951850ddfe43630"));
set_progress(0.783559);
assert(apply_patch_check("/system/framework/services.jar", "33d92a387eb74799e02f04366225588e466cdb4c", "12cd2f6c1f42025ff0770f456b83b36145f01f7c"));
set_progress(0.789509);
assert(apply_patch_check("/system/media/theme/default/alarmscreen", "396b13d7b770c26fbb4d3ed3401f3dbe5136c879", "ad48521953ed99db409d41636f7a7a957c9ead9e"));
set_progress(0.793241);
assert(apply_patch_check("/system/media/theme/default/icons", "74f8b154208a9cbea2d8f1a31c2910154ab544e9", "6519c84e8129d14e25d8dbafb2200c1ec26302b4"));
set_progress(0.795812);
assert(apply_patch_check("/system/media/theme/default/lockscreen", "19682f7a77a9e2afb05451de6bd81fa493fb3a3d", "ec8fac142c2510be11370a1427f102af76ae1169"));
set_progress(0.800190);
assert(apply_patch_check("/system/usr/keylayout/Generic.kl", "517880cb078b0b16a2474a61ac8249ae1963d2f2", "d819f782fc5f9c4d74a95da1d2e32c4c9e88470a"));
set_progress(0.800243);
assert(apply_patch_space(23154081));

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

ui_print("Removing unneeded files...");
delete("/system/lib/libimageprocessor_jni.so",
       "/data/preinstall_apps/MiuiVideo.apk",
       "/system/app/HoloSpiralWallpaper.apk", "/system/app/LiveWallpapers.apk",
       "/system/app/MagicSmokeWallpapers.apk", "/system/app/Nfc.apk",
       "/system/app/NoiseField.apk", "/system/app/PhaseBeam.apk",
       "/system/app/Tag.apk", "/system/app/VibratorTest.apk",
       "/system/app/VisualizationWallpapers.apk", "/system/media/poweroff.mp3",
       "/system/media/poweron.mp3", "/system/media/shutdownanimation.zip",
       "/system/media/video/AndroidInSpace.480p.mp4",
       "/system/media/video/Sunset.480p.mp4", "/system/usr/share/alsa/init/",
       "/system/usr/share/alsa/init/00main",
       "/system/usr/share/alsa/init/default", "/system/usr/share/alsa/init/hda",
       "/system/usr/share/alsa/init/help", "/system/usr/share/alsa/init/info",
       "/system/usr/share/alsa/init/test",
       "/system/recovery.img");
show_progress(0.800000, 0);
ui_print("Patching system files...");
apply_patch("/data/preinstall_apps/Userbook.apk", "-",
            2a57752c834a0db1fc8b2791414512e10827e5a6, 23154081,
            a35fe590211d116c279fa325dcbf7e881f010651, package_extract_file("patch/data/preinstall_apps/Userbook.apk.p"));
set_progress(0.133669);
apply_patch("/data/preinstall_apps/VoiceAssist.apk", "-",
            c8d891b49732c0b205f62bcaa9127639a5c34b3b, 11035198,
            bda887b4335c154e298a9058820394120f1a2095, package_extract_file("patch/data/preinstall_apps/VoiceAssist.apk.p"));
set_progress(0.197376);
apply_patch("/system/app/AirkanPhoneService.apk", "-",
            1d0ba9e80143462cdd05ae3b1330b07bb1056d06, 397862,
            c622f94f35546300fd96ac965f5e203a6bb9f564, package_extract_file("patch/system/app/AirkanPhoneService.apk.p"));
set_progress(0.199673);
apply_patch("/system/app/AntiSpam.apk", "-",
            a23470910daf23741757675ce58c02d962969f69, 133159,
            2121f6748837be059b300f28c5f7cc8093cbf4f9, package_extract_file("patch/system/app/AntiSpam.apk.p"));
set_progress(0.200441);
apply_patch("/system/app/ApplicationsProvider.apk", "-",
            cc3a83c991148cd20d4735eda0ba3cc6745ff9f6, 17113,
            762c06b4347c664ba2f28d999aa23a09c60a905e, package_extract_file("patch/system/app/ApplicationsProvider.apk.p"));
set_progress(0.200540);
apply_patch("/system/app/AssistantGps.apk", "-",
            b98f1bb403d39659ec6c744e7f2e30c4cfc1c043, 40788,
            3cb61ba3bdc5ea041044cbc80e665e38e72fefd4, package_extract_file("patch/system/app/AssistantGps.apk.p"));
set_progress(0.200776);
apply_patch("/system/app/Backup.apk", "-",
            ae5981afe41911fb2fcdfb81ea717fab02975ad9, 1014021,
            88e1949f9d5ef86d3e8241faef766ddb5f995839, package_extract_file("patch/system/app/Backup.apk.p"));
set_progress(0.206630);
apply_patch("/system/app/BackupRestoreConfirmation.apk", "-",
            3d756c1aa9eaefc6478a6916e18d3db72ec93070, 14202,
            bfe5be07b673f237b773f05e7a12887ad868aeb1, package_extract_file("patch/system/app/BackupRestoreConfirmation.apk.p"));
set_progress(0.206712);
apply_patch("/system/app/Bluetooth.apk", "-",
            1856adb53200704ca30060730d3192cae21b8e4f, 143994,
            92efc7701e312aab8b445e9df3b9183d833fcc4f, package_extract_file("patch/system/app/Bluetooth.apk.p"));
set_progress(0.207543);
apply_patch("/system/app/Browser.apk", "-",
            0f0ddbb00399f7d4172367469dfe8847849e00e1, 7566188,
            f95a78d4b1fcf0283e4b73d90e6bfb893f525ddd, package_extract_file("patch/system/app/Browser.apk.p"));
set_progress(0.251223);
apply_patch("/system/app/BugReport.apk", "-",
            d4cd4ed68b15ff9d0962138ceb1d6e050204207b, 178935,
            b555eeda082ded90852cb025822b7fdf466ff6cc, package_extract_file("patch/system/app/BugReport.apk.p"));
set_progress(0.252256);
apply_patch("/system/app/Calculator.apk", "-",
            f9a9ee3c1555bbf6cd1e48d5e8ac80cee7c83b85, 2007290,
            6d97e277a21d83c3da827fd40ef1f082d96f8e20, package_extract_file("patch/system/app/Calculator.apk.p"));
set_progress(0.263844);
apply_patch("/system/app/Calendar.apk", "-",
            c1e702cf67c4e8690bcba2e6c230ed725f329312, 1300288,
            6823523289c603d8d14b79165ba605d958ec6717, package_extract_file("patch/system/app/Calendar.apk.p"));
set_progress(0.271351);
apply_patch("/system/app/CalendarProvider.apk", "-",
            4b66c8674c47755747e2b4feda7243fe6e1a5ac6, 164810,
            e2f7833b43982a4ad7e776e3c2c66ea80db1e257, package_extract_file("patch/system/app/CalendarProvider.apk.p"));
set_progress(0.272302);
apply_patch("/system/app/CertInstaller.apk", "-",
            fb6ff365e8b32ae3f13baa2efdd594287da8a28d, 29158,
            4ad86319f375fdb8e2d5cd505d91b2b9df5a6720, package_extract_file("patch/system/app/CertInstaller.apk.p"));
set_progress(0.272470);
apply_patch("/system/app/CloudService.apk", "-",
            58ee1d7464206bfe264d02a909434ef5a756c072, 258633,
            0f37d12c94dbe10adedb3cbbaf00e74b22c8bbd2, package_extract_file("patch/system/app/CloudService.apk.p"));
set_progress(0.273963);
apply_patch("/system/app/Contacts.apk", "-",
            bccc44302e40c6593ced9c6630b43b82c8f6f2b2, 4128930,
            93ed6fc140b1f506e227df269ea672fd954a7c52, package_extract_file("patch/system/app/Contacts.apk.p"));
set_progress(0.297800);
apply_patch("/system/app/ContactsProvider.apk", "-",
            707ee11e84bc03d76e22b7964e5b3e55a069f69e, 324034,
            b898c98978fafac4f835261b1a2765cbb5941d58, package_extract_file("patch/system/app/ContactsProvider.apk.p"));
set_progress(0.299671);
apply_patch("/system/app/CpuSettings.apk", "-",
            108c5516f3e81c670d9f0d653097ea6a3ce68d12, 355396,
            d99d0b133a8dc98a9b66d276ac6dc9f9b89790d4, package_extract_file("patch/system/app/CpuSettings.apk.p"));
set_progress(0.301722);
apply_patch("/system/app/DataHubProvider.apk", "-",
            8ebfa580c2ad8b861ba6c68bea7b9741e2833240, 11015,
            0674061d7fb88c17fb40f7d0ed7df5491eb950cb, package_extract_file("patch/system/app/DataHubProvider.apk.p"));
set_progress(0.301786);
apply_patch("/system/app/DefaultContainerService.apk", "-",
            1e5d4ec9250a0675b48b5ba570a3fa12b3e9cca9, 13399,
            b632094b18d3c8e3dc44273d7e0302c4e9bead83, package_extract_file("patch/system/app/DefaultContainerService.apk.p"));
set_progress(0.301863);
apply_patch("/system/app/DeskClock.apk", "-",
            038ab9274d45b5c41e8cfabd4c940074864228ea, 1494029,
            36c7d9938ce2e496076427dfa7a421179f9a39ec, package_extract_file("patch/system/app/DeskClock.apk.p"));
set_progress(0.310488);
apply_patch("/system/app/DolbyMobileAudioEffectService.apk", "-",
            27116d2b1d737c755e4777cd630342f204e53498, 9737,
            94ad72a81ef33f1976f327dfcf07d338883de67e, package_extract_file("patch/system/app/DolbyMobileAudioEffectService.apk.p"));
set_progress(0.310545);
apply_patch("/system/app/DownloadProvider.apk", "-",
            e45c04cc55a22c8fdc6fd9e40a5fc8e7d56d8a3d, 130130,
            fadc2437a3630abca0005f6f22bcf98554bd11bd, package_extract_file("patch/system/app/DownloadProvider.apk.p"));
set_progress(0.311296);
apply_patch("/system/app/DownloadProviderUi.apk", "-",
            6cc3c938997d2eeee24ef93fbb51a527e97f90e9, 88692,
            c413d382214ea772576e6f3d888aa259e19d23ae, package_extract_file("patch/system/app/DownloadProviderUi.apk.p"));
set_progress(0.311808);
apply_patch("/system/app/DrmProvider.apk", "-",
            762932bb118900a087064a604f00833566cb216c, 10635,
            0fc38d68d6aeae7e032f63c0b555bb1c8aaddb76, package_extract_file("patch/system/app/DrmProvider.apk.p"));
set_progress(0.311869);
apply_patch("/system/app/Email.apk", "-",
            25b8d9e46ef148fee7aa1296562266e460cc7faa, 2793794,
            87fcbc124ae85e9acad7561ed0328b17ec7d36dc, package_extract_file("patch/system/app/Email.apk.p"));
set_progress(0.327998);
apply_patch("/system/app/Exchange2.apk", "-",
            ece16d3a945b3de20151654a8ca272c092b06bf6, 791554,
            d43f1ca13971ca99b1f4080469f416ba45777284, package_extract_file("patch/system/app/Exchange2.apk.p"));
set_progress(0.332568);
apply_patch("/system/app/FileExplorer.apk", "-",
            8370106359a0a7a3e0454dca7c7dcb9e9786edcb, 2070044,
            6984ffada045b20eaedec3a0191033ee03331b8c, package_extract_file("patch/system/app/FileExplorer.apk.p"));
set_progress(0.344518);
apply_patch("/system/app/Gallery2.apk", "-",
            3bc11c91714d523d37597234f52bb109e7236ef7, 6759630,
            cd3297dfced55eb254a8dd4eb93a9d217eccb802, package_extract_file("patch/system/app/Gallery2.apk.p"));
set_progress(0.383542);
apply_patch("/system/app/HiFiToggle.apk", "-",
            24eea0b742c7acd26b55c552973edfaab3517fde, 401766,
            68ee17e3c75e92ec48bdb17f6162d9be2b4d6175, package_extract_file("patch/system/app/HiFiToggle.apk.p"));
set_progress(0.385861);
apply_patch("/system/app/InputDevices.apk", "-",
            26b1a33a75f5242fbc7d8f8605ea5b30515613cf, 48267,
            70d0856165da0468fe28653cddafae1678ff5965, package_extract_file("patch/system/app/InputDevices.apk.p"));
set_progress(0.386140);
apply_patch("/system/app/KTDaemon.apk", "-",
            9d4640eb63a533d02956d5886110c82cf67ee843, 37335,
            1084c0d2117cd2fe6b0a5033340f4945add2962c, package_extract_file("patch/system/app/KTDaemon.apk.p"));
set_progress(0.386355);
apply_patch("/system/app/KeyChain.apk", "-",
            fb1ab3c186b993843188226235130e6db17da748, 21370,
            57d350c10298ee386055edec29fe8ed7af531b74, package_extract_file("patch/system/app/KeyChain.apk.p"));
set_progress(0.386479);
apply_patch("/system/app/LatinIME.apk", "-",
            a66301f7717546b32d0e96d694f8b65a3709babd, 8628369,
            4f76e14b85eeb82eab00a2616a76d78fd537777f, package_extract_file("patch/system/app/LatinIME.apk.p"));
set_progress(0.436290);
apply_patch("/system/app/LiveWallpapersPicker.apk", "-",
            947d24498beb9b6b18aaca8b5e609d99304e8dc4, 204004,
            0b5c323440846a352cb379844cfbbfcca12063dd, package_extract_file("patch/system/app/LiveWallpapersPicker.apk.p"));
set_progress(0.437468);
apply_patch("/system/app/MMI.apk", "-",
            25ca860fabb182cbe54016d8b6d3a5058a4456ec, 1026855,
            495d151747dd4f40f267d1b50d7c8f098993bdca, package_extract_file("patch/system/app/MMI.apk.p"));
set_progress(0.443396);
apply_patch("/system/app/MediaProvider.apk", "-",
            4551db7e368f13b012fd154b4caadfdb9e637521, 68153,
            8c53ca185261e96ccc720f80a5a15d13e9a33f50, package_extract_file("patch/system/app/MediaProvider.apk.p"));
set_progress(0.443790);
apply_patch("/system/app/MiuiCompass.apk", "-",
            d71801b29c5a33f99a7e72e8435388dd61143c2a, 1011531,
            d57139e2ed922a1d0836dfac01b7489da6ee0888, package_extract_file("patch/system/app/MiuiCompass.apk.p"));
set_progress(0.449629);
apply_patch("/system/app/MiuiGallery.apk", "-",
            4411c7b021359e7e6835a08a15eb5303e683e0b1, 2448587,
            43bafee2819ce7772b7b3bc0b6e661735ca458e4, package_extract_file("patch/system/app/MiuiGallery.apk.p"));
set_progress(0.463765);
apply_patch("/system/app/MiuiHome.apk", "-",
            f0263f15b20f6279390e6e86139dc7694c396b2d, 3983661,
            87d6e2107df2f08e28bfd87f2f554bb74cfa914f, package_extract_file("patch/system/app/MiuiHome.apk.p"));
set_progress(0.486763);
apply_patch("/system/app/MiuiSystemUI.apk", "-",
            6351f4e24a7bb72ea215cab69546edaac92d09ac, 2325442,
            2d6145a23ef24c47c9034a51f5ef882633700492, package_extract_file("patch/system/app/MiuiSystemUI.apk.p"));
set_progress(0.500188);
apply_patch("/system/app/MiuiVideoPlayer.apk", "-",
            4692addcb547447b0839057db15463061c515ee3, 1027953,
            03019ed56da81bc0d3c2a69090edf56b6f91a8f3, package_extract_file("patch/system/app/MiuiVideoPlayer.apk.p"));
set_progress(0.506122);
apply_patch("/system/app/Mms.apk", "-",
            28035e2a79effbf2409632f0f63855f98f22f0b1, 3328178,
            a09efc3c36fcc07d5b75e51eddc47aba7d3b7983, package_extract_file("patch/system/app/Mms.apk.p"));
set_progress(0.525336);
apply_patch("/system/app/Music.apk", "-",
            3577d4e822522b9a5e79b357e115529a86c2d107, 7811115,
            c9607b971581b30d9aab9299e652c3e3b0d819dc, package_extract_file("patch/system/app/Music.apk.p"));
set_progress(0.570430);
apply_patch("/system/app/NetworkAssistant.apk", "-",
            a67d29d54351807a65140e181a5cc2f13a81c6c0, 641549,
            1d66603a155fbc01df2208c935d7c9ede2e2dba1, package_extract_file("patch/system/app/NetworkAssistant.apk.p"));
set_progress(0.574133);
apply_patch("/system/app/Notes.apk", "-",
            8a11163a3420422ecef95e4796fc2779f957fb6f, 10318985,
            fa502549505778ab59dd0736ebad55190ea15526, package_extract_file("patch/system/app/Notes.apk.p"));
set_progress(0.633705);
apply_patch("/system/app/NvCPLSvc.apk", "-",
            20874e484dc7dd6a9b57687517b621a55b00a9d6, 34298,
            5add96b01badb80a22616ddc35b645893777037f, package_extract_file("patch/system/app/NvCPLSvc.apk.p"));
set_progress(0.633903);
apply_patch("/system/app/PackageInstaller.apk", "-",
            c44e05ccefaf254bc7cb4db37696ae4a35f5953e, 283533,
            c4b1b92fc3dcafb9d3774412c57cedbfd6999603, package_extract_file("patch/system/app/PackageInstaller.apk.p"));
set_progress(0.635540);
apply_patch("/system/app/Phone.apk", "-",
            cc12497d0cf68d7adee64fbae446ec8d84c3258b, 2988478,
            baa383af984332c73f3404bd811a7ba8c4e882fe, package_extract_file("patch/system/app/Phone.apk.p"));
set_progress(0.652793);
apply_patch("/system/app/PowerSave.apk", "-",
            3f9586d4f46d3dbb6121f6ab130790edcc3636c0, 45436,
            205dce06e4dec8da57390b4e1e01f9254a5d781e, package_extract_file("patch/system/app/PowerSave.apk.p"));
set_progress(0.653055);
apply_patch("/system/app/Provision.apk", "-",
            9506cb4e1636c7ac87e5b6276daa738c713d6cc1, 1085497,
            2b5ba04fa7badb5ea947ea55107500cd2c8ed26e, package_extract_file("patch/system/app/Provision.apk.p"));
set_progress(0.659322);
apply_patch("/system/app/QuickSearchBox.apk", "-",
            c21b638ae6edbe0b6d797e307ff5e4f55a2964f7, 389668,
            99aa9b7ae57567a6dc7473508b0bfa96a8c0b8dc, package_extract_file("patch/system/app/QuickSearchBox.apk.p"));
set_progress(0.661571);
apply_patch("/system/app/Settings.apk", "-",
            995a70ad2cf8c5a0ebddd30e30724f5a84b95873, 14010379,
            f3398e05ed17d243704a7e0a920b2a9ad1d71123, package_extract_file("patch/system/app/Settings.apk.p"));
set_progress(0.742453);
apply_patch("/system/app/SettingsProvider.apk", "-",
            b4a934616f380f3176c0f95426a2f20b08b7af73, 48439,
            834b364ecda0635e75ae70ead795f97cf9b02510, package_extract_file("patch/system/app/SettingsProvider.apk.p"));
set_progress(0.742733);
apply_patch("/system/app/SharedStorageBackup.apk", "-",
            dcbd215b71d79e7ff2cb77d699bc7aa5b497a900, 4673,
            666c4928c3415f1afd58a1daabf700f27cae4495, package_extract_file("patch/system/app/SharedStorageBackup.apk.p"));
set_progress(0.742760);
apply_patch("/system/app/SoundRecorder.apk", "-",
            fb1d0b96dec8f6bcd7034db7157aa480948589bb, 3613331,
            e50dd784f9a8dc677c5b0e7e43966e233ba0e6d3, package_extract_file("patch/system/app/SoundRecorder.apk.p"));
set_progress(0.763620);
apply_patch("/system/app/Stk.apk", "-",
            6150198cde05f306cecafab59f2d8d3e33e22ed2, 55786,
            f54ff6533ab20c083d38a381a3476b228b249fba, package_extract_file("patch/system/app/Stk.apk.p"));
set_progress(0.763942);
apply_patch("/system/app/SuperMarket.apk", "-",
            0f0be93ff085008dcbd072b7c6d5e9dd24cd9b5a, 622918,
            ca5a13c1b5146c2b2eb888b50a458a1440f3db6c, package_extract_file("patch/system/app/SuperMarket.apk.p"));
set_progress(0.767538);
apply_patch("/system/app/TelephonyProvider.apk", "-",
            311817ef13ef2f3d228fa455da05d9c3887b8fee, 90577,
            a168f9b9010b4622f503ab4a3d96fc28223ac6b8, package_extract_file("patch/system/app/TelephonyProvider.apk.p"));
set_progress(0.768061);
apply_patch("/system/app/ThemeManager.apk", "-",
            79938219dbfe70a650b6b71d635c783f3ea186a4, 1050570,
            187bb1735bfd105bf78f5d7e2dee969edf35a745, package_extract_file("patch/system/app/ThemeManager.apk.p"));
set_progress(0.774126);
apply_patch("/system/app/Transfer.apk", "-",
            8b1f3d2b603a7f6971a6c9b7d47754984bc96a33, 996972,
            013ffd7d4c81414cce14dc28ab3a29690f01ce38, package_extract_file("patch/system/app/Transfer.apk.p"));
set_progress(0.779882);
apply_patch("/system/app/Updater.apk", "-",
            4ad50d3e84cec0dd15963e9432b06baca0351ff6, 1703228,
            3359b42a8dc7fb2fde561c2e94c5ba406919f816, package_extract_file("patch/system/app/Updater.apk.p"));
set_progress(0.789714);
apply_patch("/system/app/UsbConnectionMode.apk", "-",
            8401c7fee6976ab10fc6513202a9f4b843a8008a, 49719,
            19d5be7a7eea5eee173c39c3b6d3d59a98c8d6f1, package_extract_file("patch/system/app/UsbConnectionMode.apk.p"));
set_progress(0.790001);
apply_patch("/system/app/UserDictionaryProvider.apk", "-",
            a57afeb3b657ca6895f43ad16de6c9a6b8bf250e, 10971,
            c957da89460a2fa852d0387593494a3570d70d3e, package_extract_file("patch/system/app/UserDictionaryProvider.apk.p"));
set_progress(0.790065);
apply_patch("/system/app/VpnDialogs.apk", "-",
            b8685036c4470363f5a6a34a6a48b6d4dc1dd43a, 12390,
            ca0d38b6a87789c5993ebb1e3f28a4ba2ed50fc8, package_extract_file("patch/system/app/VpnDialogs.apk.p"));
set_progress(0.790136);
apply_patch("/system/app/Weather.apk", "-",
            968ab44a460c2553f8e7bd6489e524786d03be37, 1594756,
            7dfc801df94cbe6ef5410c59b5497842bcec3171, package_extract_file("patch/system/app/Weather.apk.p"));
set_progress(0.799343);
apply_patch("/system/app/WeatherProvider.apk", "-",
            db552a196399770690ffa5b4347fa37ef610e917, 10223,
            c4100dc6c6faf5a46cec42b7d9495cfcd055c8ba, package_extract_file("patch/system/app/WeatherProvider.apk.p"));
set_progress(0.799402);
apply_patch("/system/app/XiaomiServiceFramework.apk", "-",
            9cee857c0eae470bcdbd73772986bdc445809446, 3471374,
            573892e6d87f45dc455637d96eec0545cc347f20, package_extract_file("patch/system/app/XiaomiServiceFramework.apk.p"));
set_progress(0.819442);
apply_patch("/system/app/YellowPage.apk", "-",
            d552e1b93d3335e1659118fa79f8266f089bc30c, 710126,
            5ae7bb418515067639da2e766b8580f64ca3a9c9, package_extract_file("patch/system/app/YellowPage.apk.p"));
set_progress(0.823542);
apply_patch("/system/etc/weather_city.db", "-",
            d0e574aca052ae4f8950dd0665356e3b40c31a6f, 296960,
            c48944f9914cf13f3f45f9b465b2a4abadaace7f, package_extract_file("patch/system/etc/weather_city.db.p"));
set_progress(0.825256);
apply_patch("/system/framework/android.policy.jar", "-",
            cb65070115c5375a7d77639596179ed27d978101, 199055,
            1dd46f848c17a7b6f1656666dd3fc0218765b1b4, package_extract_file("patch/system/framework/android.policy.jar.p"));
set_progress(0.826405);
apply_patch("/system/framework/framework-miui-res.apk", "-",
            cdcf598c86e3a92b0873d1f874cd21914a699885, 9398206,
            391f2a6d3499981d25947a8be2fc58f6108cb39b, package_extract_file("patch/system/framework/framework-miui-res.apk.p"));
set_progress(0.880661);
apply_patch("/system/framework/framework-res.apk", "-",
            f14958e9016a2b644b4aef78c8c18450ec5e4f55, 12328757,
            747ac7772526ac33e5ce8798b66c808cb6c42666, package_extract_file("patch/system/framework/framework-res.apk.p"));
set_progress(0.951836);
apply_patch("/system/framework/framework.jar", "-",
            401693c9502c2e29499df950fa813d5707e15782, 4354829,
            bc1c094b0d65e7aefe889912fd8989bf7005211e, package_extract_file("patch/system/framework/framework.jar.p"));
set_progress(0.976976);
apply_patch("/system/framework/framework2.jar", "-",
            5226c81323f48d4b06cf14eab32515d67e9a855e, 1126188,
            bb122e2a4c2e31e21ae422c20951850ddfe43630, package_extract_file("patch/system/framework/framework2.jar.p"));
set_progress(0.983478);
apply_patch("/system/framework/services.jar", "-",
            33d92a387eb74799e02f04366225588e466cdb4c, 1021140,
            12cd2f6c1f42025ff0770f456b83b36145f01f7c, package_extract_file("patch/system/framework/services.jar.p"));
set_progress(0.989373);
apply_patch("/system/media/theme/default/alarmscreen", "-",
            396b13d7b770c26fbb4d3ed3401f3dbe5136c879, 638705,
            ad48521953ed99db409d41636f7a7a957c9ead9e, package_extract_file("patch/system/media/theme/default/alarmscreen.p"));
set_progress(0.993060);
apply_patch("/system/media/theme/default/icons", "-",
            74f8b154208a9cbea2d8f1a31c2910154ab544e9, 440011,
            6519c84e8129d14e25d8dbafb2200c1ec26302b4, package_extract_file("patch/system/media/theme/default/icons.p"));
set_progress(0.995600);
apply_patch("/system/media/theme/default/lockscreen", "-",
            19682f7a77a9e2afb05451de6bd81fa493fb3a3d, 749325,
            ec8fac142c2510be11370a1427f102af76ae1169, package_extract_file("patch/system/media/theme/default/lockscreen.p"));
set_progress(0.999926);
apply_patch("/system/usr/keylayout/Generic.kl", "-",
            517880cb078b0b16a2474a61ac8249ae1963d2f2, 9009,
            d819f782fc5f9c4d74a95da1d2e32c4c9e88470a, package_extract_file("patch/system/usr/keylayout/Generic.kl.p"));
set_progress(0.999978);
ui_print("Update Boot image...");
package_extract_file("boot.img", "/dev/block/platform/sdhci-tegra.3/by-name/LNX");
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, 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(0, 0, 0644, "/system/etc/bluetooth/bdaddr");
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_recursive(0, 2000, 0755, 0750, "/system/etc/init.d");
set_perm(0, 0, 0755, "/system/etc/init.d");
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, 1000, 06750, "/system/xbin/shelld");
set_perm(0, 0, 06755, "/system/xbin/su");
ui_print("Patching remaining system files...");
apply_patch("/system/build.prop", "-",
            9763666d33e239a6a4fc839fcaba8f18969fd4ee, 3748,
            8a1507cedca1e9bec69954baae8c36fd0edf68b4, package_extract_file("patch/system/build.prop.p"));
set_perm(0, 0, 0644, "/system/build.prop");
unmount("/data");
unmount("/system");
