assert(getprop("ro.product.device") == "whyred" || getprop("ro.build.product") == "whyred" || abort("E3004: This package is for device: whyred; this device is " + getprop("ro.product.device") + "."););
ui_print("Target: xiaomi/whyred/whyred:8.1.0/OPM1.171019.011/V9.5.11.0.OEIMIFA:user/release-keys");
ui_print("===================================================");
ui_print("---------------------------------------------------");
ui_print("     __                         __      __         ");
ui_print("   / ____| |             (_)   | |    / __ \       ");
ui_print("  | |    | |__   ___ _ __ _ ___| |__ | \  / |___   ");
ui_print("  | |    | '_ \ / _ \ '__| / __| '_ \| |  | / __|  ");
ui_print("  | |____| | | |  __/ |  | \__ \ | | | /__\ \__ \  ");
ui_print("   \_____|_| |_|\___|_|  |_|___/_| |_|\____/|___/  ");
ui_print("                                                   ");
ui_print("                     CherishOS                     ");
ui_print("                  by hungphan2001                  ");
ui_print("---------------------------------------------------");
ui_print("===================================================");
ui_print(" Android version: 13");
ui_print(" Cherish version: 4.3");
ui_print(" Build id         : TQ1A.221205.012");
ui_print(" Build date       : Sat Dec 24 23:10:31 WIB 2022");
ui_print(" Security patch   : 2022-12-05");
ui_print(" Device           : whyred");
ui_print("=================================================");
ui_print("BackupTools: starting backup script");
run_program("/tmp/install/bin/backuptool.sh", "backup", "/dev/block/bootdevice/by-name/system", "ext4");
ui_print("BackupTools: DONE! Now real installation will begin");
ui_print("Patching system image unconditionally...");
show_progress(0.800000, 0);
block_image_update("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat.br", "system.patch.dat") ||
  abort("E1001: Failed to update system image.");
delete_recursive("/data/system/package_cache");
ui_print("Patching vendor image unconditionally...");
show_progress(0.100000, 0);
block_image_update("/dev/block/bootdevice/by-name/vendor", package_extract_file("vendor.transfer.list"), "vendor.new.dat.br", "vendor.patch.dat") ||
  abort("E2001: Failed to update vendor image.");
delete_recursive("/data/system/package_cache");
show_progress(0.020000, 10);
ui_print("BackupTools: Restoring backup");
run_program("/tmp/install/bin/backuptool.sh", "restore", "/dev/block/bootdevice/by-name/system", "ext4");
ui_print("BackupTools: DONE!");
package_extract_file("boot.img", "/dev/block/bootdevice/by-name/boot");
show_progress(0.100000, 10);
set_progress(1.000000);
