getprop("ro.product.device") == "onc" || abort("E3004: This package is for \"onc\" devices; this is a \"" + getprop("ro.product.device") + "\".");
ui_print("Source: xiaomi/onc_ru/onc:9/PKQ1.181021.001/V11.0.6.0.PFLRUXM:user/release-keys");
ui_print("Target: xiaomi/onc_ru/onc:9/PKQ1.181021.001/V11.0.8.0.PFLRUXM:user/release-keys");
ui_print("Verifying current system...");
getprop("ro.build.fingerprint") == "xiaomi/onc_ru/onc:9/PKQ1.181021.001/V11.0.6.0.PFLRUXM:user/release-keys" ||
    getprop("ro.build.fingerprint") == "xiaomi/onc_ru/onc:9/PKQ1.181021.001/V11.0.8.0.PFLRUXM:user/release-keys" ||
    abort("E3001: Package expects build fingerprint of xiaomi/onc_ru/onc:9/PKQ1.181021.001/V11.0.6.0.PFLRUXM:user/release-keys or xiaomi/onc_ru/onc:9/PKQ1.181021.001/V11.0.8.0.PFLRUXM:user/release-keys; this device has " + getprop("ro.build.fingerprint") + ".");
show_progress(0.100000, 5);
apply_patch_check("EMMC:/dev/block/bootdevice/by-name/boot:67108864:f4a8339920a254a5085c8bde8e495986f6da83e1:67108864:e7eb060a300341a8cd9f2a587c8a0641eb50fde4") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:67108864:f4a8339920a254a5085c8bde8e495986f6da83e1:67108864:e7eb060a300341a8cd9f2a587c8a0641eb50fde4\" has unexpected contents.");
apply_patch_space(214192128) || abort("E3006: Not enough free space on /cache to apply patches.");
show_progress(0.100000, 70);
if (range_sha1("/dev/block/bootdevice/by-name/system", "1266,1,239,254,528,8324,8333,8335,8345,8346,8964,8970,9023,9025,24144,24145,31197,31198,31379,31380,31469,31474,31937,31939,32718,32719,32725,32726,32727,32728,32768,32990,33413,33414,33415,33416,33417,33419,33420,33421,33423,33424,33425,33426,33427,33428,33429,33430,33431,33432,33433,33434,33435,33437,33438,33441,34109,34110,34114,34115,34130,34131,34133,34134,34165,34166,34241,34242,34483,34486,34517,34518,34522,34524,34526,34527,34576,34577,34579,34580,35933,35934,36020,36021,36024,36025,36037,36038,36041,36042,36050,36051,36059,36060,36366,36367,36437,36438,36641,36642,36688,36689,36690,36691,36950,36951,36973,36974,36988,36989,37004,37006,37105,37107,37115,37116,37146,37148,37154,37155,39846,39848,39916,39917,42119,42121,42170,47313,47335,47336,53229,53231,53338,53339,53347,53349,53355,53356,54673,54675,54693,54696,54953,54955,54966,54969,55032,55035,55083,55084,55229,55231,55240,55241,55247,55249,55255,55256,59745,59747,59799,59802,62814,62815,62845,62847,62855,62856,64788,64789,65607,65609,65637,65638,65705,65706,65712,65714,65722,65723,65731,65732,66058,66060,66077,66078,66710,66712,66724,66727,66738,66739,67361,67363,67380,67383,77344,77347,77358,77359,77551,77553,77563,77566,77573,77575,77582,77583,77940,77942,77955,77956,78486,78488,78506,78507,78540,78542,78549,78550,79032,79034,79051,79054,81284,81287,85705,85706,85823,85825,85835,85836,87361,87363,88551,88554,88555,88556,88614,88616,88624,88625,88683,88685,88691,88694,88711,88712,88718,88719,91197,91199,91271,91272,96719,96720,98304,98526,110991,116157,116184,116185,118874,118876,118920,118921,118985,118987,118993,118994,120369,120371,120390,120391,120552,120554,120564,120565,120639,120641,120648,120651,123525,124062,124202,124204,124212,124213,125214,125216,125241,125242,125849,134042,140379,140380,162435,162438,163711,163714,163840,164062,164166,164168,164179,164617,164621,164623,164629,164632,165010,181395,189981,189982,190889,190891,190916,190917,191935,191937,191955,191956,193292,193293,193490,193492,193501,193502,193541,193543,193549,193550,193624,193626,193726,193727,193787,193789,193797,193798,193806,199373,206083,206086,206651,206652,210425,210427,210476,210477,214560,214562,214592,214593,217814,217816,217858,217861,221207,221210,222061,222064,226001,226002,227033,227035,227061,227062,227211,227213,227221,227224,227242,227243,228643,228645,228655,228656,228926,228928,228936,228937,229376,229598,231556,231558,231584,231585,232865,233656,233674,233675,233760,233762,233770,233771,234947,234949,234962,234963,240713,240715,240762,240763,240783,240785,240791,240792,256213,256214,257177,262589,270781,271483,271559,271560,279516,279518,279534,282807,282824,282826,282833,282834,291474,291475,291478,291480,291486,291487,294912,295134,296015,296222,296335,296337,296363,296373,296596,296597,296670,296671,296716,296718,296723,296724,296801,296812,296833,296836,296858,296862,297003,297004,297015,297018,297037,297038,300343,300344,300347,300348,307951,307952,311782,311806,313020,313021,313230,313247,313321,313350,313583,313600,316187,316413,316444,316556,316558,316760,316766,317292,317294,317580,317616,317875,317888,317903,317914,317923,317930,317994,318093,318128,318526,318550,318641,318678,318685,318760,319075,319118,319172,319499,319760,319873,319883,319937,319972,320025,320042,320047,320143,320182,320323,320378,320393,320434,320487,320710,320749,320851,320952,321137,321161,321197,321263,321268,321364,321374,321378,321429,321608,321797,321833,321982,322110,322382,323213,324157,324844,324845,325309,325310,325664,325665,326921,326922,328046,328047,329019,329143,329164,329195,329221,329240,329503,329605,329879,329934,329939,329960,330011,330039,330142,330192,330322,330676,330701,330766,330833,330850,330855,330862,330957,330982,331025,331576,331617,331668,331756,331817,331864,331871,331938,331984,332029,332077,332104,332291,332295,332421,332447,332473,332498,332499,332730,332785,332833,333533,334102,335476,335631,335678,337734,337735,344606,344607,345576,345578,349267,349268,349269,349270,364825,364826,371782,371783,375688,375689,389067,389068,394590,394591,397792,397793,399680,399681,405509,405510,406945,406946,415632,415633,415842,415843,415919,415920,433019,433021,436981,436982,440601,440602,440606,440608,447135,447137,447446,447449,447472,447473,447487,447488,447496,447497,447500,447501,447520,447521,447542,447543,447551,447552,447623,447624,447669,447670,447683,447685,447687,447688,447689,447690,447692,447693,447695,447696,447697,447698,447699,447700,447702,447703,447704,447705,447706,447707,447709,447710,447711,447712,447713,447714,447715,447716,447717,447718,447719,447720,447724,447725,447726,447727,447728,447729,447730,447731,447732,447733,447734,447735,447736,447737,447738,447741,447749,447750,447756,447757,447862,447864,447866,447868,447886,447888,447894,447895,447901,447902,447906,447907,450746,450748,450788,450790,450800,450801,450807,450808,454486,454487,455380,455381,455943,455945,456580,456581,458449,458450,462704,462705,462919,462921,462968,462969,468848,468849,469225,469226,469231,469233,469242,469243,469375,469376,469395,469397,479205,479207,496049,496050,503784,511976,512376,512596,512614,513405,513447,513449,513476,513477,513492,513494,513691,513694,514342,514344,514897,514898,514900,514902,514915,514916,514964,514966,515216,515217,515219,515221,515245,515246,515258,515260,515325,515328,515338,515339,515351,515353,515382,515385,515409,515410,515653,515657,516056,516057,518694,518695,524288,530360,532438,532439,532960,533217,533226,533228,533237,533238,533240,533242,533251,533252,533279,533428,533435,533436,537104,537106,541786,541789,541864,541866,541907,541908,541911,541913,541932,541933,544104,544106,544518,547112,547146,547149,547164,547165,547178,547180,547197,547198,547307,547309,547441,549721,549757,549760,549914,549919,550205,550206,550216,550218,550227,550228,550230,550232,550242,550243,566627,567960,568373,568375,568384,568385,570407,570409,574205,574206,574248,574250,574261,574262,574373,574375,574402,574405,574889,574890,574894,574896,574913,574914,574937,574939,574994,574995,575000,575002,575026,575029,584275,584276,584278,584280,584298,584299,584927,584929,585198,585201,585246,585249,586197,586198,586205,586207,586221,586222,586400,586402,586819,586820,586822,586824,586834,586835,587781,587783,587933,587934,587939,587941,588025,588028,588134,588135,590156,591470,595444,595488,595490,595495,595503,595974,598064,598068,598470,598515,598524,598750,598752,598754,598762,598765,598767,598769,598777,598780,598784,598786,598835,598836,599037,599041,600265,600266,600403,600405,600424,601066,601498,601500,602172,602177,602293,602619,604045,605969,605971,607143,607145,607167,607173,607174,607337,608111,608113,608130,611240,611241,611247,611249,611273,612292,612982,612983,612988,612990,613001,613004,613402,613407,613901,613902,614051,614053,614550,614551,614553,614555,614561,614562,618253,618254,618412,618415,618454,618455,625620,625621,633671,633672,633674,633677,634008,634009,641818,641819,642202,644338,646205,646208,646228,646231,646289,646294,646668,646669,646723,646725,646807,646808,648041,648042,653261,653262,661531,661532,672046,672048,679668,679669,679671,679673,679763,679764,685160,685161,685182,685184,685193,685194,685200,685202,685353,685354,696393,696394,696635,696774,698690,698986,699088,699089,700169,700171,701751,701752,701896,701898,702190,702191,703425,703427,703697,703698,710640,710641,710991,710992,711037,711039,711446,711447,712372,712374,713268,713269,713471,713473,713737,713738,719920,719921,721574,721576,722718,722719,722721,722723,722738,722739,722742,722744,722753,722754,723051,723053,723127,723128,723130,723132,723170,723173,723947,723950,724081,724083,724174,724177,725902,725903,727627,728547,729405,729407,729888,729889,729891,729893,729938,729939,729941,729943,729953,729954,731893,731895,733804,733805,733808,733810,733958,733998,734000,734001,734228,734230,734357,734358,734360,734362,734376,734379,734597,734600,734657,734660,734729,734730,735136,735137,735277,735279,735388,735391,735407,735408,735410,735412,735439,735440,735442,735444,735456,735457,738254,738255,740883,740884,740889,740891,740897,740898,740975,740977,740983,740984,745110,745111,747504,747505,754444,754445,754585,754587,755030,755031,764587,764588,766356,766357,767106,767107,789227,789228,790140,790141,792256,792257,810949,810950,812563,812564,819200,819422,820767,820769,834139,834140,836051,836052,838196,838197,839883,839884,840567,840568,843686,843687,845187,845188,846346,846348,846349,846351,846353,846354,846890,846892,846894,903020,917316,917503,917504") == "94d4d4de76c3e17cc50213fdbe7478900d289aed" || block_image_verify("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat")) then
ui_print("Verified system image...");
else
check_first_block("/dev/block/bootdevice/by-name/system");
ifelse (block_image_recover("/dev/block/bootdevice/by-name/system", "1266,1,239,254,528,8324,8333,8335,8345,8346,8964,8970,9023,9025,24144,24145,31197,31198,31379,31380,31469,31474,31937,31939,32718,32719,32725,32726,32727,32728,32768,32990,33413,33414,33415,33416,33417,33419,33420,33421,33423,33424,33425,33426,33427,33428,33429,33430,33431,33432,33433,33434,33435,33437,33438,33441,34109,34110,34114,34115,34130,34131,34133,34134,34165,34166,34241,34242,34483,34486,34517,34518,34522,34524,34526,34527,34576,34577,34579,34580,35933,35934,36020,36021,36024,36025,36037,36038,36041,36042,36050,36051,36059,36060,36366,36367,36437,36438,36641,36642,36688,36689,36690,36691,36950,36951,36973,36974,36988,36989,37004,37006,37105,37107,37115,37116,37146,37148,37154,37155,39846,39848,39916,39917,42119,42121,42170,47313,47335,47336,53229,53231,53338,53339,53347,53349,53355,53356,54673,54675,54693,54696,54953,54955,54966,54969,55032,55035,55083,55084,55229,55231,55240,55241,55247,55249,55255,55256,59745,59747,59799,59802,62814,62815,62845,62847,62855,62856,64788,64789,65607,65609,65637,65638,65705,65706,65712,65714,65722,65723,65731,65732,66058,66060,66077,66078,66710,66712,66724,66727,66738,66739,67361,67363,67380,67383,77344,77347,77358,77359,77551,77553,77563,77566,77573,77575,77582,77583,77940,77942,77955,77956,78486,78488,78506,78507,78540,78542,78549,78550,79032,79034,79051,79054,81284,81287,85705,85706,85823,85825,85835,85836,87361,87363,88551,88554,88555,88556,88614,88616,88624,88625,88683,88685,88691,88694,88711,88712,88718,88719,91197,91199,91271,91272,96719,96720,98304,98526,110991,116157,116184,116185,118874,118876,118920,118921,118985,118987,118993,118994,120369,120371,120390,120391,120552,120554,120564,120565,120639,120641,120648,120651,123525,124062,124202,124204,124212,124213,125214,125216,125241,125242,125849,134042,140379,140380,162435,162438,163711,163714,163840,164062,164166,164168,164179,164617,164621,164623,164629,164632,165010,181395,189981,189982,190889,190891,190916,190917,191935,191937,191955,191956,193292,193293,193490,193492,193501,193502,193541,193543,193549,193550,193624,193626,193726,193727,193787,193789,193797,193798,193806,199373,206083,206086,206651,206652,210425,210427,210476,210477,214560,214562,214592,214593,217814,217816,217858,217861,221207,221210,222061,222064,226001,226002,227033,227035,227061,227062,227211,227213,227221,227224,227242,227243,228643,228645,228655,228656,228926,228928,228936,228937,229376,229598,231556,231558,231584,231585,232865,233656,233674,233675,233760,233762,233770,233771,234947,234949,234962,234963,240713,240715,240762,240763,240783,240785,240791,240792,256213,256214,257177,262589,270781,271483,271559,271560,279516,279518,279534,282807,282824,282826,282833,282834,291474,291475,291478,291480,291486,291487,294912,295134,296015,296222,296335,296337,296363,296373,296596,296597,296670,296671,296716,296718,296723,296724,296801,296812,296833,296836,296858,296862,297003,297004,297015,297018,297037,297038,300343,300344,300347,300348,307951,307952,311782,311806,313020,313021,313230,313247,313321,313350,313583,313600,316187,316413,316444,316556,316558,316760,316766,317292,317294,317580,317616,317875,317888,317903,317914,317923,317930,317994,318093,318128,318526,318550,318641,318678,318685,318760,319075,319118,319172,319499,319760,319873,319883,319937,319972,320025,320042,320047,320143,320182,320323,320378,320393,320434,320487,320710,320749,320851,320952,321137,321161,321197,321263,321268,321364,321374,321378,321429,321608,321797,321833,321982,322110,322382,323213,324157,324844,324845,325309,325310,325664,325665,326921,326922,328046,328047,329019,329143,329164,329195,329221,329240,329503,329605,329879,329934,329939,329960,330011,330039,330142,330192,330322,330676,330701,330766,330833,330850,330855,330862,330957,330982,331025,331576,331617,331668,331756,331817,331864,331871,331938,331984,332029,332077,332104,332291,332295,332421,332447,332473,332498,332499,332730,332785,332833,333533,334102,335476,335631,335678,337734,337735,344606,344607,345576,345578,349267,349268,349269,349270,364825,364826,371782,371783,375688,375689,389067,389068,394590,394591,397792,397793,399680,399681,405509,405510,406945,406946,415632,415633,415842,415843,415919,415920,433019,433021,436981,436982,440601,440602,440606,440608,447135,447137,447446,447449,447472,447473,447487,447488,447496,447497,447500,447501,447520,447521,447542,447543,447551,447552,447623,447624,447669,447670,447683,447685,447687,447688,447689,447690,447692,447693,447695,447696,447697,447698,447699,447700,447702,447703,447704,447705,447706,447707,447709,447710,447711,447712,447713,447714,447715,447716,447717,447718,447719,447720,447724,447725,447726,447727,447728,447729,447730,447731,447732,447733,447734,447735,447736,447737,447738,447741,447749,447750,447756,447757,447862,447864,447866,447868,447886,447888,447894,447895,447901,447902,447906,447907,450746,450748,450788,450790,450800,450801,450807,450808,454486,454487,455380,455381,455943,455945,456580,456581,458449,458450,462704,462705,462919,462921,462968,462969,468848,468849,469225,469226,469231,469233,469242,469243,469375,469376,469395,469397,479205,479207,496049,496050,503784,511976,512376,512596,512614,513405,513447,513449,513476,513477,513492,513494,513691,513694,514342,514344,514897,514898,514900,514902,514915,514916,514964,514966,515216,515217,515219,515221,515245,515246,515258,515260,515325,515328,515338,515339,515351,515353,515382,515385,515409,515410,515653,515657,516056,516057,518694,518695,524288,530360,532438,532439,532960,533217,533226,533228,533237,533238,533240,533242,533251,533252,533279,533428,533435,533436,537104,537106,541786,541789,541864,541866,541907,541908,541911,541913,541932,541933,544104,544106,544518,547112,547146,547149,547164,547165,547178,547180,547197,547198,547307,547309,547441,549721,549757,549760,549914,549919,550205,550206,550216,550218,550227,550228,550230,550232,550242,550243,566627,567960,568373,568375,568384,568385,570407,570409,574205,574206,574248,574250,574261,574262,574373,574375,574402,574405,574889,574890,574894,574896,574913,574914,574937,574939,574994,574995,575000,575002,575026,575029,584275,584276,584278,584280,584298,584299,584927,584929,585198,585201,585246,585249,586197,586198,586205,586207,586221,586222,586400,586402,586819,586820,586822,586824,586834,586835,587781,587783,587933,587934,587939,587941,588025,588028,588134,588135,590156,591470,595444,595488,595490,595495,595503,595974,598064,598068,598470,598515,598524,598750,598752,598754,598762,598765,598767,598769,598777,598780,598784,598786,598835,598836,599037,599041,600265,600266,600403,600405,600424,601066,601498,601500,602172,602177,602293,602619,604045,605969,605971,607143,607145,607167,607173,607174,607337,608111,608113,608130,611240,611241,611247,611249,611273,612292,612982,612983,612988,612990,613001,613004,613402,613407,613901,613902,614051,614053,614550,614551,614553,614555,614561,614562,618253,618254,618412,618415,618454,618455,625620,625621,633671,633672,633674,633677,634008,634009,641818,641819,642202,644338,646205,646208,646228,646231,646289,646294,646668,646669,646723,646725,646807,646808,648041,648042,653261,653262,661531,661532,672046,672048,679668,679669,679671,679673,679763,679764,685160,685161,685182,685184,685193,685194,685200,685202,685353,685354,696393,696394,696635,696774,698690,698986,699088,699089,700169,700171,701751,701752,701896,701898,702190,702191,703425,703427,703697,703698,710640,710641,710991,710992,711037,711039,711446,711447,712372,712374,713268,713269,713471,713473,713737,713738,719920,719921,721574,721576,722718,722719,722721,722723,722738,722739,722742,722744,722753,722754,723051,723053,723127,723128,723130,723132,723170,723173,723947,723950,724081,724083,724174,724177,725902,725903,727627,728547,729405,729407,729888,729889,729891,729893,729938,729939,729941,729943,729953,729954,731893,731895,733804,733805,733808,733810,733958,733998,734000,734001,734228,734230,734357,734358,734360,734362,734376,734379,734597,734600,734657,734660,734729,734730,735136,735137,735277,735279,735388,735391,735407,735408,735410,735412,735439,735440,735442,735444,735456,735457,738254,738255,740883,740884,740889,740891,740897,740898,740975,740977,740983,740984,745110,745111,747504,747505,754444,754445,754585,754587,755030,755031,764587,764588,766356,766357,767106,767107,789227,789228,790140,790141,792256,792257,810949,810950,812563,812564,819200,819422,820767,820769,834139,834140,836051,836052,838196,838197,839883,839884,840567,840568,843686,843687,845187,845188,846346,846348,846349,846351,846353,846354,846890,846892,846894,903020,917316,917503,917504") && block_image_verify("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat"), ui_print("system recovered successfully."), abort("E1004: system partition fails to recover"));
endif;
if (range_sha1("/dev/block/bootdevice/by-name/vendor", "22,1,69,71,73,80,239,4112,32770,32832,98306,98368,139300,139461,141005,163840,163842,229376,229378,257987,262077,262143,262144") == "80327f7c9b65fc007e2dac924ab58a3b4420a0bd" || block_image_verify("/dev/block/bootdevice/by-name/vendor", package_extract_file("vendor.transfer.list"), "vendor.new.dat", "vendor.patch.dat")) then
ui_print("Verified vendor image...");
else
check_first_block("/dev/block/bootdevice/by-name/vendor");
ifelse (block_image_recover("/dev/block/bootdevice/by-name/vendor", "22,1,69,71,73,80,239,4112,32770,32832,98306,98368,139300,139461,141005,163840,163842,229376,229378,257987,262077,262143,262144") && block_image_verify("/dev/block/bootdevice/by-name/vendor", package_extract_file("vendor.transfer.list"), "vendor.new.dat", "vendor.patch.dat"), ui_print("vendor recovered successfully."), abort("E2004: vendor partition fails to recover"));
endif;

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

