getprop("ro.product.device") == "msm8909" || abort("E3004: This package is for \"msm8909\" devices; this is a \"" + getprop("ro.product.device") + "\".");
ui_print("Source: qcom/msm8909/msm8909:7.1.2/060/brian09300616:userdebug/test-keys");
ui_print("Target: qcom/msm8909/msm8909:7.1.2/061/brian11130528:userdebug/test-keys");
ui_print("Verifying current system...");
getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/060/brian09300616:userdebug/test-keys" ||
    getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/061/brian11130528:userdebug/test-keys" ||
    abort("E3001: Package expects build fingerprint of qcom/msm8909/msm8909:7.1.2/060/brian09300616:userdebug/test-keys or qcom/msm8909/msm8909:7.1.2/061/brian11130528:userdebug/test-keys; this device has " + getprop("ro.build.fingerprint") + ".");
apply_patch_check("EMMC:/dev/block/bootdevice/by-name/boot:16209192:8cbef03d9dee7965122d722d3f70424c556795c7:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:16209192:8cbef03d9dee7965122d722d3f70424c556795c7:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945\" has unexpected contents.");
apply_patch_space(22769664) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/bootdevice/by-name/system", "3792,1,80,81,307,5536,6567,6568,6569,6577,6578,6579,6580,6609,6610,6616,6617,6618,6619,6640,6641,6645,6646,6647,6648,6656,6657,6663,6664,6665,6666,6684,6685,6690,6691,6692,6693,6705,6706,6711,6712,6713,6714,6729,6730,6736,6737,6738,6739,6752,6753,6754,6755,6756,6757,6835,6836,6837,6838,6839,6840,6852,6853,6857,6858,6859,6860,6861,6862,6921,6922,6923,6924,6925,6926,6991,6992,6993,6994,6995,6996,18946,18948,20223,20224,20267,20268,20298,20299,20627,20628,21596,21630,22204,22205,22310,22311,22603,22604,22816,22817,23737,23740,23741,23742,23808,23809,23810,23811,23977,23978,24122,24123,24296,24297,24468,24469,24829,24830,24847,25089,25092,25093,25102,25103,25104,25105,25122,25123,25144,25145,25254,25255,25293,25294,25297,25298,25309,25310,25776,25777,25778,25779,25801,25802,25823,25824,26063,26064,27176,27177,27473,27474,27592,27593,28070,28071,28072,28073,28598,28599,28614,28615,28646,28647,28708,28709,28715,28716,32765,32766,32768,32770,32849,32850,65536,65537,98304,98306,98385,98386,104345,104346,125059,125060,125061,125062,129441,129444,129449,129450,129467,129468,129497,129498,131069,131070,131072,131073,163840,163842,163921,163922,165576,165585,165586,165592,165593,165601,165602,165606,165607,165610,165611,165614,165615,165617,165618,165621,165622,165625,165626,165629,165630,165633,165634,165636,165637,165639,165640,165643,165644,165647,165648,165650,165651,165658,165659,165677,165678,165699,165700,165706,165707,165712,165713,165719,165720,165723,165724,165726,165727,165738,165739,165745,165746,165759,165760,165770,165771,165775,165776,165785,165786,165791,165792,165798,165799,165805,165806,165809,165810,165816,165817,165822,165823,165826,165827,165830,165831,165834,165835,165838,165839,165843,165844,165848,165849,165852,165853,165857,165858,165861,165862,165866,165867,165871,165872,165884,165885,165889,165890,165902,165903,165910,165911,165912,165913,166943,166944,166947,166948,166954,166955,166962,166963,166966,166967,166970,166971,166983,166984,166988,166989,166994,166995,166999,167000,167003,167004,167007,167008,167016,167017,167024,167025,167029,167030,167033,167034,167039,167040,167045,167046,167053,167054,167057,167058,167065,167066,167072,167073,167074,167075,167082,167083,167101,167102,167107,167108,167112,167113,167118,167119,167130,167131,167137,167138,167143,167144,167154,167155,167160,167161,167162,167163,167164,167165,167166,167167,167171,167172,167174,167175,167181,167182,167185,167186,167193,167194,167197,167198,167227,167228,167241,167242,167266,167267,167303,167304,167330,167331,167375,167376,167400,167401,167412,167413,167441,167442,167468,167469,167481,167482,167483,167484,167487,167488,167490,167491,167493,167494,167497,167498,167501,167502,167509,167510,167512,167513,167517,167518,167527,167528,167532,167533,167538,167539,167543,167544,167549,167550,167553,167554,167558,167559,167563,167564,167571,167572,167577,167578,167581,167582,167587,167588,167592,167593,167596,167597,167602,167603,167607,167608,167612,167613,167616,167617,167623,167624,167627,167628,167633,167634,167640,167641,167644,167645,167655,167656,167658,167659,167664,167665,167669,167670,167685,167686,167689,167690,167694,167695,167700,167701,167706,167707,167712,167713,167718,167719,167723,167724,167726,167727,167733,167734,167740,167741,167747,167748,167752,167753,167760,167761,167767,167768,167771,167772,167778,167779,167785,167786,167793,167794,167797,167798,167808,167809,167812,167813,167824,167825,167828,167829,167833,167834,167839,167840,167845,167846,167852,167853,167861,167862,167867,167868,167875,167876,167880,167881,167883,167884,167888,167889,167894,167895,167900,167901,167908,167909,167916,167917,167920,167921,167929,167930,167931,167932,167939,167940,167947,167948,167954,167955,168011,168012,168034,168035,168042,168043,168052,168053,168060,168061,168069,168070,168082,168083,168094,168095,168105,168106,168118,168119,168127,168128,168136,168137,168147,168148,168158,168159,168167,168168,168176,168177,168181,168182,168189,168190,168200,168201,168211,168212,168222,168223,168274,168275,168283,168284,168292,168293,168308,168309,168313,168314,168327,168328,168336,168337,168380,168381,168394,168395,168411,168412,168421,168422,168430,168431,168459,168460,168472,168473,168483,168484,168497,168498,168508,168509,168520,168521,168535,168536,168547,168548,168565,168566,168572,168573,168577,168578,168619,168620,168630,168631,168640,168641,168652,168653,168663,168664,168671,168672,168681,168682,168693,168694,168705,168706,168710,168711,168720,168721,168730,168731,168741,168742,168749,168750,168758,168759,168773,168774,168802,168803,168813,168814,168836,168837,168895,168896,168910,168911,168916,168917,168961,168962,168975,168976,168991,168992,169007,169008,169014,169015,169028,169029,169040,169041,169053,169054,169062,169063,169074,169075,169085,169086,169113,169114,169192,169193,169204,169205,169215,169216,169227,169228,169236,169237,169259,169260,169267,169268,169278,169279,169288,169289,169307,169308,169351,169352,169361,169362,169374,169375,169382,169383,169419,169420,169466,169467,169475,169476,169481,169482,169490,169491,169511,169512,169518,169519,169520,169521,169523,169524,169526,169527,169529,169530,169533,169534,169536,169537,169539,169540,169542,169543,169546,169547,169551,169552,169554,169555,169558,169559,169561,169562,169564,169565,169567,169568,169571,169572,169574,169575,169578,169579,169580,169581,169582,169583,169645,169646,169647,169648,169649,169650,169660,169661,169662,169663,169704,169705,169706,169707,169708,169709,169928,169929,169930,169931,169964,169965,169966,169967,169968,169969,170204,170205,170206,170207,170215,170216,170217,170218,170219,170220,170233,170234,170235,170236,170268,170269,170270,170271,170272,170273,170280,170281,170282,170283,170891,170892,170893,170894,170895,170896,170980,170981,170982,170983,171049,171050,171051,171052,171053,171054,171148,171149,171150,171151,173106,173107,173108,173109,173110,173111,174636,174637,174638,174639,174786,174787,174788,174789,174790,174791,175481,175482,175483,175484,175491,175492,175493,175494,175495,175496,175497,175498,175499,175500,175512,175513,175514,175515,178103,178104,178105,178106,178107,178108,180472,180473,180474,180475,180958,180959,180960,180961,180962,180963,181858,181859,181860,181861,182018,182019,182020,182021,182022,182023,182299,182300,182301,182302,183285,183286,183287,183288,183289,183290,183876,183877,183878,183879,183885,183886,183887,183888,183889,183890,183900,183901,183902,183903,183916,183917,183918,183919,183920,183921,183955,183956,183957,183958,183964,183965,183966,183967,183968,183969,183980,183981,183982,183983,184043,184044,184045,184046,184047,184048,184054,184055,184056,184057,184291,184292,184293,184294,184295,184296,184453,184454,184455,184456,184503,184504,184505,184506,184507,184508,184641,184642,184643,184644,186323,186324,186325,186326,186327,186328,187635,187636,187637,187638,187648,187649,187650,187651,187652,187653,187704,187705,187706,187707,187743,187744,187745,187746,187747,187748,187749,187750,187751,187752,187808,187809,187810,187811,187816,187817,187818,187819,187820,187821,187844,187845,187846,187847,189261,189262,189263,189264,189265,189266,190315,190316,190317,190318,190321,190322,190323,190324,190325,190326,190339,190340,190341,190342,190348,190349,190350,190351,190352,190353,190369,190370,190371,190372,190384,190385,190386,190387,190388,190389,190469,190470,190471,190472,190473,190474,190475,190476,192874,192875,192876,192877,192920,192921,192922,192923,192924,192925,193042,193043,193044,193045,193048,193049,193050,193051,193052,193053,193064,193065,193066,193067,193128,193129,193130,193131,193132,193133,193222,193223,193224,193225,193358,193359,193360,193361,193362,193363,193609,193610,193611,193612,193623,193624,193625,193626,193627,193628,193671,193672,193673,193674,194731,194732,194733,194734,194735,194736,195648,195649,195650,195651,195652,195653,195654,195655,195656,195657,195658,195659,195660,195661,195662,195663,196500,196501,196502,196503,196504,196505,196506,196507,196516,196517,196518,196519,196520,196521,196530,196531,196532,196533,196590,196591,196592,196593,196594,196595,196596,196597,196598,196599,196600,196601,196602,196603,196604,196605,196606,196608,196609,197760,197944,197945,198087,198088,198098,198099,198116,198117,198126,198127,198261,198262,198268,198269,198298,198299,198329,198330,198519,198520,198526,198527,198533,198534,198539,198540,198544,198545,198558,198559,198567,198568,198572,198573,198603,198604,198621,198622,198652,198653,198707,198708,198725,198726,198756,198757,198776,198777,198785,198786,198793,198794,198817,198818,198867,198868,198879,198880,198884,198885,198889,198890,199695,199696,199700,199701,199705,199706,199722,199723,199727,199728,199734,199735,199739,199740,199745,199746,199751,199752,199756,199757,199762,199763,199768,199769,199773,199774,199778,199779,199784,199785,199790,199791,199796,199797,199802,199803,199807,199808,199813,199814,199819,199820,199824,199825,199830,199831,199836,199837,199841,199842,199847,199848,199853,199854,199858,199859,199864,199865,199870,199871,199875,199876,199881,199882,199887,199888,199892,199893,199898,199899,199904,199905,199909,199910,199915,199916,199921,199922,199926,199927,199932,199933,199938,199939,199943,199944,199949,199950,199955,199956,199960,199961,199966,199967,199972,199973,199977,199978,199983,199984,199989,199990,199997,199998,200005,200006,200019,200020,200025,200026,200048,200049,200078,200079,200121,200122,200158,200159,200165,200166,200224,200225,200229,200230,200248,200249,200253,200254,200427,200428,200597,200598,200604,200605,200619,200620,200629,200630,200639,200640,200649,200650,200659,200660,200669,200670,200679,200680,200689,200690,200699,200700,200709,200710,200724,200725,200734,200735,200744,200745,200759,200760,200769,200770,200779,200780,200789,200790,200799,200800,200809,200810,200819,200820,200829,200830,200839,200840,200849,200850,200864,200865,200874,200875,200884,200885,200894,200895,200904,200905,200919,200920,200929,200930,200939,200940,200949,200950,200964,200965,200974,200975,200984,200985,200994,200995,201009,201010,201019,201020,201029,201030,201039,201040,201049,201050,201064,201065,201074,201075,201084,201085,201094,201095,201104,201105,201114,201115,201123,201124,201138,201139,201148,201149,201158,201159,201168,201169,201178,201179,201188,201189,201198,201199,201208,201209,201218,201219,201233,201234,201243,201244,201253,201254,201263,201264,201273,201274,201283,201284,201293,201294,201303,201304,201313,201314,201323,201324,201333,201334,201348,201349,201358,201359,201368,201369,201378,201379,201388,201389,201398,201399,201413,201414,201423,201424,201433,201434,201443,201444,201453,201454,201463,201464,201473,201474,201483,201484,201498,201499,201508,201509,201518,201519,201528,201529,201543,201544,201558,201559,201568,201569,201578,201579,201588,201589,201598,201599,201608,201609,201618,201619,201633,201634,201643,201644,201653,201654,201663,201664,201678,201679,201688,201689,201698,201699,201708,201709,201723,201724,201733,201734,201743,201744,201753,201754,201768,201769,201778,201779,201788,201789,201798,201799,201808,201809,201818,201819,201833,201834,201843,201844,201853,201854,201863,201864,201873,201874,201888,201889,201898,201899,201908,201909,201918,201919,201928,201929,201938,201939,201953,201954,201963,201964,201973,201974,201983,201984,201993,201994,202003,202004,202018,202019,202028,202029,202038,202039,202048,202049,202058,202059,202068,202069,202078,202079,202088,202089,202098,202099,202108,202109,202123,202124,202133,202134,202143,202144,202153,202154,202163,202164,202173,202174,202183,202184,202193,202194,202203,202204,202213,202214,202228,202229,202238,202239,202248,202249,202258,202259,202268,202269,202278,202279,202288,202289,202298,202299,202308,202309,202318,202319,202333,202334,202343,202344,202353,202354,202363,202364,202373,202374,202383,202384,202393,202394,202403,202404,202413,202414,202428,202429,202438,202439,202448,202449,202458,202459,202468,202469,202478,202479,202488,202489,202498,202499,202508,202509,202518,202519,202528,202529,202538,202539,202548,202549,202563,202564,202573,202574,202583,202584,202593,202594,202603,202604,202613,202614,202623,202624,202633,202634,202643,202644,202658,202659,202668,202669,202678,202679,202688,202689,202698,202699,202708,202709,202718,202719,202733,202734,202743,202744,202753,202754,202763,202764,202773,202774,202783,202784,202793,202794,202803,202804,202813,202814,202823,202824,202833,202834,202843,202844,202858,202859,202868,202869,202878,202879,202888,202889,202898,202899,202908,202909,202918,202919,202928,202929,202938,202939,202948,202949,202963,202964,202973,202974,202983,202984,202993,202994,203008,203009,203018,203019,203028,203029,203038,203039,203048,203049,203058,203059,203068,203069,203078,203079,203088,203089,203098,203099,203113,203114,203123,203124,203133,203134,203143,203144,203153,203154,203163,203164,203173,203174,203183,203184,203198,203199,203208,203209,203218,203219,203228,203229,203238,203239,203248,203249,203263,203264,203273,203274,203283,203284,203293,203294,203303,203304,203313,203314,203323,203324,203333,203334,203343,203344,203358,203359,203368,203369,203378,203379,203388,203389,203499,203500,203563,203564,203568,203569,203575,203576,203589,203590,203596,203597,203655,203656,203677,203678,203691,203692,203724,203725,203818,203819,203833,203834,203843,203844,203888,203889,203921,203922,203932,203933,203939,203940,203945,203946,204059,204060,204079,204080,204085,204086,204762,204763,204782,204783,204795,204796,204809,204810,204873,204874,204879,204880,204886,204887,204893,204894,204901,204902,204971,204972,204980,204981,204988,204989,205008,205009,205030,205031,205300,205301,210123,210124,210153,210154,210161,210162,210276,210277,210299,210300,210350,210351,210380,210381,210405,210406,210419,210420,210425,210426,210439,210440,210444,210445,210480,210481,210487,210488,210494,210495,210503,210504,210513,210514,210522,210523,210579,210580,210598,210599,210630,210631,210636,210637,210648,210649,210704,210705,210717,210718,210886,210887,210901,210902,210977,210978,211036,211037,211058,211059,211103,211104,211118,211119,211123,211124,211129,211130,211135,211136,211141,211142,211147,211148,211153,211154,211161,211162,211464,211465,211469,211470,211497,211498,211511,211512,211516,211517,211523,211524,211533,211534,211565,211566,211571,211572,211578,211579,211586,211587,211594,211595,211599,211600,211604,211605,211611,211612,211618,211619,211625,211626,211631,211632,211637,211638,211643,211644,211649,211650,211655,211656,211660,211661,211666,211667,211672,211673,211678,211679,211684,211685,211691,211692,211697,211698,211703,211704,211708,211709,211715,211716,211722,211723,211729,211730,211739,211740,211749,211750,211757,211758,211763,211764,211777,211778,211787,211788,211793,211794,211801,211802,211807,211808,211813,211814,211819,211820,211826,211827,211831,211832,211837,211838,211843,211844,211848,211849,211854,211855,211860,211861,211865,211866,211870,211871,211876,211877,211881,211882,211889,211890,211896,211897,211901,211902,211907,211908,212050,212051,212063,212064,212092,212093,212114,212115,212153,212154,212295,212296,212329,212330,212336,212337,212472,212473,212491,212492,212528,212529,212538,212539,212560,212561,212810,212811,212852,212853,212865,212866,212873,212874,212880,212881,212886,212887,212895,212896,212902,212903,212934,212935,212952,212953,212967,212968,212976,212977,212983,212984,212990,212991,213009,213010,213041,213042,213066,213067,213115,213116,213127,213128,213134,213135,213149,213150,213152,213153,213160,213161,213170,213171,213177,213178,213203,213204,213223,213224,213241,213242,213271,213272,213276,213277,213281,213282,213286,213287,213300,213301,213303,213304,215769,215770,215772,215773,215777,215778,215783,215784,215790,215791,215846,215847,215849,215850,216261,216262,217481,217482,217489,217490,217668,217669,217673,217674,217681,217682,217725,217726,217747,217748,217752,217753,217757,217758,217767,217768,217773,217774,217779,217780,217788,217789,217823,217824,217828,217829,217839,217840,217847,217848,217852,217853,217858,217859,218039,218040,218076,218077,218084,218085,218103,218104,218130,218131,218159,218160,218167,218168,218173,218174,218185,218186,218206,218207,218213,218214,218242,218243,218282,218283,218290,218291,218302,218303,218368,218369,218387,218388,218421,218422,218426,218427,218435,218436,218441,218442,218451,218452,218457,218458,218487,218488,218627,218628,218638,218639,218643,218644,218649,218650,218669,218670,218681,218682,218690,218691,218702,218703,218710,218711,218717,218718,218724,218725,218736,218737,218743,218744,218751,218752,218759,218760,218766,218767,218771,218772,218778,218779,218783,218784,218791,218792,218798,218799,218810,218811,218815,218816,218824,218825,218832,218833,218839,218840,218846,218847,218854,218855,218862,218863,218868,218869,218875,218876,218882,218883,218884,218885,218922,218923,218960,218961,219000,219001,219003,219004,219005,219006,219007,219008,219020,219021,219022,219023,219024,219025,219046,219047,219058,219059,219060,219061,219062,219063,219187,219188,219189,219190,219196,219197,219198,219199,219200,219201,219202,219203,219204,219205,219206,219207,219215,219216,219221,219222,219228,219229,219235,219236,219248,219249,219255,219256,219276,219277,219288,219289,219290,219291,219341,219342,219348,219349,219354,219355,219409,219410,219415,219416,219421,219422,219428,219429,219434,219435,219609,219610,219617,219618,219623,219624,219629,219630,219636,219637,219646,219647,219701,219702,219714,219715,219744,219745,219750,219751,219757,219758,219763,219764,219771,219772,219777,219778,219783,219784,219789,219790,219866,219867,219885,219886,219961,219962,219967,219968,219974,219975,220180,229376,229378,229457,229458,249030,249054,249055,249065,249066,249067,249068,249215,249216,249217,249218,249219,249220,250088,250089,250090,250091,250092,250093,250094,250095,250129,250130,250137,250138,250139,250140,250141,250142,250143,250144,250176,250177,250231,250232,250267,250268,250269,250270,250271,250272,250273,250274,250275,250276,250277,250278,250279,250280,250281,250282,250283,250284,250285,250286,250287,250288,250289,250290,250291,250292,250293,250294,250295,250296,250297,250298,250299,250300,250301,250302,250303,250304,250460,250461,250569,250570,250713,250714,250815,250816,251006,251007,251166,251167,251230,251231,251379,251380,251584,251585,251679,251680,251834,251835,251897,251898,251899,251900,251901,251902,251903,251904,251905,251906,251907,251908,251909,251910,251919,251920,251921,251922,251924,251925,251926,251927,251954,251955,251956,251957,251983,251984,251985,251986,252013,252014,252015,252016,252028,252029,252030,252031,252039,252040,252041,252042,252046,252047,252048,252049,252055,252056,252057,252058,252059,252060,252061,252062,252064,252065,252066,252067,252076,252077,252078,252079,252080,252081,252082,252083,252084,252085,252086,252087,252088,252089,252090,252091,252169,252170,252171,252172,252173,252174,252175,252176,252177,252178,252179,252180,252181,252182,252183,252184,252186,252187,252188,252189,252190,252191,252192,252193,252229,252230,252231,252232,252268,252269,252270,252271,252272,252273,252274,252275,252276,252277,252278,252279,252280,252281,252283,252284,252286,252287,252288,252289,252290,252291,252292,252293,252294,252295,252296,252297,252298,252299,252300,252301,252302,252303,252304,252305,252306,252307,257728,257729,257730,257731,257732,257733,257734,257735,257736,257737,257738,257739,257743,257744,257747,257748,257752,257753,257757,257758,257762,257763,257764,257765,257766,257767,257770,257771,257772,257773,257774,257775,257776,257777,257778,257779,257780,257781,257782,257783,257784,257785,257786,257787,257788,257789,257790,257791,257792,257793,257794,257795,257796,257797,257798,257799,257800,257801,257802,257803,257804,257805,257806,257807,257808,257809,257810,257811,257812,257813,257814,257815,257816,257817,257818,257819,257820,257821,257822,257823,257824,257825,257826,257827,257828,257829,257830,257831,257832,257833,257834,257835,257836,257837,257838,257839,257840,257841,257842,257843,257844,257845,257846,257847,257851,257852,257857,257858,257859,257860,257983,257984,257985,257986,257987,257988,257989,257990,257991,257992,257993,257994,257995,257996,257998,257999,258000,258001,258003,258004,258005,258006,258008,258009,258010,258011,258013,258014,258015,258016,258018,258019,258020,258021,258023,258024,258025,258026,258028,258029,258030,258031,258032,258033,258034,258035,258036,258037,258038,258039,258045,258046,258047,258048,258049,258050,258056,258057,258058,258059,258140,258141,258142,258143,258144,258145,258531,258532,258533,258534,258536,258537,258538,258539,258540,258541,258547,258548,258549,258550,258555,258556,258557,258558,258559,258560,258577,258578,258579,258580,258610,258611,258612,258613,258614,258615,258634,258635,258636,258637,258647,258648,258649,258650,258651,258652,258675,258676,258677,258678,258679,258680,258681,258682,258684,258685,258686,258687,258691,258692,258693,258694,258696,258697,258698,258699,258701,258702,258703,258704,258706,258707,258708,258709,258711,258712,258713,258714,258716,258717,258718,258719,258721,258722,258723,258724,258727,258728,258729,258730,258732,258733,258734,258735,258738,258739,258740,258741,258743,258744,258745,258746,258756,258757,258758,258759,258760,258761,258762,258763,258764,258765,258766,258767,258768,258769,258774,258775,258776,258777,258778,258779,258786,258787,258788,258789,258811,258812,258813,258814,258815,258816,258861,258862,258863,258864,258878,258879,258880,258881,258882,258883,258899,258900,258901,258902,258903,258904,258905,258906,258919,258920,258921,258922,258924,258925,258926,258927,258929,258930,258931,258932,258934,258935,258936,258937,258939,258940,258941,258942,258944,258945,258946,258947,258949,258950,258951,258952,258954,258955,258956,258957,258959,258960,258961,258962,258964,258965,258966,258967,258974,258975,258976,258977,258979,258980,258981,258982,258983,258984,258985,258986,258987,258988,258989,258990,258991,258992,258997,258998,258999,259000,259001,259002,259009,259010,259011,259012,259016,259017,259018,259019,259020,259021,259028,259029,259030,259031,259032,259033,259034,259035,259037,259038,259039,259040,259042,259043,259044,259045,259047,259048,259049,259050,259052,259053,259054,259055,259057,259058,259059,259060,259062,259063,259064,259065,259173,259174,259175,259176,259177,259178,259179,259180,259181,259182,259183,259184,259185,259186,259187,259188,259189,259190,259191,259192,259193,259194,259195,259196,259204,259205,259206,259207,259215,259216,259217,259218,259219,259220,259227,259228,259229,259230,259237,259238,259239,259240,259241,259242,259243,259244,259245,259246,259247,259248,259257,259258,259259,259260,259261,259262,259278,259279,259280,259281,259283,259284,259285,259286,259288,259289,259290,259291,259293,259294,259295,259296,259301,259302,259303,259304,259306,259307,259308,259309,259310,259311,259312,259313,259318,259319,259320,259321,259322,259323,259333,259334,259335,259336,259361,259362,259363,259364,259365,259366,259452,259453,259454,259455,259518,259519,259520,259521,259522,259523,259674,259675,259676,259677,259692,259693,259694,259695,259696,259697,259716,259717,259718,259719,259720,259721,259722,259723,260028,260029,260093,260094,260095,260096,260183,260184,260847,260848,260853,260854,260859,260860,260870,260871,260884,260885,260900,260901,260929,260930,260940,260941,260978,260979,261251,261252,261253,261254,261255,261256,261257,261258,261331,261332,261405,261406,261449,261450,261451,261452,261455,261456,261457,261458,261459,261460,261461,261462,261463,261464,261466,261467,261473,261474,261479,261480,261555,261556,261559,261560,261565,261566,261567,261568,261569,261570,261571,261572,261573,261574,261575,261576,261582,261583,261584,261585,261606,261607,261630,261631,261632,261633,261644,261645,261688,261689,261740,261741,262060,262061,262062,262063,262071,262072,262077,262078,262090,262091,262105,262106,262119,262120,262131,262132,262140,262141,262142,262144,262145,294912,294914,294993,294994,295487,295488,300403,300405,300406,300407,300408,300409,300410,300411,300421,300422,300423,300424,300459,300460,300466,300467,300468,300469,300482,300483,300496,300497,300498,300499,300514,300515,301303,301304,301305,301306,301307,301308,301309,301310,305216,305217,305275,305276,305277,305278,305279,305280,305281,305282,305460,305461,305468,305469,305470,305471,305487,305488,305498,305499,305500,305501,305520,305521,305947,305948,305960,305961,305962,305963,305983,305984,306005,306006,306007,306008,306025,306026,306033,306034,306035,306036,306063,306064,306092,306093,306094,306095,306146,306147,306180,306181,306182,306183,306199,306200,306209,306210,306211,306212,306222,306223,306326,306327,306328,306329,306360,306361,306906,306907,306908,306909,308634,308635,308650,308651,308652,308653,308668,308669,308735,308736,308737,308738,308751,308752,308762,308763,308764,308765,308787,308788,308891,308892,308893,308894,308941,308942,308948,308949,308950,308951,308959,308960,308969,308970,308971,308972,308994,308995,309005,309006,309007,309008,309018,309019,309051,309052,309053,309054,309080,309081,310223,310224,310225,310226,310227,310228,310229,310230,310231,310232,310891,310892,311257,311258,311259,311260,312161,312162,312180,312181,312182,312183,312210,312211,312429,312430,312431,312432,312512,312513,312932,312933,312934,312935,313623,313624,313631,313632,313633,313634,313653,313654,313658,313659,313660,313661,313662,313663,313664,313665,313674,313675,313782,313783,313784,313785,313878,313879,313887,313888,313889,313890,313891,313892,313893,313894,313911,313912,313931,313932,313933,313934,313944,313945,313999,314000,314001,314002,314014,314015,314019,314020,314021,314022,314032,314033,314047,314048,314049,314050,314086,314087,314096,314097,314098,314099,314142,314143,314169,314170,314171,314172,314224,314225,314234,314235,314236,314237,314275,314276,314288,314289,314290,314291,314292,314293,314372,314373,314374,314375,314376,314377,314378,314379,314383,314384,314385,314386,314395,314396,314404,314405,314406,314407,314435,314436,314501,314502,314503,314504,314572,314573") == "da429a4cc5d230cea67996bf49d55c6a5f8ee85f" || 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", "3792,1,80,81,307,5536,6567,6568,6569,6577,6578,6579,6580,6609,6610,6616,6617,6618,6619,6640,6641,6645,6646,6647,6648,6656,6657,6663,6664,6665,6666,6684,6685,6690,6691,6692,6693,6705,6706,6711,6712,6713,6714,6729,6730,6736,6737,6738,6739,6752,6753,6754,6755,6756,6757,6835,6836,6837,6838,6839,6840,6852,6853,6857,6858,6859,6860,6861,6862,6921,6922,6923,6924,6925,6926,6991,6992,6993,6994,6995,6996,18946,18948,20223,20224,20267,20268,20298,20299,20627,20628,21596,21630,22204,22205,22310,22311,22603,22604,22816,22817,23737,23740,23741,23742,23808,23809,23810,23811,23977,23978,24122,24123,24296,24297,24468,24469,24829,24830,24847,25089,25092,25093,25102,25103,25104,25105,25122,25123,25144,25145,25254,25255,25293,25294,25297,25298,25309,25310,25776,25777,25778,25779,25801,25802,25823,25824,26063,26064,27176,27177,27473,27474,27592,27593,28070,28071,28072,28073,28598,28599,28614,28615,28646,28647,28708,28709,28715,28716,32765,32766,32768,32770,32849,32850,65536,65537,98304,98306,98385,98386,104345,104346,125059,125060,125061,125062,129441,129444,129449,129450,129467,129468,129497,129498,131069,131070,131072,131073,163840,163842,163921,163922,165576,165585,165586,165592,165593,165601,165602,165606,165607,165610,165611,165614,165615,165617,165618,165621,165622,165625,165626,165629,165630,165633,165634,165636,165637,165639,165640,165643,165644,165647,165648,165650,165651,165658,165659,165677,165678,165699,165700,165706,165707,165712,165713,165719,165720,165723,165724,165726,165727,165738,165739,165745,165746,165759,165760,165770,165771,165775,165776,165785,165786,165791,165792,165798,165799,165805,165806,165809,165810,165816,165817,165822,165823,165826,165827,165830,165831,165834,165835,165838,165839,165843,165844,165848,165849,165852,165853,165857,165858,165861,165862,165866,165867,165871,165872,165884,165885,165889,165890,165902,165903,165910,165911,165912,165913,166943,166944,166947,166948,166954,166955,166962,166963,166966,166967,166970,166971,166983,166984,166988,166989,166994,166995,166999,167000,167003,167004,167007,167008,167016,167017,167024,167025,167029,167030,167033,167034,167039,167040,167045,167046,167053,167054,167057,167058,167065,167066,167072,167073,167074,167075,167082,167083,167101,167102,167107,167108,167112,167113,167118,167119,167130,167131,167137,167138,167143,167144,167154,167155,167160,167161,167162,167163,167164,167165,167166,167167,167171,167172,167174,167175,167181,167182,167185,167186,167193,167194,167197,167198,167227,167228,167241,167242,167266,167267,167303,167304,167330,167331,167375,167376,167400,167401,167412,167413,167441,167442,167468,167469,167481,167482,167483,167484,167487,167488,167490,167491,167493,167494,167497,167498,167501,167502,167509,167510,167512,167513,167517,167518,167527,167528,167532,167533,167538,167539,167543,167544,167549,167550,167553,167554,167558,167559,167563,167564,167571,167572,167577,167578,167581,167582,167587,167588,167592,167593,167596,167597,167602,167603,167607,167608,167612,167613,167616,167617,167623,167624,167627,167628,167633,167634,167640,167641,167644,167645,167655,167656,167658,167659,167664,167665,167669,167670,167685,167686,167689,167690,167694,167695,167700,167701,167706,167707,167712,167713,167718,167719,167723,167724,167726,167727,167733,167734,167740,167741,167747,167748,167752,167753,167760,167761,167767,167768,167771,167772,167778,167779,167785,167786,167793,167794,167797,167798,167808,167809,167812,167813,167824,167825,167828,167829,167833,167834,167839,167840,167845,167846,167852,167853,167861,167862,167867,167868,167875,167876,167880,167881,167883,167884,167888,167889,167894,167895,167900,167901,167908,167909,167916,167917,167920,167921,167929,167930,167931,167932,167939,167940,167947,167948,167954,167955,168011,168012,168034,168035,168042,168043,168052,168053,168060,168061,168069,168070,168082,168083,168094,168095,168105,168106,168118,168119,168127,168128,168136,168137,168147,168148,168158,168159,168167,168168,168176,168177,168181,168182,168189,168190,168200,168201,168211,168212,168222,168223,168274,168275,168283,168284,168292,168293,168308,168309,168313,168314,168327,168328,168336,168337,168380,168381,168394,168395,168411,168412,168421,168422,168430,168431,168459,168460,168472,168473,168483,168484,168497,168498,168508,168509,168520,168521,168535,168536,168547,168548,168565,168566,168572,168573,168577,168578,168619,168620,168630,168631,168640,168641,168652,168653,168663,168664,168671,168672,168681,168682,168693,168694,168705,168706,168710,168711,168720,168721,168730,168731,168741,168742,168749,168750,168758,168759,168773,168774,168802,168803,168813,168814,168836,168837,168895,168896,168910,168911,168916,168917,168961,168962,168975,168976,168991,168992,169007,169008,169014,169015,169028,169029,169040,169041,169053,169054,169062,169063,169074,169075,169085,169086,169113,169114,169192,169193,169204,169205,169215,169216,169227,169228,169236,169237,169259,169260,169267,169268,169278,169279,169288,169289,169307,169308,169351,169352,169361,169362,169374,169375,169382,169383,169419,169420,169466,169467,169475,169476,169481,169482,169490,169491,169511,169512,169518,169519,169520,169521,169523,169524,169526,169527,169529,169530,169533,169534,169536,169537,169539,169540,169542,169543,169546,169547,169551,169552,169554,169555,169558,169559,169561,169562,169564,169565,169567,169568,169571,169572,169574,169575,169578,169579,169580,169581,169582,169583,169645,169646,169647,169648,169649,169650,169660,169661,169662,169663,169704,169705,169706,169707,169708,169709,169928,169929,169930,169931,169964,169965,169966,169967,169968,169969,170204,170205,170206,170207,170215,170216,170217,170218,170219,170220,170233,170234,170235,170236,170268,170269,170270,170271,170272,170273,170280,170281,170282,170283,170891,170892,170893,170894,170895,170896,170980,170981,170982,170983,171049,171050,171051,171052,171053,171054,171148,171149,171150,171151,173106,173107,173108,173109,173110,173111,174636,174637,174638,174639,174786,174787,174788,174789,174790,174791,175481,175482,175483,175484,175491,175492,175493,175494,175495,175496,175497,175498,175499,175500,175512,175513,175514,175515,178103,178104,178105,178106,178107,178108,180472,180473,180474,180475,180958,180959,180960,180961,180962,180963,181858,181859,181860,181861,182018,182019,182020,182021,182022,182023,182299,182300,182301,182302,183285,183286,183287,183288,183289,183290,183876,183877,183878,183879,183885,183886,183887,183888,183889,183890,183900,183901,183902,183903,183916,183917,183918,183919,183920,183921,183955,183956,183957,183958,183964,183965,183966,183967,183968,183969,183980,183981,183982,183983,184043,184044,184045,184046,184047,184048,184054,184055,184056,184057,184291,184292,184293,184294,184295,184296,184453,184454,184455,184456,184503,184504,184505,184506,184507,184508,184641,184642,184643,184644,186323,186324,186325,186326,186327,186328,187635,187636,187637,187638,187648,187649,187650,187651,187652,187653,187704,187705,187706,187707,187743,187744,187745,187746,187747,187748,187749,187750,187751,187752,187808,187809,187810,187811,187816,187817,187818,187819,187820,187821,187844,187845,187846,187847,189261,189262,189263,189264,189265,189266,190315,190316,190317,190318,190321,190322,190323,190324,190325,190326,190339,190340,190341,190342,190348,190349,190350,190351,190352,190353,190369,190370,190371,190372,190384,190385,190386,190387,190388,190389,190469,190470,190471,190472,190473,190474,190475,190476,192874,192875,192876,192877,192920,192921,192922,192923,192924,192925,193042,193043,193044,193045,193048,193049,193050,193051,193052,193053,193064,193065,193066,193067,193128,193129,193130,193131,193132,193133,193222,193223,193224,193225,193358,193359,193360,193361,193362,193363,193609,193610,193611,193612,193623,193624,193625,193626,193627,193628,193671,193672,193673,193674,194731,194732,194733,194734,194735,194736,195648,195649,195650,195651,195652,195653,195654,195655,195656,195657,195658,195659,195660,195661,195662,195663,196500,196501,196502,196503,196504,196505,196506,196507,196516,196517,196518,196519,196520,196521,196530,196531,196532,196533,196590,196591,196592,196593,196594,196595,196596,196597,196598,196599,196600,196601,196602,196603,196604,196605,196606,196608,196609,197760,197944,197945,198087,198088,198098,198099,198116,198117,198126,198127,198261,198262,198268,198269,198298,198299,198329,198330,198519,198520,198526,198527,198533,198534,198539,198540,198544,198545,198558,198559,198567,198568,198572,198573,198603,198604,198621,198622,198652,198653,198707,198708,198725,198726,198756,198757,198776,198777,198785,198786,198793,198794,198817,198818,198867,198868,198879,198880,198884,198885,198889,198890,199695,199696,199700,199701,199705,199706,199722,199723,199727,199728,199734,199735,199739,199740,199745,199746,199751,199752,199756,199757,199762,199763,199768,199769,199773,199774,199778,199779,199784,199785,199790,199791,199796,199797,199802,199803,199807,199808,199813,199814,199819,199820,199824,199825,199830,199831,199836,199837,199841,199842,199847,199848,199853,199854,199858,199859,199864,199865,199870,199871,199875,199876,199881,199882,199887,199888,199892,199893,199898,199899,199904,199905,199909,199910,199915,199916,199921,199922,199926,199927,199932,199933,199938,199939,199943,199944,199949,199950,199955,199956,199960,199961,199966,199967,199972,199973,199977,199978,199983,199984,199989,199990,199997,199998,200005,200006,200019,200020,200025,200026,200048,200049,200078,200079,200121,200122,200158,200159,200165,200166,200224,200225,200229,200230,200248,200249,200253,200254,200427,200428,200597,200598,200604,200605,200619,200620,200629,200630,200639,200640,200649,200650,200659,200660,200669,200670,200679,200680,200689,200690,200699,200700,200709,200710,200724,200725,200734,200735,200744,200745,200759,200760,200769,200770,200779,200780,200789,200790,200799,200800,200809,200810,200819,200820,200829,200830,200839,200840,200849,200850,200864,200865,200874,200875,200884,200885,200894,200895,200904,200905,200919,200920,200929,200930,200939,200940,200949,200950,200964,200965,200974,200975,200984,200985,200994,200995,201009,201010,201019,201020,201029,201030,201039,201040,201049,201050,201064,201065,201074,201075,201084,201085,201094,201095,201104,201105,201114,201115,201123,201124,201138,201139,201148,201149,201158,201159,201168,201169,201178,201179,201188,201189,201198,201199,201208,201209,201218,201219,201233,201234,201243,201244,201253,201254,201263,201264,201273,201274,201283,201284,201293,201294,201303,201304,201313,201314,201323,201324,201333,201334,201348,201349,201358,201359,201368,201369,201378,201379,201388,201389,201398,201399,201413,201414,201423,201424,201433,201434,201443,201444,201453,201454,201463,201464,201473,201474,201483,201484,201498,201499,201508,201509,201518,201519,201528,201529,201543,201544,201558,201559,201568,201569,201578,201579,201588,201589,201598,201599,201608,201609,201618,201619,201633,201634,201643,201644,201653,201654,201663,201664,201678,201679,201688,201689,201698,201699,201708,201709,201723,201724,201733,201734,201743,201744,201753,201754,201768,201769,201778,201779,201788,201789,201798,201799,201808,201809,201818,201819,201833,201834,201843,201844,201853,201854,201863,201864,201873,201874,201888,201889,201898,201899,201908,201909,201918,201919,201928,201929,201938,201939,201953,201954,201963,201964,201973,201974,201983,201984,201993,201994,202003,202004,202018,202019,202028,202029,202038,202039,202048,202049,202058,202059,202068,202069,202078,202079,202088,202089,202098,202099,202108,202109,202123,202124,202133,202134,202143,202144,202153,202154,202163,202164,202173,202174,202183,202184,202193,202194,202203,202204,202213,202214,202228,202229,202238,202239,202248,202249,202258,202259,202268,202269,202278,202279,202288,202289,202298,202299,202308,202309,202318,202319,202333,202334,202343,202344,202353,202354,202363,202364,202373,202374,202383,202384,202393,202394,202403,202404,202413,202414,202428,202429,202438,202439,202448,202449,202458,202459,202468,202469,202478,202479,202488,202489,202498,202499,202508,202509,202518,202519,202528,202529,202538,202539,202548,202549,202563,202564,202573,202574,202583,202584,202593,202594,202603,202604,202613,202614,202623,202624,202633,202634,202643,202644,202658,202659,202668,202669,202678,202679,202688,202689,202698,202699,202708,202709,202718,202719,202733,202734,202743,202744,202753,202754,202763,202764,202773,202774,202783,202784,202793,202794,202803,202804,202813,202814,202823,202824,202833,202834,202843,202844,202858,202859,202868,202869,202878,202879,202888,202889,202898,202899,202908,202909,202918,202919,202928,202929,202938,202939,202948,202949,202963,202964,202973,202974,202983,202984,202993,202994,203008,203009,203018,203019,203028,203029,203038,203039,203048,203049,203058,203059,203068,203069,203078,203079,203088,203089,203098,203099,203113,203114,203123,203124,203133,203134,203143,203144,203153,203154,203163,203164,203173,203174,203183,203184,203198,203199,203208,203209,203218,203219,203228,203229,203238,203239,203248,203249,203263,203264,203273,203274,203283,203284,203293,203294,203303,203304,203313,203314,203323,203324,203333,203334,203343,203344,203358,203359,203368,203369,203378,203379,203388,203389,203499,203500,203563,203564,203568,203569,203575,203576,203589,203590,203596,203597,203655,203656,203677,203678,203691,203692,203724,203725,203818,203819,203833,203834,203843,203844,203888,203889,203921,203922,203932,203933,203939,203940,203945,203946,204059,204060,204079,204080,204085,204086,204762,204763,204782,204783,204795,204796,204809,204810,204873,204874,204879,204880,204886,204887,204893,204894,204901,204902,204971,204972,204980,204981,204988,204989,205008,205009,205030,205031,205300,205301,210123,210124,210153,210154,210161,210162,210276,210277,210299,210300,210350,210351,210380,210381,210405,210406,210419,210420,210425,210426,210439,210440,210444,210445,210480,210481,210487,210488,210494,210495,210503,210504,210513,210514,210522,210523,210579,210580,210598,210599,210630,210631,210636,210637,210648,210649,210704,210705,210717,210718,210886,210887,210901,210902,210977,210978,211036,211037,211058,211059,211103,211104,211118,211119,211123,211124,211129,211130,211135,211136,211141,211142,211147,211148,211153,211154,211161,211162,211464,211465,211469,211470,211497,211498,211511,211512,211516,211517,211523,211524,211533,211534,211565,211566,211571,211572,211578,211579,211586,211587,211594,211595,211599,211600,211604,211605,211611,211612,211618,211619,211625,211626,211631,211632,211637,211638,211643,211644,211649,211650,211655,211656,211660,211661,211666,211667,211672,211673,211678,211679,211684,211685,211691,211692,211697,211698,211703,211704,211708,211709,211715,211716,211722,211723,211729,211730,211739,211740,211749,211750,211757,211758,211763,211764,211777,211778,211787,211788,211793,211794,211801,211802,211807,211808,211813,211814,211819,211820,211826,211827,211831,211832,211837,211838,211843,211844,211848,211849,211854,211855,211860,211861,211865,211866,211870,211871,211876,211877,211881,211882,211889,211890,211896,211897,211901,211902,211907,211908,212050,212051,212063,212064,212092,212093,212114,212115,212153,212154,212295,212296,212329,212330,212336,212337,212472,212473,212491,212492,212528,212529,212538,212539,212560,212561,212810,212811,212852,212853,212865,212866,212873,212874,212880,212881,212886,212887,212895,212896,212902,212903,212934,212935,212952,212953,212967,212968,212976,212977,212983,212984,212990,212991,213009,213010,213041,213042,213066,213067,213115,213116,213127,213128,213134,213135,213149,213150,213152,213153,213160,213161,213170,213171,213177,213178,213203,213204,213223,213224,213241,213242,213271,213272,213276,213277,213281,213282,213286,213287,213300,213301,213303,213304,215769,215770,215772,215773,215777,215778,215783,215784,215790,215791,215846,215847,215849,215850,216261,216262,217481,217482,217489,217490,217668,217669,217673,217674,217681,217682,217725,217726,217747,217748,217752,217753,217757,217758,217767,217768,217773,217774,217779,217780,217788,217789,217823,217824,217828,217829,217839,217840,217847,217848,217852,217853,217858,217859,218039,218040,218076,218077,218084,218085,218103,218104,218130,218131,218159,218160,218167,218168,218173,218174,218185,218186,218206,218207,218213,218214,218242,218243,218282,218283,218290,218291,218302,218303,218368,218369,218387,218388,218421,218422,218426,218427,218435,218436,218441,218442,218451,218452,218457,218458,218487,218488,218627,218628,218638,218639,218643,218644,218649,218650,218669,218670,218681,218682,218690,218691,218702,218703,218710,218711,218717,218718,218724,218725,218736,218737,218743,218744,218751,218752,218759,218760,218766,218767,218771,218772,218778,218779,218783,218784,218791,218792,218798,218799,218810,218811,218815,218816,218824,218825,218832,218833,218839,218840,218846,218847,218854,218855,218862,218863,218868,218869,218875,218876,218882,218883,218884,218885,218922,218923,218960,218961,219000,219001,219003,219004,219005,219006,219007,219008,219020,219021,219022,219023,219024,219025,219046,219047,219058,219059,219060,219061,219062,219063,219187,219188,219189,219190,219196,219197,219198,219199,219200,219201,219202,219203,219204,219205,219206,219207,219215,219216,219221,219222,219228,219229,219235,219236,219248,219249,219255,219256,219276,219277,219288,219289,219290,219291,219341,219342,219348,219349,219354,219355,219409,219410,219415,219416,219421,219422,219428,219429,219434,219435,219609,219610,219617,219618,219623,219624,219629,219630,219636,219637,219646,219647,219701,219702,219714,219715,219744,219745,219750,219751,219757,219758,219763,219764,219771,219772,219777,219778,219783,219784,219789,219790,219866,219867,219885,219886,219961,219962,219967,219968,219974,219975,220180,229376,229378,229457,229458,249030,249054,249055,249065,249066,249067,249068,249215,249216,249217,249218,249219,249220,250088,250089,250090,250091,250092,250093,250094,250095,250129,250130,250137,250138,250139,250140,250141,250142,250143,250144,250176,250177,250231,250232,250267,250268,250269,250270,250271,250272,250273,250274,250275,250276,250277,250278,250279,250280,250281,250282,250283,250284,250285,250286,250287,250288,250289,250290,250291,250292,250293,250294,250295,250296,250297,250298,250299,250300,250301,250302,250303,250304,250460,250461,250569,250570,250713,250714,250815,250816,251006,251007,251166,251167,251230,251231,251379,251380,251584,251585,251679,251680,251834,251835,251897,251898,251899,251900,251901,251902,251903,251904,251905,251906,251907,251908,251909,251910,251919,251920,251921,251922,251924,251925,251926,251927,251954,251955,251956,251957,251983,251984,251985,251986,252013,252014,252015,252016,252028,252029,252030,252031,252039,252040,252041,252042,252046,252047,252048,252049,252055,252056,252057,252058,252059,252060,252061,252062,252064,252065,252066,252067,252076,252077,252078,252079,252080,252081,252082,252083,252084,252085,252086,252087,252088,252089,252090,252091,252169,252170,252171,252172,252173,252174,252175,252176,252177,252178,252179,252180,252181,252182,252183,252184,252186,252187,252188,252189,252190,252191,252192,252193,252229,252230,252231,252232,252268,252269,252270,252271,252272,252273,252274,252275,252276,252277,252278,252279,252280,252281,252283,252284,252286,252287,252288,252289,252290,252291,252292,252293,252294,252295,252296,252297,252298,252299,252300,252301,252302,252303,252304,252305,252306,252307,257728,257729,257730,257731,257732,257733,257734,257735,257736,257737,257738,257739,257743,257744,257747,257748,257752,257753,257757,257758,257762,257763,257764,257765,257766,257767,257770,257771,257772,257773,257774,257775,257776,257777,257778,257779,257780,257781,257782,257783,257784,257785,257786,257787,257788,257789,257790,257791,257792,257793,257794,257795,257796,257797,257798,257799,257800,257801,257802,257803,257804,257805,257806,257807,257808,257809,257810,257811,257812,257813,257814,257815,257816,257817,257818,257819,257820,257821,257822,257823,257824,257825,257826,257827,257828,257829,257830,257831,257832,257833,257834,257835,257836,257837,257838,257839,257840,257841,257842,257843,257844,257845,257846,257847,257851,257852,257857,257858,257859,257860,257983,257984,257985,257986,257987,257988,257989,257990,257991,257992,257993,257994,257995,257996,257998,257999,258000,258001,258003,258004,258005,258006,258008,258009,258010,258011,258013,258014,258015,258016,258018,258019,258020,258021,258023,258024,258025,258026,258028,258029,258030,258031,258032,258033,258034,258035,258036,258037,258038,258039,258045,258046,258047,258048,258049,258050,258056,258057,258058,258059,258140,258141,258142,258143,258144,258145,258531,258532,258533,258534,258536,258537,258538,258539,258540,258541,258547,258548,258549,258550,258555,258556,258557,258558,258559,258560,258577,258578,258579,258580,258610,258611,258612,258613,258614,258615,258634,258635,258636,258637,258647,258648,258649,258650,258651,258652,258675,258676,258677,258678,258679,258680,258681,258682,258684,258685,258686,258687,258691,258692,258693,258694,258696,258697,258698,258699,258701,258702,258703,258704,258706,258707,258708,258709,258711,258712,258713,258714,258716,258717,258718,258719,258721,258722,258723,258724,258727,258728,258729,258730,258732,258733,258734,258735,258738,258739,258740,258741,258743,258744,258745,258746,258756,258757,258758,258759,258760,258761,258762,258763,258764,258765,258766,258767,258768,258769,258774,258775,258776,258777,258778,258779,258786,258787,258788,258789,258811,258812,258813,258814,258815,258816,258861,258862,258863,258864,258878,258879,258880,258881,258882,258883,258899,258900,258901,258902,258903,258904,258905,258906,258919,258920,258921,258922,258924,258925,258926,258927,258929,258930,258931,258932,258934,258935,258936,258937,258939,258940,258941,258942,258944,258945,258946,258947,258949,258950,258951,258952,258954,258955,258956,258957,258959,258960,258961,258962,258964,258965,258966,258967,258974,258975,258976,258977,258979,258980,258981,258982,258983,258984,258985,258986,258987,258988,258989,258990,258991,258992,258997,258998,258999,259000,259001,259002,259009,259010,259011,259012,259016,259017,259018,259019,259020,259021,259028,259029,259030,259031,259032,259033,259034,259035,259037,259038,259039,259040,259042,259043,259044,259045,259047,259048,259049,259050,259052,259053,259054,259055,259057,259058,259059,259060,259062,259063,259064,259065,259173,259174,259175,259176,259177,259178,259179,259180,259181,259182,259183,259184,259185,259186,259187,259188,259189,259190,259191,259192,259193,259194,259195,259196,259204,259205,259206,259207,259215,259216,259217,259218,259219,259220,259227,259228,259229,259230,259237,259238,259239,259240,259241,259242,259243,259244,259245,259246,259247,259248,259257,259258,259259,259260,259261,259262,259278,259279,259280,259281,259283,259284,259285,259286,259288,259289,259290,259291,259293,259294,259295,259296,259301,259302,259303,259304,259306,259307,259308,259309,259310,259311,259312,259313,259318,259319,259320,259321,259322,259323,259333,259334,259335,259336,259361,259362,259363,259364,259365,259366,259452,259453,259454,259455,259518,259519,259520,259521,259522,259523,259674,259675,259676,259677,259692,259693,259694,259695,259696,259697,259716,259717,259718,259719,259720,259721,259722,259723,260028,260029,260093,260094,260095,260096,260183,260184,260847,260848,260853,260854,260859,260860,260870,260871,260884,260885,260900,260901,260929,260930,260940,260941,260978,260979,261251,261252,261253,261254,261255,261256,261257,261258,261331,261332,261405,261406,261449,261450,261451,261452,261455,261456,261457,261458,261459,261460,261461,261462,261463,261464,261466,261467,261473,261474,261479,261480,261555,261556,261559,261560,261565,261566,261567,261568,261569,261570,261571,261572,261573,261574,261575,261576,261582,261583,261584,261585,261606,261607,261630,261631,261632,261633,261644,261645,261688,261689,261740,261741,262060,262061,262062,262063,262071,262072,262077,262078,262090,262091,262105,262106,262119,262120,262131,262132,262140,262141,262142,262144,262145,294912,294914,294993,294994,295487,295488,300403,300405,300406,300407,300408,300409,300410,300411,300421,300422,300423,300424,300459,300460,300466,300467,300468,300469,300482,300483,300496,300497,300498,300499,300514,300515,301303,301304,301305,301306,301307,301308,301309,301310,305216,305217,305275,305276,305277,305278,305279,305280,305281,305282,305460,305461,305468,305469,305470,305471,305487,305488,305498,305499,305500,305501,305520,305521,305947,305948,305960,305961,305962,305963,305983,305984,306005,306006,306007,306008,306025,306026,306033,306034,306035,306036,306063,306064,306092,306093,306094,306095,306146,306147,306180,306181,306182,306183,306199,306200,306209,306210,306211,306212,306222,306223,306326,306327,306328,306329,306360,306361,306906,306907,306908,306909,308634,308635,308650,308651,308652,308653,308668,308669,308735,308736,308737,308738,308751,308752,308762,308763,308764,308765,308787,308788,308891,308892,308893,308894,308941,308942,308948,308949,308950,308951,308959,308960,308969,308970,308971,308972,308994,308995,309005,309006,309007,309008,309018,309019,309051,309052,309053,309054,309080,309081,310223,310224,310225,310226,310227,310228,310229,310230,310231,310232,310891,310892,311257,311258,311259,311260,312161,312162,312180,312181,312182,312183,312210,312211,312429,312430,312431,312432,312512,312513,312932,312933,312934,312935,313623,313624,313631,313632,313633,313634,313653,313654,313658,313659,313660,313661,313662,313663,313664,313665,313674,313675,313782,313783,313784,313785,313878,313879,313887,313888,313889,313890,313891,313892,313893,313894,313911,313912,313931,313932,313933,313934,313944,313945,313999,314000,314001,314002,314014,314015,314019,314020,314021,314022,314032,314033,314047,314048,314049,314050,314086,314087,314096,314097,314098,314099,314142,314143,314169,314170,314171,314172,314224,314225,314234,314235,314236,314237,314275,314276,314288,314289,314290,314291,314292,314293,314372,314373,314374,314375,314376,314377,314378,314379,314383,314384,314385,314386,314395,314396,314404,314405,314406,314407,314435,314436,314501,314502,314503,314504,314572,314573") && 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;

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

ui_print("Patching system image after verification.");
show_progress(0.900000, 0);
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 boot image...");
show_progress(0.100000, 10);
apply_patch("EMMC:/dev/block/bootdevice/by-name/boot:16209192:8cbef03d9dee7965122d722d3f70424c556795c7:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945",
            "-", 81902c9f4b875ababdc75b8a9f2a6b887f7b6945, 16209192,
            8cbef03d9dee7965122d722d3f70424c556795c7,
            package_extract_file("patch/boot.img.p")) ||
    abort("E3008: Failed to apply patch to EMMC:/dev/block/bootdevice/by-name/boot:16209192:8cbef03d9dee7965122d722d3f70424c556795c7:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945");

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

ui_print("Patching firmware images...");
set_progress(1.000000);
