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/146/brian03240122: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/146/brian03240122: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/146/brian03240122: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:311c6c1add41bbff8fbff9b13f50058a85e4cff2:16276776:2a9ecee64e1a237835c97b4ce2850963401fa611") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:16276776:311c6c1add41bbff8fbff9b13f50058a85e4cff2:16276776:2a9ecee64e1a237835c97b4ce2850963401fa611\" has unexpected contents.");
apply_patch_space(23207936) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/bootdevice/by-name/system", "3736,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,87752,87753,87900,87901,88769,88770,88771,88772,88773,88774,88775,88776,88810,88811,88818,88819,88820,88821,88822,88823,88824,88825,88857,88858,88912,88913,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,88981,88982,88983,88984,88985,89141,89142,89250,89251,89394,89395,89496,89497,89687,89688,89847,89848,89911,89912,90060,90061,90265,90266,90360,90361,90515,90516,90578,90579,90580,90581,90582,90583,90584,90585,90586,90587,90588,90589,90590,90591,90600,90601,90602,90603,90605,90606,90607,90608,90635,90636,90637,90638,90664,90665,90666,90667,90694,90695,90696,90697,90709,90710,90711,90712,90720,90721,90722,90723,90727,90728,90729,90730,90736,90737,90738,90739,90740,90741,90742,90743,90745,90746,90747,90748,90757,90758,90759,90760,90761,90762,90763,90764,90765,90766,90767,90768,90769,90770,90771,90772,90850,90851,90852,90853,90854,90855,90856,90857,90858,90859,90860,90861,90862,90863,90864,90865,90867,90868,90869,90870,90871,90872,90873,90874,90910,90911,90912,90913,90949,90950,90951,90952,90953,90954,90955,90956,90957,90958,90959,90960,90961,90962,90964,90965,90967,90968,90969,90970,90971,90972,90973,90974,90975,90976,90977,90978,90979,90980,90981,90982,90983,90984,90985,90986,90987,90988,96409,96410,96411,96412,96413,96414,96415,96416,96417,96418,96419,96420,96424,96425,96428,96429,96433,96434,96438,96439,96443,96444,96445,96446,96447,96448,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,96524,96525,96526,96527,96528,96532,96533,96538,96539,96540,96541,96664,96665,96666,96667,96668,96669,96670,96671,96672,96673,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,96709,96710,96711,96712,96713,96714,96715,96716,96717,96718,96719,96720,96726,96727,96728,96729,96730,96731,96737,96738,96739,96740,96821,96822,96823,96824,96825,96826,97212,97213,97214,97215,97217,97218,97219,97220,97221,97222,97228,97229,97230,97231,97236,97237,97238,97239,97240,97241,97258,97259,97260,97261,97291,97292,97293,97294,97295,97296,97315,97316,97317,97318,97328,97329,97330,97331,97332,97333,97356,97357,97358,97359,97360,97361,97362,97363,97365,97366,97367,97368,97372,97373,97374,97375,97377,97378,97379,97380,97382,97383,97384,97385,97387,97388,97389,97390,97392,97393,97394,97395,97397,97398,97399,97400,97402,97403,97404,97405,97408,97409,97410,97411,97413,97414,97415,97416,97419,97420,97421,97422,97424,97425,97426,97427,97437,97438,97439,97440,97441,97442,97443,97444,97445,97446,97447,97448,97449,97450,97455,97456,97457,97458,97459,97460,97467,97468,97469,97470,97492,97493,97494,97495,97496,97497,97542,97543,97544,97545,97559,97560,97561,97562,97563,97564,97580,97581,97582,97583,97584,97585,97586,97587,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,97645,97646,97647,97648,97655,97656,97657,97658,97660,97661,97662,97663,97664,97665,97666,97667,97668,97669,97670,97671,97672,97673,97678,97679,97680,97681,97682,97683,97690,97691,97692,97693,97697,97698,97699,97700,97701,97702,97709,97710,97711,97712,97713,97714,97715,97716,97718,97719,97720,97721,97723,97724,97725,97726,97728,97729,97730,97731,97733,97734,97735,97736,97738,97739,97740,97741,97743,97744,97745,97746,97854,97855,97856,97857,97858,97859,97860,97861,97862,97863,97864,97865,97866,97867,97868,97869,97870,97871,97872,97873,97874,97875,97876,97877,97885,97886,97887,97888,97896,97897,97898,97899,97900,97901,97908,97909,97910,97911,97918,97919,97920,97921,97922,97923,97924,97925,97926,97927,97928,97929,97938,97939,97940,97941,97942,97943,97959,97960,97961,97962,97964,97965,97966,97967,97969,97970,97971,97972,97974,97975,97976,97977,97982,97983,97984,97985,97987,97988,97989,97990,97991,97992,97993,97994,97999,98000,98001,98002,98003,98004,98014,98015,98016,98017,98042,98043,98044,98045,98046,98047,98133,98134,98135,98136,98199,98200,98201,98202,98203,98204,98205,98206,98221,98222,98223,98224,98225,98226,98245,98246,98247,98248,98249,98250,98251,98252,98253,98254,98259,98260,98265,98266,98276,98277,98290,98291,98301,98304,98306,98385,98386,107127,107128,127841,127842,127843,127844,131072,131073,132841,132856,132857,132885,132886,132923,132924,133196,133197,133198,133199,133200,133201,133202,133203,133276,133277,133350,133351,133394,133395,133396,133397,133400,133401,133402,133403,133404,133405,133406,133407,133408,133409,133411,133412,133418,133419,133424,133425,133500,133501,133504,133505,133510,133511,133512,133513,133514,133515,133516,133517,133518,133519,133520,133521,133527,133528,133529,133530,133551,133552,133575,133576,133577,133578,133589,133590,133633,133634,133685,133686,134005,134006,134113,134114,134115,134116,134124,134125,134130,134131,134143,134144,134158,134159,134202,134203,134216,134217,134262,134263,134274,134275,134382,134383,134699,134700,134798,134799,134836,134837,134866,134867,134886,134887,134895,134896,135080,135081,135223,135224,135234,135235,135252,135253,135262,135263,135397,135398,135404,135405,135434,135435,135465,135466,135655,135656,135662,135663,135669,135670,135675,135676,135680,135681,135694,135695,135703,135704,135708,135709,135739,135740,135757,135758,135788,135789,135843,135844,135861,135862,135892,135893,135912,135913,135921,135922,135929,135930,135953,135954,136003,136004,136015,136016,136020,136021,136025,136026,136831,136832,136836,136837,136841,136842,136858,136859,136863,136864,136870,136871,136875,136876,136881,136882,136887,136888,136892,136893,136898,136899,136904,136905,136909,136910,136914,136915,136920,136921,136926,136927,136932,136933,136938,136939,136943,136944,136949,136950,136955,136956,136960,136961,136966,136967,136972,136973,136977,136978,136983,136984,136989,136990,136994,136995,137000,137001,137006,137007,137011,137012,137017,137018,137023,137024,137028,137029,137034,137035,137040,137041,137045,137046,137051,137052,137057,137058,137062,137063,137068,137069,137074,137075,137079,137080,137085,137086,137091,137092,137096,137097,137102,137103,137108,137109,137113,137114,137119,137120,137125,137126,137133,137134,137141,137142,137155,137156,137161,137162,137184,137185,137214,137215,137257,137258,137294,137295,137301,137302,137360,137361,137365,137366,137384,137385,137389,137390,137563,137564,137733,137734,137740,137741,137755,137756,137765,137766,137775,137776,137785,137786,137795,137796,137805,137806,137815,137816,137825,137826,137835,137836,137845,137846,137860,137861,137870,137871,137880,137881,137895,137896,137905,137906,137915,137916,137925,137926,137935,137936,137945,137946,137955,137956,137965,137966,137975,137976,137985,137986,138000,138001,138010,138011,138020,138021,138030,138031,138040,138041,138055,138056,138065,138066,138075,138076,138085,138086,138100,138101,138110,138111,138120,138121,138130,138131,138145,138146,138155,138156,138165,138166,138175,138176,138185,138186,138200,138201,138210,138211,138220,138221,138230,138231,138240,138241,138250,138251,138259,138260,138274,138275,138284,138285,138294,138295,138304,138305,138314,138315,138324,138325,138334,138335,138344,138345,138354,138355,138369,138370,138379,138380,138389,138390,138399,138400,138409,138410,138419,138420,138429,138430,138439,138440,138449,138450,138459,138460,138469,138470,138484,138485,138494,138495,138504,138505,138514,138515,138524,138525,138534,138535,138549,138550,138559,138560,138569,138570,138579,138580,138589,138590,138599,138600,138609,138610,138619,138620,138634,138635,138644,138645,138654,138655,138664,138665,138679,138680,138694,138695,138704,138705,138714,138715,138724,138725,138734,138735,138744,138745,138754,138755,138769,138770,138779,138780,138789,138790,138799,138800,138814,138815,138824,138825,138834,138835,138844,138845,138859,138860,138869,138870,138879,138880,138889,138890,138904,138905,138914,138915,138924,138925,138934,138935,138944,138945,138954,138955,138969,138970,138979,138980,138989,138990,138999,139000,139009,139010,139024,139025,139034,139035,139044,139045,139054,139055,139064,139065,139074,139075,139089,139090,139099,139100,139109,139110,139119,139120,139129,139130,139139,139140,139154,139155,139164,139165,139174,139175,139184,139185,139194,139195,139204,139205,139214,139215,139224,139225,139234,139235,139244,139245,139259,139260,139269,139270,139279,139280,139289,139290,139299,139300,139309,139310,139319,139320,139329,139330,139339,139340,139349,139350,139364,139365,139374,139375,139384,139385,139394,139395,139404,139405,139414,139415,139424,139425,139434,139435,139444,139445,139454,139455,139469,139470,139479,139480,139489,139490,139499,139500,139509,139510,139519,139520,139529,139530,139539,139540,139549,139550,139564,139565,139574,139575,139584,139585,139594,139595,139604,139605,139614,139615,139624,139625,139634,139635,139644,139645,139654,139655,139664,139665,139674,139675,139684,139685,139699,139700,139709,139710,139719,139720,139729,139730,139739,139740,139749,139750,139759,139760,139769,139770,139779,139780,139794,139795,139804,139805,139814,139815,139824,139825,139834,139835,139844,139845,139854,139855,139869,139870,139879,139880,139889,139890,139899,139900,139909,139910,139919,139920,139929,139930,139939,139940,139949,139950,139959,139960,139969,139970,139979,139980,139994,139995,140004,140005,140014,140015,140024,140025,140034,140035,140044,140045,140054,140055,140064,140065,140074,140075,140084,140085,140099,140100,140109,140110,140119,140120,140129,140130,140144,140145,140154,140155,140164,140165,140174,140175,140184,140185,140194,140195,140204,140205,140214,140215,140224,140225,140234,140235,140249,140250,140259,140260,140269,140270,140279,140280,140289,140290,140299,140300,140309,140310,140319,140320,140334,140335,140344,140345,140354,140355,140364,140365,140374,140375,140384,140385,140399,140400,140409,140410,140419,140420,140429,140430,140439,140440,140449,140450,140459,140460,140469,140470,140479,140480,140494,140495,140504,140505,140514,140515,140524,140525,140635,140636,140699,140700,140704,140705,140711,140712,140725,140726,140732,140733,140791,140792,140813,140814,140827,140828,140860,140861,140954,140955,140969,140970,140979,140980,141024,141025,141057,141058,141068,141069,141075,141076,141081,141082,141195,141196,141215,141216,141221,141222,141898,141899,141918,141919,141931,141932,141945,141946,142009,142010,142015,142016,142022,142023,142029,142030,142037,142038,142107,142108,142116,142117,142124,142125,142144,142145,142166,142167,142436,142437,147259,147260,147289,147290,147297,147298,147412,147413,147435,147436,147486,147487,147516,147517,147541,147542,147555,147556,147561,147562,147575,147576,147580,147581,147616,147617,147623,147624,147630,147631,147639,147640,147649,147650,147658,147659,147715,147716,147734,147735,147766,147767,147772,147773,147784,147785,147840,147841,147853,147854,148022,148023,148037,148038,148113,148114,148172,148173,148194,148195,148239,148240,148254,148255,148259,148260,148265,148266,148271,148272,148277,148278,148283,148284,148289,148290,148297,148298,148600,148601,148605,148606,148633,148634,148647,148648,148652,148653,148659,148660,148669,148670,148701,148702,148707,148708,148714,148715,148722,148723,148730,148731,148735,148736,148740,148741,148747,148748,148754,148755,148761,148762,148767,148768,148773,148774,148779,148780,148785,148786,148791,148792,148796,148797,148802,148803,148808,148809,148814,148815,148820,148821,148827,148828,148833,148834,148839,148840,148844,148845,148851,148852,148858,148859,148865,148866,148875,148876,148885,148886,148893,148894,148899,148900,148913,148914,148923,148924,148929,148930,148937,148938,148943,148944,148949,148950,148955,148956,148962,148963,148967,148968,148973,148974,148979,148980,148984,148985,148990,148991,148996,148997,149001,149002,149006,149007,149012,149013,149017,149018,149025,149026,149032,149033,149037,149038,149043,149044,149186,149187,149199,149200,149228,149229,149250,149251,149289,149290,149431,149432,149465,149466,149472,149473,149608,149609,149627,149628,149664,149665,149674,149675,149696,149697,149946,149947,149988,149989,150001,150002,150009,150010,150016,150017,150022,150023,150031,150032,150038,150039,150070,150071,150088,150089,150103,150104,150112,150113,150119,150120,150126,150127,150145,150146,150177,150178,150202,150203,150251,150252,150263,150264,150270,150271,150285,150286,150288,150289,150296,150297,150306,150307,150313,150314,150339,150340,150359,150360,150377,150378,150407,150408,150412,150413,150417,150418,150422,150423,150436,150437,150439,150440,152905,152906,152908,152909,152913,152914,152919,152920,152926,152927,152982,152983,152985,152986,153397,153398,154617,154618,154625,154626,154804,154805,154809,154810,154817,154818,154861,154862,154883,154884,154888,154889,154893,154894,154903,154904,154909,154910,154915,154916,154924,154925,154959,154960,154964,154965,154975,154976,154983,154984,154988,154989,154994,154995,155175,155176,155212,155213,155220,155221,155239,155240,155266,155267,155295,155296,155303,155304,155309,155310,155321,155322,155342,155343,155349,155350,155378,155379,155418,155419,155426,155427,155438,155439,155504,155505,155523,155524,155557,155558,155562,155563,155571,155572,155577,155578,155587,155588,155593,155594,155623,155624,155763,155764,155774,155775,155779,155780,155785,155786,155805,155806,155807,155808,155819,155820,155828,155829,155840,155841,155848,155849,155855,155856,155862,155863,155874,155875,155881,155882,155889,155890,155897,155898,155904,155905,155909,155910,155916,155917,155921,155922,155929,155930,155936,155937,155948,155949,155953,155954,155962,155963,155970,155971,155977,155978,155984,155985,155992,155993,156000,156001,156006,156007,156013,156014,156020,156021,156022,156023,156060,156061,156098,156099,156138,156139,156141,156142,156143,156144,156145,156146,156158,156159,156160,156161,156162,156163,156184,156185,156196,156197,156198,156199,156200,156201,156325,156326,156327,156328,156334,156335,156336,156337,156338,156339,156340,156341,156342,156343,156344,156345,156353,156354,156359,156360,156366,156367,156373,156374,156386,156387,156393,156394,156414,156415,156426,156427,156428,156429,156479,156480,156486,156487,156492,156493,156547,156548,156553,156554,156559,156560,156566,156567,156572,156573,156747,156748,156755,156756,156761,156762,156767,156768,156774,156775,156784,156785,156839,156840,156852,156853,156882,156883,156888,156889,156895,156896,156901,156902,156909,156910,156915,156916,156921,156922,156927,156928,157004,157005,157023,157024,157099,157100,157105,157106,157112,157113,157318,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,233958,233959,233977,233978,233998,233999,234004,234005,234009,234010,234015,234016,234027,234028,234034,234035,234048,234049,234059,234060,234063,234064,234072,234073,234077,234078,234083,234084,234089,234090,234093,234094,234097,234098,234102,234103,234107,234108,234111,234112,234116,234117,234120,234121,234125,234126,234130,234131,234143,234144,234149,234150,234151,234152,235182,235183,235189,235190,235198,235199,235205,235206,235209,235210,235211,235212,235219,235220,235238,235239,235244,235245,235249,235250,235255,235256,235267,235268,235274,235275,235280,235281,235291,235292,235297,235298,235299,235300,235301,235302,235303,235304,235308,235309,235311,235312,235318,235319,235322,235323,235330,235331,235334,235335,235364,235365,235378,235379,235403,235404,235440,235441,235467,235468,235512,235513,235537,235538,235549,235550,235578,235579,235605,235606,235618,235619,235620,235621,235624,235625,235627,235628,235630,235631,235634,235635,235638,235639,235646,235647,235649,235650,235654,235655,235664,235665,235669,235670,235675,235676,235680,235681,235686,235687,235690,235691,235695,235696,235700,235701,235708,235709,235714,235715,235718,235719,235724,235725,235729,235730,235733,235734,235739,235740,235744,235745,235749,235750,235753,235754,235760,235761,235764,235765,235770,235771,235777,235778,235781,235782,235792,235793,235795,235796,235801,235802,235806,235807,235822,235823,235826,235827,235831,235832,235837,235838,235843,235844,235849,235850,235855,235856,235860,235861,235863,235864,235870,235871,235877,235878,235884,235885,235889,235890,235897,235898,235904,235905,235908,235909,235915,235916,235922,235923,235930,235931,235934,235935,235945,235946,235949,235950,235961,235962,235965,235966,235970,235971,235976,235977,235982,235983,235989,235990,235998,235999,236004,236005,236012,236013,236017,236018,236020,236021,236025,236026,236031,236032,236037,236038,236045,236046,236053,236054,236057,236058,236066,236067,236068,236069,236076,236077,236084,236085,236091,236092,236148,236149,236171,236172,236179,236180,236189,236190,236197,236198,236206,236207,236219,236220,236231,236232,236242,236243,236255,236256,236264,236265,236273,236274,236284,236285,236295,236296,236304,236305,236313,236314,236318,236319,236326,236327,236337,236338,236348,236349,236359,236360,236411,236412,236420,236421,236429,236430,236445,236446,236450,236451,236464,236465,236473,236474,236517,236518,236531,236532,236548,236549,236558,236559,236567,236568,236596,236597,236609,236610,236620,236621,236634,236635,236645,236646,236657,236658,236672,236673,236684,236685,236702,236703,236709,236710,236714,236715,236756,236757,236767,236768,236777,236778,236789,236790,236800,236801,236808,236809,236818,236819,236830,236831,236842,236843,236847,236848,236857,236858,236867,236868,236878,236879,236886,236887,236895,236896,236910,236911,236939,236940,236950,236951,236973,236974,237032,237033,237047,237048,237053,237054,237098,237099,237112,237113,237128,237129,237144,237145,237151,237152,237165,237166,237177,237178,237190,237191,237199,237200,237211,237212,237222,237223,237250,237251,237329,237330,237341,237342,237352,237353,237364,237365,237373,237374,237396,237397,237404,237405,237415,237416,237425,237426,237444,237445,237488,237489,237498,237499,237511,237512,237519,237520,237556,237557,237603,237604,237612,237613,237618,237619,237627,237628,237648,237649,237655,237656,237657,237658,237660,237661,237663,237664,237666,237667,237670,237671,237673,237674,237676,237677,237679,237680,237683,237684,237688,237689,237691,237692,237695,237696,237698,237699,237701,237702,237704,237705,237708,237709,237711,237712,237715,237716,237717,237718,237719,237720,237782,237783,237784,237785,237786,237787,237797,237798,237799,237800,237841,237842,237843,237844,237845,237846,238065,238066,238067,238068,238101,238102,238103,238104,238105,238106,238341,238342,238343,238344,238352,238353,238354,238355,238356,238357,238370,238371,238372,238373,238405,238406,238407,238408,238409,238410,238417,238418,238419,238420,239028,239029,239030,239031,239032,239033,239117,239118,239119,239120,239186,239187,239188,239189,239190,239191,239285,239286,239287,239288,241243,241244,241245,241246,241247,241248,242773,242774,242775,242776,242923,242924,242925,242926,242927,242928,243618,243619,243620,243621,243628,243629,243630,243631,243632,243633,243634,243635,243636,243637,243649,243650,243651,243652,246240,246241,246242,246243,246244,246245,248609,248610,248611,248612,249095,249096,249097,249098,249099,249100,249995,249996,249997,249998,250155,250156,250157,250158,250159,250160,250436,250437,250438,250439,251422,251423,251424,251425,251426,251427,252013,252014,252015,252016,252022,252023,252024,252025,252026,252027,252037,252038,252039,252040,252053,252054,252055,252056,252057,252058,252092,252093,252094,252095,252101,252102,252103,252104,252105,252106,252117,252118,252119,252120,252180,252181,252182,252183,252184,252185,252191,252192,252193,252194,252428,252429,252430,252431,252432,252433,252590,252591,252592,252593,252640,252641,252642,252643,252644,252645,252778,252779,252780,252781,254460,254461,254462,254463,254464,254465,255772,255773,255774,255775,255785,255786,255787,255788,255789,255790,255841,255842,255843,255844,255880,255881,255882,255883,255884,255885,255886,255887,255888,255889,255945,255946,255947,255948,255953,255954,255955,255956,255957,255958,255981,255982,255983,255984,257398,257399,257400,257401,257402,257403,258452,258453,258454,258455,258458,258459,258460,258461,258462,258463,258476,258477,258478,258479,258485,258486,258487,258488,258489,258490,258506,258507,258508,258509,258521,258522,258523,258524,258525,258526,258606,258607,258608,258609,258610,258611,258612,258613,261011,261012,261013,261014,261057,261058,261059,261060,261061,261062,261179,261180,261181,261182,261185,261186,261187,261188,261189,261190,261201,261202,261203,261204,261265,261266,261267,261268,261269,261270,261359,261360,261361,261362,261495,261496,261497,261498,261499,261500,261746,261747,261748,261749,261760,261761,261762,261763,261764,261765,261808,261809,261810,261811,261812,261813,261814,261815,261816,261817,261818,261819,261820,261821,261822,261823,261824,261825,261826,261827,261828,261829,261830,261831,261832,261833,261834,261835,261844,261845,261846,261847,261848,261849,261858,261859,261860,261861,261918,261919,261920,261921,261922,261923,262098,262099,262100,262101,262102,262103,262104,262105,262106,262107,262131,262132,262133,262134,262135,262136,262137,262138,262139,262140,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") == "4bfd2b281befa55406df7820e1563904e9966c27" || 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", "3736,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,87752,87753,87900,87901,88769,88770,88771,88772,88773,88774,88775,88776,88810,88811,88818,88819,88820,88821,88822,88823,88824,88825,88857,88858,88912,88913,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,88981,88982,88983,88984,88985,89141,89142,89250,89251,89394,89395,89496,89497,89687,89688,89847,89848,89911,89912,90060,90061,90265,90266,90360,90361,90515,90516,90578,90579,90580,90581,90582,90583,90584,90585,90586,90587,90588,90589,90590,90591,90600,90601,90602,90603,90605,90606,90607,90608,90635,90636,90637,90638,90664,90665,90666,90667,90694,90695,90696,90697,90709,90710,90711,90712,90720,90721,90722,90723,90727,90728,90729,90730,90736,90737,90738,90739,90740,90741,90742,90743,90745,90746,90747,90748,90757,90758,90759,90760,90761,90762,90763,90764,90765,90766,90767,90768,90769,90770,90771,90772,90850,90851,90852,90853,90854,90855,90856,90857,90858,90859,90860,90861,90862,90863,90864,90865,90867,90868,90869,90870,90871,90872,90873,90874,90910,90911,90912,90913,90949,90950,90951,90952,90953,90954,90955,90956,90957,90958,90959,90960,90961,90962,90964,90965,90967,90968,90969,90970,90971,90972,90973,90974,90975,90976,90977,90978,90979,90980,90981,90982,90983,90984,90985,90986,90987,90988,96409,96410,96411,96412,96413,96414,96415,96416,96417,96418,96419,96420,96424,96425,96428,96429,96433,96434,96438,96439,96443,96444,96445,96446,96447,96448,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,96524,96525,96526,96527,96528,96532,96533,96538,96539,96540,96541,96664,96665,96666,96667,96668,96669,96670,96671,96672,96673,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,96709,96710,96711,96712,96713,96714,96715,96716,96717,96718,96719,96720,96726,96727,96728,96729,96730,96731,96737,96738,96739,96740,96821,96822,96823,96824,96825,96826,97212,97213,97214,97215,97217,97218,97219,97220,97221,97222,97228,97229,97230,97231,97236,97237,97238,97239,97240,97241,97258,97259,97260,97261,97291,97292,97293,97294,97295,97296,97315,97316,97317,97318,97328,97329,97330,97331,97332,97333,97356,97357,97358,97359,97360,97361,97362,97363,97365,97366,97367,97368,97372,97373,97374,97375,97377,97378,97379,97380,97382,97383,97384,97385,97387,97388,97389,97390,97392,97393,97394,97395,97397,97398,97399,97400,97402,97403,97404,97405,97408,97409,97410,97411,97413,97414,97415,97416,97419,97420,97421,97422,97424,97425,97426,97427,97437,97438,97439,97440,97441,97442,97443,97444,97445,97446,97447,97448,97449,97450,97455,97456,97457,97458,97459,97460,97467,97468,97469,97470,97492,97493,97494,97495,97496,97497,97542,97543,97544,97545,97559,97560,97561,97562,97563,97564,97580,97581,97582,97583,97584,97585,97586,97587,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,97645,97646,97647,97648,97655,97656,97657,97658,97660,97661,97662,97663,97664,97665,97666,97667,97668,97669,97670,97671,97672,97673,97678,97679,97680,97681,97682,97683,97690,97691,97692,97693,97697,97698,97699,97700,97701,97702,97709,97710,97711,97712,97713,97714,97715,97716,97718,97719,97720,97721,97723,97724,97725,97726,97728,97729,97730,97731,97733,97734,97735,97736,97738,97739,97740,97741,97743,97744,97745,97746,97854,97855,97856,97857,97858,97859,97860,97861,97862,97863,97864,97865,97866,97867,97868,97869,97870,97871,97872,97873,97874,97875,97876,97877,97885,97886,97887,97888,97896,97897,97898,97899,97900,97901,97908,97909,97910,97911,97918,97919,97920,97921,97922,97923,97924,97925,97926,97927,97928,97929,97938,97939,97940,97941,97942,97943,97959,97960,97961,97962,97964,97965,97966,97967,97969,97970,97971,97972,97974,97975,97976,97977,97982,97983,97984,97985,97987,97988,97989,97990,97991,97992,97993,97994,97999,98000,98001,98002,98003,98004,98014,98015,98016,98017,98042,98043,98044,98045,98046,98047,98133,98134,98135,98136,98199,98200,98201,98202,98203,98204,98205,98206,98221,98222,98223,98224,98225,98226,98245,98246,98247,98248,98249,98250,98251,98252,98253,98254,98259,98260,98265,98266,98276,98277,98290,98291,98301,98304,98306,98385,98386,107127,107128,127841,127842,127843,127844,131072,131073,132841,132856,132857,132885,132886,132923,132924,133196,133197,133198,133199,133200,133201,133202,133203,133276,133277,133350,133351,133394,133395,133396,133397,133400,133401,133402,133403,133404,133405,133406,133407,133408,133409,133411,133412,133418,133419,133424,133425,133500,133501,133504,133505,133510,133511,133512,133513,133514,133515,133516,133517,133518,133519,133520,133521,133527,133528,133529,133530,133551,133552,133575,133576,133577,133578,133589,133590,133633,133634,133685,133686,134005,134006,134113,134114,134115,134116,134124,134125,134130,134131,134143,134144,134158,134159,134202,134203,134216,134217,134262,134263,134274,134275,134382,134383,134699,134700,134798,134799,134836,134837,134866,134867,134886,134887,134895,134896,135080,135081,135223,135224,135234,135235,135252,135253,135262,135263,135397,135398,135404,135405,135434,135435,135465,135466,135655,135656,135662,135663,135669,135670,135675,135676,135680,135681,135694,135695,135703,135704,135708,135709,135739,135740,135757,135758,135788,135789,135843,135844,135861,135862,135892,135893,135912,135913,135921,135922,135929,135930,135953,135954,136003,136004,136015,136016,136020,136021,136025,136026,136831,136832,136836,136837,136841,136842,136858,136859,136863,136864,136870,136871,136875,136876,136881,136882,136887,136888,136892,136893,136898,136899,136904,136905,136909,136910,136914,136915,136920,136921,136926,136927,136932,136933,136938,136939,136943,136944,136949,136950,136955,136956,136960,136961,136966,136967,136972,136973,136977,136978,136983,136984,136989,136990,136994,136995,137000,137001,137006,137007,137011,137012,137017,137018,137023,137024,137028,137029,137034,137035,137040,137041,137045,137046,137051,137052,137057,137058,137062,137063,137068,137069,137074,137075,137079,137080,137085,137086,137091,137092,137096,137097,137102,137103,137108,137109,137113,137114,137119,137120,137125,137126,137133,137134,137141,137142,137155,137156,137161,137162,137184,137185,137214,137215,137257,137258,137294,137295,137301,137302,137360,137361,137365,137366,137384,137385,137389,137390,137563,137564,137733,137734,137740,137741,137755,137756,137765,137766,137775,137776,137785,137786,137795,137796,137805,137806,137815,137816,137825,137826,137835,137836,137845,137846,137860,137861,137870,137871,137880,137881,137895,137896,137905,137906,137915,137916,137925,137926,137935,137936,137945,137946,137955,137956,137965,137966,137975,137976,137985,137986,138000,138001,138010,138011,138020,138021,138030,138031,138040,138041,138055,138056,138065,138066,138075,138076,138085,138086,138100,138101,138110,138111,138120,138121,138130,138131,138145,138146,138155,138156,138165,138166,138175,138176,138185,138186,138200,138201,138210,138211,138220,138221,138230,138231,138240,138241,138250,138251,138259,138260,138274,138275,138284,138285,138294,138295,138304,138305,138314,138315,138324,138325,138334,138335,138344,138345,138354,138355,138369,138370,138379,138380,138389,138390,138399,138400,138409,138410,138419,138420,138429,138430,138439,138440,138449,138450,138459,138460,138469,138470,138484,138485,138494,138495,138504,138505,138514,138515,138524,138525,138534,138535,138549,138550,138559,138560,138569,138570,138579,138580,138589,138590,138599,138600,138609,138610,138619,138620,138634,138635,138644,138645,138654,138655,138664,138665,138679,138680,138694,138695,138704,138705,138714,138715,138724,138725,138734,138735,138744,138745,138754,138755,138769,138770,138779,138780,138789,138790,138799,138800,138814,138815,138824,138825,138834,138835,138844,138845,138859,138860,138869,138870,138879,138880,138889,138890,138904,138905,138914,138915,138924,138925,138934,138935,138944,138945,138954,138955,138969,138970,138979,138980,138989,138990,138999,139000,139009,139010,139024,139025,139034,139035,139044,139045,139054,139055,139064,139065,139074,139075,139089,139090,139099,139100,139109,139110,139119,139120,139129,139130,139139,139140,139154,139155,139164,139165,139174,139175,139184,139185,139194,139195,139204,139205,139214,139215,139224,139225,139234,139235,139244,139245,139259,139260,139269,139270,139279,139280,139289,139290,139299,139300,139309,139310,139319,139320,139329,139330,139339,139340,139349,139350,139364,139365,139374,139375,139384,139385,139394,139395,139404,139405,139414,139415,139424,139425,139434,139435,139444,139445,139454,139455,139469,139470,139479,139480,139489,139490,139499,139500,139509,139510,139519,139520,139529,139530,139539,139540,139549,139550,139564,139565,139574,139575,139584,139585,139594,139595,139604,139605,139614,139615,139624,139625,139634,139635,139644,139645,139654,139655,139664,139665,139674,139675,139684,139685,139699,139700,139709,139710,139719,139720,139729,139730,139739,139740,139749,139750,139759,139760,139769,139770,139779,139780,139794,139795,139804,139805,139814,139815,139824,139825,139834,139835,139844,139845,139854,139855,139869,139870,139879,139880,139889,139890,139899,139900,139909,139910,139919,139920,139929,139930,139939,139940,139949,139950,139959,139960,139969,139970,139979,139980,139994,139995,140004,140005,140014,140015,140024,140025,140034,140035,140044,140045,140054,140055,140064,140065,140074,140075,140084,140085,140099,140100,140109,140110,140119,140120,140129,140130,140144,140145,140154,140155,140164,140165,140174,140175,140184,140185,140194,140195,140204,140205,140214,140215,140224,140225,140234,140235,140249,140250,140259,140260,140269,140270,140279,140280,140289,140290,140299,140300,140309,140310,140319,140320,140334,140335,140344,140345,140354,140355,140364,140365,140374,140375,140384,140385,140399,140400,140409,140410,140419,140420,140429,140430,140439,140440,140449,140450,140459,140460,140469,140470,140479,140480,140494,140495,140504,140505,140514,140515,140524,140525,140635,140636,140699,140700,140704,140705,140711,140712,140725,140726,140732,140733,140791,140792,140813,140814,140827,140828,140860,140861,140954,140955,140969,140970,140979,140980,141024,141025,141057,141058,141068,141069,141075,141076,141081,141082,141195,141196,141215,141216,141221,141222,141898,141899,141918,141919,141931,141932,141945,141946,142009,142010,142015,142016,142022,142023,142029,142030,142037,142038,142107,142108,142116,142117,142124,142125,142144,142145,142166,142167,142436,142437,147259,147260,147289,147290,147297,147298,147412,147413,147435,147436,147486,147487,147516,147517,147541,147542,147555,147556,147561,147562,147575,147576,147580,147581,147616,147617,147623,147624,147630,147631,147639,147640,147649,147650,147658,147659,147715,147716,147734,147735,147766,147767,147772,147773,147784,147785,147840,147841,147853,147854,148022,148023,148037,148038,148113,148114,148172,148173,148194,148195,148239,148240,148254,148255,148259,148260,148265,148266,148271,148272,148277,148278,148283,148284,148289,148290,148297,148298,148600,148601,148605,148606,148633,148634,148647,148648,148652,148653,148659,148660,148669,148670,148701,148702,148707,148708,148714,148715,148722,148723,148730,148731,148735,148736,148740,148741,148747,148748,148754,148755,148761,148762,148767,148768,148773,148774,148779,148780,148785,148786,148791,148792,148796,148797,148802,148803,148808,148809,148814,148815,148820,148821,148827,148828,148833,148834,148839,148840,148844,148845,148851,148852,148858,148859,148865,148866,148875,148876,148885,148886,148893,148894,148899,148900,148913,148914,148923,148924,148929,148930,148937,148938,148943,148944,148949,148950,148955,148956,148962,148963,148967,148968,148973,148974,148979,148980,148984,148985,148990,148991,148996,148997,149001,149002,149006,149007,149012,149013,149017,149018,149025,149026,149032,149033,149037,149038,149043,149044,149186,149187,149199,149200,149228,149229,149250,149251,149289,149290,149431,149432,149465,149466,149472,149473,149608,149609,149627,149628,149664,149665,149674,149675,149696,149697,149946,149947,149988,149989,150001,150002,150009,150010,150016,150017,150022,150023,150031,150032,150038,150039,150070,150071,150088,150089,150103,150104,150112,150113,150119,150120,150126,150127,150145,150146,150177,150178,150202,150203,150251,150252,150263,150264,150270,150271,150285,150286,150288,150289,150296,150297,150306,150307,150313,150314,150339,150340,150359,150360,150377,150378,150407,150408,150412,150413,150417,150418,150422,150423,150436,150437,150439,150440,152905,152906,152908,152909,152913,152914,152919,152920,152926,152927,152982,152983,152985,152986,153397,153398,154617,154618,154625,154626,154804,154805,154809,154810,154817,154818,154861,154862,154883,154884,154888,154889,154893,154894,154903,154904,154909,154910,154915,154916,154924,154925,154959,154960,154964,154965,154975,154976,154983,154984,154988,154989,154994,154995,155175,155176,155212,155213,155220,155221,155239,155240,155266,155267,155295,155296,155303,155304,155309,155310,155321,155322,155342,155343,155349,155350,155378,155379,155418,155419,155426,155427,155438,155439,155504,155505,155523,155524,155557,155558,155562,155563,155571,155572,155577,155578,155587,155588,155593,155594,155623,155624,155763,155764,155774,155775,155779,155780,155785,155786,155805,155806,155807,155808,155819,155820,155828,155829,155840,155841,155848,155849,155855,155856,155862,155863,155874,155875,155881,155882,155889,155890,155897,155898,155904,155905,155909,155910,155916,155917,155921,155922,155929,155930,155936,155937,155948,155949,155953,155954,155962,155963,155970,155971,155977,155978,155984,155985,155992,155993,156000,156001,156006,156007,156013,156014,156020,156021,156022,156023,156060,156061,156098,156099,156138,156139,156141,156142,156143,156144,156145,156146,156158,156159,156160,156161,156162,156163,156184,156185,156196,156197,156198,156199,156200,156201,156325,156326,156327,156328,156334,156335,156336,156337,156338,156339,156340,156341,156342,156343,156344,156345,156353,156354,156359,156360,156366,156367,156373,156374,156386,156387,156393,156394,156414,156415,156426,156427,156428,156429,156479,156480,156486,156487,156492,156493,156547,156548,156553,156554,156559,156560,156566,156567,156572,156573,156747,156748,156755,156756,156761,156762,156767,156768,156774,156775,156784,156785,156839,156840,156852,156853,156882,156883,156888,156889,156895,156896,156901,156902,156909,156910,156915,156916,156921,156922,156927,156928,157004,157005,157023,157024,157099,157100,157105,157106,157112,157113,157318,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,233958,233959,233977,233978,233998,233999,234004,234005,234009,234010,234015,234016,234027,234028,234034,234035,234048,234049,234059,234060,234063,234064,234072,234073,234077,234078,234083,234084,234089,234090,234093,234094,234097,234098,234102,234103,234107,234108,234111,234112,234116,234117,234120,234121,234125,234126,234130,234131,234143,234144,234149,234150,234151,234152,235182,235183,235189,235190,235198,235199,235205,235206,235209,235210,235211,235212,235219,235220,235238,235239,235244,235245,235249,235250,235255,235256,235267,235268,235274,235275,235280,235281,235291,235292,235297,235298,235299,235300,235301,235302,235303,235304,235308,235309,235311,235312,235318,235319,235322,235323,235330,235331,235334,235335,235364,235365,235378,235379,235403,235404,235440,235441,235467,235468,235512,235513,235537,235538,235549,235550,235578,235579,235605,235606,235618,235619,235620,235621,235624,235625,235627,235628,235630,235631,235634,235635,235638,235639,235646,235647,235649,235650,235654,235655,235664,235665,235669,235670,235675,235676,235680,235681,235686,235687,235690,235691,235695,235696,235700,235701,235708,235709,235714,235715,235718,235719,235724,235725,235729,235730,235733,235734,235739,235740,235744,235745,235749,235750,235753,235754,235760,235761,235764,235765,235770,235771,235777,235778,235781,235782,235792,235793,235795,235796,235801,235802,235806,235807,235822,235823,235826,235827,235831,235832,235837,235838,235843,235844,235849,235850,235855,235856,235860,235861,235863,235864,235870,235871,235877,235878,235884,235885,235889,235890,235897,235898,235904,235905,235908,235909,235915,235916,235922,235923,235930,235931,235934,235935,235945,235946,235949,235950,235961,235962,235965,235966,235970,235971,235976,235977,235982,235983,235989,235990,235998,235999,236004,236005,236012,236013,236017,236018,236020,236021,236025,236026,236031,236032,236037,236038,236045,236046,236053,236054,236057,236058,236066,236067,236068,236069,236076,236077,236084,236085,236091,236092,236148,236149,236171,236172,236179,236180,236189,236190,236197,236198,236206,236207,236219,236220,236231,236232,236242,236243,236255,236256,236264,236265,236273,236274,236284,236285,236295,236296,236304,236305,236313,236314,236318,236319,236326,236327,236337,236338,236348,236349,236359,236360,236411,236412,236420,236421,236429,236430,236445,236446,236450,236451,236464,236465,236473,236474,236517,236518,236531,236532,236548,236549,236558,236559,236567,236568,236596,236597,236609,236610,236620,236621,236634,236635,236645,236646,236657,236658,236672,236673,236684,236685,236702,236703,236709,236710,236714,236715,236756,236757,236767,236768,236777,236778,236789,236790,236800,236801,236808,236809,236818,236819,236830,236831,236842,236843,236847,236848,236857,236858,236867,236868,236878,236879,236886,236887,236895,236896,236910,236911,236939,236940,236950,236951,236973,236974,237032,237033,237047,237048,237053,237054,237098,237099,237112,237113,237128,237129,237144,237145,237151,237152,237165,237166,237177,237178,237190,237191,237199,237200,237211,237212,237222,237223,237250,237251,237329,237330,237341,237342,237352,237353,237364,237365,237373,237374,237396,237397,237404,237405,237415,237416,237425,237426,237444,237445,237488,237489,237498,237499,237511,237512,237519,237520,237556,237557,237603,237604,237612,237613,237618,237619,237627,237628,237648,237649,237655,237656,237657,237658,237660,237661,237663,237664,237666,237667,237670,237671,237673,237674,237676,237677,237679,237680,237683,237684,237688,237689,237691,237692,237695,237696,237698,237699,237701,237702,237704,237705,237708,237709,237711,237712,237715,237716,237717,237718,237719,237720,237782,237783,237784,237785,237786,237787,237797,237798,237799,237800,237841,237842,237843,237844,237845,237846,238065,238066,238067,238068,238101,238102,238103,238104,238105,238106,238341,238342,238343,238344,238352,238353,238354,238355,238356,238357,238370,238371,238372,238373,238405,238406,238407,238408,238409,238410,238417,238418,238419,238420,239028,239029,239030,239031,239032,239033,239117,239118,239119,239120,239186,239187,239188,239189,239190,239191,239285,239286,239287,239288,241243,241244,241245,241246,241247,241248,242773,242774,242775,242776,242923,242924,242925,242926,242927,242928,243618,243619,243620,243621,243628,243629,243630,243631,243632,243633,243634,243635,243636,243637,243649,243650,243651,243652,246240,246241,246242,246243,246244,246245,248609,248610,248611,248612,249095,249096,249097,249098,249099,249100,249995,249996,249997,249998,250155,250156,250157,250158,250159,250160,250436,250437,250438,250439,251422,251423,251424,251425,251426,251427,252013,252014,252015,252016,252022,252023,252024,252025,252026,252027,252037,252038,252039,252040,252053,252054,252055,252056,252057,252058,252092,252093,252094,252095,252101,252102,252103,252104,252105,252106,252117,252118,252119,252120,252180,252181,252182,252183,252184,252185,252191,252192,252193,252194,252428,252429,252430,252431,252432,252433,252590,252591,252592,252593,252640,252641,252642,252643,252644,252645,252778,252779,252780,252781,254460,254461,254462,254463,254464,254465,255772,255773,255774,255775,255785,255786,255787,255788,255789,255790,255841,255842,255843,255844,255880,255881,255882,255883,255884,255885,255886,255887,255888,255889,255945,255946,255947,255948,255953,255954,255955,255956,255957,255958,255981,255982,255983,255984,257398,257399,257400,257401,257402,257403,258452,258453,258454,258455,258458,258459,258460,258461,258462,258463,258476,258477,258478,258479,258485,258486,258487,258488,258489,258490,258506,258507,258508,258509,258521,258522,258523,258524,258525,258526,258606,258607,258608,258609,258610,258611,258612,258613,261011,261012,261013,261014,261057,261058,261059,261060,261061,261062,261179,261180,261181,261182,261185,261186,261187,261188,261189,261190,261201,261202,261203,261204,261265,261266,261267,261268,261269,261270,261359,261360,261361,261362,261495,261496,261497,261498,261499,261500,261746,261747,261748,261749,261760,261761,261762,261763,261764,261765,261808,261809,261810,261811,261812,261813,261814,261815,261816,261817,261818,261819,261820,261821,261822,261823,261824,261825,261826,261827,261828,261829,261830,261831,261832,261833,261834,261835,261844,261845,261846,261847,261848,261849,261858,261859,261860,261861,261918,261919,261920,261921,261922,261923,262098,262099,262100,262101,262102,262103,262104,262105,262106,262107,262131,262132,262133,262134,262135,262136,262137,262138,262139,262140,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:311c6c1add41bbff8fbff9b13f50058a85e4cff2:16276776:2a9ecee64e1a237835c97b4ce2850963401fa611",
            "-", 2a9ecee64e1a237835c97b4ce2850963401fa611, 16276776,
            311c6c1add41bbff8fbff9b13f50058a85e4cff2,
            package_extract_file("patch/boot.img.p")) ||
    abort("E3008: Failed to apply patch to EMMC:/dev/block/bootdevice/by-name/boot:16276776:311c6c1add41bbff8fbff9b13f50058a85e4cff2:16276776:2a9ecee64e1a237835c97b4ce2850963401fa611");

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

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