ui_print("Patching boot image...");
show_progress(0.100000, 10);
apply_patch("EMMC:/dev/block/bootdevice/by-name/boot:67108864:f4a8339920a254a5085c8bde8e495986f6da83e1:67108864:e7eb060a300341a8cd9f2a587c8a0641eb50fde4",
            "-", e7eb060a300341a8cd9f2a587c8a0641eb50fde4, 67108864,
            f4a8339920a254a5085c8bde8e495986f6da83e1, package_extract_file("patch/boot.img.p")) || abort("Failed to apply patch \"patch/boot.img.p \".");

# ---- radio update tasks ----

ui_print("Patching firmware images...");
package_extract_file("firmware-update/NON-HLOS.bin", "/dev/block/bootdevice/by-name/modem");
package_extract_file("firmware-update/rpm.mbn", "/dev/block/bootdevice/by-name/rpm");
package_extract_file("firmware-update/km4.mbn", "/dev/block/bootdevice/by-name/keymaster");
package_extract_file("firmware-update/tz.mbn", "/dev/block/bootdevice/by-name/tz");
package_extract_file("firmware-update/emmc_appsboot.mbn", "/dev/block/bootdevice/by-name/aboot");
package_extract_file("firmware-update/lksecapp.mbn", "/dev/block/bootdevice/by-name/lksecapp");
package_extract_file("firmware-update/sbl1.mbn", "/dev/block/bootdevice/by-name/sbl1");
package_extract_file("firmware-update/cmnlib64_30.mbn", "/dev/block/bootdevice/by-name/cmnlib64");
package_extract_file("firmware-update/adspso.bin", "/dev/block/bootdevice/by-name/dsp");
package_extract_file("firmware-update/cmnlib_30.mbn", "/dev/block/bootdevice/by-name/cmnlib");
package_extract_file("firmware-update/devcfg.mbn", "/dev/block/bootdevice/by-name/devcfg");
package_extract_file("firmware-update/rpm.mbn", "/dev/block/bootdevice/by-name/rpmbak");
package_extract_file("firmware-update/km4.mbn", "/dev/block/bootdevice/by-name/keymasterbak");
package_extract_file("firmware-update/tz.mbn", "/dev/block/bootdevice/by-name/tzbak");
package_extract_file("firmware-update/emmc_appsboot.mbn", "/dev/block/bootdevice/by-name/abootbak");
package_extract_file("firmware-update/lksecapp.mbn", "/dev/block/bootdevice/by-name/lksecappbak");
package_extract_file("firmware-update/sbl1.mbn", "/dev/block/bootdevice/by-name/sbl1bak");
package_extract_file("firmware-update/cmnlib64_30.mbn", "/dev/block/bootdevice/by-name/cmnlib64bak");
package_extract_file("firmware-update/cmnlib_30.mbn", "/dev/block/bootdevice/by-name/cmnlibbak");
package_extract_file("firmware-update/devcfg.mbn", "/dev/block/bootdevice/by-name/devcfgbak");
show_progress(0.600000, 600);
ui_print("Patching system image after verification.");
block_image_update("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat") ||
  abort("E1001: Failed to update system image.");
ui_print("Patching vendor image after verification.");
block_image_update("/dev/block/bootdevice/by-name/vendor", package_extract_file("vendor.transfer.list"), "vendor.new.dat", "vendor.patch.dat") ||
  abort("E2001: Failed to update vendor image.");

# ---- radio update tasks 2 ----

ui_print("Patching vbmeta dtbo logo binimages...");
package_extract_file("firmware-update/vbmeta.img", "/dev/block/bootdevice/by-name/vbmeta");
package_extract_file("firmware-update/splash.img", "/dev/block/bootdevice/by-name/splash");
package_extract_file("firmware-update/dtbo.img", "/dev/block/bootdevice/by-name/dtbo");
show_progress(0.100000, 2);
