ui_print("H815 10C BOOTLOADER");
ui_print(" ");
ui_print("This zip requires you do NOT wipe system first. It must confirm model before continuing... ");
mount("ext4", "EMMC", "/dev/block/bootdevice/by-name/system", "/system");
file_getprop("/system/build.prop", "ro.product.model") == "LG-H815" ||
    file_getprop("/system/build.prop", "ro.product.model") == "LGH815" ||
    file_getprop("/system/build.prop", "ro.product.model") == "H815" ||
    abort("Package expects model LG H815; this device has " + getprop("ro.build.version.release") + ".");
package_extract_dir("bootloader", "/tmp");
    set_perm_recursive(0, 0, 0777, 0777, "/tmp");
ui_print("Verifying ZIP contents...");
ui_print(" ");
apply_patch_check("/tmp/aboot.img", "f50b4b1952220979a41734e81d079091d3182a32") || abort("\"/tmp/aboot.img\" has failed verification.");
apply_patch_check("/tmp/factory.img", "efbca919b8dfca0830f4c8c0ecaef241f47580c3") || abort("\"/tmp/factory.img\" has failed verification.");
apply_patch_check("/tmp/hyp.img", "dc46fcdc72f9b40d6e87e39fed96bbe71af7ecdc") || abort("\"/tmp/hyp.img\" has failed verification.");
apply_patch_check("/tmp/laf.img", "cf981334d23164ec66e302e5b608c25204b2375b") || abort("\"/tmp/laf.img\" has failed verification.");
apply_patch_check("/tmp/pmic.img", "cd781d0e43cbd4b4623e59550415833492538bb4") || abort("\"/tmp/pmic.img\" has failed verification.");
apply_patch_check("/tmp/raw_resources.img", "9a864554bc3367e7c5108136af6b8b9bb3536047") || abort("\"/tmp/raw_resources.img\" has failed verification.");
apply_patch_check("/tmp/rpm.img", "aa14d72fc1888fc04c992fa52ec1c1b4e26855a0") || abort("\"/tmp/rpm.img\" has failed verification.");
apply_patch_check("/tmp/sbl1.img", "49afbd906928b90cee068caded50d955e4329040") || abort("\"/tmp/sbl1.img\" has failed verification.");
apply_patch_check("/tmp/sdi.img", "42fb37cda703abe5624dfbec3a6fc3ffbce1083b") || abort("\"/tmp/sdi.img\" has failed verification.");
apply_patch_check("/tmp/sec.img", "5d8d07abe83dc6f485f1318157032ff8a9bf9d24") || abort("\"/tmp/sec.img\" has failed verification.");
apply_patch_check("/tmp/tz.img", "3bc244daabe46c526834163aa5c1391b1166d9dd") || abort("\"/tmp/tz.img\" has failed verification.");
ui_print("Flashing BOOTLOADER...");
ui_print(" ");
package_extract_file("bootloader/aboot.img", "/dev/block/bootdevice/by-name/aboot");
package_extract_file("bootloader/factory.img", "/dev/block/bootdevice/by-name/factory");
package_extract_file("bootloader/hyp.img", "/dev/block/bootdevice/by-name/hyp");
package_extract_file("bootloader/laf.img", "/dev/block/bootdevice/by-name/laf");
package_extract_file("bootloader/pmic.img", "/dev/block/bootdevice/by-name/pmic");
package_extract_file("bootloader/raw_resources.img", "/dev/block/bootdevice/by-name/raw_resources");
package_extract_file("bootloader/rpm.img", "/dev/block/bootdevice/by-name/rpm");
package_extract_file("bootloader/sbl1.img", "/dev/block/bootdevice/by-name/sbl1");
package_extract_file("bootloader/sdi.img", "/dev/block/bootdevice/by-name/sdi");
package_extract_file("bootloader/sec.img", "/dev/block/bootdevice/by-name/sec");
package_extract_file("bootloader/tz.img", "/dev/block/bootdevice/by-name/tz");
unmount("/system");
ui_print("Finished!");
ui_print(" ");
ui_print(" ");
ui_print("#TEAMCODEFIRE ");
ui_print(" ");
