mount("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");
assert(file_getprop("/system/build.prop", "ro.build.fingerprint") == "Lenovo/a789_ics2/a789_ics2:4.0.4/IMM76I/eng.lewa.20140123.014154:user/test-keys" ||
       file_getprop("/system/build.prop", "ro.build.fingerprint") == "Lenovo/a789_ics2/a789_ics2:4.0.4/IMM76I/eng.lewa.20140128.045926:user/test-keys");
assert(getprop("ro.product.device") == "a789_ics2" || getprop("ro.build.product") == "a789_ics2");
ui_print("Verifying current system...");
show_progress(0.100000, 0);
assert(apply_patch_check("/system/app/ApplicationsProvider.apk", "6d80a57e4399987657b388c70a3173b0c54ed1e5", "18126d8f8e55236d914c078c33bad2616f7359e5"));
set_progress(0.000099);
assert(apply_patch_check("/system/app/BackupRestoreConfirmation.apk", "583efeccf294be479c9298994ceec5d29f54a7ec", "7172f646d1189c51732e8dddd33dddb74643754f"));
set_progress(0.000262);
assert(apply_patch_check("/system/app/CalendarProvider.apk", "89a1762dd0d408a1322322c3720a2d40067224db", "fb5b6ef229211e9300d9bd0be1de20c44e7f2749"));
set_progress(0.000537);
assert(apply_patch_check("/system/app/CellConnService.apk", "8da2dbcb705d583d7d53d571cd1eed349703b2b8", "196256d2ddaea5c25b60325ea5de7616bd2a25bb"));
set_progress(0.000754);
assert(apply_patch_check("/system/app/CertInstaller.apk", "78a4ab5aa13bd30709ff0523fc7493ca90408b70", "daabb00e22028125e7a512f231503c25ceff5b3c"));
set_progress(0.000931);
assert(apply_patch_check("/system/app/ContactsProvider.apk", "f96b731ac0962d18cbb14032871bd838ff07cbfa", "1ae6ac8a14015f0d5f0422f7e95edf0bb6ef6dbf"));
set_progress(0.001395);
assert(apply_patch_check("/system/app/DefaultContainerService.apk", "2d873ce3019d297c3250747e6655b2e358f20d52", "443c69797487177181ea1f92db99b1b78a4a4e69"));
set_progress(0.001458);
assert(apply_patch_check("/system/app/DownloadProvider.apk", "bf3baca0960a53e46c4a3a8cfbd28a2ecbf7cf64", "361f9bd29c117b288a35cfac9cc39aac81b380c3"));
set_progress(0.001661);
assert(apply_patch_check("/system/app/DownloadProviderUi.apk", "531dfbccb0134b11343fba9d7545d6e6e59dec7c", "598919f7ce6b0d65b579ed1405fea954bbb70119"));
set_progress(0.002630);
assert(apply_patch_check("/system/app/DrmProvider.apk", "fa262ccb40cc4dabf4fc9f9ff922c12ef8d3172b", "d254bcece23b7700fdd613c3729ff4156e2838e8"));
set_progress(0.002715);
assert(apply_patch_check("/system/app/EngineerModeSim.apk", "a0d91323e4287e544df1e660fcec8b0150a55755", "2efe07008ea200a96522d0bcc92774f98503fb7f"));
set_progress(0.003149);
assert(apply_patch_check("/system/app/HTMLViewer.apk", "05602fbdf18b054c91dbeb96d3f653b49ab5bf27", "09705733083af0b3a7d5bb3e01b2e347d6b4d5ce"));
set_progress(0.003213);
assert(apply_patch_check("/system/app/HoloSpiralWallpaper.apk", "ca6e40d09934bc97dd8754d44db81237c694c4f7", "d95b03e9ce10a5c35faaaea72de6c1fc1f1bccfb"));
set_progress(0.003885);
assert(apply_patch_check("/system/app/KeyChain.apk", "283e38c5acc8bde8a6e7821992f6586f2aed1de4", "6326279eb705948e87fdd90ae423e95cee9962d9"));
set_progress(0.004033);
assert(apply_patch_check("/system/app/LatinIME.apk", "04a6f3a43757e9b30104e3ab91a79daaabda008e", "2b143f208e48a9cf096e1b786a44656dd433a766"));
set_progress(0.023722);
assert(apply_patch_check("/system/app/LewaCalculator.apk", "c7174418fe823dc16a24bd754ea2161b340c04c6", "90ed0fb00dcefebe2595f4e13c157da1bdfe08af"));
set_progress(0.036947);
assert(apply_patch_check("/system/app/LewaLabiSync.apk", "8f31c7528ba0e3cf4c53a51ade009db255de188e", "f959b5452c7b18f7c821fce62b828b17a21845f8"));
set_progress(0.037187);
assert(apply_patch_check("/system/app/LewaPackageInstaller.apk", "a460b322c224ac3769a9239e7aec7d34f8dcba27", "f55f2ef7c1ef88c6226fe329c8ba4fb41e1a54c2"));
set_progress(0.038405);
assert(apply_patch_check("/system/app/LewaSoundRecorder.apk", "cab3726536979b23ecaae7006a5b3aac789ba79d", "cdc26c2a4e1cadfd792e2c41cca86c4f713c8cfe"));
set_progress(0.057295);
assert(apply_patch_check("/system/app/LiveWallpapers.apk", "affbba6b0722e2205ce77d54be2326710bcbe414", "c288010b61837541b44e061990b7160762be5308"));
set_progress(0.084059);
assert(apply_patch_check("/system/app/LiveWallpapersPicker.apk", "817af082d4c58637f208861871728ee0aed2fee6", "75810e45040106012cbd5fd10cc3063acef2ee34"));
set_progress(0.085795);
assert(apply_patch_check("/system/app/LocationProvider.apk", "77a0c862f699c5b1cc47f9ee9ad18a47d39d06a7", "6c782c2f38d2341d24991aeb32e5fdd573ab9f8e"));
set_progress(0.123728);
assert(apply_patch_check("/system/app/MagicSmokeWallpapers.apk", "3948432f0f6e2f21adf7099b19edf8b94d936a36", "0fcfce6790f50335fb9d896c01e30500be27598c"));
set_progress(0.127062);
assert(apply_patch_check("/system/app/MediaProvider.apk", "d172a565ea62938734dad77fda3b21a4ba4b4ff4", "b14679ce91c356c8daffd8a0e362a2c2d6f49758"));
set_progress(0.127267);
assert(apply_patch_check("/system/app/MmsFavoriteProvider.apk", "f0ff4ccadf1a122e680d541c88e2f667ebdaac63", "6e8f603c2721cb14463fce1b4cc24b2a666ce4dd"));
set_progress(0.127934);
assert(apply_patch_check("/system/app/MtkBt.apk", "df25f1e09ae40670c273ffdbf07978a0c5ac3e53", "a27ab8119bfe3e21fe95c03fbdd459c4e83f93ec"));
set_progress(0.131700);
assert(apply_patch_check("/system/app/MtkVideoLiveWallpaper.apk", "fe399eb425d6e4a860f25313e34ee616b0ea2b6b", "c786158080c0b83b76362d18270508f43c1f07c3"));
set_progress(0.168541);
assert(apply_patch_check("/system/app/Omacp.apk", "79e86d994b615784e50e9ef9aff97191130449e7", "fa1fc942c43bf81164a162a02944987dfa1a16f9"));
set_progress(0.168915);
assert(apply_patch_check("/system/app/PIM.apk", "5feb8524d93cebe6221a0a1efae293834f668457", "47a35d9c7672cd993abbdcc1bcb80901f7b326f9"));
set_progress(0.264003);
assert(apply_patch_check("/system/app/Phone.apk", "c858dc561c486d0d379ac34ff37a7b2ac304800c", "fba1e957256c8431827cc737a65006366a43dec5"));
set_progress(0.281698);
assert(apply_patch_check("/system/app/Provision.apk", "b1c89f01fad09c286ec0f56cc28d1447a2894a3b", "e5361355104a0a739efe17c2c4c9010b9aa29137"));
set_progress(0.281745);
assert(apply_patch_check("/system/app/Settings.apk", "2e4ad3664581d93f980af96e2a11a44e6e857d3c", "c4bc0a93ab98eac2fb8fcf9ce4ba60d2fa2c5597"));
set_progress(0.329057);
assert(apply_patch_check("/system/app/SettingsProvider.apk", "adf7435e578af2e1473d1e7dc62c16f30b6b008e", "e417a5e375c7ae5b025da87afdd5af52a014f267"));
set_progress(0.329337);
assert(apply_patch_check("/system/app/SharedStorageBackup.apk", "598fd530e8fe20508e1bf4b9c8c7702a7a3452be", "8822b43ac75d87036740bedfd7148a43cd3ea318"));
set_progress(0.329381);
assert(apply_patch_check("/system/app/Stk1.apk", "6d969ef85a4f2475e18a26cbbd78b51112fd52a4", "cd40bbf9150fba9d99e1c35bf319b418161e35a5"));
set_progress(0.329811);
assert(apply_patch_check("/system/app/Stk2.apk", "f6cc1a936fa8076b92d85aada72711952e9ebb1d", "45798394eaa3d711cd5bfd1d8473e41faf73b29d"));
set_progress(0.330243);
assert(apply_patch_check("/system/app/SystemUI.apk", "09e4df5fdfa4a9a6616a7fa61e5915db8fd0c304", "60419aa6762b1e1e6132aff417d79c9e704d1efe"));
set_progress(0.346326);
assert(apply_patch_check("/system/app/TelephonyProvider.apk", "2a7cac494404f428a033f5be72116e1729515ac1", "a6361b7da31ee1ff5bf8d5a26018a6c8c758d026"));
set_progress(0.346528);
assert(apply_patch_check("/system/app/UserDictionaryProvider.apk", "8d8ea1d433577a469fcdedba67f735b0c0165574", "4449d4ecd55680953338560373afbabe8ca272f6"));
set_progress(0.346587);
assert(apply_patch_check("/system/app/VisualizationWallpapers.apk", "51ac58235d2f0a9eda3b60664b79a46507b86a84", "428496ce553ea40fb4d39e4e506e4187febb6f02"));
set_progress(0.348874);
assert(apply_patch_check("/system/app/VpnDialogs.apk", "a72fd32f8c1d469f42101dc32dd25839f58b7b9e", "a5a228b27813fd3da964fb8f60657b7407ffd694"));
set_progress(0.349000);
assert(apply_patch_check("/system/bin/mkyaffs2image", "1c42500b1006bfb6495c8cf3269c1a702b83b4a6", "7a1d838aa71ae8f71aa900791476139495fcb150"));
set_progress(0.349246);
assert(apply_patch_check("/system/framework/DMAgent.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "be8f2aae71bbd762fe43bbec61c4acf4f00f72f9"));
set_progress(0.349251);
assert(apply_patch_check("/system/framework/DMAgent.odex", "a2c6be3ae5e0bed2a2a71c73dce25a621e48e150", "47f4385432f857ea547fc57028f118e827adfd90"));
set_progress(0.349382);
assert(apply_patch_check("/system/framework/am.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "be8f2aae71bbd762fe43bbec61c4acf4f00f72f9"));
set_progress(0.349387);
assert(apply_patch_check("/system/framework/am.odex", "e4247f58babb782747662d459be26d73a4b74c81", "aaddf32de612b7f9e03136242792cb80d00378b5"));
set_progress(0.350036);
assert(apply_patch_check("/system/framework/android.policy.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "be8f2aae71bbd762fe43bbec61c4acf4f00f72f9"));
set_progress(0.350041);
assert(apply_patch_check("/system/framework/android.policy.odex", "cdefc123834f46499b933fcd9f4f899c0f374480", "d12f5774b89c42bbc349d51a71d7efe4e9b36a94"));
set_progress(0.356735);
assert(apply_patch_check("/system/framework/android.test.runner.jar", "cc47fc641d106917b47e6d620b92a5c75a18a8a0", "f2e1d26a0c3688aaabe2bdd401fa627f5e022113"));
set_progress(0.356740);
assert(apply_patch_check("/system/framework/android.test.runner.odex", "39f02ae42d308ddb76bf32053658a88fc0b1324e", "528c8ae773db1ea0c5aa77d34778f9d1e41cb355"));
set_progress(0.359746);
assert(apply_patch_check("/system/framework/apache-xml.jar", "5d1c70911478fe6fae886867709616ade5602769", "9aacce507f9839b6df3633f3d382930e88894812"));
set_progress(0.360043);
assert(apply_patch_check("/system/framework/apache-xml.odex", "a0dfcff5d96330fcff9854b50f1c4b3bf9f54bc9", "4bdb7ac718d23f32c109012f617ea88b0e6f95de"));
set_progress(0.382747);
assert(apply_patch_check("/system/framework/bmgr.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "be8f2aae71bbd762fe43bbec61c4acf4f00f72f9"));
set_progress(0.382752);
assert(apply_patch_check("/system/framework/bmgr.odex", "a7fdb385630b258b91e3185b1cd09991003d1560", "2a167ffececb1c3c82dc1a486b5f6e082b4aadc6"));
set_progress(0.382998);
assert(apply_patch_check("/system/framework/bouncycastle.jar", "af57768e67daecb8faf5a92ef729ff2c3240ce3b", "58dc5f6384d7a8c3b8cb667be47c92a34f8d3afd"));
set_progress(0.383003);
assert(apply_patch_check("/system/framework/bouncycastle.odex", "c25416bb002cd22788af776484316f869c336c63", "18a8c80b1210146fda4356b9f5ff4c28111c7064"));
set_progress(0.399109);
assert(apply_patch_check("/system/framework/bu.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "be8f2aae71bbd762fe43bbec61c4acf4f00f72f9"));
set_progress(0.399114);
assert(apply_patch_check("/system/framework/bu.odex", "50de76569e96a53ed14d299b6a9d713d179139db", "96d2b0f84f74ee3573042d187a56cdb39494e884"));
set_progress(0.399192);
assert(apply_patch_check("/system/framework/com.android.future.usb.accessory.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "be8f2aae71bbd762fe43bbec61c4acf4f00f72f9"));
set_progress(0.399197);
assert(apply_patch_check("/system/framework/com.android.future.usb.accessory.odex", "0253706a9606681c5cbf06d771477aad3859179c", "b4a6d0a2e8d5a27134def0c72e53186788914a8c"));
set_progress(0.399299);
assert(apply_patch_check("/system/framework/com.android.location.provider.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "b378c418099e5645bb6dd6d42951b6234409d688"));
set_progress(0.399304);
assert(apply_patch_check("/system/framework/com.android.location.provider.odex", "02eadd132375d5eefabf855bfaaf69a2206c08b4", "1866a7ad20676875db59680818acda0c02b916cf"));
set_progress(0.399429);
assert(apply_patch_check("/system/framework/core-junit.jar", "4a4be0d6033efbe0d74c2810711067bf61469e0e", "138b420093f4189c38becbf5a5a1f15a332d8cf2"));
set_progress(0.399434);
assert(apply_patch_check("/system/framework/core-junit.odex", "1649e254f7789a870a9b494263404d79d8f61a79", "103da66cc6862e97f36987f79e926f4af55f2a81"));
set_progress(0.399823);
assert(apply_patch_check("/system/framework/core.jar", "e986a5867238ebed73f11bdcbf5a6f23d3945e01", "de06de68f654c3647b076a3ee93fb6d2f19f8e54"));
set_progress(0.399891);
assert(apply_patch_check("/system/framework/core.odex", "0948345af7a20d10a0f1b7197b0786643686cd5b", "8f0a4843b92d7c1cfd796abfbadde3717f1eee72"));
set_progress(0.455411);
assert(apply_patch_check("/system/framework/ext.jar", "a3440abd3d1ce361bb5932cb63f968117d6c361d", "0f70cb68ebc41fa5a140c3e3809c1721c715e1f1"));
set_progress(0.462669);
assert(apply_patch_check("/system/framework/ext.odex", "58f60334ec1ac45879a61b640b72fda7da7ce2fc", "be3429da1f2b05d9e46aa1571859df26bb124dfd"));
set_progress(0.487303);
assert(apply_patch_check("/system/framework/filterfw.jar", "12c705912db79950c11a24f8b4f34a34ba18f9bc", "571ae9b4f1396657031f647f61863f71a5977192"));
set_progress(0.487308);
assert(apply_patch_check("/system/framework/filterfw.odex", "db77acd8a275506bd1e5678bf6302157971163de", "0037e6d4fbe13fc83cc6b7f79fed0db8979ef30a"));
set_progress(0.492619);
assert(apply_patch_check("/system/framework/framework-res.apk", "f112b70fd6aa72be8b24a6db31a132c16d282e7e", "6fd1d952921cf6bf67137bf3419f2a25a3b3204e"));
set_progress(0.569165);
assert(apply_patch_check("/system/framework/framework.jar", "f1799538cc3e853d58256b8a33c5c84f38d01a40", "1496e7813479fefd0e8003279cc8933def378576"));
set_progress(0.569412);
assert(apply_patch_check("/system/framework/framework.odex", "1599ae244bee3b90590ad8191ccd5ae420152321", "6e8ee9d7b750b6ef3c50d9e318562ed7ef389650"));
set_progress(0.741618);
assert(apply_patch_check("/system/framework/ime.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "b378c418099e5645bb6dd6d42951b6234409d688"));
set_progress(0.741623);
assert(apply_patch_check("/system/framework/ime.odex", "93200da0fcc065f4d0f9d2ba8a4c4cd609e72518", "53e9e3e3a8b9dfeed9b4b45df6b9d7981348e0a5"));
set_progress(0.741737);
assert(apply_patch_check("/system/framework/input.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "b378c418099e5645bb6dd6d42951b6234409d688"));
set_progress(0.741742);
assert(apply_patch_check("/system/framework/input.odex", "39afaef89b4385503d2860fc17f7fb36b37b6c7f", "4338025245a256e12a703199d967c30e444c3367"));
set_progress(0.741818);
assert(apply_patch_check("/system/framework/javax.obex.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "be8f2aae71bbd762fe43bbec61c4acf4f00f72f9"));
set_progress(0.741823);
assert(apply_patch_check("/system/framework/javax.obex.odex", "b9addef02452741a2323badecb1474c274510bd5", "3244483c4d4c126642bb514f9221fd8fbeb2ca08"));
set_progress(0.742785);
assert(apply_patch_check("/system/framework/lewa-framework.jar", "b49aad3ecf90348a8ed12aeb03b70b9f685072a7", "9fd3fb23f008572bc08246bfb35aa6684c0a8496"));
set_progress(0.742790);
assert(apply_patch_check("/system/framework/lewa-framework.odex", "7e2d5748a032a35d2af0aa314c6e2a1e48f79a9e", "09ea10ffef803c827d463a27f9a76dc4daf1534a"));
set_progress(0.762271);
assert(apply_patch_check("/system/framework/lewa-res.apk", "386746fd7a7326918b7543f876a7bb701a93876b", "361eebf75a99db9a72497a141e202bcef60ca12e"));
set_progress(0.805200);
assert(apply_patch_check("/system/framework/mediatek-framework.jar", "96d4253387c8a3c9ad8a2e292cba08235f7115bd", "be8f2aae71bbd762fe43bbec61c4acf4f00f72f9"));
set_progress(0.805205);
assert(apply_patch_check("/system/framework/mediatek-framework.odex", "6fbe76f6843b3d2f98feabd8c0c13d54c2352ed0", "c259bedb6c2d514381cbc54daf960b8424e340ee"));
set_progress(0.806346);
assert(apply_patch_check("/system/framework/mediatek-res.apk", "a27414124dd3ab8e9f5bfc498d95801972c59ada", "da45db40c1b3aa07d725e26b2a9438c401b67715"));
set_progress(0.822579);
assert(apply_patch_check("/system/framework/monkey.jar", "cc47fc641d106917b47e6d620b92a5c75a18a8a0", "79c0364b9c1fc23b6b6b536903394d5788d00f54"));
set_progress(0.822584);
assert(apply_patch_check("/system/framework/monkey.odex", "c0296b6f5de81c972c05f7c8361502e7d9c842f2", "acae7e8c596c839d90a4ceffa972620378768005"));
set_progress(0.824481);
assert(apply_patch_check("/system/framework/pm.jar", "1c45cb554b45df59b5f8efad264314475a654df9", "a40824424aca4aa57cac9c2b216eb856c0dc6fe4"));
set_progress(0.824486);
assert(apply_patch_check("/system/framework/pm.odex", "90a966b839ca50952325bdb0efe10a054326a4a1", "f5f64e8ac9acba0806840234f7eb7774d7042e84"));
set_progress(0.824991);
assert(apply_patch_check("/system/framework/secondary_framework.jar", "02ed08fb60aff0eca51c7a7da8091f9b42b2e270", "7a3f1ad7bb3c11957888aff712eb30bb7f26c527"));
set_progress(0.824996);
assert(apply_patch_check("/system/framework/secondary_framework.odex", "c2627ea20bf34c97e5dc3e7a1fd51f05fbcf225d", "9364b8857894c4447e6d20a2c07f6b55c2549ec1"));
set_progress(0.852020);
assert(apply_patch_check("/system/framework/services.jar", "77e864a6aa503a319d4ea7e28234ad2a5016505a", "f01f45403ed560003b5380e303ff22660470d714"));
set_progress(0.852025);
assert(apply_patch_check("/system/framework/services.odex", "656ae453a1733504ec9209950444ae07ad7436f7", "d6520b626366b6a9aa85e86c3380fac28521b32e"));
set_progress(0.888682);
assert(apply_patch_check("/system/framework/svc.jar", "96ccab490a69c117300a5eff670d6210cee1e6db", "045a1c65dc8cd4e3b0d814087caec282cd5bccb9"));
set_progress(0.888688);
assert(apply_patch_check("/system/framework/svc.odex", "2bef5326816405a64881578aef559048f3e0ca71", "cda0943ce784f37a732fc4d40743b046b6c05a94"));
set_progress(0.888829);
assert(apply_patch_check("/system/framework/wbxml.jar", "d32d4902a33bf3229a6b0211a45c0521a4f244dc", "a40824424aca4aa57cac9c2b216eb856c0dc6fe4"));
set_progress(0.888834);
assert(apply_patch_check("/system/framework/wbxml.odex", "1b82959870bd271378167b7031022b25cf0f4681", "f638527bdfce564a4b09ee262ffb7950c27cc91a"));
set_progress(0.889208);
assert(apply_patch_check("/system/lib/libbcc.so", "b73e281c5bd800517c61e486d61eebdf0a327838", "75d4083ece0d9a9556912c339a07eaebea5b261a"));
set_progress(0.963671);
assert(apply_patch_check("/system/lib/libchromium_net.so", "b9f4f6dbd24219b669459adb235ce0abf306df12", "bcf2f14c751fc238993d5be25559628ce3d989fb"));
set_progress(0.994267);
assert(apply_patch_check("/system/lib/libwebrtc_audio_preprocessing.so", "32b670bf1b950d8c1f4c331e27326b5e409842d9", "04040b3fc334e2dd74a89e27023586ca6a78031b"));
set_progress(0.998943);
assert(apply_patch_check("/system/xbin/nano", "644298676318de3ab95726de88c9e323e290d515", "35337efe0d10d56e2f86087d01897ceefd140253"));
set_progress(1.000000);
assert(apply_patch_space(10455544));

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

ui_print("Removing unneeded files...");
delete("/system/build.prop", "/system/lib/libbcc.so.sha1",
       "/system/recovery.img");
show_progress(0.800000, 0);
ui_print("Patching system files...");
apply_patch("/system/app/ApplicationsProvider.apk", "-",
            6d80a57e4399987657b388c70a3173b0c54ed1e5, 5983,
            18126d8f8e55236d914c078c33bad2616f7359e5, package_extract_file("patch/system/app/ApplicationsProvider.apk.p"));
set_progress(0.000099);
apply_patch("/system/app/BackupRestoreConfirmation.apk", "-",
            583efeccf294be479c9298994ceec5d29f54a7ec, 9917,
            7172f646d1189c51732e8dddd33dddb74643754f, package_extract_file("patch/system/app/BackupRestoreConfirmation.apk.p"));
set_progress(0.000262);
apply_patch("/system/app/CalendarProvider.apk", "-",
            89a1762dd0d408a1322322c3720a2d40067224db, 16686,
            fb5b6ef229211e9300d9bd0be1de20c44e7f2749, package_extract_file("patch/system/app/CalendarProvider.apk.p"));
set_progress(0.000537);
apply_patch("/system/app/CellConnService.apk", "-",
            8da2dbcb705d583d7d53d571cd1eed349703b2b8, 13210,
            196256d2ddaea5c25b60325ea5de7616bd2a25bb, package_extract_file("patch/system/app/CellConnService.apk.p"));
set_progress(0.000754);
apply_patch("/system/app/CertInstaller.apk", "-",
            78a4ab5aa13bd30709ff0523fc7493ca90408b70, 10708,
            daabb00e22028125e7a512f231503c25ceff5b3c, package_extract_file("patch/system/app/CertInstaller.apk.p"));
set_progress(0.000931);
apply_patch("/system/app/ContactsProvider.apk", "-",
            f96b731ac0962d18cbb14032871bd838ff07cbfa, 28179,
            1ae6ac8a14015f0d5f0422f7e95edf0bb6ef6dbf, package_extract_file("patch/system/app/ContactsProvider.apk.p"));
set_progress(0.001395);
apply_patch("/system/app/DefaultContainerService.apk", "-",
            2d873ce3019d297c3250747e6655b2e358f20d52, 3808,
            443c69797487177181ea1f92db99b1b78a4a4e69, package_extract_file("patch/system/app/DefaultContainerService.apk.p"));
set_progress(0.001457);
apply_patch("/system/app/DownloadProvider.apk", "-",
            bf3baca0960a53e46c4a3a8cfbd28a2ecbf7cf64, 12383,
            361f9bd29c117b288a35cfac9cc39aac81b380c3, package_extract_file("patch/system/app/DownloadProvider.apk.p"));
set_progress(0.001661);
apply_patch("/system/app/DownloadProviderUi.apk", "-",
            531dfbccb0134b11343fba9d7545d6e6e59dec7c, 58824,
            598919f7ce6b0d65b579ed1405fea954bbb70119, package_extract_file("patch/system/app/DownloadProviderUi.apk.p"));
set_progress(0.002630);
apply_patch("/system/app/DrmProvider.apk", "-",
            fa262ccb40cc4dabf4fc9f9ff922c12ef8d3172b, 5142,
            d254bcece23b7700fdd613c3729ff4156e2838e8, package_extract_file("patch/system/app/DrmProvider.apk.p"));
set_progress(0.002715);
apply_patch("/system/app/EngineerModeSim.apk", "-",
            a0d91323e4287e544df1e660fcec8b0150a55755, 26334,
            2efe07008ea200a96522d0bcc92774f98503fb7f, package_extract_file("patch/system/app/EngineerModeSim.apk.p"));
set_progress(0.003149);
apply_patch("/system/app/HTMLViewer.apk", "-",
            05602fbdf18b054c91dbeb96d3f653b49ab5bf27, 3908,
            09705733083af0b3a7d5bb3e01b2e347d6b4d5ce, package_extract_file("patch/system/app/HTMLViewer.apk.p"));
set_progress(0.003213);
apply_patch("/system/app/HoloSpiralWallpaper.apk", "-",
            ca6e40d09934bc97dd8754d44db81237c694c4f7, 40822,
            d95b03e9ce10a5c35faaaea72de6c1fc1f1bccfb, package_extract_file("patch/system/app/HoloSpiralWallpaper.apk.p"));
set_progress(0.003885);
apply_patch("/system/app/KeyChain.apk", "-",
            283e38c5acc8bde8a6e7821992f6586f2aed1de4, 8951,
            6326279eb705948e87fdd90ae423e95cee9962d9, package_extract_file("patch/system/app/KeyChain.apk.p"));
set_progress(0.004033);
apply_patch("/system/app/LatinIME.apk", "-",
            04a6f3a43757e9b30104e3ab91a79daaabda008e, 1195450,
            2b143f208e48a9cf096e1b786a44656dd433a766, package_extract_file("patch/system/app/LatinIME.apk.p"));
set_progress(0.023722);
apply_patch("/system/app/LewaCalculator.apk", "-",
            c7174418fe823dc16a24bd754ea2161b340c04c6, 802973,
            90ed0fb00dcefebe2595f4e13c157da1bdfe08af, package_extract_file("patch/system/app/LewaCalculator.apk.p"));
set_progress(0.036948);
apply_patch("/system/app/LewaLabiSync.apk", "-",
            8f31c7528ba0e3cf4c53a51ade009db255de188e, 14560,
            f959b5452c7b18f7c821fce62b828b17a21845f8, package_extract_file("patch/system/app/LewaLabiSync.apk.p"));
set_progress(0.037187);
apply_patch("/system/app/LewaPackageInstaller.apk", "-",
            a460b322c224ac3769a9239e7aec7d34f8dcba27, 73972,
            f55f2ef7c1ef88c6226fe329c8ba4fb41e1a54c2, package_extract_file("patch/system/app/LewaPackageInstaller.apk.p"));
set_progress(0.038406);
apply_patch("/system/app/LewaSoundRecorder.apk", "-",
            cab3726536979b23ecaae7006a5b3aac789ba79d, 1146872,
            cdc26c2a4e1cadfd792e2c41cca86c4f713c8cfe, package_extract_file("patch/system/app/LewaSoundRecorder.apk.p"));
set_progress(0.057295);
apply_patch("/system/app/LiveWallpapers.apk", "-",
            affbba6b0722e2205ce77d54be2326710bcbe414, 1625022,
            c288010b61837541b44e061990b7160762be5308, package_extract_file("patch/system/app/LiveWallpapers.apk.p"));
set_progress(0.084060);
apply_patch("/system/app/LiveWallpapersPicker.apk", "-",
            817af082d4c58637f208861871728ee0aed2fee6, 105361,
            75810e45040106012cbd5fd10cc3063acef2ee34, package_extract_file("patch/system/app/LiveWallpapersPicker.apk.p"));
set_progress(0.085795);
apply_patch("/system/app/LocationProvider.apk", "-",
            77a0c862f699c5b1cc47f9ee9ad18a47d39d06a7, 2303124,
            6c782c2f38d2341d24991aeb32e5fdd573ab9f8e, package_extract_file("patch/system/app/LocationProvider.apk.p"));
set_progress(0.123728);
apply_patch("/system/app/MagicSmokeWallpapers.apk", "-",
            3948432f0f6e2f21adf7099b19edf8b94d936a36, 202426,
            0fcfce6790f50335fb9d896c01e30500be27598c, package_extract_file("patch/system/app/MagicSmokeWallpapers.apk.p"));
set_progress(0.127062);
apply_patch("/system/app/MediaProvider.apk", "-",
            d172a565ea62938734dad77fda3b21a4ba4b4ff4, 12437,
            b14679ce91c356c8daffd8a0e362a2c2d6f49758, package_extract_file("patch/system/app/MediaProvider.apk.p"));
set_progress(0.127267);
apply_patch("/system/app/MmsFavoriteProvider.apk", "-",
            f0ff4ccadf1a122e680d541c88e2f667ebdaac63, 40547,
            6e8f603c2721cb14463fce1b4cc24b2a666ce4dd, package_extract_file("patch/system/app/MmsFavoriteProvider.apk.p"));
set_progress(0.127935);
apply_patch("/system/app/MtkBt.apk", "-",
            df25f1e09ae40670c273ffdbf07978a0c5ac3e53, 228630,
            a27ab8119bfe3e21fe95c03fbdd459c4e83f93ec, package_extract_file("patch/system/app/MtkBt.apk.p"));
set_progress(0.131701);
apply_patch("/system/app/MtkVideoLiveWallpaper.apk", "-",
            fe399eb425d6e4a860f25313e34ee616b0ea2b6b, 2236797,
            c786158080c0b83b76362d18270508f43c1f07c3, package_extract_file("patch/system/app/MtkVideoLiveWallpaper.apk.p"));
set_progress(0.168542);
apply_patch("/system/app/Omacp.apk", "-",
            79e86d994b615784e50e9ef9aff97191130449e7, 22716,
            fa1fc942c43bf81164a162a02944987dfa1a16f9, package_extract_file("patch/system/app/Omacp.apk.p"));
set_progress(0.168916);
apply_patch("/system/app/PIM.apk", "-",
            5feb8524d93cebe6221a0a1efae293834f668457, 5773272,
            47a35d9c7672cd993abbdcc1bcb80901f7b326f9, package_extract_file("patch/system/app/PIM.apk.p"));
set_progress(0.264003);
apply_patch("/system/app/Phone.apk", "-",
            c858dc561c486d0d379ac34ff37a7b2ac304800c, 1074341,
            fba1e957256c8431827cc737a65006366a43dec5, package_extract_file("patch/system/app/Phone.apk.p"));
set_progress(0.281698);
apply_patch("/system/app/Provision.apk", "-",
            b1c89f01fad09c286ec0f56cc28d1447a2894a3b, 2851,
            e5361355104a0a739efe17c2c4c9010b9aa29137, package_extract_file("patch/system/app/Provision.apk.p"));
set_progress(0.281745);
apply_patch("/system/app/Settings.apk", "-",
            2e4ad3664581d93f980af96e2a11a44e6e857d3c, 2872584,
            c4bc0a93ab98eac2fb8fcf9ce4ba60d2fa2c5597, package_extract_file("patch/system/app/Settings.apk.p"));
set_progress(0.329058);
apply_patch("/system/app/SettingsProvider.apk", "-",
            adf7435e578af2e1473d1e7dc62c16f30b6b008e, 16967,
            e417a5e375c7ae5b025da87afdd5af52a014f267, package_extract_file("patch/system/app/SettingsProvider.apk.p"));
set_progress(0.329337);
apply_patch("/system/app/SharedStorageBackup.apk", "-",
            598fd530e8fe20508e1bf4b9c8c7702a7a3452be, 2666,
            8822b43ac75d87036740bedfd7148a43cd3ea318, package_extract_file("patch/system/app/SharedStorageBackup.apk.p"));
set_progress(0.329381);
apply_patch("/system/app/Stk1.apk", "-",
            6d969ef85a4f2475e18a26cbbd78b51112fd52a4, 26134,
            cd40bbf9150fba9d99e1c35bf319b418161e35a5, package_extract_file("patch/system/app/Stk1.apk.p"));
set_progress(0.329811);
apply_patch("/system/app/Stk2.apk", "-",
            f6cc1a936fa8076b92d85aada72711952e9ebb1d, 26239,
            45798394eaa3d711cd5bfd1d8473e41faf73b29d, package_extract_file("patch/system/app/Stk2.apk.p"));
set_progress(0.330244);
apply_patch("/system/app/SystemUI.apk", "-",
            09e4df5fdfa4a9a6616a7fa61e5915db8fd0c304, 976478,
            60419aa6762b1e1e6132aff417d79c9e704d1efe, package_extract_file("patch/system/app/SystemUI.apk.p"));
set_progress(0.346327);
apply_patch("/system/app/TelephonyProvider.apk", "-",
            2a7cac494404f428a033f5be72116e1729515ac1, 12251,
            a6361b7da31ee1ff5bf8d5a26018a6c8c758d026, package_extract_file("patch/system/app/TelephonyProvider.apk.p"));
set_progress(0.346528);
apply_patch("/system/app/UserDictionaryProvider.apk", "-",
            8d8ea1d433577a469fcdedba67f735b0c0165574, 3597,
            4449d4ecd55680953338560373afbabe8ca272f6, package_extract_file("patch/system/app/UserDictionaryProvider.apk.p"));
set_progress(0.346588);
apply_patch("/system/app/VisualizationWallpapers.apk", "-",
            51ac58235d2f0a9eda3b60664b79a46507b86a84, 138867,
            428496ce553ea40fb4d39e4e506e4187febb6f02, package_extract_file("patch/system/app/VisualizationWallpapers.apk.p"));
set_progress(0.348875);
apply_patch("/system/app/VpnDialogs.apk", "-",
            a72fd32f8c1d469f42101dc32dd25839f58b7b9e, 7647,
            a5a228b27813fd3da964fb8f60657b7407ffd694, package_extract_file("patch/system/app/VpnDialogs.apk.p"));
set_progress(0.349001);
apply_patch("/system/bin/mkyaffs2image", "-",
            1c42500b1006bfb6495c8cf3269c1a702b83b4a6, 14904,
            7a1d838aa71ae8f71aa900791476139495fcb150, package_extract_file("patch/system/bin/mkyaffs2image.p"));
set_progress(0.349246);
apply_patch("/system/framework/DMAgent.jar", "-",
            96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            be8f2aae71bbd762fe43bbec61c4acf4f00f72f9, package_extract_file("patch/system/framework/DMAgent.jar.p"));
set_progress(0.349251);
apply_patch("/system/framework/DMAgent.odex", "-",
            a2c6be3ae5e0bed2a2a71c73dce25a621e48e150, 7944,
            47f4385432f857ea547fc57028f118e827adfd90, package_extract_file("patch/system/framework/DMAgent.odex.p"));
set_progress(0.349382);
apply_patch("/system/framework/am.jar", "-",
            96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            be8f2aae71bbd762fe43bbec61c4acf4f00f72f9, package_extract_file("patch/system/framework/am.jar.p"));
set_progress(0.349387);
apply_patch("/system/framework/am.odex", "-",
            e4247f58babb782747662d459be26d73a4b74c81, 39416,
            aaddf32de612b7f9e03136242792cb80d00378b5, package_extract_file("patch/system/framework/am.odex.p"));
set_progress(0.350037);
apply_patch("/system/framework/android.policy.jar", "-",
            96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            be8f2aae71bbd762fe43bbec61c4acf4f00f72f9, package_extract_file("patch/system/framework/android.policy.jar.p"));
set_progress(0.350042);
apply_patch("/system/framework/android.policy.odex", "-",
            cdefc123834f46499b933fcd9f4f899c0f374480, 406424,
            d12f5774b89c42bbc349d51a71d7efe4e9b36a94, package_extract_file("patch/system/framework/android.policy.odex.p"));
set_progress(0.356736);
apply_patch("/system/framework/android.test.runner.jar", "-",
            cc47fc641d106917b47e6d620b92a5c75a18a8a0, 313,
            f2e1d26a0c3688aaabe2bdd401fa627f5e022113, package_extract_file("patch/system/framework/android.test.runner.jar.p"));
set_progress(0.356741);
apply_patch("/system/framework/android.test.runner.odex", "-",
            39f02ae42d308ddb76bf32053658a88fc0b1324e, 182488,
            528c8ae773db1ea0c5aa77d34778f9d1e41cb355, package_extract_file("patch/system/framework/android.test.runner.odex.p"));
set_progress(0.359746);
apply_patch("/system/framework/apache-xml.jar", "-",
            5d1c70911478fe6fae886867709616ade5602769, 18027,
            9aacce507f9839b6df3633f3d382930e88894812, package_extract_file("patch/system/framework/apache-xml.jar.p"));
set_progress(0.360043);
apply_patch("/system/framework/apache-xml.odex", "-",
            a0dfcff5d96330fcff9854b50f1c4b3bf9f54bc9, 1378496,
            4bdb7ac718d23f32c109012f617ea88b0e6f95de, package_extract_file("patch/system/framework/apache-xml.odex.p"));
set_progress(0.382748);
apply_patch("/system/framework/bmgr.jar", "-",
            96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            be8f2aae71bbd762fe43bbec61c4acf4f00f72f9, package_extract_file("patch/system/framework/bmgr.jar.p"));
set_progress(0.382753);
apply_patch("/system/framework/bmgr.odex", "-",
            a7fdb385630b258b91e3185b1cd09991003d1560, 14928,
            2a167ffececb1c3c82dc1a486b5f6e082b4aadc6, package_extract_file("patch/system/framework/bmgr.odex.p"));
set_progress(0.382999);
apply_patch("/system/framework/bouncycastle.jar", "-",
            af57768e67daecb8faf5a92ef729ff2c3240ce3b, 313,
            58dc5f6384d7a8c3b8cb667be47c92a34f8d3afd, package_extract_file("patch/system/framework/bouncycastle.jar.p"));
set_progress(0.383004);
apply_patch("/system/framework/bouncycastle.odex", "-",
            c25416bb002cd22788af776484316f869c336c63, 977840,
            18a8c80b1210146fda4356b9f5ff4c28111c7064, package_extract_file("patch/system/framework/bouncycastle.odex.p"));
set_progress(0.399109);
apply_patch("/system/framework/bu.jar", "-",
            96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            be8f2aae71bbd762fe43bbec61c4acf4f00f72f9, package_extract_file("patch/system/framework/bu.jar.p"));
set_progress(0.399114);
apply_patch("/system/framework/bu.odex", "-",
            50de76569e96a53ed14d299b6a9d713d179139db, 4760,
            96d2b0f84f74ee3573042d187a56cdb39494e884, package_extract_file("patch/system/framework/bu.odex.p"));
set_progress(0.399193);
apply_patch("/system/framework/com.android.future.usb.accessory.jar",
            "-", 96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            be8f2aae71bbd762fe43bbec61c4acf4f00f72f9, package_extract_file("patch/system/framework/com.android.future.usb.accessory.jar.p"));
set_progress(0.399198);
apply_patch("/system/framework/com.android.future.usb.accessory.odex",
            "-", 0253706a9606681c5cbf06d771477aad3859179c, 6184,
            b4a6d0a2e8d5a27134def0c72e53186788914a8c, package_extract_file("patch/system/framework/com.android.future.usb.accessory.odex.p"));
set_progress(0.399300);
apply_patch("/system/framework/com.android.location.provider.jar",
            "-", 96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            b378c418099e5645bb6dd6d42951b6234409d688, package_extract_file("patch/system/framework/com.android.location.provider.jar.p"));
set_progress(0.399305);
apply_patch("/system/framework/com.android.location.provider.odex",
            "-", 02eadd132375d5eefabf855bfaaf69a2206c08b4, 7552,
            1866a7ad20676875db59680818acda0c02b916cf, package_extract_file("patch/system/framework/com.android.location.provider.odex.p"));
set_progress(0.399429);
apply_patch("/system/framework/core-junit.jar", "-",
            4a4be0d6033efbe0d74c2810711067bf61469e0e, 313,
            138b420093f4189c38becbf5a5a1f15a332d8cf2, package_extract_file("patch/system/framework/core-junit.jar.p"));
set_progress(0.399434);
apply_patch("/system/framework/core-junit.odex", "-",
            1649e254f7789a870a9b494263404d79d8f61a79, 23648,
            103da66cc6862e97f36987f79e926f4af55f2a81, package_extract_file("patch/system/framework/core-junit.odex.p"));
set_progress(0.399824);
apply_patch("/system/framework/core.jar", "-",
            e986a5867238ebed73f11bdcbf5a6f23d3945e01, 4124,
            de06de68f654c3647b076a3ee93fb6d2f19f8e54, package_extract_file("patch/system/framework/core.jar.p"));
set_progress(0.399892);
apply_patch("/system/framework/core.odex", "-",
            0948345af7a20d10a0f1b7197b0786643686cd5b, 3370880,
            8f0a4843b92d7c1cfd796abfbadde3717f1eee72, package_extract_file("patch/system/framework/core.odex.p"));
set_progress(0.455411);
apply_patch("/system/framework/ext.jar", "-",
            a3440abd3d1ce361bb5932cb63f968117d6c361d, 440644,
            0f70cb68ebc41fa5a140c3e3809c1721c715e1f1, package_extract_file("patch/system/framework/ext.jar.p"));
set_progress(0.462669);
apply_patch("/system/framework/ext.odex", "-",
            58f60334ec1ac45879a61b640b72fda7da7ce2fc, 1495656,
            be3429da1f2b05d9e46aa1571859df26bb124dfd, package_extract_file("patch/system/framework/ext.odex.p"));
set_progress(0.487303);
apply_patch("/system/framework/filterfw.jar", "-",
            12c705912db79950c11a24f8b4f34a34ba18f9bc, 313,
            571ae9b4f1396657031f647f61863f71a5977192, package_extract_file("patch/system/framework/filterfw.jar.p"));
set_progress(0.487308);
apply_patch("/system/framework/filterfw.odex", "-",
            db77acd8a275506bd1e5678bf6302157971163de, 322448,
            0037e6d4fbe13fc83cc6b7f79fed0db8979ef30a, package_extract_file("patch/system/framework/filterfw.odex.p"));
set_progress(0.492619);
apply_patch("/system/framework/framework-res.apk", "-",
            f112b70fd6aa72be8b24a6db31a132c16d282e7e, 4647532,
            6fd1d952921cf6bf67137bf3419f2a25a3b3204e, package_extract_file("patch/system/framework/framework-res.apk.p"));
set_progress(0.569165);
apply_patch("/system/framework/framework.jar", "-",
            f1799538cc3e853d58256b8a33c5c84f38d01a40, 14961,
            1496e7813479fefd0e8003279cc8933def378576, package_extract_file("patch/system/framework/framework.jar.p"));
set_progress(0.569412);
apply_patch("/system/framework/framework.odex", "-",
            1599ae244bee3b90590ad8191ccd5ae420152321, 10455544,
            6e8ee9d7b750b6ef3c50d9e318562ed7ef389650, package_extract_file("patch/system/framework/framework.odex.p"));
set_progress(0.741618);
apply_patch("/system/framework/ime.jar", "-",
            96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            b378c418099e5645bb6dd6d42951b6234409d688, package_extract_file("patch/system/framework/ime.jar.p"));
set_progress(0.741624);
apply_patch("/system/framework/ime.odex", "-",
            93200da0fcc065f4d0f9d2ba8a4c4cd609e72518, 6904,
            53e9e3e3a8b9dfeed9b4b45df6b9d7981348e0a5, package_extract_file("patch/system/framework/ime.odex.p"));
set_progress(0.741737);
apply_patch("/system/framework/input.jar", "-",
            96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            b378c418099e5645bb6dd6d42951b6234409d688, package_extract_file("patch/system/framework/input.jar.p"));
set_progress(0.741742);
apply_patch("/system/framework/input.odex", "-",
            39afaef89b4385503d2860fc17f7fb36b37b6c7f, 4600,
            4338025245a256e12a703199d967c30e444c3367, package_extract_file("patch/system/framework/input.odex.p"));
set_progress(0.741818);
apply_patch("/system/framework/javax.obex.jar", "-",
            96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            be8f2aae71bbd762fe43bbec61c4acf4f00f72f9, package_extract_file("patch/system/framework/javax.obex.jar.p"));
set_progress(0.741823);
apply_patch("/system/framework/javax.obex.odex", "-",
            b9addef02452741a2323badecb1474c274510bd5, 58392,
            3244483c4d4c126642bb514f9221fd8fbeb2ca08, package_extract_file("patch/system/framework/javax.obex.odex.p"));
set_progress(0.742785);
apply_patch("/system/framework/lewa-framework.jar", "-",
            b49aad3ecf90348a8ed12aeb03b70b9f685072a7, 313,
            9fd3fb23f008572bc08246bfb35aa6684c0a8496, package_extract_file("patch/system/framework/lewa-framework.jar.p"));
set_progress(0.742790);
apply_patch("/system/framework/lewa-framework.odex", "-",
            7e2d5748a032a35d2af0aa314c6e2a1e48f79a9e, 1182792,
            09ea10ffef803c827d463a27f9a76dc4daf1534a, package_extract_file("patch/system/framework/lewa-framework.odex.p"));
set_progress(0.762271);
apply_patch("/system/framework/lewa-res.apk", "-",
            386746fd7a7326918b7543f876a7bb701a93876b, 2606452,
            361eebf75a99db9a72497a141e202bcef60ca12e, package_extract_file("patch/system/framework/lewa-res.apk.p"));
set_progress(0.805200);
apply_patch("/system/framework/mediatek-framework.jar", "-",
            96d4253387c8a3c9ad8a2e292cba08235f7115bd, 313,
            be8f2aae71bbd762fe43bbec61c4acf4f00f72f9, package_extract_file("patch/system/framework/mediatek-framework.jar.p"));
set_progress(0.805206);
apply_patch("/system/framework/mediatek-framework.odex", "-",
            6fbe76f6843b3d2f98feabd8c0c13d54c2352ed0, 69264,
            c259bedb6c2d514381cbc54daf960b8424e340ee, package_extract_file("patch/system/framework/mediatek-framework.odex.p"));
set_progress(0.806346);
apply_patch("/system/framework/mediatek-res.apk", "-",
            a27414124dd3ab8e9f5bfc498d95801972c59ada, 985569,
            da45db40c1b3aa07d725e26b2a9438c401b67715, package_extract_file("patch/system/framework/mediatek-res.apk.p"));
set_progress(0.822579);
apply_patch("/system/framework/monkey.jar", "-",
            cc47fc641d106917b47e6d620b92a5c75a18a8a0, 313,
            79c0364b9c1fc23b6b6b536903394d5788d00f54, package_extract_file("patch/system/framework/monkey.jar.p"));
set_progress(0.822584);
apply_patch("/system/framework/monkey.odex", "-",
            c0296b6f5de81c972c05f7c8361502e7d9c842f2, 115192,
            acae7e8c596c839d90a4ceffa972620378768005, package_extract_file("patch/system/framework/monkey.odex.p"));
set_progress(0.824481);
apply_patch("/system/framework/pm.jar", "-",
            1c45cb554b45df59b5f8efad264314475a654df9, 313,
            a40824424aca4aa57cac9c2b216eb856c0dc6fe4, package_extract_file("patch/system/framework/pm.jar.p"));
set_progress(0.824487);
apply_patch("/system/framework/pm.odex", "-",
            90a966b839ca50952325bdb0efe10a054326a4a1, 30648,
            f5f64e8ac9acba0806840234f7eb7774d7042e84, package_extract_file("patch/system/framework/pm.odex.p"));
set_progress(0.824991);
apply_patch("/system/framework/secondary_framework.jar", "-",
            02ed08fb60aff0eca51c7a7da8091f9b42b2e270, 313,
            7a3f1ad7bb3c11957888aff712eb30bb7f26c527, package_extract_file("patch/system/framework/secondary_framework.jar.p"));
set_progress(0.824997);
apply_patch("/system/framework/secondary_framework.odex", "-",
            c2627ea20bf34c97e5dc3e7a1fd51f05fbcf225d, 1640760,
            9364b8857894c4447e6d20a2c07f6b55c2549ec1, package_extract_file("patch/system/framework/secondary_framework.odex.p"));
set_progress(0.852020);
apply_patch("/system/framework/services.jar", "-",
            77e864a6aa503a319d4ea7e28234ad2a5016505a, 313,
            f01f45403ed560003b5380e303ff22660470d714, package_extract_file("patch/system/framework/services.jar.p"));
set_progress(0.852026);
apply_patch("/system/framework/services.odex", "-",
            656ae453a1733504ec9209950444ae07ad7436f7, 2225632,
            d6520b626366b6a9aa85e86c3380fac28521b32e, package_extract_file("patch/system/framework/services.odex.p"));
set_progress(0.888683);
apply_patch("/system/framework/svc.jar", "-",
            96ccab490a69c117300a5eff670d6210cee1e6db, 313,
            045a1c65dc8cd4e3b0d814087caec282cd5bccb9, package_extract_file("patch/system/framework/svc.jar.p"));
set_progress(0.888688);
apply_patch("/system/framework/svc.odex", "-",
            2bef5326816405a64881578aef559048f3e0ca71, 8600,
            cda0943ce784f37a732fc4d40743b046b6c05a94, package_extract_file("patch/system/framework/svc.odex.p"));
set_progress(0.888829);
apply_patch("/system/framework/wbxml.jar", "-",
            d32d4902a33bf3229a6b0211a45c0521a4f244dc, 313,
            a40824424aca4aa57cac9c2b216eb856c0dc6fe4, package_extract_file("patch/system/framework/wbxml.jar.p"));
set_progress(0.888834);
apply_patch("/system/framework/wbxml.odex", "-",
            1b82959870bd271378167b7031022b25cf0f4681, 22704,
            f638527bdfce564a4b09ee262ffb7950c27cc91a, package_extract_file("patch/system/framework/wbxml.odex.p"));
set_progress(0.889208);
apply_patch("/system/lib/libbcc.so", "-",
            b73e281c5bd800517c61e486d61eebdf0a327838, 4520980,
            75d4083ece0d9a9556912c339a07eaebea5b261a, package_extract_file("patch/system/lib/libbcc.so.p"));
set_progress(0.963671);
apply_patch("/system/lib/libchromium_net.so", "-",
            b9f4f6dbd24219b669459adb235ce0abf306df12, 1857656,
            bcf2f14c751fc238993d5be25559628ce3d989fb, package_extract_file("patch/system/lib/libchromium_net.so.p"));
set_progress(0.994267);
apply_patch("/system/lib/libwebrtc_audio_preprocessing.so", "-",
            32b670bf1b950d8c1f4c331e27326b5e409842d9, 283944,
            04040b3fc334e2dd74a89e27023586ca6a78031b, package_extract_file("patch/system/lib/libwebrtc_audio_preprocessing.so.p"));
set_progress(0.998943);
apply_patch("/system/xbin/nano", "-",
            644298676318de3ab95726de88c9e323e290d515, 64148,
            35337efe0d10d56e2f86087d01897ceefd140253, package_extract_file("patch/system/xbin/nano.p"));
set_progress(1.000000);
show_progress(0.100000, 10);
ui_print("Unpacking new files...");
package_extract_dir("system", "/system");
ui_print("Symlinks and permissions...");
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(0, 0, 06755, "/system/bin/su0");
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(0, 2000, 0550, "/system/etc/init.partner.sh");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm(0, 2000, 0755, "/system/vendor");
set_perm_recursive(0, 2000, 0755, 0755, "/system/vendor/bin");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor/lib/drm");
set_perm(0, 0, 0644, "/system/vendor/lib/drm/libdrmwvmplugin.so");
set_perm(0, 2000, 0755, "/system/vendor/lib/egl");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor/lib/hw");
set_perm(0, 0, 0644, "/system/vendor/lib/hw/gralloc.mt6577.so");
set_perm(0, 2000, 0755, "/system/vendor/operator");
set_perm(0, 2000, 0755, "/system/vendor/operator/app");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/su");
set_perm(0, 0, 0755, "/system/xbin/tcpdump");
ui_print("Patching remaining system files...");
set_perm(0, 0, 0644, "/system/build.prop");
unmount("/system");
