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/063/brian04010301: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/063/brian04010301: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/063/brian04010301: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:1d02d48cfa9156068da1cc91988ec331a4449957:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:16209192:1d02d48cfa9156068da1cc91988ec331a4449957:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945\" has unexpected contents.");
apply_patch_space(22671360) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/bootdevice/by-name/system", "3810,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,165586,165587,165594,165595,165604,165605,165610,165611,165614,165615,165618,165619,165621,165622,165625,165626,165629,165630,165633,165634,165637,165638,165640,165641,165643,165644,165647,165648,165651,165652,165654,165655,165663,165664,165682,165683,165704,165705,165712,165713,165719,165720,165727,165728,165731,165732,165734,165735,165746,165747,165753,165754,165767,165768,165778,165779,165783,165784,165794,165795,165801,165802,165809,165810,165817,165818,165821,165822,165828,165829,165834,165835,165838,165839,165842,165843,165846,165847,165850,165851,165855,165856,165860,165861,165864,165865,165869,165870,165873,165874,165878,165879,165883,165884,165896,165897,165901,165902,165914,165915,165922,165923,165924,165925,166955,166956,166959,166960,166966,166967,166975,166976,166979,166980,166983,166984,166996,166997,167001,167002,167007,167008,167012,167013,167016,167017,167020,167021,167029,167030,167038,167039,167044,167045,167048,167049,167054,167055,167060,167061,167068,167069,167072,167073,167080,167081,167087,167088,167089,167090,167097,167098,167116,167117,167122,167123,167127,167128,167133,167134,167145,167146,167152,167153,167158,167159,167169,167170,167175,167176,167177,167178,167179,167180,167181,167182,167186,167187,167189,167190,167196,167197,167200,167201,167208,167209,167212,167213,167242,167243,167256,167257,167281,167282,167318,167319,167345,167346,167390,167391,167415,167416,167427,167428,167456,167457,167483,167484,167496,167497,167498,167499,167502,167503,167505,167506,167508,167509,167512,167513,167516,167517,167524,167525,167527,167528,167532,167533,167542,167543,167547,167548,167553,167554,167558,167559,167564,167565,167568,167569,167573,167574,167578,167579,167586,167587,167592,167593,167596,167597,167602,167603,167607,167608,167611,167612,167617,167618,167622,167623,167627,167628,167631,167632,167638,167639,167642,167643,167648,167649,167655,167656,167659,167660,167670,167671,167673,167674,167679,167680,167684,167685,167700,167701,167704,167705,167709,167710,167715,167716,167721,167722,167727,167728,167733,167734,167738,167739,167741,167742,167748,167749,167755,167756,167762,167763,167767,167768,167775,167776,167782,167783,167786,167787,167793,167794,167800,167801,167808,167809,167812,167813,167823,167824,167827,167828,167839,167840,167843,167844,167848,167849,167854,167855,167860,167861,167867,167868,167876,167877,167882,167883,167890,167891,167895,167896,167898,167899,167903,167904,167909,167910,167915,167916,167923,167924,167931,167932,167935,167936,167944,167945,167946,167947,167954,167955,167962,167963,167969,167970,168026,168027,168049,168050,168057,168058,168067,168068,168075,168076,168084,168085,168097,168098,168109,168110,168120,168121,168133,168134,168142,168143,168151,168152,168162,168163,168173,168174,168182,168183,168191,168192,168196,168197,168204,168205,168215,168216,168226,168227,168237,168238,168289,168290,168298,168299,168307,168308,168323,168324,168328,168329,168342,168343,168351,168352,168395,168396,168409,168410,168426,168427,168436,168437,168445,168446,168474,168475,168487,168488,168498,168499,168512,168513,168523,168524,168535,168536,168550,168551,168562,168563,168580,168581,168587,168588,168592,168593,168634,168635,168645,168646,168655,168656,168667,168668,168678,168679,168686,168687,168696,168697,168708,168709,168720,168721,168725,168726,168735,168736,168745,168746,168756,168757,168764,168765,168773,168774,168788,168789,168817,168818,168828,168829,168851,168852,168910,168911,168925,168926,168931,168932,168976,168977,168990,168991,169006,169007,169022,169023,169029,169030,169043,169044,169055,169056,169068,169069,169077,169078,169089,169090,169100,169101,169128,169129,169207,169208,169219,169220,169230,169231,169242,169243,169251,169252,169274,169275,169282,169283,169293,169294,169303,169304,169322,169323,169366,169367,169376,169377,169389,169390,169397,169398,169434,169435,169481,169482,169490,169491,169496,169497,169505,169506,169526,169527,169533,169534,169535,169536,169538,169539,169541,169542,169544,169545,169548,169549,169551,169552,169554,169555,169557,169558,169561,169562,169566,169567,169569,169570,169573,169574,169576,169577,169579,169580,169582,169583,169586,169587,169589,169590,169593,169594,169595,169596,169597,169598,169660,169661,169662,169663,169664,169665,169675,169676,169677,169678,169719,169720,169721,169722,169723,169724,169943,169944,169945,169946,169979,169980,169981,169982,169983,169984,170219,170220,170221,170222,170230,170231,170232,170233,170234,170235,170248,170249,170250,170251,170283,170284,170285,170286,170287,170288,170295,170296,170297,170298,170906,170907,170908,170909,170910,170911,170995,170996,170997,170998,171064,171065,171066,171067,171068,171069,171163,171164,171165,171166,173121,173122,173123,173124,173125,173126,174651,174652,174653,174654,174801,174802,174803,174804,174805,174806,175496,175497,175498,175499,175506,175507,175508,175509,175510,175511,175512,175513,175514,175515,175527,175528,175529,175530,178118,178119,178120,178121,178122,178123,180487,180488,180489,180490,180973,180974,180975,180976,180977,180978,181873,181874,181875,181876,182033,182034,182035,182036,182037,182038,182314,182315,182316,182317,183300,183301,183302,183303,183304,183305,183891,183892,183893,183894,183900,183901,183902,183903,183904,183905,183915,183916,183917,183918,183931,183932,183933,183934,183935,183936,183970,183971,183972,183973,183979,183980,183981,183982,183983,183984,183995,183996,183997,183998,184058,184059,184060,184061,184062,184063,184069,184070,184071,184072,184306,184307,184308,184309,184310,184311,184468,184469,184470,184471,184518,184519,184520,184521,184522,184523,184656,184657,184658,184659,186338,186339,186340,186341,186342,186343,187650,187651,187652,187653,187663,187664,187665,187666,187667,187668,187719,187720,187721,187722,187758,187759,187760,187761,187762,187763,187764,187765,187766,187767,187823,187824,187825,187826,187831,187832,187833,187834,187835,187836,187859,187860,187861,187862,189276,189277,189278,189279,189280,189281,190330,190331,190332,190333,190336,190337,190338,190339,190340,190341,190354,190355,190356,190357,190363,190364,190365,190366,190367,190368,190384,190385,190386,190387,190399,190400,190401,190402,190403,190404,190484,190485,190486,190487,190488,190489,190490,190491,192889,192890,192891,192892,192935,192936,192937,192938,192939,192940,193057,193058,193059,193060,193063,193064,193065,193066,193067,193068,193079,193080,193081,193082,193143,193144,193145,193146,193147,193148,193237,193238,193239,193240,193373,193374,193375,193376,193377,193378,193624,193625,193626,193627,193638,193639,193640,193641,193642,193643,193686,193687,193688,193689,194746,194747,194748,194749,194750,194751,195663,195664,195665,195666,195667,195668,195669,195670,195671,195672,195673,195674,195675,195676,195677,195678,196515,196516,196517,196518,196519,196520,196521,196522,196531,196532,196533,196534,196535,196536,196545,196546,196547,196548,196605,196608,196609,197148,197159,197160,197267,197268,197584,197585,197683,197684,197721,197722,197751,197752,197771,197772,197780,197781,197965,197966,198108,198109,198119,198120,198137,198138,198147,198148,198282,198283,198312,198313,198343,198344,198533,198534,198540,198541,198547,198548,198553,198554,198558,198559,198572,198573,198581,198582,198586,198587,198617,198618,198635,198636,198666,198667,198721,198722,198739,198740,198770,198771,198790,198791,198799,198800,198807,198808,198831,198832,198881,198882,198893,198894,198898,198899,198903,198904,199709,199710,199714,199715,199719,199720,199736,199737,199741,199742,199748,199749,199753,199754,199759,199760,199765,199766,199770,199771,199776,199777,199782,199783,199787,199788,199792,199793,199798,199799,199804,199805,199810,199811,199816,199817,199821,199822,199827,199828,199833,199834,199838,199839,199844,199845,199850,199851,199855,199856,199861,199862,199867,199868,199872,199873,199878,199879,199884,199885,199889,199890,199895,199896,199901,199902,199906,199907,199912,199913,199918,199919,199923,199924,199929,199930,199935,199936,199940,199941,199946,199947,199952,199953,199957,199958,199963,199964,199969,199970,199974,199975,199980,199981,199986,199987,199991,199992,199997,199998,200003,200004,200011,200012,200019,200020,200033,200034,200039,200040,200062,200063,200092,200093,200135,200136,200172,200173,200179,200180,200238,200239,200243,200244,200262,200263,200267,200268,200441,200442,200611,200612,200618,200619,200633,200634,200643,200644,200653,200654,200663,200664,200673,200674,200683,200684,200693,200694,200703,200704,200713,200714,200723,200724,200738,200739,200748,200749,200758,200759,200773,200774,200783,200784,200793,200794,200803,200804,200813,200814,200823,200824,200833,200834,200843,200844,200853,200854,200863,200864,200878,200879,200888,200889,200898,200899,200908,200909,200918,200919,200933,200934,200943,200944,200953,200954,200963,200964,200978,200979,200988,200989,200998,200999,201008,201009,201023,201024,201033,201034,201043,201044,201053,201054,201063,201064,201078,201079,201088,201089,201098,201099,201108,201109,201118,201119,201128,201129,201137,201138,201152,201153,201162,201163,201172,201173,201182,201183,201192,201193,201202,201203,201212,201213,201222,201223,201232,201233,201247,201248,201257,201258,201267,201268,201277,201278,201287,201288,201297,201298,201307,201308,201317,201318,201327,201328,201337,201338,201347,201348,201362,201363,201372,201373,201382,201383,201392,201393,201402,201403,201412,201413,201427,201428,201437,201438,201447,201448,201457,201458,201467,201468,201477,201478,201487,201488,201497,201498,201512,201513,201522,201523,201532,201533,201542,201543,201557,201558,201572,201573,201582,201583,201592,201593,201602,201603,201612,201613,201622,201623,201632,201633,201647,201648,201657,201658,201667,201668,201677,201678,201692,201693,201702,201703,201712,201713,201722,201723,201737,201738,201747,201748,201757,201758,201767,201768,201782,201783,201792,201793,201802,201803,201812,201813,201822,201823,201832,201833,201847,201848,201857,201858,201867,201868,201877,201878,201887,201888,201902,201903,201912,201913,201922,201923,201932,201933,201942,201943,201952,201953,201967,201968,201977,201978,201987,201988,201997,201998,202007,202008,202017,202018,202032,202033,202042,202043,202052,202053,202062,202063,202072,202073,202082,202083,202092,202093,202102,202103,202112,202113,202122,202123,202137,202138,202147,202148,202157,202158,202167,202168,202177,202178,202187,202188,202197,202198,202207,202208,202217,202218,202227,202228,202242,202243,202252,202253,202262,202263,202272,202273,202282,202283,202292,202293,202302,202303,202312,202313,202322,202323,202332,202333,202347,202348,202357,202358,202367,202368,202377,202378,202387,202388,202397,202398,202407,202408,202417,202418,202427,202428,202442,202443,202452,202453,202462,202463,202472,202473,202482,202483,202492,202493,202502,202503,202512,202513,202522,202523,202532,202533,202542,202543,202552,202553,202562,202563,202577,202578,202587,202588,202597,202598,202607,202608,202617,202618,202627,202628,202637,202638,202647,202648,202657,202658,202672,202673,202682,202683,202692,202693,202702,202703,202712,202713,202722,202723,202732,202733,202747,202748,202757,202758,202767,202768,202777,202778,202787,202788,202797,202798,202807,202808,202817,202818,202827,202828,202837,202838,202847,202848,202857,202858,202872,202873,202882,202883,202892,202893,202902,202903,202912,202913,202922,202923,202932,202933,202942,202943,202952,202953,202962,202963,202977,202978,202987,202988,202997,202998,203007,203008,203022,203023,203032,203033,203042,203043,203052,203053,203062,203063,203072,203073,203082,203083,203092,203093,203102,203103,203112,203113,203127,203128,203137,203138,203147,203148,203157,203158,203167,203168,203177,203178,203187,203188,203197,203198,203212,203213,203222,203223,203232,203233,203242,203243,203252,203253,203262,203263,203277,203278,203287,203288,203297,203298,203307,203308,203317,203318,203327,203328,203337,203338,203347,203348,203357,203358,203372,203373,203382,203383,203392,203393,203402,203403,203513,203514,203577,203578,203582,203583,203589,203590,203603,203604,203610,203611,203669,203670,203691,203692,203705,203706,203738,203739,203832,203833,203847,203848,203857,203858,203902,203903,203935,203936,203946,203947,203953,203954,203959,203960,204073,204074,204093,204094,204099,204100,204776,204777,204796,204797,204809,204810,204823,204824,204887,204888,204893,204894,204900,204901,204907,204908,204915,204916,204985,204986,204994,204995,205002,205003,205022,205023,205044,205045,205314,205315,210137,210138,210167,210168,210175,210176,210290,210291,210313,210314,210364,210365,210394,210395,210419,210420,210433,210434,210439,210440,210453,210454,210458,210459,210494,210495,210501,210502,210508,210509,210517,210518,210527,210528,210536,210537,210593,210594,210612,210613,210644,210645,210650,210651,210662,210663,210718,210719,210731,210732,210900,210901,210915,210916,210991,210992,211050,211051,211072,211073,211117,211118,211132,211133,211137,211138,211143,211144,211149,211150,211155,211156,211161,211162,211167,211168,211175,211176,211478,211479,211483,211484,211511,211512,211525,211526,211530,211531,211537,211538,211547,211548,211579,211580,211585,211586,211592,211593,211600,211601,211608,211609,211613,211614,211618,211619,211625,211626,211632,211633,211639,211640,211645,211646,211651,211652,211657,211658,211663,211664,211669,211670,211674,211675,211680,211681,211686,211687,211692,211693,211698,211699,211705,211706,211711,211712,211717,211718,211722,211723,211729,211730,211736,211737,211743,211744,211753,211754,211763,211764,211771,211772,211777,211778,211791,211792,211801,211802,211807,211808,211815,211816,211821,211822,211827,211828,211833,211834,211840,211841,211845,211846,211851,211852,211857,211858,211862,211863,211868,211869,211874,211875,211879,211880,211884,211885,211890,211891,211895,211896,211903,211904,211910,211911,211915,211916,211921,211922,212064,212065,212077,212078,212106,212107,212128,212129,212167,212168,212309,212310,212343,212344,212350,212351,212486,212487,212505,212506,212542,212543,212552,212553,212574,212575,212824,212825,212866,212867,212879,212880,212887,212888,212894,212895,212900,212901,212909,212910,212916,212917,212948,212949,212966,212967,212981,212982,212990,212991,212997,212998,213004,213005,213023,213024,213055,213056,213080,213081,213129,213130,213141,213142,213148,213149,213163,213164,213166,213167,213174,213175,213184,213185,213191,213192,213217,213218,213237,213238,213255,213256,213285,213286,213290,213291,213295,213296,213300,213301,213314,213315,213317,213318,215783,215784,215786,215787,215791,215792,215797,215798,215804,215805,215860,215861,215863,215864,216275,216276,217495,217496,217503,217504,217682,217683,217687,217688,217695,217696,217739,217740,217761,217762,217766,217767,217771,217772,217781,217782,217787,217788,217793,217794,217802,217803,217837,217838,217842,217843,217853,217854,217861,217862,217866,217867,217872,217873,218053,218054,218090,218091,218098,218099,218117,218118,218144,218145,218173,218174,218181,218182,218187,218188,218199,218200,218220,218221,218227,218228,218256,218257,218296,218297,218304,218305,218316,218317,218382,218383,218401,218402,218435,218436,218440,218441,218449,218450,218455,218456,218465,218466,218471,218472,218501,218502,218641,218642,218652,218653,218657,218658,218663,218664,218683,218684,218685,218686,218697,218698,218706,218707,218718,218719,218726,218727,218733,218734,218740,218741,218752,218753,218759,218760,218767,218768,218775,218776,218782,218783,218787,218788,218794,218795,218799,218800,218807,218808,218814,218815,218826,218827,218831,218832,218840,218841,218848,218849,218855,218856,218862,218863,218870,218871,218878,218879,218884,218885,218891,218892,218898,218899,218900,218901,218938,218939,218976,218977,219016,219017,219019,219020,219021,219022,219023,219024,219036,219037,219038,219039,219040,219041,219062,219063,219074,219075,219076,219077,219078,219079,219203,219204,219205,219206,219212,219213,219214,219215,219216,219217,219218,219219,219220,219221,219222,219223,219231,219232,219237,219238,219244,219245,219251,219252,219264,219265,219271,219272,219292,219293,219304,219305,219306,219307,219357,219358,219364,219365,219370,219371,219425,219426,219431,219432,219437,219438,219444,219445,219450,219451,219625,219626,219633,219634,219639,219640,219645,219646,219652,219653,219662,219663,219717,219718,219730,219731,219760,219761,219766,219767,219773,219774,219779,219780,219787,219788,219793,219794,219799,219800,219805,219806,219882,219883,219901,219902,219977,219978,219983,219984,219990,219991,220196,229376,229378,229457,229458,248666,248667,248668,248669,248670,248845,248846,248847,248848,248928,248929,248930,248931,248932,248933,249039,249040,249041,249042,249066,249067,249068,249069,249070,249071,249081,249082,249083,249084,249231,249232,249233,249234,249235,249236,250104,250105,250106,250107,250108,250109,250110,250111,250145,250146,250153,250154,250155,250156,250157,250158,250159,250160,250192,250193,250247,250248,250283,250284,250285,250286,250287,250288,250289,250290,250291,250292,250293,250294,250295,250296,250297,250298,250299,250300,250301,250302,250303,250304,250305,250306,250307,250308,250309,250310,250311,250312,250313,250314,250315,250316,250317,250318,250319,250320,250476,250477,250585,250586,250729,250730,250831,250832,251022,251023,251182,251183,251246,251247,251395,251396,251600,251601,251695,251696,251850,251851,251913,251914,251915,251916,251917,251918,251919,251920,251921,251922,251923,251924,251925,251926,251935,251936,251937,251938,251940,251941,251942,251943,251970,251971,251972,251973,251999,252000,252001,252002,252029,252030,252031,252032,252044,252045,252046,252047,252055,252056,252057,252058,252062,252063,252064,252065,252071,252072,252073,252074,252075,252076,252077,252078,252080,252081,252082,252083,252092,252093,252094,252095,252096,252097,252098,252099,252100,252101,252102,252103,252104,252105,252106,252107,252185,252186,252187,252188,252189,252190,252191,252192,252193,252194,252195,252196,252197,252198,252199,252200,252202,252203,252204,252205,252206,252207,252208,252209,252245,252246,252247,252248,252284,252285,252286,252287,252288,252289,252290,252291,252292,252293,252294,252295,252296,252297,252299,252300,252302,252303,252304,252305,252306,252307,252308,252309,252310,252311,252312,252313,252314,252315,252316,252317,252318,252319,252320,252321,252322,252323,257744,257745,257746,257747,257748,257749,257750,257751,257752,257753,257754,257755,257759,257760,257763,257764,257768,257769,257773,257774,257778,257779,257780,257781,257782,257783,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,257848,257849,257850,257851,257852,257853,257854,257855,257856,257857,257858,257859,257860,257861,257862,257863,257867,257868,257873,257874,257875,257876,257999,258000,258001,258002,258003,258004,258005,258006,258007,258008,258009,258010,258011,258012,258014,258015,258016,258017,258019,258020,258021,258022,258024,258025,258026,258027,258029,258030,258031,258032,258034,258035,258036,258037,258039,258040,258041,258042,258044,258045,258046,258047,258048,258049,258050,258051,258052,258053,258054,258055,258061,258062,258063,258064,258065,258066,258072,258073,258074,258075,258156,258157,258158,258159,258160,258161,258547,258548,258549,258550,258552,258553,258554,258555,258556,258557,258563,258564,258565,258566,258571,258572,258573,258574,258575,258576,258593,258594,258595,258596,258626,258627,258628,258629,258630,258631,258650,258651,258652,258653,258663,258664,258665,258666,258667,258668,258691,258692,258693,258694,258695,258696,258697,258698,258700,258701,258702,258703,258707,258708,258709,258710,258712,258713,258714,258715,258717,258718,258719,258720,258722,258723,258724,258725,258727,258728,258729,258730,258732,258733,258734,258735,258737,258738,258739,258740,258743,258744,258745,258746,258748,258749,258750,258751,258754,258755,258756,258757,258759,258760,258761,258762,258772,258773,258774,258775,258776,258777,258778,258779,258780,258781,258782,258783,258784,258785,258790,258791,258792,258793,258794,258795,258802,258803,258804,258805,258827,258828,258829,258830,258831,258832,258877,258878,258879,258880,258894,258895,258896,258897,258898,258899,258915,258916,258917,258918,258919,258920,258921,258922,258935,258936,258937,258938,258940,258941,258942,258943,258945,258946,258947,258948,258950,258951,258952,258953,258955,258956,258957,258958,258960,258961,258962,258963,258965,258966,258967,258968,258970,258971,258972,258973,258975,258976,258977,258978,258980,258981,258982,258983,258990,258991,258992,258993,258995,258996,258997,258998,258999,259000,259001,259002,259003,259004,259005,259006,259007,259008,259013,259014,259015,259016,259017,259018,259025,259026,259027,259028,259032,259033,259034,259035,259036,259037,259044,259045,259046,259047,259048,259049,259050,259051,259053,259054,259055,259056,259058,259059,259060,259061,259063,259064,259065,259066,259068,259069,259070,259071,259073,259074,259075,259076,259078,259079,259080,259081,259189,259190,259191,259192,259193,259194,259195,259196,259197,259198,259199,259200,259201,259202,259203,259204,259205,259206,259207,259208,259209,259210,259211,259212,259220,259221,259222,259223,259231,259232,259233,259234,259235,259236,259243,259244,259245,259246,259253,259254,259255,259256,259257,259258,259259,259260,259261,259262,259263,259264,259273,259274,259275,259276,259277,259278,259294,259295,259296,259297,259299,259300,259301,259302,259304,259305,259306,259307,259309,259310,259311,259312,259317,259318,259319,259320,259322,259323,259324,259325,259326,259327,259328,259329,259334,259335,259336,259337,259338,259339,259349,259350,259351,259352,259377,259378,259379,259380,259381,259382,259468,259469,259470,259471,259534,259535,259536,259537,259538,259539,259690,259691,259692,259693,259708,259709,259710,259711,259712,259713,259732,259733,259734,259735,259736,259737,259738,259739,260044,260045,260109,260110,260111,260112,260199,260200,260863,260864,260869,260870,260875,260876,260886,260887,260900,260901,260916,260917,260945,260946,260956,260957,260994,260995,261267,261268,261269,261270,261271,261272,261273,261274,261347,261348,261421,261422,261465,261466,261467,261468,261471,261472,261473,261474,261475,261476,261477,261478,261479,261480,261482,261483,261489,261490,261495,261496,261571,261572,261575,261576,261581,261582,261583,261584,261585,261586,261587,261588,261589,261590,261591,261592,261598,261599,261600,261601,261622,261623,261646,261647,261648,261649,261660,261661,261704,261705,261756,261757,262076,262077,262078,262079,262087,262088,262093,262094,262106,262107,262121,262122,262135,262136,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") == "8f115b197da771cc74d33155608f26974d57f27c" || 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", "3810,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,165586,165587,165594,165595,165604,165605,165610,165611,165614,165615,165618,165619,165621,165622,165625,165626,165629,165630,165633,165634,165637,165638,165640,165641,165643,165644,165647,165648,165651,165652,165654,165655,165663,165664,165682,165683,165704,165705,165712,165713,165719,165720,165727,165728,165731,165732,165734,165735,165746,165747,165753,165754,165767,165768,165778,165779,165783,165784,165794,165795,165801,165802,165809,165810,165817,165818,165821,165822,165828,165829,165834,165835,165838,165839,165842,165843,165846,165847,165850,165851,165855,165856,165860,165861,165864,165865,165869,165870,165873,165874,165878,165879,165883,165884,165896,165897,165901,165902,165914,165915,165922,165923,165924,165925,166955,166956,166959,166960,166966,166967,166975,166976,166979,166980,166983,166984,166996,166997,167001,167002,167007,167008,167012,167013,167016,167017,167020,167021,167029,167030,167038,167039,167044,167045,167048,167049,167054,167055,167060,167061,167068,167069,167072,167073,167080,167081,167087,167088,167089,167090,167097,167098,167116,167117,167122,167123,167127,167128,167133,167134,167145,167146,167152,167153,167158,167159,167169,167170,167175,167176,167177,167178,167179,167180,167181,167182,167186,167187,167189,167190,167196,167197,167200,167201,167208,167209,167212,167213,167242,167243,167256,167257,167281,167282,167318,167319,167345,167346,167390,167391,167415,167416,167427,167428,167456,167457,167483,167484,167496,167497,167498,167499,167502,167503,167505,167506,167508,167509,167512,167513,167516,167517,167524,167525,167527,167528,167532,167533,167542,167543,167547,167548,167553,167554,167558,167559,167564,167565,167568,167569,167573,167574,167578,167579,167586,167587,167592,167593,167596,167597,167602,167603,167607,167608,167611,167612,167617,167618,167622,167623,167627,167628,167631,167632,167638,167639,167642,167643,167648,167649,167655,167656,167659,167660,167670,167671,167673,167674,167679,167680,167684,167685,167700,167701,167704,167705,167709,167710,167715,167716,167721,167722,167727,167728,167733,167734,167738,167739,167741,167742,167748,167749,167755,167756,167762,167763,167767,167768,167775,167776,167782,167783,167786,167787,167793,167794,167800,167801,167808,167809,167812,167813,167823,167824,167827,167828,167839,167840,167843,167844,167848,167849,167854,167855,167860,167861,167867,167868,167876,167877,167882,167883,167890,167891,167895,167896,167898,167899,167903,167904,167909,167910,167915,167916,167923,167924,167931,167932,167935,167936,167944,167945,167946,167947,167954,167955,167962,167963,167969,167970,168026,168027,168049,168050,168057,168058,168067,168068,168075,168076,168084,168085,168097,168098,168109,168110,168120,168121,168133,168134,168142,168143,168151,168152,168162,168163,168173,168174,168182,168183,168191,168192,168196,168197,168204,168205,168215,168216,168226,168227,168237,168238,168289,168290,168298,168299,168307,168308,168323,168324,168328,168329,168342,168343,168351,168352,168395,168396,168409,168410,168426,168427,168436,168437,168445,168446,168474,168475,168487,168488,168498,168499,168512,168513,168523,168524,168535,168536,168550,168551,168562,168563,168580,168581,168587,168588,168592,168593,168634,168635,168645,168646,168655,168656,168667,168668,168678,168679,168686,168687,168696,168697,168708,168709,168720,168721,168725,168726,168735,168736,168745,168746,168756,168757,168764,168765,168773,168774,168788,168789,168817,168818,168828,168829,168851,168852,168910,168911,168925,168926,168931,168932,168976,168977,168990,168991,169006,169007,169022,169023,169029,169030,169043,169044,169055,169056,169068,169069,169077,169078,169089,169090,169100,169101,169128,169129,169207,169208,169219,169220,169230,169231,169242,169243,169251,169252,169274,169275,169282,169283,169293,169294,169303,169304,169322,169323,169366,169367,169376,169377,169389,169390,169397,169398,169434,169435,169481,169482,169490,169491,169496,169497,169505,169506,169526,169527,169533,169534,169535,169536,169538,169539,169541,169542,169544,169545,169548,169549,169551,169552,169554,169555,169557,169558,169561,169562,169566,169567,169569,169570,169573,169574,169576,169577,169579,169580,169582,169583,169586,169587,169589,169590,169593,169594,169595,169596,169597,169598,169660,169661,169662,169663,169664,169665,169675,169676,169677,169678,169719,169720,169721,169722,169723,169724,169943,169944,169945,169946,169979,169980,169981,169982,169983,169984,170219,170220,170221,170222,170230,170231,170232,170233,170234,170235,170248,170249,170250,170251,170283,170284,170285,170286,170287,170288,170295,170296,170297,170298,170906,170907,170908,170909,170910,170911,170995,170996,170997,170998,171064,171065,171066,171067,171068,171069,171163,171164,171165,171166,173121,173122,173123,173124,173125,173126,174651,174652,174653,174654,174801,174802,174803,174804,174805,174806,175496,175497,175498,175499,175506,175507,175508,175509,175510,175511,175512,175513,175514,175515,175527,175528,175529,175530,178118,178119,178120,178121,178122,178123,180487,180488,180489,180490,180973,180974,180975,180976,180977,180978,181873,181874,181875,181876,182033,182034,182035,182036,182037,182038,182314,182315,182316,182317,183300,183301,183302,183303,183304,183305,183891,183892,183893,183894,183900,183901,183902,183903,183904,183905,183915,183916,183917,183918,183931,183932,183933,183934,183935,183936,183970,183971,183972,183973,183979,183980,183981,183982,183983,183984,183995,183996,183997,183998,184058,184059,184060,184061,184062,184063,184069,184070,184071,184072,184306,184307,184308,184309,184310,184311,184468,184469,184470,184471,184518,184519,184520,184521,184522,184523,184656,184657,184658,184659,186338,186339,186340,186341,186342,186343,187650,187651,187652,187653,187663,187664,187665,187666,187667,187668,187719,187720,187721,187722,187758,187759,187760,187761,187762,187763,187764,187765,187766,187767,187823,187824,187825,187826,187831,187832,187833,187834,187835,187836,187859,187860,187861,187862,189276,189277,189278,189279,189280,189281,190330,190331,190332,190333,190336,190337,190338,190339,190340,190341,190354,190355,190356,190357,190363,190364,190365,190366,190367,190368,190384,190385,190386,190387,190399,190400,190401,190402,190403,190404,190484,190485,190486,190487,190488,190489,190490,190491,192889,192890,192891,192892,192935,192936,192937,192938,192939,192940,193057,193058,193059,193060,193063,193064,193065,193066,193067,193068,193079,193080,193081,193082,193143,193144,193145,193146,193147,193148,193237,193238,193239,193240,193373,193374,193375,193376,193377,193378,193624,193625,193626,193627,193638,193639,193640,193641,193642,193643,193686,193687,193688,193689,194746,194747,194748,194749,194750,194751,195663,195664,195665,195666,195667,195668,195669,195670,195671,195672,195673,195674,195675,195676,195677,195678,196515,196516,196517,196518,196519,196520,196521,196522,196531,196532,196533,196534,196535,196536,196545,196546,196547,196548,196605,196608,196609,197148,197159,197160,197267,197268,197584,197585,197683,197684,197721,197722,197751,197752,197771,197772,197780,197781,197965,197966,198108,198109,198119,198120,198137,198138,198147,198148,198282,198283,198312,198313,198343,198344,198533,198534,198540,198541,198547,198548,198553,198554,198558,198559,198572,198573,198581,198582,198586,198587,198617,198618,198635,198636,198666,198667,198721,198722,198739,198740,198770,198771,198790,198791,198799,198800,198807,198808,198831,198832,198881,198882,198893,198894,198898,198899,198903,198904,199709,199710,199714,199715,199719,199720,199736,199737,199741,199742,199748,199749,199753,199754,199759,199760,199765,199766,199770,199771,199776,199777,199782,199783,199787,199788,199792,199793,199798,199799,199804,199805,199810,199811,199816,199817,199821,199822,199827,199828,199833,199834,199838,199839,199844,199845,199850,199851,199855,199856,199861,199862,199867,199868,199872,199873,199878,199879,199884,199885,199889,199890,199895,199896,199901,199902,199906,199907,199912,199913,199918,199919,199923,199924,199929,199930,199935,199936,199940,199941,199946,199947,199952,199953,199957,199958,199963,199964,199969,199970,199974,199975,199980,199981,199986,199987,199991,199992,199997,199998,200003,200004,200011,200012,200019,200020,200033,200034,200039,200040,200062,200063,200092,200093,200135,200136,200172,200173,200179,200180,200238,200239,200243,200244,200262,200263,200267,200268,200441,200442,200611,200612,200618,200619,200633,200634,200643,200644,200653,200654,200663,200664,200673,200674,200683,200684,200693,200694,200703,200704,200713,200714,200723,200724,200738,200739,200748,200749,200758,200759,200773,200774,200783,200784,200793,200794,200803,200804,200813,200814,200823,200824,200833,200834,200843,200844,200853,200854,200863,200864,200878,200879,200888,200889,200898,200899,200908,200909,200918,200919,200933,200934,200943,200944,200953,200954,200963,200964,200978,200979,200988,200989,200998,200999,201008,201009,201023,201024,201033,201034,201043,201044,201053,201054,201063,201064,201078,201079,201088,201089,201098,201099,201108,201109,201118,201119,201128,201129,201137,201138,201152,201153,201162,201163,201172,201173,201182,201183,201192,201193,201202,201203,201212,201213,201222,201223,201232,201233,201247,201248,201257,201258,201267,201268,201277,201278,201287,201288,201297,201298,201307,201308,201317,201318,201327,201328,201337,201338,201347,201348,201362,201363,201372,201373,201382,201383,201392,201393,201402,201403,201412,201413,201427,201428,201437,201438,201447,201448,201457,201458,201467,201468,201477,201478,201487,201488,201497,201498,201512,201513,201522,201523,201532,201533,201542,201543,201557,201558,201572,201573,201582,201583,201592,201593,201602,201603,201612,201613,201622,201623,201632,201633,201647,201648,201657,201658,201667,201668,201677,201678,201692,201693,201702,201703,201712,201713,201722,201723,201737,201738,201747,201748,201757,201758,201767,201768,201782,201783,201792,201793,201802,201803,201812,201813,201822,201823,201832,201833,201847,201848,201857,201858,201867,201868,201877,201878,201887,201888,201902,201903,201912,201913,201922,201923,201932,201933,201942,201943,201952,201953,201967,201968,201977,201978,201987,201988,201997,201998,202007,202008,202017,202018,202032,202033,202042,202043,202052,202053,202062,202063,202072,202073,202082,202083,202092,202093,202102,202103,202112,202113,202122,202123,202137,202138,202147,202148,202157,202158,202167,202168,202177,202178,202187,202188,202197,202198,202207,202208,202217,202218,202227,202228,202242,202243,202252,202253,202262,202263,202272,202273,202282,202283,202292,202293,202302,202303,202312,202313,202322,202323,202332,202333,202347,202348,202357,202358,202367,202368,202377,202378,202387,202388,202397,202398,202407,202408,202417,202418,202427,202428,202442,202443,202452,202453,202462,202463,202472,202473,202482,202483,202492,202493,202502,202503,202512,202513,202522,202523,202532,202533,202542,202543,202552,202553,202562,202563,202577,202578,202587,202588,202597,202598,202607,202608,202617,202618,202627,202628,202637,202638,202647,202648,202657,202658,202672,202673,202682,202683,202692,202693,202702,202703,202712,202713,202722,202723,202732,202733,202747,202748,202757,202758,202767,202768,202777,202778,202787,202788,202797,202798,202807,202808,202817,202818,202827,202828,202837,202838,202847,202848,202857,202858,202872,202873,202882,202883,202892,202893,202902,202903,202912,202913,202922,202923,202932,202933,202942,202943,202952,202953,202962,202963,202977,202978,202987,202988,202997,202998,203007,203008,203022,203023,203032,203033,203042,203043,203052,203053,203062,203063,203072,203073,203082,203083,203092,203093,203102,203103,203112,203113,203127,203128,203137,203138,203147,203148,203157,203158,203167,203168,203177,203178,203187,203188,203197,203198,203212,203213,203222,203223,203232,203233,203242,203243,203252,203253,203262,203263,203277,203278,203287,203288,203297,203298,203307,203308,203317,203318,203327,203328,203337,203338,203347,203348,203357,203358,203372,203373,203382,203383,203392,203393,203402,203403,203513,203514,203577,203578,203582,203583,203589,203590,203603,203604,203610,203611,203669,203670,203691,203692,203705,203706,203738,203739,203832,203833,203847,203848,203857,203858,203902,203903,203935,203936,203946,203947,203953,203954,203959,203960,204073,204074,204093,204094,204099,204100,204776,204777,204796,204797,204809,204810,204823,204824,204887,204888,204893,204894,204900,204901,204907,204908,204915,204916,204985,204986,204994,204995,205002,205003,205022,205023,205044,205045,205314,205315,210137,210138,210167,210168,210175,210176,210290,210291,210313,210314,210364,210365,210394,210395,210419,210420,210433,210434,210439,210440,210453,210454,210458,210459,210494,210495,210501,210502,210508,210509,210517,210518,210527,210528,210536,210537,210593,210594,210612,210613,210644,210645,210650,210651,210662,210663,210718,210719,210731,210732,210900,210901,210915,210916,210991,210992,211050,211051,211072,211073,211117,211118,211132,211133,211137,211138,211143,211144,211149,211150,211155,211156,211161,211162,211167,211168,211175,211176,211478,211479,211483,211484,211511,211512,211525,211526,211530,211531,211537,211538,211547,211548,211579,211580,211585,211586,211592,211593,211600,211601,211608,211609,211613,211614,211618,211619,211625,211626,211632,211633,211639,211640,211645,211646,211651,211652,211657,211658,211663,211664,211669,211670,211674,211675,211680,211681,211686,211687,211692,211693,211698,211699,211705,211706,211711,211712,211717,211718,211722,211723,211729,211730,211736,211737,211743,211744,211753,211754,211763,211764,211771,211772,211777,211778,211791,211792,211801,211802,211807,211808,211815,211816,211821,211822,211827,211828,211833,211834,211840,211841,211845,211846,211851,211852,211857,211858,211862,211863,211868,211869,211874,211875,211879,211880,211884,211885,211890,211891,211895,211896,211903,211904,211910,211911,211915,211916,211921,211922,212064,212065,212077,212078,212106,212107,212128,212129,212167,212168,212309,212310,212343,212344,212350,212351,212486,212487,212505,212506,212542,212543,212552,212553,212574,212575,212824,212825,212866,212867,212879,212880,212887,212888,212894,212895,212900,212901,212909,212910,212916,212917,212948,212949,212966,212967,212981,212982,212990,212991,212997,212998,213004,213005,213023,213024,213055,213056,213080,213081,213129,213130,213141,213142,213148,213149,213163,213164,213166,213167,213174,213175,213184,213185,213191,213192,213217,213218,213237,213238,213255,213256,213285,213286,213290,213291,213295,213296,213300,213301,213314,213315,213317,213318,215783,215784,215786,215787,215791,215792,215797,215798,215804,215805,215860,215861,215863,215864,216275,216276,217495,217496,217503,217504,217682,217683,217687,217688,217695,217696,217739,217740,217761,217762,217766,217767,217771,217772,217781,217782,217787,217788,217793,217794,217802,217803,217837,217838,217842,217843,217853,217854,217861,217862,217866,217867,217872,217873,218053,218054,218090,218091,218098,218099,218117,218118,218144,218145,218173,218174,218181,218182,218187,218188,218199,218200,218220,218221,218227,218228,218256,218257,218296,218297,218304,218305,218316,218317,218382,218383,218401,218402,218435,218436,218440,218441,218449,218450,218455,218456,218465,218466,218471,218472,218501,218502,218641,218642,218652,218653,218657,218658,218663,218664,218683,218684,218685,218686,218697,218698,218706,218707,218718,218719,218726,218727,218733,218734,218740,218741,218752,218753,218759,218760,218767,218768,218775,218776,218782,218783,218787,218788,218794,218795,218799,218800,218807,218808,218814,218815,218826,218827,218831,218832,218840,218841,218848,218849,218855,218856,218862,218863,218870,218871,218878,218879,218884,218885,218891,218892,218898,218899,218900,218901,218938,218939,218976,218977,219016,219017,219019,219020,219021,219022,219023,219024,219036,219037,219038,219039,219040,219041,219062,219063,219074,219075,219076,219077,219078,219079,219203,219204,219205,219206,219212,219213,219214,219215,219216,219217,219218,219219,219220,219221,219222,219223,219231,219232,219237,219238,219244,219245,219251,219252,219264,219265,219271,219272,219292,219293,219304,219305,219306,219307,219357,219358,219364,219365,219370,219371,219425,219426,219431,219432,219437,219438,219444,219445,219450,219451,219625,219626,219633,219634,219639,219640,219645,219646,219652,219653,219662,219663,219717,219718,219730,219731,219760,219761,219766,219767,219773,219774,219779,219780,219787,219788,219793,219794,219799,219800,219805,219806,219882,219883,219901,219902,219977,219978,219983,219984,219990,219991,220196,229376,229378,229457,229458,248666,248667,248668,248669,248670,248845,248846,248847,248848,248928,248929,248930,248931,248932,248933,249039,249040,249041,249042,249066,249067,249068,249069,249070,249071,249081,249082,249083,249084,249231,249232,249233,249234,249235,249236,250104,250105,250106,250107,250108,250109,250110,250111,250145,250146,250153,250154,250155,250156,250157,250158,250159,250160,250192,250193,250247,250248,250283,250284,250285,250286,250287,250288,250289,250290,250291,250292,250293,250294,250295,250296,250297,250298,250299,250300,250301,250302,250303,250304,250305,250306,250307,250308,250309,250310,250311,250312,250313,250314,250315,250316,250317,250318,250319,250320,250476,250477,250585,250586,250729,250730,250831,250832,251022,251023,251182,251183,251246,251247,251395,251396,251600,251601,251695,251696,251850,251851,251913,251914,251915,251916,251917,251918,251919,251920,251921,251922,251923,251924,251925,251926,251935,251936,251937,251938,251940,251941,251942,251943,251970,251971,251972,251973,251999,252000,252001,252002,252029,252030,252031,252032,252044,252045,252046,252047,252055,252056,252057,252058,252062,252063,252064,252065,252071,252072,252073,252074,252075,252076,252077,252078,252080,252081,252082,252083,252092,252093,252094,252095,252096,252097,252098,252099,252100,252101,252102,252103,252104,252105,252106,252107,252185,252186,252187,252188,252189,252190,252191,252192,252193,252194,252195,252196,252197,252198,252199,252200,252202,252203,252204,252205,252206,252207,252208,252209,252245,252246,252247,252248,252284,252285,252286,252287,252288,252289,252290,252291,252292,252293,252294,252295,252296,252297,252299,252300,252302,252303,252304,252305,252306,252307,252308,252309,252310,252311,252312,252313,252314,252315,252316,252317,252318,252319,252320,252321,252322,252323,257744,257745,257746,257747,257748,257749,257750,257751,257752,257753,257754,257755,257759,257760,257763,257764,257768,257769,257773,257774,257778,257779,257780,257781,257782,257783,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,257848,257849,257850,257851,257852,257853,257854,257855,257856,257857,257858,257859,257860,257861,257862,257863,257867,257868,257873,257874,257875,257876,257999,258000,258001,258002,258003,258004,258005,258006,258007,258008,258009,258010,258011,258012,258014,258015,258016,258017,258019,258020,258021,258022,258024,258025,258026,258027,258029,258030,258031,258032,258034,258035,258036,258037,258039,258040,258041,258042,258044,258045,258046,258047,258048,258049,258050,258051,258052,258053,258054,258055,258061,258062,258063,258064,258065,258066,258072,258073,258074,258075,258156,258157,258158,258159,258160,258161,258547,258548,258549,258550,258552,258553,258554,258555,258556,258557,258563,258564,258565,258566,258571,258572,258573,258574,258575,258576,258593,258594,258595,258596,258626,258627,258628,258629,258630,258631,258650,258651,258652,258653,258663,258664,258665,258666,258667,258668,258691,258692,258693,258694,258695,258696,258697,258698,258700,258701,258702,258703,258707,258708,258709,258710,258712,258713,258714,258715,258717,258718,258719,258720,258722,258723,258724,258725,258727,258728,258729,258730,258732,258733,258734,258735,258737,258738,258739,258740,258743,258744,258745,258746,258748,258749,258750,258751,258754,258755,258756,258757,258759,258760,258761,258762,258772,258773,258774,258775,258776,258777,258778,258779,258780,258781,258782,258783,258784,258785,258790,258791,258792,258793,258794,258795,258802,258803,258804,258805,258827,258828,258829,258830,258831,258832,258877,258878,258879,258880,258894,258895,258896,258897,258898,258899,258915,258916,258917,258918,258919,258920,258921,258922,258935,258936,258937,258938,258940,258941,258942,258943,258945,258946,258947,258948,258950,258951,258952,258953,258955,258956,258957,258958,258960,258961,258962,258963,258965,258966,258967,258968,258970,258971,258972,258973,258975,258976,258977,258978,258980,258981,258982,258983,258990,258991,258992,258993,258995,258996,258997,258998,258999,259000,259001,259002,259003,259004,259005,259006,259007,259008,259013,259014,259015,259016,259017,259018,259025,259026,259027,259028,259032,259033,259034,259035,259036,259037,259044,259045,259046,259047,259048,259049,259050,259051,259053,259054,259055,259056,259058,259059,259060,259061,259063,259064,259065,259066,259068,259069,259070,259071,259073,259074,259075,259076,259078,259079,259080,259081,259189,259190,259191,259192,259193,259194,259195,259196,259197,259198,259199,259200,259201,259202,259203,259204,259205,259206,259207,259208,259209,259210,259211,259212,259220,259221,259222,259223,259231,259232,259233,259234,259235,259236,259243,259244,259245,259246,259253,259254,259255,259256,259257,259258,259259,259260,259261,259262,259263,259264,259273,259274,259275,259276,259277,259278,259294,259295,259296,259297,259299,259300,259301,259302,259304,259305,259306,259307,259309,259310,259311,259312,259317,259318,259319,259320,259322,259323,259324,259325,259326,259327,259328,259329,259334,259335,259336,259337,259338,259339,259349,259350,259351,259352,259377,259378,259379,259380,259381,259382,259468,259469,259470,259471,259534,259535,259536,259537,259538,259539,259690,259691,259692,259693,259708,259709,259710,259711,259712,259713,259732,259733,259734,259735,259736,259737,259738,259739,260044,260045,260109,260110,260111,260112,260199,260200,260863,260864,260869,260870,260875,260876,260886,260887,260900,260901,260916,260917,260945,260946,260956,260957,260994,260995,261267,261268,261269,261270,261271,261272,261273,261274,261347,261348,261421,261422,261465,261466,261467,261468,261471,261472,261473,261474,261475,261476,261477,261478,261479,261480,261482,261483,261489,261490,261495,261496,261571,261572,261575,261576,261581,261582,261583,261584,261585,261586,261587,261588,261589,261590,261591,261592,261598,261599,261600,261601,261622,261623,261646,261647,261648,261649,261660,261661,261704,261705,261756,261757,262076,262077,262078,262079,262087,262088,262093,262094,262106,262107,262121,262122,262135,262136,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:1d02d48cfa9156068da1cc91988ec331a4449957:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945",
            "-", 81902c9f4b875ababdc75b8a9f2a6b887f7b6945, 16209192,
            1d02d48cfa9156068da1cc91988ec331a4449957,
            package_extract_file("patch/boot.img.p")) ||
    abort("E3008: Failed to apply patch to EMMC:/dev/block/bootdevice/by-name/boot:16209192:1d02d48cfa9156068da1cc91988ec331a4449957:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945");

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

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