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/062/brian02200058:userdebug/test-keys");
ui_print("Target: qcom/msm8909/msm8909:7.1.2/061/brian11130528:userdebug/test-keys");
ui_print("Verifying current system...");
getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/062/brian02200058:userdebug/test-keys" ||
    getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/061/brian11130528:userdebug/test-keys" ||
    abort("E3001: Package expects build fingerprint of qcom/msm8909/msm8909:7.1.2/062/brian02200058:userdebug/test-keys or qcom/msm8909/msm8909:7.1.2/061/brian11130528:userdebug/test-keys; this device has " + getprop("ro.build.fingerprint") + ".");
apply_patch_check("EMMC:/dev/block/bootdevice/by-name/boot:16209192:8463334cb08a37bb58701e4a4ec239d4a2bc6726:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:16209192:8463334cb08a37bb58701e4a4ec239d4a2bc6726:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945\" has unexpected contents.");
apply_patch_space(22827008) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/bootdevice/by-name/system", "3810,1,80,81,307,5536,6567,6568,6569,6577,6578,6579,6580,6609,6610,6616,6617,6618,6619,6640,6641,6645,6646,6647,6648,6656,6657,6663,6664,6665,6666,6684,6685,6690,6691,6692,6693,6705,6706,6711,6712,6713,6714,6729,6730,6736,6737,6738,6739,6752,6753,6754,6755,6756,6757,6835,6836,6837,6838,6839,6840,6852,6853,6857,6858,6859,6860,6861,6862,6921,6922,6923,6924,6925,6926,6991,6992,6993,6994,6995,6996,18946,18948,20223,20224,20267,20268,20298,20299,20627,20628,21596,21630,22204,22205,22310,22311,22603,22604,22816,22817,23737,23740,23741,23742,23808,23809,23810,23811,23977,23978,24122,24123,24296,24297,24468,24469,24829,24830,24847,25089,25092,25093,25102,25103,25104,25105,25122,25123,25144,25145,25254,25255,25293,25294,25297,25298,25309,25310,25776,25777,25778,25779,25801,25802,25823,25824,26063,26064,27176,27177,27473,27474,27592,27593,28070,28071,28072,28073,28598,28599,28614,28615,28646,28647,28708,28709,28715,28716,32765,32766,32768,32770,32849,32850,65536,65537,98304,98306,98385,98386,104345,104346,125059,125060,125061,125062,129441,129444,129449,129450,129467,129468,129497,129498,131069,131070,131072,131073,163840,163842,163921,163922,165576,165586,165587,165594,165595,165604,165605,165610,165611,165614,165615,165618,165619,165621,165622,165625,165626,165629,165630,165633,165634,165637,165638,165640,165641,165643,165644,165647,165648,165651,165652,165654,165655,165662,165663,165681,165682,165703,165704,165711,165712,165718,165719,165726,165727,165730,165731,165733,165734,165745,165746,165752,165753,165766,165767,165777,165778,165782,165783,165793,165794,165800,165801,165808,165809,165815,165816,165819,165820,165826,165827,165832,165833,165836,165837,165840,165841,165844,165845,165848,165849,165853,165854,165858,165859,165862,165863,165867,165868,165871,165872,165876,165877,165881,165882,165894,165895,165899,165900,165912,165913,165920,165921,165922,165923,166953,166954,166957,166958,166964,166965,166973,166974,166977,166978,166981,166982,166994,166995,166999,167000,167005,167006,167010,167011,167014,167015,167018,167019,167027,167028,167036,167037,167042,167043,167046,167047,167052,167053,167058,167059,167066,167067,167070,167071,167078,167079,167085,167086,167087,167088,167095,167096,167114,167115,167120,167121,167125,167126,167131,167132,167143,167144,167150,167151,167156,167157,167167,167168,167173,167174,167175,167176,167177,167178,167179,167180,167184,167185,167187,167188,167194,167195,167198,167199,167206,167207,167210,167211,167240,167241,167254,167255,167279,167280,167316,167317,167343,167344,167388,167389,167413,167414,167425,167426,167454,167455,167481,167482,167494,167495,167496,167497,167500,167501,167503,167504,167506,167507,167510,167511,167514,167515,167522,167523,167525,167526,167530,167531,167540,167541,167545,167546,167551,167552,167556,167557,167562,167563,167566,167567,167571,167572,167576,167577,167584,167585,167590,167591,167594,167595,167600,167601,167605,167606,167609,167610,167615,167616,167620,167621,167625,167626,167629,167630,167636,167637,167640,167641,167646,167647,167653,167654,167657,167658,167668,167669,167671,167672,167677,167678,167682,167683,167698,167699,167702,167703,167707,167708,167713,167714,167719,167720,167725,167726,167731,167732,167736,167737,167739,167740,167746,167747,167753,167754,167760,167761,167765,167766,167773,167774,167780,167781,167784,167785,167791,167792,167798,167799,167806,167807,167810,167811,167821,167822,167825,167826,167837,167838,167841,167842,167846,167847,167852,167853,167858,167859,167865,167866,167874,167875,167880,167881,167888,167889,167893,167894,167896,167897,167901,167902,167907,167908,167913,167914,167921,167922,167929,167930,167933,167934,167942,167943,167944,167945,167952,167953,167960,167961,167967,167968,168024,168025,168047,168048,168055,168056,168065,168066,168073,168074,168082,168083,168095,168096,168107,168108,168118,168119,168131,168132,168140,168141,168149,168150,168160,168161,168171,168172,168180,168181,168189,168190,168194,168195,168202,168203,168213,168214,168224,168225,168235,168236,168287,168288,168296,168297,168305,168306,168321,168322,168326,168327,168340,168341,168349,168350,168393,168394,168407,168408,168424,168425,168434,168435,168443,168444,168472,168473,168485,168486,168496,168497,168510,168511,168521,168522,168533,168534,168548,168549,168560,168561,168578,168579,168585,168586,168590,168591,168632,168633,168643,168644,168653,168654,168665,168666,168676,168677,168684,168685,168694,168695,168706,168707,168718,168719,168723,168724,168733,168734,168743,168744,168754,168755,168762,168763,168771,168772,168786,168787,168815,168816,168826,168827,168849,168850,168908,168909,168923,168924,168929,168930,168974,168975,168988,168989,169004,169005,169020,169021,169027,169028,169041,169042,169053,169054,169066,169067,169075,169076,169087,169088,169098,169099,169126,169127,169205,169206,169217,169218,169228,169229,169240,169241,169249,169250,169272,169273,169280,169281,169291,169292,169301,169302,169320,169321,169364,169365,169374,169375,169387,169388,169395,169396,169432,169433,169479,169480,169488,169489,169494,169495,169503,169504,169524,169525,169531,169532,169533,169534,169536,169537,169539,169540,169542,169543,169546,169547,169549,169550,169552,169553,169555,169556,169559,169560,169564,169565,169567,169568,169571,169572,169574,169575,169577,169578,169580,169581,169584,169585,169587,169588,169591,169592,169593,169594,169595,169596,169658,169659,169660,169661,169662,169663,169673,169674,169675,169676,169717,169718,169719,169720,169721,169722,169941,169942,169943,169944,169977,169978,169979,169980,169981,169982,170217,170218,170219,170220,170228,170229,170230,170231,170232,170233,170246,170247,170248,170249,170281,170282,170283,170284,170285,170286,170293,170294,170295,170296,170904,170905,170906,170907,170908,170909,170993,170994,170995,170996,171062,171063,171064,171065,171066,171067,171161,171162,171163,171164,173119,173120,173121,173122,173123,173124,174649,174650,174651,174652,174799,174800,174801,174802,174803,174804,175494,175495,175496,175497,175504,175505,175506,175507,175508,175509,175510,175511,175512,175513,175525,175526,175527,175528,178116,178117,178118,178119,178120,178121,180485,180486,180487,180488,180971,180972,180973,180974,180975,180976,181871,181872,181873,181874,182031,182032,182033,182034,182035,182036,182312,182313,182314,182315,183298,183299,183300,183301,183302,183303,183889,183890,183891,183892,183898,183899,183900,183901,183902,183903,183913,183914,183915,183916,183929,183930,183931,183932,183933,183934,183968,183969,183970,183971,183977,183978,183979,183980,183981,183982,183993,183994,183995,183996,184056,184057,184058,184059,184060,184061,184067,184068,184069,184070,184304,184305,184306,184307,184308,184309,184466,184467,184468,184469,184516,184517,184518,184519,184520,184521,184654,184655,184656,184657,186336,186337,186338,186339,186340,186341,187648,187649,187650,187651,187661,187662,187663,187664,187665,187666,187717,187718,187719,187720,187756,187757,187758,187759,187760,187761,187762,187763,187764,187765,187821,187822,187823,187824,187829,187830,187831,187832,187833,187834,187857,187858,187859,187860,189274,189275,189276,189277,189278,189279,190328,190329,190330,190331,190334,190335,190336,190337,190338,190339,190352,190353,190354,190355,190361,190362,190363,190364,190365,190366,190382,190383,190384,190385,190397,190398,190399,190400,190401,190402,190482,190483,190484,190485,190486,190487,190488,190489,192887,192888,192889,192890,192933,192934,192935,192936,192937,192938,193055,193056,193057,193058,193061,193062,193063,193064,193065,193066,193077,193078,193079,193080,193141,193142,193143,193144,193145,193146,193235,193236,193237,193238,193371,193372,193373,193374,193375,193376,193622,193623,193624,193625,193636,193637,193638,193639,193640,193641,193684,193685,193686,193687,194744,194745,194746,194747,194748,194749,195661,195662,195663,195664,195665,195666,195667,195668,195669,195670,195671,195672,195673,195674,195675,195676,196513,196514,196515,196516,196517,196518,196519,196520,196529,196530,196531,196532,196533,196534,196543,196544,196545,196546,196603,196604,196605,196608,196609,197148,197159,197160,197267,197268,197584,197585,197683,197684,197721,197722,197751,197752,197771,197772,197956,197957,198099,198100,198110,198111,198128,198129,198138,198139,198273,198274,198280,198281,198310,198311,198341,198342,198531,198532,198538,198539,198545,198546,198551,198552,198556,198557,198570,198571,198579,198580,198584,198585,198615,198616,198633,198634,198664,198665,198719,198720,198737,198738,198768,198769,198788,198789,198797,198798,198805,198806,198829,198830,198879,198880,198891,198892,198896,198897,198901,198902,199707,199708,199712,199713,199717,199718,199734,199735,199739,199740,199746,199747,199751,199752,199757,199758,199763,199764,199768,199769,199774,199775,199780,199781,199785,199786,199790,199791,199796,199797,199802,199803,199808,199809,199814,199815,199819,199820,199825,199826,199831,199832,199836,199837,199842,199843,199848,199849,199853,199854,199859,199860,199865,199866,199870,199871,199876,199877,199882,199883,199887,199888,199893,199894,199899,199900,199904,199905,199910,199911,199916,199917,199921,199922,199927,199928,199933,199934,199938,199939,199944,199945,199950,199951,199955,199956,199961,199962,199967,199968,199972,199973,199978,199979,199984,199985,199989,199990,199995,199996,200001,200002,200009,200010,200017,200018,200031,200032,200037,200038,200060,200061,200090,200091,200133,200134,200170,200171,200177,200178,200236,200237,200241,200242,200260,200261,200265,200266,200439,200440,200609,200610,200616,200617,200631,200632,200641,200642,200651,200652,200661,200662,200671,200672,200681,200682,200691,200692,200701,200702,200711,200712,200721,200722,200736,200737,200746,200747,200756,200757,200771,200772,200781,200782,200791,200792,200801,200802,200811,200812,200821,200822,200831,200832,200841,200842,200851,200852,200861,200862,200876,200877,200886,200887,200896,200897,200906,200907,200916,200917,200931,200932,200941,200942,200951,200952,200961,200962,200976,200977,200986,200987,200996,200997,201006,201007,201021,201022,201031,201032,201041,201042,201051,201052,201061,201062,201076,201077,201086,201087,201096,201097,201106,201107,201116,201117,201126,201127,201135,201136,201150,201151,201160,201161,201170,201171,201180,201181,201190,201191,201200,201201,201210,201211,201220,201221,201230,201231,201245,201246,201255,201256,201265,201266,201275,201276,201285,201286,201295,201296,201305,201306,201315,201316,201325,201326,201335,201336,201345,201346,201360,201361,201370,201371,201380,201381,201390,201391,201400,201401,201410,201411,201425,201426,201435,201436,201445,201446,201455,201456,201465,201466,201475,201476,201485,201486,201495,201496,201510,201511,201520,201521,201530,201531,201540,201541,201555,201556,201570,201571,201580,201581,201590,201591,201600,201601,201610,201611,201620,201621,201630,201631,201645,201646,201655,201656,201665,201666,201675,201676,201690,201691,201700,201701,201710,201711,201720,201721,201735,201736,201745,201746,201755,201756,201765,201766,201780,201781,201790,201791,201800,201801,201810,201811,201820,201821,201830,201831,201845,201846,201855,201856,201865,201866,201875,201876,201885,201886,201900,201901,201910,201911,201920,201921,201930,201931,201940,201941,201950,201951,201965,201966,201975,201976,201985,201986,201995,201996,202005,202006,202015,202016,202030,202031,202040,202041,202050,202051,202060,202061,202070,202071,202080,202081,202090,202091,202100,202101,202110,202111,202120,202121,202135,202136,202145,202146,202155,202156,202165,202166,202175,202176,202185,202186,202195,202196,202205,202206,202215,202216,202225,202226,202240,202241,202250,202251,202260,202261,202270,202271,202280,202281,202290,202291,202300,202301,202310,202311,202320,202321,202330,202331,202345,202346,202355,202356,202365,202366,202375,202376,202385,202386,202395,202396,202405,202406,202415,202416,202425,202426,202440,202441,202450,202451,202460,202461,202470,202471,202480,202481,202490,202491,202500,202501,202510,202511,202520,202521,202530,202531,202540,202541,202550,202551,202560,202561,202575,202576,202585,202586,202595,202596,202605,202606,202615,202616,202625,202626,202635,202636,202645,202646,202655,202656,202670,202671,202680,202681,202690,202691,202700,202701,202710,202711,202720,202721,202730,202731,202745,202746,202755,202756,202765,202766,202775,202776,202785,202786,202795,202796,202805,202806,202815,202816,202825,202826,202835,202836,202845,202846,202855,202856,202870,202871,202880,202881,202890,202891,202900,202901,202910,202911,202920,202921,202930,202931,202940,202941,202950,202951,202960,202961,202975,202976,202985,202986,202995,202996,203005,203006,203020,203021,203030,203031,203040,203041,203050,203051,203060,203061,203070,203071,203080,203081,203090,203091,203100,203101,203110,203111,203125,203126,203135,203136,203145,203146,203155,203156,203165,203166,203175,203176,203185,203186,203195,203196,203210,203211,203220,203221,203230,203231,203240,203241,203250,203251,203260,203261,203275,203276,203285,203286,203295,203296,203305,203306,203315,203316,203325,203326,203335,203336,203345,203346,203355,203356,203370,203371,203380,203381,203390,203391,203400,203401,203511,203512,203575,203576,203580,203581,203587,203588,203601,203602,203608,203609,203667,203668,203689,203690,203703,203704,203736,203737,203830,203831,203845,203846,203855,203856,203900,203901,203933,203934,203944,203945,203951,203952,203957,203958,204071,204072,204091,204092,204097,204098,204774,204775,204794,204795,204807,204808,204821,204822,204885,204886,204891,204892,204898,204899,204905,204906,204913,204914,204983,204984,204992,204993,205000,205001,205020,205021,205042,205043,205312,205313,210135,210136,210165,210166,210173,210174,210288,210289,210311,210312,210362,210363,210392,210393,210417,210418,210431,210432,210437,210438,210451,210452,210456,210457,210492,210493,210499,210500,210506,210507,210515,210516,210525,210526,210534,210535,210591,210592,210610,210611,210642,210643,210648,210649,210660,210661,210716,210717,210729,210730,210898,210899,210913,210914,210989,210990,211048,211049,211070,211071,211115,211116,211130,211131,211135,211136,211141,211142,211147,211148,211153,211154,211159,211160,211165,211166,211173,211174,211476,211477,211481,211482,211509,211510,211523,211524,211528,211529,211535,211536,211545,211546,211577,211578,211583,211584,211590,211591,211598,211599,211606,211607,211611,211612,211616,211617,211623,211624,211630,211631,211637,211638,211643,211644,211649,211650,211655,211656,211661,211662,211667,211668,211672,211673,211678,211679,211684,211685,211690,211691,211696,211697,211703,211704,211709,211710,211715,211716,211720,211721,211727,211728,211734,211735,211741,211742,211751,211752,211761,211762,211769,211770,211775,211776,211789,211790,211799,211800,211805,211806,211813,211814,211819,211820,211825,211826,211831,211832,211838,211839,211843,211844,211849,211850,211855,211856,211860,211861,211866,211867,211872,211873,211877,211878,211882,211883,211888,211889,211893,211894,211901,211902,211908,211909,211913,211914,211919,211920,212062,212063,212075,212076,212104,212105,212126,212127,212165,212166,212307,212308,212341,212342,212348,212349,212484,212485,212503,212504,212540,212541,212550,212551,212572,212573,212822,212823,212864,212865,212877,212878,212885,212886,212892,212893,212898,212899,212907,212908,212914,212915,212946,212947,212964,212965,212979,212980,212988,212989,212995,212996,213002,213003,213021,213022,213053,213054,213078,213079,213127,213128,213139,213140,213146,213147,213161,213162,213164,213165,213172,213173,213182,213183,213189,213190,213215,213216,213235,213236,213253,213254,213283,213284,213288,213289,213293,213294,213298,213299,213312,213313,213315,213316,215781,215782,215784,215785,215789,215790,215795,215796,215802,215803,215858,215859,215861,215862,216273,216274,217493,217494,217501,217502,217680,217681,217685,217686,217693,217694,217737,217738,217759,217760,217764,217765,217769,217770,217779,217780,217785,217786,217791,217792,217800,217801,217835,217836,217840,217841,217851,217852,217859,217860,217864,217865,217870,217871,218051,218052,218088,218089,218096,218097,218115,218116,218142,218143,218171,218172,218179,218180,218185,218186,218197,218198,218218,218219,218225,218226,218254,218255,218294,218295,218302,218303,218314,218315,218380,218381,218399,218400,218433,218434,218438,218439,218447,218448,218453,218454,218463,218464,218469,218470,218499,218500,218639,218640,218650,218651,218655,218656,218661,218662,218681,218682,218683,218684,218695,218696,218704,218705,218716,218717,218724,218725,218731,218732,218738,218739,218750,218751,218757,218758,218765,218766,218773,218774,218780,218781,218785,218786,218792,218793,218797,218798,218805,218806,218812,218813,218824,218825,218829,218830,218838,218839,218846,218847,218853,218854,218860,218861,218868,218869,218876,218877,218882,218883,218889,218890,218896,218897,218898,218899,218936,218937,218974,218975,219014,219015,219017,219018,219019,219020,219021,219022,219034,219035,219036,219037,219038,219039,219060,219061,219072,219073,219074,219075,219076,219077,219201,219202,219203,219204,219210,219211,219212,219213,219214,219215,219216,219217,219218,219219,219220,219221,219229,219230,219235,219236,219242,219243,219249,219250,219262,219263,219269,219270,219290,219291,219302,219303,219304,219305,219355,219356,219362,219363,219368,219369,219423,219424,219429,219430,219435,219436,219442,219443,219448,219449,219623,219624,219631,219632,219637,219638,219643,219644,219650,219651,219660,219661,219715,219716,219728,219729,219758,219759,219764,219765,219771,219772,219777,219778,219785,219786,219791,219792,219797,219798,219803,219804,219880,219881,219899,219900,219975,219976,219981,219982,219988,219989,220194,229376,229378,229457,229458,248666,248667,248668,248843,248844,248845,248846,248926,248927,248928,248929,248930,248931,249037,249038,249039,249040,249064,249065,249066,249067,249068,249069,249079,249080,249081,249082,249229,249230,249231,249232,249233,249234,250102,250103,250104,250105,250106,250107,250108,250109,250143,250144,250151,250152,250153,250154,250155,250156,250157,250158,250190,250191,250245,250246,250281,250282,250283,250284,250285,250286,250287,250288,250289,250290,250291,250292,250293,250294,250295,250296,250297,250298,250299,250300,250301,250302,250303,250304,250305,250306,250307,250308,250309,250310,250311,250312,250313,250314,250315,250316,250317,250318,250474,250475,250583,250584,250727,250728,250829,250830,251020,251021,251180,251181,251244,251245,251393,251394,251598,251599,251693,251694,251848,251849,251911,251912,251913,251914,251915,251916,251917,251918,251919,251920,251921,251922,251923,251924,251933,251934,251935,251936,251938,251939,251940,251941,251968,251969,251970,251971,251997,251998,251999,252000,252027,252028,252029,252030,252042,252043,252044,252045,252053,252054,252055,252056,252060,252061,252062,252063,252069,252070,252071,252072,252073,252074,252075,252076,252078,252079,252080,252081,252090,252091,252092,252093,252094,252095,252096,252097,252098,252099,252100,252101,252102,252103,252104,252105,252183,252184,252185,252186,252187,252188,252189,252190,252191,252192,252193,252194,252195,252196,252197,252198,252200,252201,252202,252203,252204,252205,252206,252207,252243,252244,252245,252246,252282,252283,252284,252285,252286,252287,252288,252289,252290,252291,252292,252293,252294,252295,252297,252298,252300,252301,252302,252303,252304,252305,252306,252307,252308,252309,252310,252311,252312,252313,252314,252315,252316,252317,252318,252319,252320,252321,257742,257743,257744,257745,257746,257747,257748,257749,257750,257751,257752,257753,257757,257758,257761,257762,257766,257767,257771,257772,257776,257777,257778,257779,257780,257781,257784,257785,257786,257787,257788,257789,257790,257791,257792,257793,257794,257795,257796,257797,257798,257799,257800,257801,257802,257803,257804,257805,257806,257807,257808,257809,257810,257811,257812,257813,257814,257815,257816,257817,257818,257819,257820,257821,257822,257823,257824,257825,257826,257827,257828,257829,257830,257831,257832,257833,257834,257835,257836,257837,257838,257839,257840,257841,257842,257843,257844,257845,257846,257847,257848,257849,257850,257851,257852,257853,257854,257855,257856,257857,257858,257859,257860,257861,257865,257866,257871,257872,257873,257874,257997,257998,257999,258000,258001,258002,258003,258004,258005,258006,258007,258008,258009,258010,258012,258013,258014,258015,258017,258018,258019,258020,258022,258023,258024,258025,258027,258028,258029,258030,258032,258033,258034,258035,258037,258038,258039,258040,258042,258043,258044,258045,258046,258047,258048,258049,258050,258051,258052,258053,258059,258060,258061,258062,258063,258064,258070,258071,258072,258073,258154,258155,258156,258157,258158,258159,258545,258546,258547,258548,258550,258551,258552,258553,258554,258555,258561,258562,258563,258564,258569,258570,258571,258572,258573,258574,258591,258592,258593,258594,258624,258625,258626,258627,258628,258629,258648,258649,258650,258651,258661,258662,258663,258664,258665,258666,258689,258690,258691,258692,258693,258694,258695,258696,258698,258699,258700,258701,258705,258706,258707,258708,258710,258711,258712,258713,258715,258716,258717,258718,258720,258721,258722,258723,258725,258726,258727,258728,258730,258731,258732,258733,258735,258736,258737,258738,258741,258742,258743,258744,258746,258747,258748,258749,258752,258753,258754,258755,258757,258758,258759,258760,258770,258771,258772,258773,258774,258775,258776,258777,258778,258779,258780,258781,258782,258783,258788,258789,258790,258791,258792,258793,258800,258801,258802,258803,258825,258826,258827,258828,258829,258830,258875,258876,258877,258878,258892,258893,258894,258895,258896,258897,258913,258914,258915,258916,258917,258918,258919,258920,258933,258934,258935,258936,258938,258939,258940,258941,258943,258944,258945,258946,258948,258949,258950,258951,258953,258954,258955,258956,258958,258959,258960,258961,258963,258964,258965,258966,258968,258969,258970,258971,258973,258974,258975,258976,258978,258979,258980,258981,258988,258989,258990,258991,258993,258994,258995,258996,258997,258998,258999,259000,259001,259002,259003,259004,259005,259006,259011,259012,259013,259014,259015,259016,259023,259024,259025,259026,259030,259031,259032,259033,259034,259035,259042,259043,259044,259045,259046,259047,259048,259049,259051,259052,259053,259054,259056,259057,259058,259059,259061,259062,259063,259064,259066,259067,259068,259069,259071,259072,259073,259074,259076,259077,259078,259079,259187,259188,259189,259190,259191,259192,259193,259194,259195,259196,259197,259198,259199,259200,259201,259202,259203,259204,259205,259206,259207,259208,259209,259210,259218,259219,259220,259221,259229,259230,259231,259232,259233,259234,259241,259242,259243,259244,259251,259252,259253,259254,259255,259256,259257,259258,259259,259260,259261,259262,259271,259272,259273,259274,259275,259276,259292,259293,259294,259295,259297,259298,259299,259300,259302,259303,259304,259305,259307,259308,259309,259310,259315,259316,259317,259318,259320,259321,259322,259323,259324,259325,259326,259327,259332,259333,259334,259335,259336,259337,259347,259348,259349,259350,259375,259376,259377,259378,259379,259380,259466,259467,259468,259469,259532,259533,259534,259535,259536,259537,259688,259689,259690,259691,259706,259707,259708,259709,259710,259711,259730,259731,259732,259733,259734,259735,259736,259737,260042,260043,260107,260108,260109,260110,260197,260198,260861,260862,260867,260868,260873,260874,260884,260885,260898,260899,260914,260915,260943,260944,260954,260955,260992,260993,261265,261266,261267,261268,261269,261270,261271,261272,261345,261346,261419,261420,261463,261464,261465,261466,261469,261470,261471,261472,261473,261474,261475,261476,261477,261478,261480,261481,261487,261488,261493,261494,261569,261570,261573,261574,261579,261580,261581,261582,261583,261584,261585,261586,261587,261588,261589,261590,261596,261597,261598,261599,261620,261621,261644,261645,261646,261647,261658,261659,261702,261703,261754,261755,262074,262075,262076,262077,262085,262086,262091,262092,262104,262105,262119,262120,262133,262134,262142,262144,262145,294912,294914,294993,294994,295487,295488,300403,300405,300406,300407,300408,300409,300410,300411,300421,300422,300423,300424,300459,300460,300466,300467,300468,300469,300482,300483,300496,300497,300498,300499,300514,300515,301303,301304,301305,301306,301307,301308,301309,301310,305216,305217,305275,305276,305277,305278,305279,305280,305281,305282,305460,305461,305468,305469,305470,305471,305487,305488,305498,305499,305500,305501,305520,305521,305947,305948,305960,305961,305962,305963,305983,305984,306005,306006,306007,306008,306025,306026,306033,306034,306035,306036,306063,306064,306092,306093,306094,306095,306146,306147,306180,306181,306182,306183,306199,306200,306209,306210,306211,306212,306222,306223,306326,306327,306328,306329,306360,306361,306906,306907,306908,306909,308634,308635,308650,308651,308652,308653,308668,308669,308735,308736,308737,308738,308751,308752,308762,308763,308764,308765,308787,308788,308891,308892,308893,308894,308941,308942,308948,308949,308950,308951,308959,308960,308969,308970,308971,308972,308994,308995,309005,309006,309007,309008,309018,309019,309051,309052,309053,309054,309080,309081,310223,310224,310225,310226,310227,310228,310229,310230,310231,310232,310891,310892,311257,311258,311259,311260,312161,312162,312180,312181,312182,312183,312210,312211,312429,312430,312431,312432,312512,312513,312932,312933,312934,312935,313623,313624,313631,313632,313633,313634,313653,313654,313658,313659,313660,313661,313662,313663,313664,313665,313674,313675,313782,313783,313784,313785,313878,313879,313887,313888,313889,313890,313891,313892,313893,313894,313911,313912,313931,313932,313933,313934,313944,313945,313999,314000,314001,314002,314014,314015,314019,314020,314021,314022,314032,314033,314047,314048,314049,314050,314086,314087,314096,314097,314098,314099,314142,314143,314169,314170,314171,314172,314224,314225,314234,314235,314236,314237,314275,314276,314288,314289,314290,314291,314292,314293,314372,314373,314374,314375,314376,314377,314378,314379,314383,314384,314385,314386,314395,314396,314404,314405,314406,314407,314435,314436,314501,314502,314503,314504,314572,314573") == "b0929a83daaa377370c249b7b4a2cf778834bfed" || block_image_verify("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat")) then
ui_print("Verified system image...");
else
check_first_block("/dev/block/bootdevice/by-name/system");
ifelse (block_image_recover("/dev/block/bootdevice/by-name/system", "3810,1,80,81,307,5536,6567,6568,6569,6577,6578,6579,6580,6609,6610,6616,6617,6618,6619,6640,6641,6645,6646,6647,6648,6656,6657,6663,6664,6665,6666,6684,6685,6690,6691,6692,6693,6705,6706,6711,6712,6713,6714,6729,6730,6736,6737,6738,6739,6752,6753,6754,6755,6756,6757,6835,6836,6837,6838,6839,6840,6852,6853,6857,6858,6859,6860,6861,6862,6921,6922,6923,6924,6925,6926,6991,6992,6993,6994,6995,6996,18946,18948,20223,20224,20267,20268,20298,20299,20627,20628,21596,21630,22204,22205,22310,22311,22603,22604,22816,22817,23737,23740,23741,23742,23808,23809,23810,23811,23977,23978,24122,24123,24296,24297,24468,24469,24829,24830,24847,25089,25092,25093,25102,25103,25104,25105,25122,25123,25144,25145,25254,25255,25293,25294,25297,25298,25309,25310,25776,25777,25778,25779,25801,25802,25823,25824,26063,26064,27176,27177,27473,27474,27592,27593,28070,28071,28072,28073,28598,28599,28614,28615,28646,28647,28708,28709,28715,28716,32765,32766,32768,32770,32849,32850,65536,65537,98304,98306,98385,98386,104345,104346,125059,125060,125061,125062,129441,129444,129449,129450,129467,129468,129497,129498,131069,131070,131072,131073,163840,163842,163921,163922,165576,165586,165587,165594,165595,165604,165605,165610,165611,165614,165615,165618,165619,165621,165622,165625,165626,165629,165630,165633,165634,165637,165638,165640,165641,165643,165644,165647,165648,165651,165652,165654,165655,165662,165663,165681,165682,165703,165704,165711,165712,165718,165719,165726,165727,165730,165731,165733,165734,165745,165746,165752,165753,165766,165767,165777,165778,165782,165783,165793,165794,165800,165801,165808,165809,165815,165816,165819,165820,165826,165827,165832,165833,165836,165837,165840,165841,165844,165845,165848,165849,165853,165854,165858,165859,165862,165863,165867,165868,165871,165872,165876,165877,165881,165882,165894,165895,165899,165900,165912,165913,165920,165921,165922,165923,166953,166954,166957,166958,166964,166965,166973,166974,166977,166978,166981,166982,166994,166995,166999,167000,167005,167006,167010,167011,167014,167015,167018,167019,167027,167028,167036,167037,167042,167043,167046,167047,167052,167053,167058,167059,167066,167067,167070,167071,167078,167079,167085,167086,167087,167088,167095,167096,167114,167115,167120,167121,167125,167126,167131,167132,167143,167144,167150,167151,167156,167157,167167,167168,167173,167174,167175,167176,167177,167178,167179,167180,167184,167185,167187,167188,167194,167195,167198,167199,167206,167207,167210,167211,167240,167241,167254,167255,167279,167280,167316,167317,167343,167344,167388,167389,167413,167414,167425,167426,167454,167455,167481,167482,167494,167495,167496,167497,167500,167501,167503,167504,167506,167507,167510,167511,167514,167515,167522,167523,167525,167526,167530,167531,167540,167541,167545,167546,167551,167552,167556,167557,167562,167563,167566,167567,167571,167572,167576,167577,167584,167585,167590,167591,167594,167595,167600,167601,167605,167606,167609,167610,167615,167616,167620,167621,167625,167626,167629,167630,167636,167637,167640,167641,167646,167647,167653,167654,167657,167658,167668,167669,167671,167672,167677,167678,167682,167683,167698,167699,167702,167703,167707,167708,167713,167714,167719,167720,167725,167726,167731,167732,167736,167737,167739,167740,167746,167747,167753,167754,167760,167761,167765,167766,167773,167774,167780,167781,167784,167785,167791,167792,167798,167799,167806,167807,167810,167811,167821,167822,167825,167826,167837,167838,167841,167842,167846,167847,167852,167853,167858,167859,167865,167866,167874,167875,167880,167881,167888,167889,167893,167894,167896,167897,167901,167902,167907,167908,167913,167914,167921,167922,167929,167930,167933,167934,167942,167943,167944,167945,167952,167953,167960,167961,167967,167968,168024,168025,168047,168048,168055,168056,168065,168066,168073,168074,168082,168083,168095,168096,168107,168108,168118,168119,168131,168132,168140,168141,168149,168150,168160,168161,168171,168172,168180,168181,168189,168190,168194,168195,168202,168203,168213,168214,168224,168225,168235,168236,168287,168288,168296,168297,168305,168306,168321,168322,168326,168327,168340,168341,168349,168350,168393,168394,168407,168408,168424,168425,168434,168435,168443,168444,168472,168473,168485,168486,168496,168497,168510,168511,168521,168522,168533,168534,168548,168549,168560,168561,168578,168579,168585,168586,168590,168591,168632,168633,168643,168644,168653,168654,168665,168666,168676,168677,168684,168685,168694,168695,168706,168707,168718,168719,168723,168724,168733,168734,168743,168744,168754,168755,168762,168763,168771,168772,168786,168787,168815,168816,168826,168827,168849,168850,168908,168909,168923,168924,168929,168930,168974,168975,168988,168989,169004,169005,169020,169021,169027,169028,169041,169042,169053,169054,169066,169067,169075,169076,169087,169088,169098,169099,169126,169127,169205,169206,169217,169218,169228,169229,169240,169241,169249,169250,169272,169273,169280,169281,169291,169292,169301,169302,169320,169321,169364,169365,169374,169375,169387,169388,169395,169396,169432,169433,169479,169480,169488,169489,169494,169495,169503,169504,169524,169525,169531,169532,169533,169534,169536,169537,169539,169540,169542,169543,169546,169547,169549,169550,169552,169553,169555,169556,169559,169560,169564,169565,169567,169568,169571,169572,169574,169575,169577,169578,169580,169581,169584,169585,169587,169588,169591,169592,169593,169594,169595,169596,169658,169659,169660,169661,169662,169663,169673,169674,169675,169676,169717,169718,169719,169720,169721,169722,169941,169942,169943,169944,169977,169978,169979,169980,169981,169982,170217,170218,170219,170220,170228,170229,170230,170231,170232,170233,170246,170247,170248,170249,170281,170282,170283,170284,170285,170286,170293,170294,170295,170296,170904,170905,170906,170907,170908,170909,170993,170994,170995,170996,171062,171063,171064,171065,171066,171067,171161,171162,171163,171164,173119,173120,173121,173122,173123,173124,174649,174650,174651,174652,174799,174800,174801,174802,174803,174804,175494,175495,175496,175497,175504,175505,175506,175507,175508,175509,175510,175511,175512,175513,175525,175526,175527,175528,178116,178117,178118,178119,178120,178121,180485,180486,180487,180488,180971,180972,180973,180974,180975,180976,181871,181872,181873,181874,182031,182032,182033,182034,182035,182036,182312,182313,182314,182315,183298,183299,183300,183301,183302,183303,183889,183890,183891,183892,183898,183899,183900,183901,183902,183903,183913,183914,183915,183916,183929,183930,183931,183932,183933,183934,183968,183969,183970,183971,183977,183978,183979,183980,183981,183982,183993,183994,183995,183996,184056,184057,184058,184059,184060,184061,184067,184068,184069,184070,184304,184305,184306,184307,184308,184309,184466,184467,184468,184469,184516,184517,184518,184519,184520,184521,184654,184655,184656,184657,186336,186337,186338,186339,186340,186341,187648,187649,187650,187651,187661,187662,187663,187664,187665,187666,187717,187718,187719,187720,187756,187757,187758,187759,187760,187761,187762,187763,187764,187765,187821,187822,187823,187824,187829,187830,187831,187832,187833,187834,187857,187858,187859,187860,189274,189275,189276,189277,189278,189279,190328,190329,190330,190331,190334,190335,190336,190337,190338,190339,190352,190353,190354,190355,190361,190362,190363,190364,190365,190366,190382,190383,190384,190385,190397,190398,190399,190400,190401,190402,190482,190483,190484,190485,190486,190487,190488,190489,192887,192888,192889,192890,192933,192934,192935,192936,192937,192938,193055,193056,193057,193058,193061,193062,193063,193064,193065,193066,193077,193078,193079,193080,193141,193142,193143,193144,193145,193146,193235,193236,193237,193238,193371,193372,193373,193374,193375,193376,193622,193623,193624,193625,193636,193637,193638,193639,193640,193641,193684,193685,193686,193687,194744,194745,194746,194747,194748,194749,195661,195662,195663,195664,195665,195666,195667,195668,195669,195670,195671,195672,195673,195674,195675,195676,196513,196514,196515,196516,196517,196518,196519,196520,196529,196530,196531,196532,196533,196534,196543,196544,196545,196546,196603,196604,196605,196608,196609,197148,197159,197160,197267,197268,197584,197585,197683,197684,197721,197722,197751,197752,197771,197772,197956,197957,198099,198100,198110,198111,198128,198129,198138,198139,198273,198274,198280,198281,198310,198311,198341,198342,198531,198532,198538,198539,198545,198546,198551,198552,198556,198557,198570,198571,198579,198580,198584,198585,198615,198616,198633,198634,198664,198665,198719,198720,198737,198738,198768,198769,198788,198789,198797,198798,198805,198806,198829,198830,198879,198880,198891,198892,198896,198897,198901,198902,199707,199708,199712,199713,199717,199718,199734,199735,199739,199740,199746,199747,199751,199752,199757,199758,199763,199764,199768,199769,199774,199775,199780,199781,199785,199786,199790,199791,199796,199797,199802,199803,199808,199809,199814,199815,199819,199820,199825,199826,199831,199832,199836,199837,199842,199843,199848,199849,199853,199854,199859,199860,199865,199866,199870,199871,199876,199877,199882,199883,199887,199888,199893,199894,199899,199900,199904,199905,199910,199911,199916,199917,199921,199922,199927,199928,199933,199934,199938,199939,199944,199945,199950,199951,199955,199956,199961,199962,199967,199968,199972,199973,199978,199979,199984,199985,199989,199990,199995,199996,200001,200002,200009,200010,200017,200018,200031,200032,200037,200038,200060,200061,200090,200091,200133,200134,200170,200171,200177,200178,200236,200237,200241,200242,200260,200261,200265,200266,200439,200440,200609,200610,200616,200617,200631,200632,200641,200642,200651,200652,200661,200662,200671,200672,200681,200682,200691,200692,200701,200702,200711,200712,200721,200722,200736,200737,200746,200747,200756,200757,200771,200772,200781,200782,200791,200792,200801,200802,200811,200812,200821,200822,200831,200832,200841,200842,200851,200852,200861,200862,200876,200877,200886,200887,200896,200897,200906,200907,200916,200917,200931,200932,200941,200942,200951,200952,200961,200962,200976,200977,200986,200987,200996,200997,201006,201007,201021,201022,201031,201032,201041,201042,201051,201052,201061,201062,201076,201077,201086,201087,201096,201097,201106,201107,201116,201117,201126,201127,201135,201136,201150,201151,201160,201161,201170,201171,201180,201181,201190,201191,201200,201201,201210,201211,201220,201221,201230,201231,201245,201246,201255,201256,201265,201266,201275,201276,201285,201286,201295,201296,201305,201306,201315,201316,201325,201326,201335,201336,201345,201346,201360,201361,201370,201371,201380,201381,201390,201391,201400,201401,201410,201411,201425,201426,201435,201436,201445,201446,201455,201456,201465,201466,201475,201476,201485,201486,201495,201496,201510,201511,201520,201521,201530,201531,201540,201541,201555,201556,201570,201571,201580,201581,201590,201591,201600,201601,201610,201611,201620,201621,201630,201631,201645,201646,201655,201656,201665,201666,201675,201676,201690,201691,201700,201701,201710,201711,201720,201721,201735,201736,201745,201746,201755,201756,201765,201766,201780,201781,201790,201791,201800,201801,201810,201811,201820,201821,201830,201831,201845,201846,201855,201856,201865,201866,201875,201876,201885,201886,201900,201901,201910,201911,201920,201921,201930,201931,201940,201941,201950,201951,201965,201966,201975,201976,201985,201986,201995,201996,202005,202006,202015,202016,202030,202031,202040,202041,202050,202051,202060,202061,202070,202071,202080,202081,202090,202091,202100,202101,202110,202111,202120,202121,202135,202136,202145,202146,202155,202156,202165,202166,202175,202176,202185,202186,202195,202196,202205,202206,202215,202216,202225,202226,202240,202241,202250,202251,202260,202261,202270,202271,202280,202281,202290,202291,202300,202301,202310,202311,202320,202321,202330,202331,202345,202346,202355,202356,202365,202366,202375,202376,202385,202386,202395,202396,202405,202406,202415,202416,202425,202426,202440,202441,202450,202451,202460,202461,202470,202471,202480,202481,202490,202491,202500,202501,202510,202511,202520,202521,202530,202531,202540,202541,202550,202551,202560,202561,202575,202576,202585,202586,202595,202596,202605,202606,202615,202616,202625,202626,202635,202636,202645,202646,202655,202656,202670,202671,202680,202681,202690,202691,202700,202701,202710,202711,202720,202721,202730,202731,202745,202746,202755,202756,202765,202766,202775,202776,202785,202786,202795,202796,202805,202806,202815,202816,202825,202826,202835,202836,202845,202846,202855,202856,202870,202871,202880,202881,202890,202891,202900,202901,202910,202911,202920,202921,202930,202931,202940,202941,202950,202951,202960,202961,202975,202976,202985,202986,202995,202996,203005,203006,203020,203021,203030,203031,203040,203041,203050,203051,203060,203061,203070,203071,203080,203081,203090,203091,203100,203101,203110,203111,203125,203126,203135,203136,203145,203146,203155,203156,203165,203166,203175,203176,203185,203186,203195,203196,203210,203211,203220,203221,203230,203231,203240,203241,203250,203251,203260,203261,203275,203276,203285,203286,203295,203296,203305,203306,203315,203316,203325,203326,203335,203336,203345,203346,203355,203356,203370,203371,203380,203381,203390,203391,203400,203401,203511,203512,203575,203576,203580,203581,203587,203588,203601,203602,203608,203609,203667,203668,203689,203690,203703,203704,203736,203737,203830,203831,203845,203846,203855,203856,203900,203901,203933,203934,203944,203945,203951,203952,203957,203958,204071,204072,204091,204092,204097,204098,204774,204775,204794,204795,204807,204808,204821,204822,204885,204886,204891,204892,204898,204899,204905,204906,204913,204914,204983,204984,204992,204993,205000,205001,205020,205021,205042,205043,205312,205313,210135,210136,210165,210166,210173,210174,210288,210289,210311,210312,210362,210363,210392,210393,210417,210418,210431,210432,210437,210438,210451,210452,210456,210457,210492,210493,210499,210500,210506,210507,210515,210516,210525,210526,210534,210535,210591,210592,210610,210611,210642,210643,210648,210649,210660,210661,210716,210717,210729,210730,210898,210899,210913,210914,210989,210990,211048,211049,211070,211071,211115,211116,211130,211131,211135,211136,211141,211142,211147,211148,211153,211154,211159,211160,211165,211166,211173,211174,211476,211477,211481,211482,211509,211510,211523,211524,211528,211529,211535,211536,211545,211546,211577,211578,211583,211584,211590,211591,211598,211599,211606,211607,211611,211612,211616,211617,211623,211624,211630,211631,211637,211638,211643,211644,211649,211650,211655,211656,211661,211662,211667,211668,211672,211673,211678,211679,211684,211685,211690,211691,211696,211697,211703,211704,211709,211710,211715,211716,211720,211721,211727,211728,211734,211735,211741,211742,211751,211752,211761,211762,211769,211770,211775,211776,211789,211790,211799,211800,211805,211806,211813,211814,211819,211820,211825,211826,211831,211832,211838,211839,211843,211844,211849,211850,211855,211856,211860,211861,211866,211867,211872,211873,211877,211878,211882,211883,211888,211889,211893,211894,211901,211902,211908,211909,211913,211914,211919,211920,212062,212063,212075,212076,212104,212105,212126,212127,212165,212166,212307,212308,212341,212342,212348,212349,212484,212485,212503,212504,212540,212541,212550,212551,212572,212573,212822,212823,212864,212865,212877,212878,212885,212886,212892,212893,212898,212899,212907,212908,212914,212915,212946,212947,212964,212965,212979,212980,212988,212989,212995,212996,213002,213003,213021,213022,213053,213054,213078,213079,213127,213128,213139,213140,213146,213147,213161,213162,213164,213165,213172,213173,213182,213183,213189,213190,213215,213216,213235,213236,213253,213254,213283,213284,213288,213289,213293,213294,213298,213299,213312,213313,213315,213316,215781,215782,215784,215785,215789,215790,215795,215796,215802,215803,215858,215859,215861,215862,216273,216274,217493,217494,217501,217502,217680,217681,217685,217686,217693,217694,217737,217738,217759,217760,217764,217765,217769,217770,217779,217780,217785,217786,217791,217792,217800,217801,217835,217836,217840,217841,217851,217852,217859,217860,217864,217865,217870,217871,218051,218052,218088,218089,218096,218097,218115,218116,218142,218143,218171,218172,218179,218180,218185,218186,218197,218198,218218,218219,218225,218226,218254,218255,218294,218295,218302,218303,218314,218315,218380,218381,218399,218400,218433,218434,218438,218439,218447,218448,218453,218454,218463,218464,218469,218470,218499,218500,218639,218640,218650,218651,218655,218656,218661,218662,218681,218682,218683,218684,218695,218696,218704,218705,218716,218717,218724,218725,218731,218732,218738,218739,218750,218751,218757,218758,218765,218766,218773,218774,218780,218781,218785,218786,218792,218793,218797,218798,218805,218806,218812,218813,218824,218825,218829,218830,218838,218839,218846,218847,218853,218854,218860,218861,218868,218869,218876,218877,218882,218883,218889,218890,218896,218897,218898,218899,218936,218937,218974,218975,219014,219015,219017,219018,219019,219020,219021,219022,219034,219035,219036,219037,219038,219039,219060,219061,219072,219073,219074,219075,219076,219077,219201,219202,219203,219204,219210,219211,219212,219213,219214,219215,219216,219217,219218,219219,219220,219221,219229,219230,219235,219236,219242,219243,219249,219250,219262,219263,219269,219270,219290,219291,219302,219303,219304,219305,219355,219356,219362,219363,219368,219369,219423,219424,219429,219430,219435,219436,219442,219443,219448,219449,219623,219624,219631,219632,219637,219638,219643,219644,219650,219651,219660,219661,219715,219716,219728,219729,219758,219759,219764,219765,219771,219772,219777,219778,219785,219786,219791,219792,219797,219798,219803,219804,219880,219881,219899,219900,219975,219976,219981,219982,219988,219989,220194,229376,229378,229457,229458,248666,248667,248668,248843,248844,248845,248846,248926,248927,248928,248929,248930,248931,249037,249038,249039,249040,249064,249065,249066,249067,249068,249069,249079,249080,249081,249082,249229,249230,249231,249232,249233,249234,250102,250103,250104,250105,250106,250107,250108,250109,250143,250144,250151,250152,250153,250154,250155,250156,250157,250158,250190,250191,250245,250246,250281,250282,250283,250284,250285,250286,250287,250288,250289,250290,250291,250292,250293,250294,250295,250296,250297,250298,250299,250300,250301,250302,250303,250304,250305,250306,250307,250308,250309,250310,250311,250312,250313,250314,250315,250316,250317,250318,250474,250475,250583,250584,250727,250728,250829,250830,251020,251021,251180,251181,251244,251245,251393,251394,251598,251599,251693,251694,251848,251849,251911,251912,251913,251914,251915,251916,251917,251918,251919,251920,251921,251922,251923,251924,251933,251934,251935,251936,251938,251939,251940,251941,251968,251969,251970,251971,251997,251998,251999,252000,252027,252028,252029,252030,252042,252043,252044,252045,252053,252054,252055,252056,252060,252061,252062,252063,252069,252070,252071,252072,252073,252074,252075,252076,252078,252079,252080,252081,252090,252091,252092,252093,252094,252095,252096,252097,252098,252099,252100,252101,252102,252103,252104,252105,252183,252184,252185,252186,252187,252188,252189,252190,252191,252192,252193,252194,252195,252196,252197,252198,252200,252201,252202,252203,252204,252205,252206,252207,252243,252244,252245,252246,252282,252283,252284,252285,252286,252287,252288,252289,252290,252291,252292,252293,252294,252295,252297,252298,252300,252301,252302,252303,252304,252305,252306,252307,252308,252309,252310,252311,252312,252313,252314,252315,252316,252317,252318,252319,252320,252321,257742,257743,257744,257745,257746,257747,257748,257749,257750,257751,257752,257753,257757,257758,257761,257762,257766,257767,257771,257772,257776,257777,257778,257779,257780,257781,257784,257785,257786,257787,257788,257789,257790,257791,257792,257793,257794,257795,257796,257797,257798,257799,257800,257801,257802,257803,257804,257805,257806,257807,257808,257809,257810,257811,257812,257813,257814,257815,257816,257817,257818,257819,257820,257821,257822,257823,257824,257825,257826,257827,257828,257829,257830,257831,257832,257833,257834,257835,257836,257837,257838,257839,257840,257841,257842,257843,257844,257845,257846,257847,257848,257849,257850,257851,257852,257853,257854,257855,257856,257857,257858,257859,257860,257861,257865,257866,257871,257872,257873,257874,257997,257998,257999,258000,258001,258002,258003,258004,258005,258006,258007,258008,258009,258010,258012,258013,258014,258015,258017,258018,258019,258020,258022,258023,258024,258025,258027,258028,258029,258030,258032,258033,258034,258035,258037,258038,258039,258040,258042,258043,258044,258045,258046,258047,258048,258049,258050,258051,258052,258053,258059,258060,258061,258062,258063,258064,258070,258071,258072,258073,258154,258155,258156,258157,258158,258159,258545,258546,258547,258548,258550,258551,258552,258553,258554,258555,258561,258562,258563,258564,258569,258570,258571,258572,258573,258574,258591,258592,258593,258594,258624,258625,258626,258627,258628,258629,258648,258649,258650,258651,258661,258662,258663,258664,258665,258666,258689,258690,258691,258692,258693,258694,258695,258696,258698,258699,258700,258701,258705,258706,258707,258708,258710,258711,258712,258713,258715,258716,258717,258718,258720,258721,258722,258723,258725,258726,258727,258728,258730,258731,258732,258733,258735,258736,258737,258738,258741,258742,258743,258744,258746,258747,258748,258749,258752,258753,258754,258755,258757,258758,258759,258760,258770,258771,258772,258773,258774,258775,258776,258777,258778,258779,258780,258781,258782,258783,258788,258789,258790,258791,258792,258793,258800,258801,258802,258803,258825,258826,258827,258828,258829,258830,258875,258876,258877,258878,258892,258893,258894,258895,258896,258897,258913,258914,258915,258916,258917,258918,258919,258920,258933,258934,258935,258936,258938,258939,258940,258941,258943,258944,258945,258946,258948,258949,258950,258951,258953,258954,258955,258956,258958,258959,258960,258961,258963,258964,258965,258966,258968,258969,258970,258971,258973,258974,258975,258976,258978,258979,258980,258981,258988,258989,258990,258991,258993,258994,258995,258996,258997,258998,258999,259000,259001,259002,259003,259004,259005,259006,259011,259012,259013,259014,259015,259016,259023,259024,259025,259026,259030,259031,259032,259033,259034,259035,259042,259043,259044,259045,259046,259047,259048,259049,259051,259052,259053,259054,259056,259057,259058,259059,259061,259062,259063,259064,259066,259067,259068,259069,259071,259072,259073,259074,259076,259077,259078,259079,259187,259188,259189,259190,259191,259192,259193,259194,259195,259196,259197,259198,259199,259200,259201,259202,259203,259204,259205,259206,259207,259208,259209,259210,259218,259219,259220,259221,259229,259230,259231,259232,259233,259234,259241,259242,259243,259244,259251,259252,259253,259254,259255,259256,259257,259258,259259,259260,259261,259262,259271,259272,259273,259274,259275,259276,259292,259293,259294,259295,259297,259298,259299,259300,259302,259303,259304,259305,259307,259308,259309,259310,259315,259316,259317,259318,259320,259321,259322,259323,259324,259325,259326,259327,259332,259333,259334,259335,259336,259337,259347,259348,259349,259350,259375,259376,259377,259378,259379,259380,259466,259467,259468,259469,259532,259533,259534,259535,259536,259537,259688,259689,259690,259691,259706,259707,259708,259709,259710,259711,259730,259731,259732,259733,259734,259735,259736,259737,260042,260043,260107,260108,260109,260110,260197,260198,260861,260862,260867,260868,260873,260874,260884,260885,260898,260899,260914,260915,260943,260944,260954,260955,260992,260993,261265,261266,261267,261268,261269,261270,261271,261272,261345,261346,261419,261420,261463,261464,261465,261466,261469,261470,261471,261472,261473,261474,261475,261476,261477,261478,261480,261481,261487,261488,261493,261494,261569,261570,261573,261574,261579,261580,261581,261582,261583,261584,261585,261586,261587,261588,261589,261590,261596,261597,261598,261599,261620,261621,261644,261645,261646,261647,261658,261659,261702,261703,261754,261755,262074,262075,262076,262077,262085,262086,262091,262092,262104,262105,262119,262120,262133,262134,262142,262144,262145,294912,294914,294993,294994,295487,295488,300403,300405,300406,300407,300408,300409,300410,300411,300421,300422,300423,300424,300459,300460,300466,300467,300468,300469,300482,300483,300496,300497,300498,300499,300514,300515,301303,301304,301305,301306,301307,301308,301309,301310,305216,305217,305275,305276,305277,305278,305279,305280,305281,305282,305460,305461,305468,305469,305470,305471,305487,305488,305498,305499,305500,305501,305520,305521,305947,305948,305960,305961,305962,305963,305983,305984,306005,306006,306007,306008,306025,306026,306033,306034,306035,306036,306063,306064,306092,306093,306094,306095,306146,306147,306180,306181,306182,306183,306199,306200,306209,306210,306211,306212,306222,306223,306326,306327,306328,306329,306360,306361,306906,306907,306908,306909,308634,308635,308650,308651,308652,308653,308668,308669,308735,308736,308737,308738,308751,308752,308762,308763,308764,308765,308787,308788,308891,308892,308893,308894,308941,308942,308948,308949,308950,308951,308959,308960,308969,308970,308971,308972,308994,308995,309005,309006,309007,309008,309018,309019,309051,309052,309053,309054,309080,309081,310223,310224,310225,310226,310227,310228,310229,310230,310231,310232,310891,310892,311257,311258,311259,311260,312161,312162,312180,312181,312182,312183,312210,312211,312429,312430,312431,312432,312512,312513,312932,312933,312934,312935,313623,313624,313631,313632,313633,313634,313653,313654,313658,313659,313660,313661,313662,313663,313664,313665,313674,313675,313782,313783,313784,313785,313878,313879,313887,313888,313889,313890,313891,313892,313893,313894,313911,313912,313931,313932,313933,313934,313944,313945,313999,314000,314001,314002,314014,314015,314019,314020,314021,314022,314032,314033,314047,314048,314049,314050,314086,314087,314096,314097,314098,314099,314142,314143,314169,314170,314171,314172,314224,314225,314234,314235,314236,314237,314275,314276,314288,314289,314290,314291,314292,314293,314372,314373,314374,314375,314376,314377,314378,314379,314383,314384,314385,314386,314395,314396,314404,314405,314406,314407,314435,314436,314501,314502,314503,314504,314572,314573") && block_image_verify("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat"), ui_print("system recovered successfully."), abort("E1004: system partition fails to recover"));
endif;

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

ui_print("Patching system image after verification.");
show_progress(0.900000, 0);
block_image_update("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat") ||
  abort("E1001: Failed to update system image.");
ui_print("Patching boot image...");
show_progress(0.100000, 10);
apply_patch("EMMC:/dev/block/bootdevice/by-name/boot:16209192:8463334cb08a37bb58701e4a4ec239d4a2bc6726:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945",
            "-", 81902c9f4b875ababdc75b8a9f2a6b887f7b6945, 16209192,
            8463334cb08a37bb58701e4a4ec239d4a2bc6726,
            package_extract_file("patch/boot.img.p")) ||
    abort("E3008: Failed to apply patch to EMMC:/dev/block/bootdevice/by-name/boot:16209192:8463334cb08a37bb58701e4a4ec239d4a2bc6726:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945");

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

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