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/145/brian02031009:userdebug/test-keys");
ui_print("Target: qcom/msm8909/msm8909:7.1.2/144/brian11140545:userdebug/test-keys");
ui_print("Verifying current system...");
getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/145/brian02031009:userdebug/test-keys" ||
    getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/144/brian11140545:userdebug/test-keys" ||
    abort("E3001: Package expects build fingerprint of qcom/msm8909/msm8909:7.1.2/145/brian02031009:userdebug/test-keys or qcom/msm8909/msm8909:7.1.2/144/brian11140545:userdebug/test-keys; this device has " + getprop("ro.build.fingerprint") + ".");
apply_patch_check("EMMC:/dev/block/bootdevice/by-name/boot:16276776:a417ab20794bbf94cafc8e708488bb0be9d1e651:16276776:2a9ecee64e1a237835c97b4ce2850963401fa611") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:16276776:a417ab20794bbf94cafc8e708488bb0be9d1e651:16276776:2a9ecee64e1a237835c97b4ce2850963401fa611\" has unexpected contents.");
apply_patch_space(22212608) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/bootdevice/by-name/system", "3728,1,80,81,306,2816,2817,2818,2819,2820,2821,2822,2823,2832,2833,2940,2941,2942,2943,3036,3037,3045,3046,3047,3048,3049,3050,3051,3052,3069,3070,3089,3090,3091,3092,3102,3103,3157,3158,3159,3160,3172,3173,3177,3178,3179,3180,3190,3191,3205,3206,3207,3208,3244,3245,3254,3255,3256,3257,3300,3301,3327,3328,3329,3330,3382,3383,3392,3393,3394,3395,3433,3434,3446,3447,3448,3449,3450,3451,3530,3531,3532,3533,3766,3767,3768,6947,6948,6949,8091,8092,8316,8317,9156,9157,9161,9162,9163,9164,9173,9174,9182,9183,9184,9185,9213,9214,9279,9280,9281,9282,9350,9351,9359,9360,9361,9362,9391,9392,9398,9399,9400,9401,9422,9423,9427,9428,9429,9430,9438,9439,9445,9446,9447,9448,9466,9467,9472,9473,9474,9475,9487,9488,9493,9494,9495,9496,9511,9512,9518,9519,9520,9521,9534,9535,9536,9537,9538,9539,9617,9618,9619,9620,9621,9622,9634,9635,9639,9640,9641,9642,9643,9644,9703,9704,9705,9706,9707,9708,9773,9774,9775,9776,9777,9778,21728,21730,21992,21993,23004,23005,23048,23049,23079,23080,23408,23409,24377,24411,24985,24986,25091,25092,25384,25385,25597,25598,26518,26521,26522,26523,26589,26590,26591,26592,26758,26759,26903,26904,27077,27078,27249,27250,27610,27611,27628,27870,27873,27874,27883,27884,27885,27886,27903,27904,27925,27926,28035,28036,28074,28075,28078,28079,28090,28091,28557,28558,28559,28560,28582,28583,28604,28605,28844,28845,29957,29958,30254,30255,30373,30374,30851,30852,30853,30854,31379,31380,31395,31396,31427,31428,31489,31490,31496,31497,32764,32765,32768,32770,32849,32850,65536,65537,87742,87743,87744,87891,87892,87893,87894,87895,87896,88764,88765,88766,88767,88768,88769,88770,88771,88805,88806,88813,88814,88815,88816,88817,88818,88819,88820,88852,88853,88907,88908,88943,88944,88945,88946,88947,88948,88949,88950,88951,88952,88953,88954,88955,88956,88957,88958,88959,88960,88961,88962,88963,88964,88965,88966,88967,88968,88969,88970,88971,88972,88973,88974,88975,88976,88977,88978,88979,88980,89136,89137,89245,89246,89389,89390,89491,89492,89682,89683,89842,89843,89906,89907,90055,90056,90260,90261,90355,90356,90510,90511,90573,90574,90575,90576,90577,90578,90579,90580,90581,90582,90583,90584,90585,90586,90595,90596,90597,90598,90600,90601,90602,90603,90630,90631,90632,90633,90659,90660,90661,90662,90689,90690,90691,90692,90704,90705,90706,90707,90715,90716,90717,90718,90722,90723,90724,90725,90731,90732,90733,90734,90735,90736,90737,90738,90740,90741,90742,90743,90752,90753,90754,90755,90756,90757,90758,90759,90760,90761,90762,90763,90764,90765,90766,90767,90845,90846,90847,90848,90849,90850,90851,90852,90853,90854,90855,90856,90857,90858,90859,90860,90862,90863,90864,90865,90866,90867,90868,90869,90905,90906,90907,90908,90944,90945,90946,90947,90948,90949,90950,90951,90952,90953,90954,90955,90956,90957,90959,90960,90962,90963,90964,90965,90966,90967,90968,90969,90970,90971,90972,90973,90974,90975,90976,90977,90978,90979,90980,90981,90982,90983,96404,96405,96406,96407,96408,96409,96410,96411,96412,96413,96414,96415,96419,96420,96423,96424,96428,96429,96433,96434,96438,96439,96440,96441,96442,96443,96446,96447,96448,96449,96450,96451,96452,96453,96454,96455,96456,96457,96458,96459,96460,96461,96462,96463,96464,96465,96466,96467,96468,96469,96470,96471,96472,96473,96474,96475,96476,96477,96478,96479,96480,96481,96482,96483,96484,96485,96486,96487,96488,96489,96490,96491,96492,96493,96494,96495,96496,96497,96498,96499,96500,96501,96502,96503,96504,96505,96506,96507,96508,96509,96510,96511,96512,96513,96514,96515,96516,96517,96518,96519,96520,96521,96522,96523,96527,96528,96533,96534,96535,96536,96659,96660,96661,96662,96663,96664,96665,96666,96667,96668,96669,96670,96671,96672,96674,96675,96676,96677,96679,96680,96681,96682,96684,96685,96686,96687,96689,96690,96691,96692,96694,96695,96696,96697,96699,96700,96701,96702,96704,96705,96706,96707,96708,96709,96710,96711,96712,96713,96714,96715,96721,96722,96723,96724,96725,96726,96732,96733,96734,96735,96816,96817,96818,96819,96820,96821,97207,97208,97209,97210,97212,97213,97214,97215,97216,97217,97223,97224,97225,97226,97231,97232,97233,97234,97235,97236,97253,97254,97255,97256,97286,97287,97288,97289,97290,97291,97310,97311,97312,97313,97323,97324,97325,97326,97327,97328,97351,97352,97353,97354,97355,97356,97357,97358,97360,97361,97362,97363,97367,97368,97369,97370,97372,97373,97374,97375,97377,97378,97379,97380,97382,97383,97384,97385,97387,97388,97389,97390,97392,97393,97394,97395,97397,97398,97399,97400,97403,97404,97405,97406,97408,97409,97410,97411,97414,97415,97416,97417,97419,97420,97421,97422,97432,97433,97434,97435,97436,97437,97438,97439,97440,97441,97442,97443,97444,97445,97450,97451,97452,97453,97454,97455,97462,97463,97464,97465,97487,97488,97489,97490,97491,97492,97537,97538,97539,97540,97554,97555,97556,97557,97558,97559,97575,97576,97577,97578,97579,97580,97581,97582,97595,97596,97597,97598,97600,97601,97602,97603,97605,97606,97607,97608,97610,97611,97612,97613,97615,97616,97617,97618,97620,97621,97622,97623,97625,97626,97627,97628,97630,97631,97632,97633,97635,97636,97637,97638,97640,97641,97642,97643,97650,97651,97652,97653,97655,97656,97657,97658,97659,97660,97661,97662,97663,97664,97665,97666,97667,97668,97673,97674,97675,97676,97677,97678,97685,97686,97687,97688,97692,97693,97694,97695,97696,97697,97704,97705,97706,97707,97708,97709,97710,97711,97713,97714,97715,97716,97718,97719,97720,97721,97723,97724,97725,97726,97728,97729,97730,97731,97733,97734,97735,97736,97738,97739,97740,97741,97849,97850,97851,97852,97853,97854,97855,97856,97857,97858,97859,97860,97861,97862,97863,97864,97865,97866,97867,97868,97869,97870,97871,97872,97880,97881,97882,97883,97891,97892,97893,97894,97895,97896,97903,97904,97905,97906,97913,97914,97915,97916,97917,97918,97919,97920,97921,97922,97923,97924,97933,97934,97935,97936,97937,97938,97954,97955,97956,97957,97959,97960,97961,97962,97964,97965,97966,97967,97969,97970,97971,97972,97977,97978,97979,97980,97982,97983,97984,97985,97986,97987,97988,97989,97994,97995,97996,97997,97998,97999,98009,98010,98011,98012,98037,98038,98039,98040,98041,98042,98128,98129,98130,98131,98194,98195,98196,98197,98198,98199,98200,98201,98216,98217,98218,98219,98220,98221,98240,98241,98242,98243,98244,98245,98246,98247,98248,98249,98254,98255,98260,98261,98271,98272,98285,98286,98301,98304,98306,98385,98386,107127,107128,127841,127842,127843,127844,131072,131073,133192,133193,133194,133195,133196,133197,133198,133271,133272,133345,133346,133389,133390,133391,133392,133395,133396,133397,133398,133399,133400,133401,133402,133403,133404,133406,133407,133413,133414,133419,133420,133495,133496,133499,133500,133505,133506,133507,133508,133509,133510,133511,133512,133513,133514,133515,133516,133522,133523,133524,133525,133546,133547,133570,133571,133572,133573,133584,133585,133628,133629,133680,133681,134000,134001,134108,134109,134110,134111,134119,134120,134125,134126,134138,134139,134153,134154,134197,134198,134211,134212,134257,134258,134269,134270,134377,134378,134694,134695,134793,134794,134831,134832,134861,134862,134881,134882,134890,134891,135075,135076,135218,135219,135229,135230,135247,135248,135257,135258,135392,135393,135399,135400,135429,135430,135460,135461,135650,135651,135657,135658,135664,135665,135670,135671,135675,135676,135689,135690,135698,135699,135703,135704,135734,135735,135752,135753,135783,135784,135838,135839,135856,135857,135887,135888,135907,135908,135916,135917,135924,135925,135948,135949,135998,135999,136010,136011,136015,136016,136020,136021,136826,136827,136831,136832,136836,136837,136853,136854,136858,136859,136865,136866,136870,136871,136876,136877,136882,136883,136887,136888,136893,136894,136899,136900,136904,136905,136909,136910,136915,136916,136921,136922,136927,136928,136933,136934,136938,136939,136944,136945,136950,136951,136955,136956,136961,136962,136967,136968,136972,136973,136978,136979,136984,136985,136989,136990,136995,136996,137001,137002,137006,137007,137012,137013,137018,137019,137023,137024,137029,137030,137035,137036,137040,137041,137046,137047,137052,137053,137057,137058,137063,137064,137069,137070,137074,137075,137080,137081,137086,137087,137091,137092,137097,137098,137103,137104,137108,137109,137114,137115,137120,137121,137128,137129,137136,137137,137150,137151,137156,137157,137179,137180,137209,137210,137252,137253,137289,137290,137296,137297,137355,137356,137360,137361,137379,137380,137384,137385,137558,137559,137728,137729,137735,137736,137750,137751,137760,137761,137770,137771,137780,137781,137790,137791,137800,137801,137810,137811,137820,137821,137830,137831,137840,137841,137855,137856,137865,137866,137875,137876,137890,137891,137900,137901,137910,137911,137920,137921,137930,137931,137940,137941,137950,137951,137960,137961,137970,137971,137980,137981,137995,137996,138005,138006,138015,138016,138025,138026,138035,138036,138050,138051,138060,138061,138070,138071,138080,138081,138095,138096,138105,138106,138115,138116,138125,138126,138140,138141,138150,138151,138160,138161,138170,138171,138180,138181,138195,138196,138205,138206,138215,138216,138225,138226,138235,138236,138245,138246,138254,138255,138269,138270,138279,138280,138289,138290,138299,138300,138309,138310,138319,138320,138329,138330,138339,138340,138349,138350,138364,138365,138374,138375,138384,138385,138394,138395,138404,138405,138414,138415,138424,138425,138434,138435,138444,138445,138454,138455,138464,138465,138479,138480,138489,138490,138499,138500,138509,138510,138519,138520,138529,138530,138544,138545,138554,138555,138564,138565,138574,138575,138584,138585,138594,138595,138604,138605,138614,138615,138629,138630,138639,138640,138649,138650,138659,138660,138674,138675,138689,138690,138699,138700,138709,138710,138719,138720,138729,138730,138739,138740,138749,138750,138764,138765,138774,138775,138784,138785,138794,138795,138809,138810,138819,138820,138829,138830,138839,138840,138854,138855,138864,138865,138874,138875,138884,138885,138899,138900,138909,138910,138919,138920,138929,138930,138939,138940,138949,138950,138964,138965,138974,138975,138984,138985,138994,138995,139004,139005,139019,139020,139029,139030,139039,139040,139049,139050,139059,139060,139069,139070,139084,139085,139094,139095,139104,139105,139114,139115,139124,139125,139134,139135,139149,139150,139159,139160,139169,139170,139179,139180,139189,139190,139199,139200,139209,139210,139219,139220,139229,139230,139239,139240,139254,139255,139264,139265,139274,139275,139284,139285,139294,139295,139304,139305,139314,139315,139324,139325,139334,139335,139344,139345,139359,139360,139369,139370,139379,139380,139389,139390,139399,139400,139409,139410,139419,139420,139429,139430,139439,139440,139449,139450,139464,139465,139474,139475,139484,139485,139494,139495,139504,139505,139514,139515,139524,139525,139534,139535,139544,139545,139559,139560,139569,139570,139579,139580,139589,139590,139599,139600,139609,139610,139619,139620,139629,139630,139639,139640,139649,139650,139659,139660,139669,139670,139679,139680,139694,139695,139704,139705,139714,139715,139724,139725,139734,139735,139744,139745,139754,139755,139764,139765,139774,139775,139789,139790,139799,139800,139809,139810,139819,139820,139829,139830,139839,139840,139849,139850,139864,139865,139874,139875,139884,139885,139894,139895,139904,139905,139914,139915,139924,139925,139934,139935,139944,139945,139954,139955,139964,139965,139974,139975,139989,139990,139999,140000,140009,140010,140019,140020,140029,140030,140039,140040,140049,140050,140059,140060,140069,140070,140079,140080,140094,140095,140104,140105,140114,140115,140124,140125,140139,140140,140149,140150,140159,140160,140169,140170,140179,140180,140189,140190,140199,140200,140209,140210,140219,140220,140229,140230,140244,140245,140254,140255,140264,140265,140274,140275,140284,140285,140294,140295,140304,140305,140314,140315,140329,140330,140339,140340,140349,140350,140359,140360,140369,140370,140379,140380,140394,140395,140404,140405,140414,140415,140424,140425,140434,140435,140444,140445,140454,140455,140464,140465,140474,140475,140489,140490,140499,140500,140509,140510,140519,140520,140630,140631,140694,140695,140699,140700,140706,140707,140720,140721,140727,140728,140786,140787,140808,140809,140822,140823,140855,140856,140949,140950,140964,140965,140974,140975,141019,141020,141052,141053,141063,141064,141070,141071,141076,141077,141190,141191,141210,141211,141216,141217,141893,141894,141913,141914,141926,141927,141940,141941,142004,142005,142010,142011,142017,142018,142024,142025,142032,142033,142102,142103,142111,142112,142119,142120,142139,142140,142161,142162,142431,142432,147254,147255,147284,147285,147292,147293,147407,147408,147430,147431,147481,147482,147511,147512,147536,147537,147550,147551,147556,147557,147570,147571,147575,147576,147611,147612,147618,147619,147625,147626,147634,147635,147644,147645,147653,147654,147710,147711,147729,147730,147761,147762,147767,147768,147779,147780,147835,147836,147848,147849,148017,148018,148032,148033,148108,148109,148167,148168,148189,148190,148234,148235,148249,148250,148254,148255,148260,148261,148266,148267,148272,148273,148278,148279,148284,148285,148292,148293,148595,148596,148600,148601,148628,148629,148642,148643,148647,148648,148654,148655,148664,148665,148696,148697,148702,148703,148709,148710,148717,148718,148725,148726,148730,148731,148735,148736,148742,148743,148749,148750,148756,148757,148762,148763,148768,148769,148774,148775,148780,148781,148786,148787,148791,148792,148797,148798,148803,148804,148809,148810,148815,148816,148822,148823,148828,148829,148834,148835,148839,148840,148846,148847,148853,148854,148860,148861,148870,148871,148880,148881,148888,148889,148894,148895,148908,148909,148918,148919,148924,148925,148932,148933,148938,148939,148944,148945,148950,148951,148957,148958,148962,148963,148968,148969,148974,148975,148979,148980,148985,148986,148991,148992,148996,148997,149001,149002,149007,149008,149012,149013,149020,149021,149027,149028,149032,149033,149038,149039,149181,149182,149194,149195,149223,149224,149245,149246,149284,149285,149426,149427,149460,149461,149467,149468,149603,149604,149622,149623,149659,149660,149669,149670,149691,149692,149941,149942,149983,149984,149996,149997,150004,150005,150011,150012,150017,150018,150026,150027,150033,150034,150065,150066,150083,150084,150098,150099,150107,150108,150114,150115,150121,150122,150140,150141,150172,150173,150197,150198,150246,150247,150258,150259,150265,150266,150280,150281,150283,150284,150291,150292,150301,150302,150308,150309,150334,150335,150354,150355,150372,150373,150402,150403,150407,150408,150412,150413,150417,150418,150431,150432,150434,150435,152900,152901,152903,152904,152908,152909,152914,152915,152921,152922,152977,152978,152980,152981,153392,153393,154612,154613,154620,154621,154799,154800,154804,154805,154812,154813,154856,154857,154878,154879,154883,154884,154888,154889,154898,154899,154904,154905,154910,154911,154919,154920,154954,154955,154959,154960,154970,154971,154978,154979,154983,154984,154989,154990,155170,155171,155207,155208,155215,155216,155234,155235,155261,155262,155290,155291,155298,155299,155304,155305,155316,155317,155337,155338,155344,155345,155373,155374,155413,155414,155421,155422,155433,155434,155499,155500,155518,155519,155552,155553,155557,155558,155566,155567,155572,155573,155582,155583,155588,155589,155618,155619,155758,155759,155769,155770,155774,155775,155780,155781,155800,155801,155802,155803,155814,155815,155823,155824,155835,155836,155843,155844,155850,155851,155857,155858,155869,155870,155876,155877,155884,155885,155892,155893,155899,155900,155904,155905,155911,155912,155916,155917,155924,155925,155931,155932,155943,155944,155948,155949,155957,155958,155965,155966,155972,155973,155979,155980,155987,155988,155995,155996,156001,156002,156008,156009,156015,156016,156017,156018,156055,156056,156093,156094,156133,156134,156136,156137,156138,156139,156140,156141,156153,156154,156155,156156,156157,156158,156179,156180,156191,156192,156193,156194,156195,156196,156320,156321,156322,156323,156329,156330,156331,156332,156333,156334,156335,156336,156337,156338,156339,156340,156348,156349,156354,156355,156361,156362,156368,156369,156381,156382,156388,156389,156409,156410,156421,156422,156423,156424,156474,156475,156481,156482,156487,156488,156542,156543,156548,156549,156554,156555,156561,156562,156567,156568,156742,156743,156750,156751,156756,156757,156762,156763,156769,156770,156779,156780,156834,156835,156847,156848,156877,156878,156883,156884,156890,156891,156896,156897,156904,156905,156910,156911,156916,156917,156922,156923,156999,157000,157018,157019,157094,157095,157100,157101,157107,157108,157313,163840,163842,163921,163922,179493,179496,179501,179502,179519,179520,179549,179550,196608,196609,229376,229378,229457,229458,233895,233896,233901,233909,233910,233915,233916,233923,233924,233927,233928,233931,233932,233934,233935,233937,233938,233940,233941,233944,233945,233948,233949,233951,233952,233957,233958,233976,233977,233996,233997,234002,234003,234007,234008,234013,234014,234025,234026,234032,234033,234046,234047,234057,234058,234060,234061,234068,234069,234073,234074,234079,234080,234084,234085,234088,234089,234092,234093,234097,234098,234102,234103,234106,234107,234111,234112,234115,234116,234120,234121,234125,234126,234138,234139,234144,234145,234146,234147,235177,235178,235184,235185,235193,235194,235200,235201,235204,235205,235206,235207,235214,235215,235233,235234,235239,235240,235244,235245,235250,235251,235262,235263,235269,235270,235275,235276,235286,235287,235292,235293,235294,235295,235296,235297,235298,235299,235303,235304,235306,235307,235313,235314,235317,235318,235325,235326,235329,235330,235359,235360,235373,235374,235398,235399,235435,235436,235462,235463,235507,235508,235532,235533,235544,235545,235573,235574,235600,235601,235613,235614,235615,235616,235619,235620,235622,235623,235625,235626,235629,235630,235633,235634,235641,235642,235644,235645,235649,235650,235659,235660,235664,235665,235670,235671,235675,235676,235681,235682,235685,235686,235690,235691,235695,235696,235703,235704,235709,235710,235713,235714,235719,235720,235724,235725,235728,235729,235734,235735,235739,235740,235744,235745,235748,235749,235755,235756,235759,235760,235765,235766,235772,235773,235776,235777,235787,235788,235790,235791,235796,235797,235801,235802,235817,235818,235821,235822,235826,235827,235832,235833,235838,235839,235844,235845,235850,235851,235855,235856,235858,235859,235865,235866,235872,235873,235879,235880,235884,235885,235892,235893,235899,235900,235903,235904,235910,235911,235917,235918,235925,235926,235929,235930,235940,235941,235944,235945,235956,235957,235960,235961,235965,235966,235971,235972,235977,235978,235984,235985,235993,235994,235999,236000,236007,236008,236012,236013,236015,236016,236020,236021,236026,236027,236032,236033,236040,236041,236048,236049,236052,236053,236061,236062,236063,236064,236071,236072,236079,236080,236086,236087,236143,236144,236166,236167,236174,236175,236184,236185,236192,236193,236201,236202,236214,236215,236226,236227,236237,236238,236250,236251,236259,236260,236268,236269,236279,236280,236290,236291,236299,236300,236308,236309,236313,236314,236321,236322,236332,236333,236343,236344,236354,236355,236406,236407,236415,236416,236424,236425,236440,236441,236445,236446,236459,236460,236468,236469,236512,236513,236526,236527,236543,236544,236553,236554,236562,236563,236591,236592,236604,236605,236615,236616,236629,236630,236640,236641,236652,236653,236667,236668,236679,236680,236697,236698,236704,236705,236709,236710,236751,236752,236762,236763,236772,236773,236784,236785,236795,236796,236803,236804,236813,236814,236825,236826,236837,236838,236842,236843,236852,236853,236862,236863,236873,236874,236881,236882,236890,236891,236905,236906,236934,236935,236945,236946,236968,236969,237027,237028,237042,237043,237048,237049,237093,237094,237107,237108,237123,237124,237139,237140,237146,237147,237160,237161,237172,237173,237185,237186,237194,237195,237206,237207,237217,237218,237245,237246,237324,237325,237336,237337,237347,237348,237359,237360,237368,237369,237391,237392,237399,237400,237410,237411,237420,237421,237439,237440,237483,237484,237493,237494,237506,237507,237514,237515,237551,237552,237598,237599,237607,237608,237613,237614,237622,237623,237643,237644,237650,237651,237652,237653,237655,237656,237658,237659,237661,237662,237665,237666,237668,237669,237671,237672,237674,237675,237678,237679,237683,237684,237686,237687,237690,237691,237693,237694,237696,237697,237699,237700,237703,237704,237706,237707,237710,237711,237712,237713,237714,237715,237777,237778,237779,237780,237781,237782,237792,237793,237794,237795,237836,237837,237838,237839,237840,237841,238060,238061,238062,238063,238096,238097,238098,238099,238100,238101,238336,238337,238338,238339,238347,238348,238349,238350,238351,238352,238365,238366,238367,238368,238400,238401,238402,238403,238404,238405,238412,238413,238414,238415,239023,239024,239025,239026,239027,239028,239112,239113,239114,239115,239181,239182,239183,239184,239185,239186,239280,239281,239282,239283,241238,241239,241240,241241,241242,241243,242768,242769,242770,242771,242918,242919,242920,242921,242922,242923,243613,243614,243615,243616,243623,243624,243625,243626,243627,243628,243629,243630,243631,243632,243644,243645,243646,243647,246235,246236,246237,246238,246239,246240,248604,248605,248606,248607,249090,249091,249092,249093,249094,249095,249990,249991,249992,249993,250150,250151,250152,250153,250154,250155,250431,250432,250433,250434,251417,251418,251419,251420,251421,251422,252008,252009,252010,252011,252017,252018,252019,252020,252021,252022,252032,252033,252034,252035,252048,252049,252050,252051,252052,252053,252087,252088,252089,252090,252096,252097,252098,252099,252100,252101,252112,252113,252114,252115,252175,252176,252177,252178,252179,252180,252186,252187,252188,252189,252423,252424,252425,252426,252427,252428,252585,252586,252587,252588,252635,252636,252637,252638,252639,252640,252773,252774,252775,252776,254455,254456,254457,254458,254459,254460,255767,255768,255769,255770,255780,255781,255782,255783,255784,255785,255836,255837,255838,255839,255875,255876,255877,255878,255879,255880,255881,255882,255883,255884,255940,255941,255942,255943,255948,255949,255950,255951,255952,255953,255976,255977,255978,255979,257393,257394,257395,257396,257397,257398,258447,258448,258449,258450,258453,258454,258455,258456,258457,258458,258471,258472,258473,258474,258480,258481,258482,258483,258484,258485,258501,258502,258503,258504,258516,258517,258518,258519,258520,258521,258601,258602,258603,258604,258605,258606,258607,258608,261006,261007,261008,261009,261052,261053,261054,261055,261056,261057,261174,261175,261176,261177,261180,261181,261182,261183,261184,261185,261196,261197,261198,261199,261260,261261,261262,261263,261264,261265,261354,261355,261356,261357,261490,261491,261492,261493,261494,261495,261741,261742,261743,261744,261755,261756,261757,261758,261759,261760,261803,261804,261805,261806,261807,261808,261809,261810,261811,261812,261813,261814,261815,261816,261817,261818,261819,261820,261821,261822,261823,261824,261825,261826,261827,261828,261829,261830,261839,261840,261841,261842,261843,261844,261853,261854,261855,261856,261913,261914,261915,261916,261917,261918,262093,262094,262095,262096,262097,262098,262099,262100,262101,262102,262126,262127,262128,262129,262130,262131,262141,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,305533,305534,305535,305536,305556,305557,305578,305579,305580,305581,305598,305599,305606,305607,305608,305609,305636,305637,305665,305666,305667,305668,305719,305720,305753,305754,305755,305756,305772,305773,305782,305783,305784,305785,305795,305796,305899,305900,305901,305902,305933,305934,306479,306480,306481,306482,308207,308208,308223,308224,308225,308226,308241,308242,308308,308309,308310,308311,308324,308325,308335,308336,308337,308338,308360,308361,308464,308465,308466,308467,308514,308515,308521,308522,308523,308524,308532,308533,308542,308543,308544,308545,308567,308568,308578,308579,308580,308581,308591,308592,308624,308625,308626,308627,308653,308654,313384,313385,313386,313387,313388,313389,313390,313391,314050,314051,314415,314416,314417,314418,314419,314420,314438,314439,314440,314441,314468,314469,314470,314471,314472,314473,314553,314554,314555,314556,314557,314558,314559,314560,314567,314568,314569,314570,314571,314572") == "880e89fd3f32733d8c22ffdfcac908f4c0703182" || 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", "3728,1,80,81,306,2816,2817,2818,2819,2820,2821,2822,2823,2832,2833,2940,2941,2942,2943,3036,3037,3045,3046,3047,3048,3049,3050,3051,3052,3069,3070,3089,3090,3091,3092,3102,3103,3157,3158,3159,3160,3172,3173,3177,3178,3179,3180,3190,3191,3205,3206,3207,3208,3244,3245,3254,3255,3256,3257,3300,3301,3327,3328,3329,3330,3382,3383,3392,3393,3394,3395,3433,3434,3446,3447,3448,3449,3450,3451,3530,3531,3532,3533,3766,3767,3768,6947,6948,6949,8091,8092,8316,8317,9156,9157,9161,9162,9163,9164,9173,9174,9182,9183,9184,9185,9213,9214,9279,9280,9281,9282,9350,9351,9359,9360,9361,9362,9391,9392,9398,9399,9400,9401,9422,9423,9427,9428,9429,9430,9438,9439,9445,9446,9447,9448,9466,9467,9472,9473,9474,9475,9487,9488,9493,9494,9495,9496,9511,9512,9518,9519,9520,9521,9534,9535,9536,9537,9538,9539,9617,9618,9619,9620,9621,9622,9634,9635,9639,9640,9641,9642,9643,9644,9703,9704,9705,9706,9707,9708,9773,9774,9775,9776,9777,9778,21728,21730,21992,21993,23004,23005,23048,23049,23079,23080,23408,23409,24377,24411,24985,24986,25091,25092,25384,25385,25597,25598,26518,26521,26522,26523,26589,26590,26591,26592,26758,26759,26903,26904,27077,27078,27249,27250,27610,27611,27628,27870,27873,27874,27883,27884,27885,27886,27903,27904,27925,27926,28035,28036,28074,28075,28078,28079,28090,28091,28557,28558,28559,28560,28582,28583,28604,28605,28844,28845,29957,29958,30254,30255,30373,30374,30851,30852,30853,30854,31379,31380,31395,31396,31427,31428,31489,31490,31496,31497,32764,32765,32768,32770,32849,32850,65536,65537,87742,87743,87744,87891,87892,87893,87894,87895,87896,88764,88765,88766,88767,88768,88769,88770,88771,88805,88806,88813,88814,88815,88816,88817,88818,88819,88820,88852,88853,88907,88908,88943,88944,88945,88946,88947,88948,88949,88950,88951,88952,88953,88954,88955,88956,88957,88958,88959,88960,88961,88962,88963,88964,88965,88966,88967,88968,88969,88970,88971,88972,88973,88974,88975,88976,88977,88978,88979,88980,89136,89137,89245,89246,89389,89390,89491,89492,89682,89683,89842,89843,89906,89907,90055,90056,90260,90261,90355,90356,90510,90511,90573,90574,90575,90576,90577,90578,90579,90580,90581,90582,90583,90584,90585,90586,90595,90596,90597,90598,90600,90601,90602,90603,90630,90631,90632,90633,90659,90660,90661,90662,90689,90690,90691,90692,90704,90705,90706,90707,90715,90716,90717,90718,90722,90723,90724,90725,90731,90732,90733,90734,90735,90736,90737,90738,90740,90741,90742,90743,90752,90753,90754,90755,90756,90757,90758,90759,90760,90761,90762,90763,90764,90765,90766,90767,90845,90846,90847,90848,90849,90850,90851,90852,90853,90854,90855,90856,90857,90858,90859,90860,90862,90863,90864,90865,90866,90867,90868,90869,90905,90906,90907,90908,90944,90945,90946,90947,90948,90949,90950,90951,90952,90953,90954,90955,90956,90957,90959,90960,90962,90963,90964,90965,90966,90967,90968,90969,90970,90971,90972,90973,90974,90975,90976,90977,90978,90979,90980,90981,90982,90983,96404,96405,96406,96407,96408,96409,96410,96411,96412,96413,96414,96415,96419,96420,96423,96424,96428,96429,96433,96434,96438,96439,96440,96441,96442,96443,96446,96447,96448,96449,96450,96451,96452,96453,96454,96455,96456,96457,96458,96459,96460,96461,96462,96463,96464,96465,96466,96467,96468,96469,96470,96471,96472,96473,96474,96475,96476,96477,96478,96479,96480,96481,96482,96483,96484,96485,96486,96487,96488,96489,96490,96491,96492,96493,96494,96495,96496,96497,96498,96499,96500,96501,96502,96503,96504,96505,96506,96507,96508,96509,96510,96511,96512,96513,96514,96515,96516,96517,96518,96519,96520,96521,96522,96523,96527,96528,96533,96534,96535,96536,96659,96660,96661,96662,96663,96664,96665,96666,96667,96668,96669,96670,96671,96672,96674,96675,96676,96677,96679,96680,96681,96682,96684,96685,96686,96687,96689,96690,96691,96692,96694,96695,96696,96697,96699,96700,96701,96702,96704,96705,96706,96707,96708,96709,96710,96711,96712,96713,96714,96715,96721,96722,96723,96724,96725,96726,96732,96733,96734,96735,96816,96817,96818,96819,96820,96821,97207,97208,97209,97210,97212,97213,97214,97215,97216,97217,97223,97224,97225,97226,97231,97232,97233,97234,97235,97236,97253,97254,97255,97256,97286,97287,97288,97289,97290,97291,97310,97311,97312,97313,97323,97324,97325,97326,97327,97328,97351,97352,97353,97354,97355,97356,97357,97358,97360,97361,97362,97363,97367,97368,97369,97370,97372,97373,97374,97375,97377,97378,97379,97380,97382,97383,97384,97385,97387,97388,97389,97390,97392,97393,97394,97395,97397,97398,97399,97400,97403,97404,97405,97406,97408,97409,97410,97411,97414,97415,97416,97417,97419,97420,97421,97422,97432,97433,97434,97435,97436,97437,97438,97439,97440,97441,97442,97443,97444,97445,97450,97451,97452,97453,97454,97455,97462,97463,97464,97465,97487,97488,97489,97490,97491,97492,97537,97538,97539,97540,97554,97555,97556,97557,97558,97559,97575,97576,97577,97578,97579,97580,97581,97582,97595,97596,97597,97598,97600,97601,97602,97603,97605,97606,97607,97608,97610,97611,97612,97613,97615,97616,97617,97618,97620,97621,97622,97623,97625,97626,97627,97628,97630,97631,97632,97633,97635,97636,97637,97638,97640,97641,97642,97643,97650,97651,97652,97653,97655,97656,97657,97658,97659,97660,97661,97662,97663,97664,97665,97666,97667,97668,97673,97674,97675,97676,97677,97678,97685,97686,97687,97688,97692,97693,97694,97695,97696,97697,97704,97705,97706,97707,97708,97709,97710,97711,97713,97714,97715,97716,97718,97719,97720,97721,97723,97724,97725,97726,97728,97729,97730,97731,97733,97734,97735,97736,97738,97739,97740,97741,97849,97850,97851,97852,97853,97854,97855,97856,97857,97858,97859,97860,97861,97862,97863,97864,97865,97866,97867,97868,97869,97870,97871,97872,97880,97881,97882,97883,97891,97892,97893,97894,97895,97896,97903,97904,97905,97906,97913,97914,97915,97916,97917,97918,97919,97920,97921,97922,97923,97924,97933,97934,97935,97936,97937,97938,97954,97955,97956,97957,97959,97960,97961,97962,97964,97965,97966,97967,97969,97970,97971,97972,97977,97978,97979,97980,97982,97983,97984,97985,97986,97987,97988,97989,97994,97995,97996,97997,97998,97999,98009,98010,98011,98012,98037,98038,98039,98040,98041,98042,98128,98129,98130,98131,98194,98195,98196,98197,98198,98199,98200,98201,98216,98217,98218,98219,98220,98221,98240,98241,98242,98243,98244,98245,98246,98247,98248,98249,98254,98255,98260,98261,98271,98272,98285,98286,98301,98304,98306,98385,98386,107127,107128,127841,127842,127843,127844,131072,131073,133192,133193,133194,133195,133196,133197,133198,133271,133272,133345,133346,133389,133390,133391,133392,133395,133396,133397,133398,133399,133400,133401,133402,133403,133404,133406,133407,133413,133414,133419,133420,133495,133496,133499,133500,133505,133506,133507,133508,133509,133510,133511,133512,133513,133514,133515,133516,133522,133523,133524,133525,133546,133547,133570,133571,133572,133573,133584,133585,133628,133629,133680,133681,134000,134001,134108,134109,134110,134111,134119,134120,134125,134126,134138,134139,134153,134154,134197,134198,134211,134212,134257,134258,134269,134270,134377,134378,134694,134695,134793,134794,134831,134832,134861,134862,134881,134882,134890,134891,135075,135076,135218,135219,135229,135230,135247,135248,135257,135258,135392,135393,135399,135400,135429,135430,135460,135461,135650,135651,135657,135658,135664,135665,135670,135671,135675,135676,135689,135690,135698,135699,135703,135704,135734,135735,135752,135753,135783,135784,135838,135839,135856,135857,135887,135888,135907,135908,135916,135917,135924,135925,135948,135949,135998,135999,136010,136011,136015,136016,136020,136021,136826,136827,136831,136832,136836,136837,136853,136854,136858,136859,136865,136866,136870,136871,136876,136877,136882,136883,136887,136888,136893,136894,136899,136900,136904,136905,136909,136910,136915,136916,136921,136922,136927,136928,136933,136934,136938,136939,136944,136945,136950,136951,136955,136956,136961,136962,136967,136968,136972,136973,136978,136979,136984,136985,136989,136990,136995,136996,137001,137002,137006,137007,137012,137013,137018,137019,137023,137024,137029,137030,137035,137036,137040,137041,137046,137047,137052,137053,137057,137058,137063,137064,137069,137070,137074,137075,137080,137081,137086,137087,137091,137092,137097,137098,137103,137104,137108,137109,137114,137115,137120,137121,137128,137129,137136,137137,137150,137151,137156,137157,137179,137180,137209,137210,137252,137253,137289,137290,137296,137297,137355,137356,137360,137361,137379,137380,137384,137385,137558,137559,137728,137729,137735,137736,137750,137751,137760,137761,137770,137771,137780,137781,137790,137791,137800,137801,137810,137811,137820,137821,137830,137831,137840,137841,137855,137856,137865,137866,137875,137876,137890,137891,137900,137901,137910,137911,137920,137921,137930,137931,137940,137941,137950,137951,137960,137961,137970,137971,137980,137981,137995,137996,138005,138006,138015,138016,138025,138026,138035,138036,138050,138051,138060,138061,138070,138071,138080,138081,138095,138096,138105,138106,138115,138116,138125,138126,138140,138141,138150,138151,138160,138161,138170,138171,138180,138181,138195,138196,138205,138206,138215,138216,138225,138226,138235,138236,138245,138246,138254,138255,138269,138270,138279,138280,138289,138290,138299,138300,138309,138310,138319,138320,138329,138330,138339,138340,138349,138350,138364,138365,138374,138375,138384,138385,138394,138395,138404,138405,138414,138415,138424,138425,138434,138435,138444,138445,138454,138455,138464,138465,138479,138480,138489,138490,138499,138500,138509,138510,138519,138520,138529,138530,138544,138545,138554,138555,138564,138565,138574,138575,138584,138585,138594,138595,138604,138605,138614,138615,138629,138630,138639,138640,138649,138650,138659,138660,138674,138675,138689,138690,138699,138700,138709,138710,138719,138720,138729,138730,138739,138740,138749,138750,138764,138765,138774,138775,138784,138785,138794,138795,138809,138810,138819,138820,138829,138830,138839,138840,138854,138855,138864,138865,138874,138875,138884,138885,138899,138900,138909,138910,138919,138920,138929,138930,138939,138940,138949,138950,138964,138965,138974,138975,138984,138985,138994,138995,139004,139005,139019,139020,139029,139030,139039,139040,139049,139050,139059,139060,139069,139070,139084,139085,139094,139095,139104,139105,139114,139115,139124,139125,139134,139135,139149,139150,139159,139160,139169,139170,139179,139180,139189,139190,139199,139200,139209,139210,139219,139220,139229,139230,139239,139240,139254,139255,139264,139265,139274,139275,139284,139285,139294,139295,139304,139305,139314,139315,139324,139325,139334,139335,139344,139345,139359,139360,139369,139370,139379,139380,139389,139390,139399,139400,139409,139410,139419,139420,139429,139430,139439,139440,139449,139450,139464,139465,139474,139475,139484,139485,139494,139495,139504,139505,139514,139515,139524,139525,139534,139535,139544,139545,139559,139560,139569,139570,139579,139580,139589,139590,139599,139600,139609,139610,139619,139620,139629,139630,139639,139640,139649,139650,139659,139660,139669,139670,139679,139680,139694,139695,139704,139705,139714,139715,139724,139725,139734,139735,139744,139745,139754,139755,139764,139765,139774,139775,139789,139790,139799,139800,139809,139810,139819,139820,139829,139830,139839,139840,139849,139850,139864,139865,139874,139875,139884,139885,139894,139895,139904,139905,139914,139915,139924,139925,139934,139935,139944,139945,139954,139955,139964,139965,139974,139975,139989,139990,139999,140000,140009,140010,140019,140020,140029,140030,140039,140040,140049,140050,140059,140060,140069,140070,140079,140080,140094,140095,140104,140105,140114,140115,140124,140125,140139,140140,140149,140150,140159,140160,140169,140170,140179,140180,140189,140190,140199,140200,140209,140210,140219,140220,140229,140230,140244,140245,140254,140255,140264,140265,140274,140275,140284,140285,140294,140295,140304,140305,140314,140315,140329,140330,140339,140340,140349,140350,140359,140360,140369,140370,140379,140380,140394,140395,140404,140405,140414,140415,140424,140425,140434,140435,140444,140445,140454,140455,140464,140465,140474,140475,140489,140490,140499,140500,140509,140510,140519,140520,140630,140631,140694,140695,140699,140700,140706,140707,140720,140721,140727,140728,140786,140787,140808,140809,140822,140823,140855,140856,140949,140950,140964,140965,140974,140975,141019,141020,141052,141053,141063,141064,141070,141071,141076,141077,141190,141191,141210,141211,141216,141217,141893,141894,141913,141914,141926,141927,141940,141941,142004,142005,142010,142011,142017,142018,142024,142025,142032,142033,142102,142103,142111,142112,142119,142120,142139,142140,142161,142162,142431,142432,147254,147255,147284,147285,147292,147293,147407,147408,147430,147431,147481,147482,147511,147512,147536,147537,147550,147551,147556,147557,147570,147571,147575,147576,147611,147612,147618,147619,147625,147626,147634,147635,147644,147645,147653,147654,147710,147711,147729,147730,147761,147762,147767,147768,147779,147780,147835,147836,147848,147849,148017,148018,148032,148033,148108,148109,148167,148168,148189,148190,148234,148235,148249,148250,148254,148255,148260,148261,148266,148267,148272,148273,148278,148279,148284,148285,148292,148293,148595,148596,148600,148601,148628,148629,148642,148643,148647,148648,148654,148655,148664,148665,148696,148697,148702,148703,148709,148710,148717,148718,148725,148726,148730,148731,148735,148736,148742,148743,148749,148750,148756,148757,148762,148763,148768,148769,148774,148775,148780,148781,148786,148787,148791,148792,148797,148798,148803,148804,148809,148810,148815,148816,148822,148823,148828,148829,148834,148835,148839,148840,148846,148847,148853,148854,148860,148861,148870,148871,148880,148881,148888,148889,148894,148895,148908,148909,148918,148919,148924,148925,148932,148933,148938,148939,148944,148945,148950,148951,148957,148958,148962,148963,148968,148969,148974,148975,148979,148980,148985,148986,148991,148992,148996,148997,149001,149002,149007,149008,149012,149013,149020,149021,149027,149028,149032,149033,149038,149039,149181,149182,149194,149195,149223,149224,149245,149246,149284,149285,149426,149427,149460,149461,149467,149468,149603,149604,149622,149623,149659,149660,149669,149670,149691,149692,149941,149942,149983,149984,149996,149997,150004,150005,150011,150012,150017,150018,150026,150027,150033,150034,150065,150066,150083,150084,150098,150099,150107,150108,150114,150115,150121,150122,150140,150141,150172,150173,150197,150198,150246,150247,150258,150259,150265,150266,150280,150281,150283,150284,150291,150292,150301,150302,150308,150309,150334,150335,150354,150355,150372,150373,150402,150403,150407,150408,150412,150413,150417,150418,150431,150432,150434,150435,152900,152901,152903,152904,152908,152909,152914,152915,152921,152922,152977,152978,152980,152981,153392,153393,154612,154613,154620,154621,154799,154800,154804,154805,154812,154813,154856,154857,154878,154879,154883,154884,154888,154889,154898,154899,154904,154905,154910,154911,154919,154920,154954,154955,154959,154960,154970,154971,154978,154979,154983,154984,154989,154990,155170,155171,155207,155208,155215,155216,155234,155235,155261,155262,155290,155291,155298,155299,155304,155305,155316,155317,155337,155338,155344,155345,155373,155374,155413,155414,155421,155422,155433,155434,155499,155500,155518,155519,155552,155553,155557,155558,155566,155567,155572,155573,155582,155583,155588,155589,155618,155619,155758,155759,155769,155770,155774,155775,155780,155781,155800,155801,155802,155803,155814,155815,155823,155824,155835,155836,155843,155844,155850,155851,155857,155858,155869,155870,155876,155877,155884,155885,155892,155893,155899,155900,155904,155905,155911,155912,155916,155917,155924,155925,155931,155932,155943,155944,155948,155949,155957,155958,155965,155966,155972,155973,155979,155980,155987,155988,155995,155996,156001,156002,156008,156009,156015,156016,156017,156018,156055,156056,156093,156094,156133,156134,156136,156137,156138,156139,156140,156141,156153,156154,156155,156156,156157,156158,156179,156180,156191,156192,156193,156194,156195,156196,156320,156321,156322,156323,156329,156330,156331,156332,156333,156334,156335,156336,156337,156338,156339,156340,156348,156349,156354,156355,156361,156362,156368,156369,156381,156382,156388,156389,156409,156410,156421,156422,156423,156424,156474,156475,156481,156482,156487,156488,156542,156543,156548,156549,156554,156555,156561,156562,156567,156568,156742,156743,156750,156751,156756,156757,156762,156763,156769,156770,156779,156780,156834,156835,156847,156848,156877,156878,156883,156884,156890,156891,156896,156897,156904,156905,156910,156911,156916,156917,156922,156923,156999,157000,157018,157019,157094,157095,157100,157101,157107,157108,157313,163840,163842,163921,163922,179493,179496,179501,179502,179519,179520,179549,179550,196608,196609,229376,229378,229457,229458,233895,233896,233901,233909,233910,233915,233916,233923,233924,233927,233928,233931,233932,233934,233935,233937,233938,233940,233941,233944,233945,233948,233949,233951,233952,233957,233958,233976,233977,233996,233997,234002,234003,234007,234008,234013,234014,234025,234026,234032,234033,234046,234047,234057,234058,234060,234061,234068,234069,234073,234074,234079,234080,234084,234085,234088,234089,234092,234093,234097,234098,234102,234103,234106,234107,234111,234112,234115,234116,234120,234121,234125,234126,234138,234139,234144,234145,234146,234147,235177,235178,235184,235185,235193,235194,235200,235201,235204,235205,235206,235207,235214,235215,235233,235234,235239,235240,235244,235245,235250,235251,235262,235263,235269,235270,235275,235276,235286,235287,235292,235293,235294,235295,235296,235297,235298,235299,235303,235304,235306,235307,235313,235314,235317,235318,235325,235326,235329,235330,235359,235360,235373,235374,235398,235399,235435,235436,235462,235463,235507,235508,235532,235533,235544,235545,235573,235574,235600,235601,235613,235614,235615,235616,235619,235620,235622,235623,235625,235626,235629,235630,235633,235634,235641,235642,235644,235645,235649,235650,235659,235660,235664,235665,235670,235671,235675,235676,235681,235682,235685,235686,235690,235691,235695,235696,235703,235704,235709,235710,235713,235714,235719,235720,235724,235725,235728,235729,235734,235735,235739,235740,235744,235745,235748,235749,235755,235756,235759,235760,235765,235766,235772,235773,235776,235777,235787,235788,235790,235791,235796,235797,235801,235802,235817,235818,235821,235822,235826,235827,235832,235833,235838,235839,235844,235845,235850,235851,235855,235856,235858,235859,235865,235866,235872,235873,235879,235880,235884,235885,235892,235893,235899,235900,235903,235904,235910,235911,235917,235918,235925,235926,235929,235930,235940,235941,235944,235945,235956,235957,235960,235961,235965,235966,235971,235972,235977,235978,235984,235985,235993,235994,235999,236000,236007,236008,236012,236013,236015,236016,236020,236021,236026,236027,236032,236033,236040,236041,236048,236049,236052,236053,236061,236062,236063,236064,236071,236072,236079,236080,236086,236087,236143,236144,236166,236167,236174,236175,236184,236185,236192,236193,236201,236202,236214,236215,236226,236227,236237,236238,236250,236251,236259,236260,236268,236269,236279,236280,236290,236291,236299,236300,236308,236309,236313,236314,236321,236322,236332,236333,236343,236344,236354,236355,236406,236407,236415,236416,236424,236425,236440,236441,236445,236446,236459,236460,236468,236469,236512,236513,236526,236527,236543,236544,236553,236554,236562,236563,236591,236592,236604,236605,236615,236616,236629,236630,236640,236641,236652,236653,236667,236668,236679,236680,236697,236698,236704,236705,236709,236710,236751,236752,236762,236763,236772,236773,236784,236785,236795,236796,236803,236804,236813,236814,236825,236826,236837,236838,236842,236843,236852,236853,236862,236863,236873,236874,236881,236882,236890,236891,236905,236906,236934,236935,236945,236946,236968,236969,237027,237028,237042,237043,237048,237049,237093,237094,237107,237108,237123,237124,237139,237140,237146,237147,237160,237161,237172,237173,237185,237186,237194,237195,237206,237207,237217,237218,237245,237246,237324,237325,237336,237337,237347,237348,237359,237360,237368,237369,237391,237392,237399,237400,237410,237411,237420,237421,237439,237440,237483,237484,237493,237494,237506,237507,237514,237515,237551,237552,237598,237599,237607,237608,237613,237614,237622,237623,237643,237644,237650,237651,237652,237653,237655,237656,237658,237659,237661,237662,237665,237666,237668,237669,237671,237672,237674,237675,237678,237679,237683,237684,237686,237687,237690,237691,237693,237694,237696,237697,237699,237700,237703,237704,237706,237707,237710,237711,237712,237713,237714,237715,237777,237778,237779,237780,237781,237782,237792,237793,237794,237795,237836,237837,237838,237839,237840,237841,238060,238061,238062,238063,238096,238097,238098,238099,238100,238101,238336,238337,238338,238339,238347,238348,238349,238350,238351,238352,238365,238366,238367,238368,238400,238401,238402,238403,238404,238405,238412,238413,238414,238415,239023,239024,239025,239026,239027,239028,239112,239113,239114,239115,239181,239182,239183,239184,239185,239186,239280,239281,239282,239283,241238,241239,241240,241241,241242,241243,242768,242769,242770,242771,242918,242919,242920,242921,242922,242923,243613,243614,243615,243616,243623,243624,243625,243626,243627,243628,243629,243630,243631,243632,243644,243645,243646,243647,246235,246236,246237,246238,246239,246240,248604,248605,248606,248607,249090,249091,249092,249093,249094,249095,249990,249991,249992,249993,250150,250151,250152,250153,250154,250155,250431,250432,250433,250434,251417,251418,251419,251420,251421,251422,252008,252009,252010,252011,252017,252018,252019,252020,252021,252022,252032,252033,252034,252035,252048,252049,252050,252051,252052,252053,252087,252088,252089,252090,252096,252097,252098,252099,252100,252101,252112,252113,252114,252115,252175,252176,252177,252178,252179,252180,252186,252187,252188,252189,252423,252424,252425,252426,252427,252428,252585,252586,252587,252588,252635,252636,252637,252638,252639,252640,252773,252774,252775,252776,254455,254456,254457,254458,254459,254460,255767,255768,255769,255770,255780,255781,255782,255783,255784,255785,255836,255837,255838,255839,255875,255876,255877,255878,255879,255880,255881,255882,255883,255884,255940,255941,255942,255943,255948,255949,255950,255951,255952,255953,255976,255977,255978,255979,257393,257394,257395,257396,257397,257398,258447,258448,258449,258450,258453,258454,258455,258456,258457,258458,258471,258472,258473,258474,258480,258481,258482,258483,258484,258485,258501,258502,258503,258504,258516,258517,258518,258519,258520,258521,258601,258602,258603,258604,258605,258606,258607,258608,261006,261007,261008,261009,261052,261053,261054,261055,261056,261057,261174,261175,261176,261177,261180,261181,261182,261183,261184,261185,261196,261197,261198,261199,261260,261261,261262,261263,261264,261265,261354,261355,261356,261357,261490,261491,261492,261493,261494,261495,261741,261742,261743,261744,261755,261756,261757,261758,261759,261760,261803,261804,261805,261806,261807,261808,261809,261810,261811,261812,261813,261814,261815,261816,261817,261818,261819,261820,261821,261822,261823,261824,261825,261826,261827,261828,261829,261830,261839,261840,261841,261842,261843,261844,261853,261854,261855,261856,261913,261914,261915,261916,261917,261918,262093,262094,262095,262096,262097,262098,262099,262100,262101,262102,262126,262127,262128,262129,262130,262131,262141,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,305533,305534,305535,305536,305556,305557,305578,305579,305580,305581,305598,305599,305606,305607,305608,305609,305636,305637,305665,305666,305667,305668,305719,305720,305753,305754,305755,305756,305772,305773,305782,305783,305784,305785,305795,305796,305899,305900,305901,305902,305933,305934,306479,306480,306481,306482,308207,308208,308223,308224,308225,308226,308241,308242,308308,308309,308310,308311,308324,308325,308335,308336,308337,308338,308360,308361,308464,308465,308466,308467,308514,308515,308521,308522,308523,308524,308532,308533,308542,308543,308544,308545,308567,308568,308578,308579,308580,308581,308591,308592,308624,308625,308626,308627,308653,308654,313384,313385,313386,313387,313388,313389,313390,313391,314050,314051,314415,314416,314417,314418,314419,314420,314438,314439,314440,314441,314468,314469,314470,314471,314472,314473,314553,314554,314555,314556,314557,314558,314559,314560,314567,314568,314569,314570,314571,314572") && 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:16276776:a417ab20794bbf94cafc8e708488bb0be9d1e651:16276776:2a9ecee64e1a237835c97b4ce2850963401fa611",
            "-", 2a9ecee64e1a237835c97b4ce2850963401fa611, 16276776,
            a417ab20794bbf94cafc8e708488bb0be9d1e651,
            package_extract_file("patch/boot.img.p")) ||
    abort("E3008: Failed to apply patch to EMMC:/dev/block/bootdevice/by-name/boot:16276776:a417ab20794bbf94cafc8e708488bb0be9d1e651:16276776:2a9ecee64e1a237835c97b4ce2850963401fa611");

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

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