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/064/brian04110645: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/064/brian04110645: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/064/brian04110645: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:bdd26141161a37c7cda96ec62988d8e208d50de5:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:16209192:bdd26141161a37c7cda96ec62988d8e208d50de5:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945\" has unexpected contents.");
apply_patch_space(22818816) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/bootdevice/by-name/system", "3808,1,80,81,307,5536,6567,6568,6569,6577,6578,6579,6580,6609,6610,6616,6617,6618,6619,6640,6641,6645,6646,6647,6648,6656,6657,6663,6664,6665,6666,6684,6685,6690,6691,6692,6693,6705,6706,6711,6712,6713,6714,6729,6730,6736,6737,6738,6739,6752,6753,6754,6755,6756,6757,6835,6836,6837,6838,6839,6840,6852,6853,6857,6858,6859,6860,6861,6862,6921,6922,6923,6924,6925,6926,6991,6992,6993,6994,6995,6996,18946,18948,20223,20224,20267,20268,20298,20299,20627,20628,21596,21630,22204,22205,22310,22311,22603,22604,22816,22817,23737,23740,23741,23742,23808,23809,23810,23811,23977,23978,24122,24123,24296,24297,24468,24469,24829,24830,24847,25089,25092,25093,25102,25103,25104,25105,25122,25123,25144,25145,25254,25255,25293,25294,25297,25298,25309,25310,25776,25777,25778,25779,25801,25802,25823,25824,26063,26064,27176,27177,27473,27474,27592,27593,28070,28071,28072,28073,28598,28599,28614,28615,28646,28647,28708,28709,28715,28716,32765,32766,32768,32770,32849,32850,65536,65537,98304,98306,98385,98386,104345,104346,125059,125060,125061,125062,129441,129444,129449,129450,129467,129468,129497,129498,131069,131070,131072,131073,163840,163842,163921,163922,165576,165586,165587,165594,165595,165604,165605,165610,165611,165614,165615,165618,165619,165621,165622,165625,165626,165629,165630,165633,165634,165637,165638,165640,165641,165643,165644,165647,165648,165651,165652,165654,165655,165663,165664,165682,165683,165705,165706,165713,165714,165720,165721,165728,165729,165732,165733,165735,165736,165747,165748,165754,165755,165768,165769,165779,165780,165785,165786,165796,165797,165803,165804,165811,165812,165819,165820,165823,165824,165830,165831,165836,165837,165840,165841,165844,165845,165848,165849,165852,165853,165857,165858,165862,165863,165866,165867,165871,165872,165875,165876,165880,165881,165885,165886,165898,165899,165903,165904,165916,165917,165924,165925,165926,165927,166957,166958,166961,166962,166968,166969,166977,166978,166981,166982,166985,166986,166998,166999,167003,167004,167009,167010,167014,167015,167018,167019,167022,167023,167031,167032,167040,167041,167046,167047,167050,167051,167056,167057,167062,167063,167070,167071,167074,167075,167082,167083,167089,167090,167091,167092,167099,167100,167118,167119,167124,167125,167129,167130,167135,167136,167147,167148,167154,167155,167160,167161,167171,167172,167177,167178,167179,167180,167181,167182,167183,167184,167188,167189,167191,167192,167198,167199,167202,167203,167210,167211,167214,167215,167244,167245,167258,167259,167283,167284,167320,167321,167347,167348,167392,167393,167417,167418,167429,167430,167458,167459,167485,167486,167498,167499,167500,167501,167504,167505,167507,167508,167510,167511,167514,167515,167518,167519,167526,167527,167529,167530,167534,167535,167544,167545,167549,167550,167555,167556,167560,167561,167566,167567,167570,167571,167575,167576,167580,167581,167588,167589,167594,167595,167598,167599,167604,167605,167609,167610,167613,167614,167619,167620,167624,167625,167629,167630,167633,167634,167640,167641,167644,167645,167650,167651,167657,167658,167661,167662,167672,167673,167675,167676,167681,167682,167686,167687,167702,167703,167706,167707,167711,167712,167717,167718,167723,167724,167729,167730,167735,167736,167740,167741,167743,167744,167750,167751,167757,167758,167764,167765,167769,167770,167777,167778,167784,167785,167788,167789,167795,167796,167802,167803,167810,167811,167814,167815,167825,167826,167829,167830,167841,167842,167845,167846,167850,167851,167856,167857,167862,167863,167869,167870,167878,167879,167884,167885,167892,167893,167897,167898,167900,167901,167905,167906,167911,167912,167917,167918,167925,167926,167933,167934,167937,167938,167946,167947,167948,167949,167956,167957,167964,167965,167971,167972,168028,168029,168051,168052,168059,168060,168069,168070,168077,168078,168086,168087,168099,168100,168111,168112,168122,168123,168135,168136,168144,168145,168153,168154,168164,168165,168175,168176,168184,168185,168193,168194,168198,168199,168206,168207,168217,168218,168228,168229,168239,168240,168291,168292,168300,168301,168309,168310,168325,168326,168330,168331,168344,168345,168353,168354,168397,168398,168411,168412,168428,168429,168438,168439,168447,168448,168476,168477,168489,168490,168500,168501,168514,168515,168525,168526,168537,168538,168552,168553,168564,168565,168582,168583,168589,168590,168594,168595,168636,168637,168647,168648,168657,168658,168669,168670,168680,168681,168688,168689,168698,168699,168710,168711,168722,168723,168727,168728,168737,168738,168747,168748,168758,168759,168766,168767,168775,168776,168790,168791,168819,168820,168830,168831,168853,168854,168912,168913,168927,168928,168933,168934,168978,168979,168992,168993,169008,169009,169024,169025,169031,169032,169045,169046,169057,169058,169070,169071,169079,169080,169091,169092,169102,169103,169130,169131,169209,169210,169221,169222,169232,169233,169244,169245,169253,169254,169276,169277,169284,169285,169295,169296,169305,169306,169324,169325,169368,169369,169378,169379,169391,169392,169399,169400,169436,169437,169483,169484,169492,169493,169498,169499,169507,169508,169528,169529,169535,169536,169537,169538,169540,169541,169543,169544,169546,169547,169550,169551,169553,169554,169556,169557,169559,169560,169563,169564,169568,169569,169571,169572,169575,169576,169578,169579,169581,169582,169584,169585,169588,169589,169591,169592,169595,169596,169597,169598,169599,169600,169662,169663,169664,169665,169666,169667,169677,169678,169679,169680,169721,169722,169723,169724,169725,169726,169945,169946,169947,169948,169981,169982,169983,169984,169985,169986,170221,170222,170223,170224,170232,170233,170234,170235,170236,170237,170250,170251,170252,170253,170285,170286,170287,170288,170289,170290,170297,170298,170299,170300,170908,170909,170910,170911,170912,170913,170997,170998,170999,171000,171066,171067,171068,171069,171070,171071,171165,171166,171167,171168,173123,173124,173125,173126,173127,173128,174653,174654,174655,174656,174803,174804,174805,174806,174807,174808,175498,175499,175500,175501,175508,175509,175510,175511,175512,175513,175514,175515,175516,175517,175529,175530,175531,175532,178120,178121,178122,178123,178124,178125,180489,180490,180491,180492,180975,180976,180977,180978,180979,180980,181875,181876,181877,181878,182035,182036,182037,182038,182039,182040,182316,182317,182318,182319,183302,183303,183304,183305,183306,183307,183893,183894,183895,183896,183902,183903,183904,183905,183906,183907,183917,183918,183919,183920,183933,183934,183935,183936,183937,183938,183972,183973,183974,183975,183981,183982,183983,183984,183985,183986,183997,183998,183999,184000,184060,184061,184062,184063,184064,184065,184071,184072,184073,184074,184308,184309,184310,184311,184312,184313,184470,184471,184472,184473,184520,184521,184522,184523,184524,184525,184658,184659,184660,184661,186340,186341,186342,186343,186344,186345,187652,187653,187654,187655,187665,187666,187667,187668,187669,187670,187721,187722,187723,187724,187760,187761,187762,187763,187764,187765,187766,187767,187768,187769,187825,187826,187827,187828,187833,187834,187835,187836,187837,187838,187861,187862,187863,187864,189278,189279,189280,189281,189282,189283,190332,190333,190334,190335,190338,190339,190340,190341,190342,190343,190356,190357,190358,190359,190365,190366,190367,190368,190369,190370,190386,190387,190388,190389,190401,190402,190403,190404,190405,190406,190486,190487,190488,190489,190490,190491,190492,190493,192891,192892,192893,192894,192937,192938,192939,192940,192941,192942,193059,193060,193061,193062,193065,193066,193067,193068,193069,193070,193081,193082,193083,193084,193145,193146,193147,193148,193149,193150,193239,193240,193241,193242,193375,193376,193377,193378,193379,193380,193626,193627,193628,193629,193640,193641,193642,193643,193644,193645,193688,193689,193690,193691,194748,194749,194750,194751,194752,194753,195665,195666,195667,195668,195669,195670,195671,195672,195673,195674,195675,195676,195677,195678,195679,195680,196517,196518,196519,196520,196521,196522,196523,196524,196533,196534,196535,196536,196537,196538,196547,196548,196549,196550,196551,196552,196553,196554,196555,196556,196557,196558,196559,196560,196561,196562,196586,196587,196588,196589,196590,196591,196601,196602,196603,196604,196605,196608,196609,197148,197159,197160,197267,197268,197584,197585,197683,197684,197721,197722,197751,197752,197771,197772,197780,197781,197965,197966,198108,198109,198119,198120,198137,198138,198147,198148,198282,198283,198289,198290,198319,198320,198350,198351,198540,198541,198547,198548,198554,198555,198560,198561,198574,198575,198583,198584,198588,198589,198619,198620,198637,198638,198668,198669,198723,198724,198741,198742,198772,198773,198792,198793,198801,198802,198809,198810,198833,198834,198883,198884,198895,198896,198900,198901,198905,198906,199711,199712,199716,199717,199721,199722,199738,199739,199743,199744,199750,199751,199755,199756,199761,199762,199767,199768,199772,199773,199778,199779,199784,199785,199789,199790,199794,199795,199800,199801,199806,199807,199812,199813,199818,199819,199823,199824,199829,199830,199835,199836,199840,199841,199846,199847,199852,199853,199857,199858,199863,199864,199869,199870,199874,199875,199880,199881,199886,199887,199891,199892,199897,199898,199903,199904,199908,199909,199914,199915,199920,199921,199925,199926,199931,199932,199937,199938,199942,199943,199948,199949,199954,199955,199959,199960,199965,199966,199971,199972,199976,199977,199982,199983,199988,199989,199993,199994,199999,200000,200005,200006,200013,200014,200021,200022,200035,200036,200041,200042,200064,200065,200094,200095,200137,200138,200174,200175,200181,200182,200240,200241,200245,200246,200264,200265,200269,200270,200443,200444,200613,200614,200620,200621,200635,200636,200645,200646,200655,200656,200665,200666,200675,200676,200685,200686,200695,200696,200705,200706,200715,200716,200725,200726,200740,200741,200750,200751,200760,200761,200775,200776,200785,200786,200795,200796,200805,200806,200815,200816,200825,200826,200835,200836,200845,200846,200855,200856,200865,200866,200880,200881,200890,200891,200900,200901,200910,200911,200920,200921,200935,200936,200945,200946,200955,200956,200965,200966,200980,200981,200990,200991,201000,201001,201010,201011,201025,201026,201035,201036,201045,201046,201055,201056,201065,201066,201080,201081,201090,201091,201100,201101,201110,201111,201120,201121,201130,201131,201139,201140,201154,201155,201164,201165,201174,201175,201184,201185,201194,201195,201204,201205,201214,201215,201224,201225,201234,201235,201249,201250,201259,201260,201269,201270,201279,201280,201289,201290,201299,201300,201309,201310,201319,201320,201329,201330,201339,201340,201349,201350,201364,201365,201374,201375,201384,201385,201394,201395,201404,201405,201414,201415,201429,201430,201439,201440,201449,201450,201459,201460,201469,201470,201479,201480,201489,201490,201499,201500,201514,201515,201524,201525,201534,201535,201544,201545,201559,201560,201574,201575,201584,201585,201594,201595,201604,201605,201614,201615,201624,201625,201634,201635,201649,201650,201659,201660,201669,201670,201679,201680,201694,201695,201704,201705,201714,201715,201724,201725,201739,201740,201749,201750,201759,201760,201769,201770,201784,201785,201794,201795,201804,201805,201814,201815,201824,201825,201834,201835,201849,201850,201859,201860,201869,201870,201879,201880,201889,201890,201904,201905,201914,201915,201924,201925,201934,201935,201944,201945,201954,201955,201969,201970,201979,201980,201989,201990,201999,202000,202009,202010,202019,202020,202034,202035,202044,202045,202054,202055,202064,202065,202074,202075,202084,202085,202094,202095,202104,202105,202114,202115,202124,202125,202139,202140,202149,202150,202159,202160,202169,202170,202179,202180,202189,202190,202199,202200,202209,202210,202219,202220,202229,202230,202244,202245,202254,202255,202264,202265,202274,202275,202284,202285,202294,202295,202304,202305,202314,202315,202324,202325,202334,202335,202349,202350,202359,202360,202369,202370,202379,202380,202389,202390,202399,202400,202409,202410,202419,202420,202429,202430,202444,202445,202454,202455,202464,202465,202474,202475,202484,202485,202494,202495,202504,202505,202514,202515,202524,202525,202534,202535,202544,202545,202554,202555,202564,202565,202579,202580,202589,202590,202599,202600,202609,202610,202619,202620,202629,202630,202639,202640,202649,202650,202659,202660,202674,202675,202684,202685,202694,202695,202704,202705,202714,202715,202724,202725,202734,202735,202749,202750,202759,202760,202769,202770,202779,202780,202789,202790,202799,202800,202809,202810,202819,202820,202829,202830,202839,202840,202849,202850,202859,202860,202874,202875,202884,202885,202894,202895,202904,202905,202914,202915,202924,202925,202934,202935,202944,202945,202954,202955,202964,202965,202979,202980,202989,202990,202999,203000,203009,203010,203024,203025,203034,203035,203044,203045,203054,203055,203064,203065,203074,203075,203084,203085,203094,203095,203104,203105,203114,203115,203129,203130,203139,203140,203149,203150,203159,203160,203169,203170,203179,203180,203189,203190,203199,203200,203214,203215,203224,203225,203234,203235,203244,203245,203254,203255,203264,203265,203279,203280,203289,203290,203299,203300,203309,203310,203319,203320,203329,203330,203339,203340,203349,203350,203359,203360,203374,203375,203384,203385,203394,203395,203404,203405,203515,203516,203579,203580,203584,203585,203591,203592,203605,203606,203612,203613,203671,203672,203693,203694,203707,203708,203740,203741,203834,203835,203849,203850,203859,203860,203904,203905,203937,203938,203948,203949,203955,203956,203961,203962,204075,204076,204095,204096,204101,204102,204778,204779,204798,204799,204811,204812,204825,204826,204889,204890,204895,204896,204902,204903,204909,204910,204917,204918,204987,204988,204996,204997,205004,205005,205024,205025,205046,205047,205316,205317,210139,210140,210169,210170,210177,210178,210292,210293,210315,210316,210366,210367,210396,210397,210421,210422,210435,210436,210441,210442,210455,210456,210460,210461,210496,210497,210503,210504,210510,210511,210519,210520,210529,210530,210538,210539,210595,210596,210614,210615,210646,210647,210652,210653,210664,210665,210720,210721,210733,210734,210902,210903,210917,210918,210993,210994,211052,211053,211074,211075,211119,211120,211134,211135,211139,211140,211145,211146,211151,211152,211157,211158,211163,211164,211169,211170,211177,211178,211480,211481,211485,211486,211513,211514,211527,211528,211532,211533,211539,211540,211549,211550,211581,211582,211587,211588,211594,211595,211602,211603,211610,211611,211615,211616,211620,211621,211627,211628,211634,211635,211641,211642,211647,211648,211653,211654,211659,211660,211665,211666,211671,211672,211676,211677,211682,211683,211688,211689,211694,211695,211700,211701,211707,211708,211713,211714,211719,211720,211724,211725,211731,211732,211738,211739,211745,211746,211755,211756,211765,211766,211773,211774,211779,211780,211793,211794,211803,211804,211809,211810,211817,211818,211823,211824,211829,211830,211835,211836,211842,211843,211847,211848,211853,211854,211859,211860,211864,211865,211870,211871,211876,211877,211881,211882,211886,211887,211892,211893,211897,211898,211905,211906,211912,211913,211917,211918,211923,211924,212066,212067,212079,212080,212108,212109,212130,212131,212169,212170,212311,212312,212345,212346,212352,212353,212488,212489,212507,212508,212544,212545,212554,212555,212576,212577,212826,212827,212868,212869,212881,212882,212889,212890,212896,212897,212902,212903,212911,212912,212918,212919,212950,212951,212968,212969,212983,212984,212992,212993,212999,213000,213006,213007,213025,213026,213057,213058,213082,213083,213131,213132,213143,213144,213150,213151,213165,213166,213168,213169,213176,213177,213186,213187,213193,213194,213219,213220,213239,213240,213257,213258,213287,213288,213292,213293,213297,213298,213302,213303,213316,213317,213319,213320,215785,215786,215788,215789,215793,215794,215799,215800,215806,215807,215862,215863,215865,215866,216277,216278,217497,217498,217505,217506,217684,217685,217689,217690,217697,217698,217741,217742,217763,217764,217768,217769,217773,217774,217783,217784,217789,217790,217795,217796,217804,217805,217839,217840,217844,217845,217855,217856,217863,217864,217868,217869,217874,217875,218055,218056,218092,218093,218100,218101,218119,218120,218146,218147,218175,218176,218183,218184,218189,218190,218201,218202,218222,218223,218229,218230,218258,218259,218298,218299,218306,218307,218318,218319,218384,218385,218403,218404,218437,218438,218442,218443,218451,218452,218457,218458,218467,218468,218473,218474,218503,218504,218643,218644,218654,218655,218659,218660,218665,218666,218685,218686,218687,218688,218699,218700,218708,218709,218720,218721,218728,218729,218735,218736,218742,218743,218754,218755,218761,218762,218769,218770,218777,218778,218784,218785,218789,218790,218796,218797,218801,218802,218809,218810,218816,218817,218828,218829,218833,218834,218842,218843,218850,218851,218857,218858,218864,218865,218872,218873,218880,218881,218886,218887,218893,218894,218900,218901,218902,218903,218940,218941,218978,218979,219018,219019,219021,219022,219023,219024,219025,219026,219038,219039,219040,219041,219042,219043,219064,219065,219076,219077,219078,219079,219080,219081,219205,219206,219207,219208,219214,219215,219216,219217,219218,219219,219220,219221,219222,219223,219224,219225,219233,219234,219239,219240,219246,219247,219253,219254,219266,219267,219273,219274,219294,219295,219306,219307,219308,219309,219359,219360,219366,219367,219372,219373,219427,219428,219433,219434,219439,219440,219446,219447,219452,219453,219627,219628,219635,219636,219641,219642,219647,219648,219654,219655,219664,219665,219719,219720,219732,219733,219762,219763,219768,219769,219775,219776,219781,219782,219789,219790,219795,219796,219801,219802,219807,219808,219884,219885,219903,219904,219979,219980,219985,219986,219992,219993,220198,229376,229378,229457,229458,248666,248723,248724,248899,248900,248980,248981,249087,249088,249235,249236,249237,249238,250106,250107,250108,250109,250110,250111,250112,250113,250147,250148,250155,250156,250157,250158,250159,250160,250161,250162,250194,250195,250249,250250,250285,250286,250287,250288,250289,250290,250291,250292,250293,250294,250295,250296,250297,250298,250299,250300,250301,250302,250303,250304,250305,250306,250307,250308,250309,250310,250311,250312,250313,250314,250315,250316,250317,250318,250319,250320,250321,250322,250478,250479,250587,250588,250731,250732,250833,250834,251024,251025,251184,251185,251248,251249,251397,251398,251602,251603,251697,251698,251852,251853,251915,251916,251917,251918,251919,251920,251921,251922,251923,251924,251925,251926,251927,251928,251937,251938,251939,251940,251942,251943,251944,251945,251972,251973,251974,251975,252001,252002,252003,252004,252031,252032,252033,252034,252046,252047,252048,252049,252057,252058,252059,252060,252064,252065,252066,252067,252073,252074,252075,252076,252077,252078,252079,252080,252082,252083,252084,252085,252094,252095,252096,252097,252098,252099,252100,252101,252102,252103,252104,252105,252106,252107,252108,252109,252187,252188,252189,252190,252191,252192,252193,252194,252195,252196,252197,252198,252199,252200,252201,252202,252204,252205,252206,252207,252208,252209,252210,252211,252247,252248,252249,252250,252286,252287,252288,252289,252290,252291,252292,252293,252294,252295,252296,252297,252298,252299,252301,252302,252304,252305,252306,252307,252308,252309,252310,252311,252312,252313,252314,252315,252316,252317,252318,252319,252320,252321,252322,252323,252324,252325,257746,257747,257748,257749,257750,257751,257752,257753,257754,257755,257756,257757,257761,257762,257765,257766,257770,257771,257775,257776,257780,257781,257782,257783,257784,257785,257788,257789,257790,257791,257792,257793,257794,257795,257796,257797,257798,257799,257800,257801,257802,257803,257804,257805,257806,257807,257808,257809,257810,257811,257812,257813,257814,257815,257816,257817,257818,257819,257820,257821,257822,257823,257824,257825,257826,257827,257828,257829,257830,257831,257832,257833,257834,257835,257836,257837,257838,257839,257840,257841,257842,257843,257844,257845,257846,257847,257848,257849,257850,257851,257852,257853,257854,257855,257856,257857,257858,257859,257860,257861,257862,257863,257864,257865,257869,257870,257875,257876,257877,257878,258001,258002,258003,258004,258005,258006,258007,258008,258009,258010,258011,258012,258013,258014,258016,258017,258018,258019,258021,258022,258023,258024,258026,258027,258028,258029,258031,258032,258033,258034,258036,258037,258038,258039,258041,258042,258043,258044,258046,258047,258048,258049,258050,258051,258052,258053,258054,258055,258056,258057,258063,258064,258065,258066,258067,258068,258074,258075,258076,258077,258158,258159,258160,258161,258162,258163,258549,258550,258551,258552,258554,258555,258556,258557,258558,258559,258565,258566,258567,258568,258573,258574,258575,258576,258577,258578,258595,258596,258597,258598,258628,258629,258630,258631,258632,258633,258652,258653,258654,258655,258665,258666,258667,258668,258669,258670,258693,258694,258695,258696,258697,258698,258699,258700,258702,258703,258704,258705,258709,258710,258711,258712,258714,258715,258716,258717,258719,258720,258721,258722,258724,258725,258726,258727,258729,258730,258731,258732,258734,258735,258736,258737,258739,258740,258741,258742,258745,258746,258747,258748,258750,258751,258752,258753,258756,258757,258758,258759,258761,258762,258763,258764,258774,258775,258776,258777,258778,258779,258780,258781,258782,258783,258784,258785,258786,258787,258792,258793,258794,258795,258796,258797,258804,258805,258806,258807,258829,258830,258831,258832,258833,258834,258879,258880,258881,258882,258896,258897,258898,258899,258900,258901,258917,258918,258919,258920,258921,258922,258923,258924,258937,258938,258939,258940,258942,258943,258944,258945,258947,258948,258949,258950,258952,258953,258954,258955,258957,258958,258959,258960,258962,258963,258964,258965,258967,258968,258969,258970,258972,258973,258974,258975,258977,258978,258979,258980,258982,258983,258984,258985,258992,258993,258994,258995,258997,258998,258999,259000,259001,259002,259003,259004,259005,259006,259007,259008,259009,259010,259015,259016,259017,259018,259019,259020,259027,259028,259029,259030,259034,259035,259036,259037,259038,259039,259046,259047,259048,259049,259050,259051,259052,259053,259055,259056,259057,259058,259060,259061,259062,259063,259065,259066,259067,259068,259070,259071,259072,259073,259075,259076,259077,259078,259080,259081,259082,259083,259191,259192,259193,259194,259195,259196,259197,259198,259199,259200,259201,259202,259203,259204,259205,259206,259207,259208,259209,259210,259211,259212,259213,259214,259222,259223,259224,259225,259233,259234,259235,259236,259237,259238,259245,259246,259247,259248,259255,259256,259257,259258,259259,259260,259261,259262,259263,259264,259265,259266,259275,259276,259277,259278,259279,259280,259296,259297,259298,259299,259301,259302,259303,259304,259306,259307,259308,259309,259311,259312,259313,259314,259319,259320,259321,259322,259324,259325,259326,259327,259328,259329,259330,259331,259336,259337,259338,259339,259340,259341,259351,259352,259353,259354,259379,259380,259381,259382,259383,259384,259470,259471,259472,259473,259536,259537,259538,259539,259540,259541,259692,259693,259694,259695,259710,259711,259712,259713,259714,259715,259734,259735,259736,259737,259738,259739,259740,259741,260046,260047,260111,260112,260113,260114,260201,260202,260865,260866,260871,260872,260877,260878,260888,260889,260902,260903,260918,260919,260947,260948,260958,260959,260996,260997,261269,261270,261271,261272,261273,261274,261275,261276,261349,261350,261423,261424,261467,261468,261469,261470,261473,261474,261475,261476,261477,261478,261479,261480,261481,261482,261484,261485,261491,261492,261497,261498,261573,261574,261577,261578,261583,261584,261585,261586,261587,261588,261589,261590,261591,261592,261593,261594,261600,261601,261602,261603,261624,261625,261648,261649,261650,261651,261662,261663,261706,261707,261758,261759,262078,262079,262080,262081,262089,262090,262095,262096,262108,262109,262123,262124,262137,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") == "35af4e223dd980c05c8065a6ca6fde15e71d5113" || 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", "3808,1,80,81,307,5536,6567,6568,6569,6577,6578,6579,6580,6609,6610,6616,6617,6618,6619,6640,6641,6645,6646,6647,6648,6656,6657,6663,6664,6665,6666,6684,6685,6690,6691,6692,6693,6705,6706,6711,6712,6713,6714,6729,6730,6736,6737,6738,6739,6752,6753,6754,6755,6756,6757,6835,6836,6837,6838,6839,6840,6852,6853,6857,6858,6859,6860,6861,6862,6921,6922,6923,6924,6925,6926,6991,6992,6993,6994,6995,6996,18946,18948,20223,20224,20267,20268,20298,20299,20627,20628,21596,21630,22204,22205,22310,22311,22603,22604,22816,22817,23737,23740,23741,23742,23808,23809,23810,23811,23977,23978,24122,24123,24296,24297,24468,24469,24829,24830,24847,25089,25092,25093,25102,25103,25104,25105,25122,25123,25144,25145,25254,25255,25293,25294,25297,25298,25309,25310,25776,25777,25778,25779,25801,25802,25823,25824,26063,26064,27176,27177,27473,27474,27592,27593,28070,28071,28072,28073,28598,28599,28614,28615,28646,28647,28708,28709,28715,28716,32765,32766,32768,32770,32849,32850,65536,65537,98304,98306,98385,98386,104345,104346,125059,125060,125061,125062,129441,129444,129449,129450,129467,129468,129497,129498,131069,131070,131072,131073,163840,163842,163921,163922,165576,165586,165587,165594,165595,165604,165605,165610,165611,165614,165615,165618,165619,165621,165622,165625,165626,165629,165630,165633,165634,165637,165638,165640,165641,165643,165644,165647,165648,165651,165652,165654,165655,165663,165664,165682,165683,165705,165706,165713,165714,165720,165721,165728,165729,165732,165733,165735,165736,165747,165748,165754,165755,165768,165769,165779,165780,165785,165786,165796,165797,165803,165804,165811,165812,165819,165820,165823,165824,165830,165831,165836,165837,165840,165841,165844,165845,165848,165849,165852,165853,165857,165858,165862,165863,165866,165867,165871,165872,165875,165876,165880,165881,165885,165886,165898,165899,165903,165904,165916,165917,165924,165925,165926,165927,166957,166958,166961,166962,166968,166969,166977,166978,166981,166982,166985,166986,166998,166999,167003,167004,167009,167010,167014,167015,167018,167019,167022,167023,167031,167032,167040,167041,167046,167047,167050,167051,167056,167057,167062,167063,167070,167071,167074,167075,167082,167083,167089,167090,167091,167092,167099,167100,167118,167119,167124,167125,167129,167130,167135,167136,167147,167148,167154,167155,167160,167161,167171,167172,167177,167178,167179,167180,167181,167182,167183,167184,167188,167189,167191,167192,167198,167199,167202,167203,167210,167211,167214,167215,167244,167245,167258,167259,167283,167284,167320,167321,167347,167348,167392,167393,167417,167418,167429,167430,167458,167459,167485,167486,167498,167499,167500,167501,167504,167505,167507,167508,167510,167511,167514,167515,167518,167519,167526,167527,167529,167530,167534,167535,167544,167545,167549,167550,167555,167556,167560,167561,167566,167567,167570,167571,167575,167576,167580,167581,167588,167589,167594,167595,167598,167599,167604,167605,167609,167610,167613,167614,167619,167620,167624,167625,167629,167630,167633,167634,167640,167641,167644,167645,167650,167651,167657,167658,167661,167662,167672,167673,167675,167676,167681,167682,167686,167687,167702,167703,167706,167707,167711,167712,167717,167718,167723,167724,167729,167730,167735,167736,167740,167741,167743,167744,167750,167751,167757,167758,167764,167765,167769,167770,167777,167778,167784,167785,167788,167789,167795,167796,167802,167803,167810,167811,167814,167815,167825,167826,167829,167830,167841,167842,167845,167846,167850,167851,167856,167857,167862,167863,167869,167870,167878,167879,167884,167885,167892,167893,167897,167898,167900,167901,167905,167906,167911,167912,167917,167918,167925,167926,167933,167934,167937,167938,167946,167947,167948,167949,167956,167957,167964,167965,167971,167972,168028,168029,168051,168052,168059,168060,168069,168070,168077,168078,168086,168087,168099,168100,168111,168112,168122,168123,168135,168136,168144,168145,168153,168154,168164,168165,168175,168176,168184,168185,168193,168194,168198,168199,168206,168207,168217,168218,168228,168229,168239,168240,168291,168292,168300,168301,168309,168310,168325,168326,168330,168331,168344,168345,168353,168354,168397,168398,168411,168412,168428,168429,168438,168439,168447,168448,168476,168477,168489,168490,168500,168501,168514,168515,168525,168526,168537,168538,168552,168553,168564,168565,168582,168583,168589,168590,168594,168595,168636,168637,168647,168648,168657,168658,168669,168670,168680,168681,168688,168689,168698,168699,168710,168711,168722,168723,168727,168728,168737,168738,168747,168748,168758,168759,168766,168767,168775,168776,168790,168791,168819,168820,168830,168831,168853,168854,168912,168913,168927,168928,168933,168934,168978,168979,168992,168993,169008,169009,169024,169025,169031,169032,169045,169046,169057,169058,169070,169071,169079,169080,169091,169092,169102,169103,169130,169131,169209,169210,169221,169222,169232,169233,169244,169245,169253,169254,169276,169277,169284,169285,169295,169296,169305,169306,169324,169325,169368,169369,169378,169379,169391,169392,169399,169400,169436,169437,169483,169484,169492,169493,169498,169499,169507,169508,169528,169529,169535,169536,169537,169538,169540,169541,169543,169544,169546,169547,169550,169551,169553,169554,169556,169557,169559,169560,169563,169564,169568,169569,169571,169572,169575,169576,169578,169579,169581,169582,169584,169585,169588,169589,169591,169592,169595,169596,169597,169598,169599,169600,169662,169663,169664,169665,169666,169667,169677,169678,169679,169680,169721,169722,169723,169724,169725,169726,169945,169946,169947,169948,169981,169982,169983,169984,169985,169986,170221,170222,170223,170224,170232,170233,170234,170235,170236,170237,170250,170251,170252,170253,170285,170286,170287,170288,170289,170290,170297,170298,170299,170300,170908,170909,170910,170911,170912,170913,170997,170998,170999,171000,171066,171067,171068,171069,171070,171071,171165,171166,171167,171168,173123,173124,173125,173126,173127,173128,174653,174654,174655,174656,174803,174804,174805,174806,174807,174808,175498,175499,175500,175501,175508,175509,175510,175511,175512,175513,175514,175515,175516,175517,175529,175530,175531,175532,178120,178121,178122,178123,178124,178125,180489,180490,180491,180492,180975,180976,180977,180978,180979,180980,181875,181876,181877,181878,182035,182036,182037,182038,182039,182040,182316,182317,182318,182319,183302,183303,183304,183305,183306,183307,183893,183894,183895,183896,183902,183903,183904,183905,183906,183907,183917,183918,183919,183920,183933,183934,183935,183936,183937,183938,183972,183973,183974,183975,183981,183982,183983,183984,183985,183986,183997,183998,183999,184000,184060,184061,184062,184063,184064,184065,184071,184072,184073,184074,184308,184309,184310,184311,184312,184313,184470,184471,184472,184473,184520,184521,184522,184523,184524,184525,184658,184659,184660,184661,186340,186341,186342,186343,186344,186345,187652,187653,187654,187655,187665,187666,187667,187668,187669,187670,187721,187722,187723,187724,187760,187761,187762,187763,187764,187765,187766,187767,187768,187769,187825,187826,187827,187828,187833,187834,187835,187836,187837,187838,187861,187862,187863,187864,189278,189279,189280,189281,189282,189283,190332,190333,190334,190335,190338,190339,190340,190341,190342,190343,190356,190357,190358,190359,190365,190366,190367,190368,190369,190370,190386,190387,190388,190389,190401,190402,190403,190404,190405,190406,190486,190487,190488,190489,190490,190491,190492,190493,192891,192892,192893,192894,192937,192938,192939,192940,192941,192942,193059,193060,193061,193062,193065,193066,193067,193068,193069,193070,193081,193082,193083,193084,193145,193146,193147,193148,193149,193150,193239,193240,193241,193242,193375,193376,193377,193378,193379,193380,193626,193627,193628,193629,193640,193641,193642,193643,193644,193645,193688,193689,193690,193691,194748,194749,194750,194751,194752,194753,195665,195666,195667,195668,195669,195670,195671,195672,195673,195674,195675,195676,195677,195678,195679,195680,196517,196518,196519,196520,196521,196522,196523,196524,196533,196534,196535,196536,196537,196538,196547,196548,196549,196550,196551,196552,196553,196554,196555,196556,196557,196558,196559,196560,196561,196562,196586,196587,196588,196589,196590,196591,196601,196602,196603,196604,196605,196608,196609,197148,197159,197160,197267,197268,197584,197585,197683,197684,197721,197722,197751,197752,197771,197772,197780,197781,197965,197966,198108,198109,198119,198120,198137,198138,198147,198148,198282,198283,198289,198290,198319,198320,198350,198351,198540,198541,198547,198548,198554,198555,198560,198561,198574,198575,198583,198584,198588,198589,198619,198620,198637,198638,198668,198669,198723,198724,198741,198742,198772,198773,198792,198793,198801,198802,198809,198810,198833,198834,198883,198884,198895,198896,198900,198901,198905,198906,199711,199712,199716,199717,199721,199722,199738,199739,199743,199744,199750,199751,199755,199756,199761,199762,199767,199768,199772,199773,199778,199779,199784,199785,199789,199790,199794,199795,199800,199801,199806,199807,199812,199813,199818,199819,199823,199824,199829,199830,199835,199836,199840,199841,199846,199847,199852,199853,199857,199858,199863,199864,199869,199870,199874,199875,199880,199881,199886,199887,199891,199892,199897,199898,199903,199904,199908,199909,199914,199915,199920,199921,199925,199926,199931,199932,199937,199938,199942,199943,199948,199949,199954,199955,199959,199960,199965,199966,199971,199972,199976,199977,199982,199983,199988,199989,199993,199994,199999,200000,200005,200006,200013,200014,200021,200022,200035,200036,200041,200042,200064,200065,200094,200095,200137,200138,200174,200175,200181,200182,200240,200241,200245,200246,200264,200265,200269,200270,200443,200444,200613,200614,200620,200621,200635,200636,200645,200646,200655,200656,200665,200666,200675,200676,200685,200686,200695,200696,200705,200706,200715,200716,200725,200726,200740,200741,200750,200751,200760,200761,200775,200776,200785,200786,200795,200796,200805,200806,200815,200816,200825,200826,200835,200836,200845,200846,200855,200856,200865,200866,200880,200881,200890,200891,200900,200901,200910,200911,200920,200921,200935,200936,200945,200946,200955,200956,200965,200966,200980,200981,200990,200991,201000,201001,201010,201011,201025,201026,201035,201036,201045,201046,201055,201056,201065,201066,201080,201081,201090,201091,201100,201101,201110,201111,201120,201121,201130,201131,201139,201140,201154,201155,201164,201165,201174,201175,201184,201185,201194,201195,201204,201205,201214,201215,201224,201225,201234,201235,201249,201250,201259,201260,201269,201270,201279,201280,201289,201290,201299,201300,201309,201310,201319,201320,201329,201330,201339,201340,201349,201350,201364,201365,201374,201375,201384,201385,201394,201395,201404,201405,201414,201415,201429,201430,201439,201440,201449,201450,201459,201460,201469,201470,201479,201480,201489,201490,201499,201500,201514,201515,201524,201525,201534,201535,201544,201545,201559,201560,201574,201575,201584,201585,201594,201595,201604,201605,201614,201615,201624,201625,201634,201635,201649,201650,201659,201660,201669,201670,201679,201680,201694,201695,201704,201705,201714,201715,201724,201725,201739,201740,201749,201750,201759,201760,201769,201770,201784,201785,201794,201795,201804,201805,201814,201815,201824,201825,201834,201835,201849,201850,201859,201860,201869,201870,201879,201880,201889,201890,201904,201905,201914,201915,201924,201925,201934,201935,201944,201945,201954,201955,201969,201970,201979,201980,201989,201990,201999,202000,202009,202010,202019,202020,202034,202035,202044,202045,202054,202055,202064,202065,202074,202075,202084,202085,202094,202095,202104,202105,202114,202115,202124,202125,202139,202140,202149,202150,202159,202160,202169,202170,202179,202180,202189,202190,202199,202200,202209,202210,202219,202220,202229,202230,202244,202245,202254,202255,202264,202265,202274,202275,202284,202285,202294,202295,202304,202305,202314,202315,202324,202325,202334,202335,202349,202350,202359,202360,202369,202370,202379,202380,202389,202390,202399,202400,202409,202410,202419,202420,202429,202430,202444,202445,202454,202455,202464,202465,202474,202475,202484,202485,202494,202495,202504,202505,202514,202515,202524,202525,202534,202535,202544,202545,202554,202555,202564,202565,202579,202580,202589,202590,202599,202600,202609,202610,202619,202620,202629,202630,202639,202640,202649,202650,202659,202660,202674,202675,202684,202685,202694,202695,202704,202705,202714,202715,202724,202725,202734,202735,202749,202750,202759,202760,202769,202770,202779,202780,202789,202790,202799,202800,202809,202810,202819,202820,202829,202830,202839,202840,202849,202850,202859,202860,202874,202875,202884,202885,202894,202895,202904,202905,202914,202915,202924,202925,202934,202935,202944,202945,202954,202955,202964,202965,202979,202980,202989,202990,202999,203000,203009,203010,203024,203025,203034,203035,203044,203045,203054,203055,203064,203065,203074,203075,203084,203085,203094,203095,203104,203105,203114,203115,203129,203130,203139,203140,203149,203150,203159,203160,203169,203170,203179,203180,203189,203190,203199,203200,203214,203215,203224,203225,203234,203235,203244,203245,203254,203255,203264,203265,203279,203280,203289,203290,203299,203300,203309,203310,203319,203320,203329,203330,203339,203340,203349,203350,203359,203360,203374,203375,203384,203385,203394,203395,203404,203405,203515,203516,203579,203580,203584,203585,203591,203592,203605,203606,203612,203613,203671,203672,203693,203694,203707,203708,203740,203741,203834,203835,203849,203850,203859,203860,203904,203905,203937,203938,203948,203949,203955,203956,203961,203962,204075,204076,204095,204096,204101,204102,204778,204779,204798,204799,204811,204812,204825,204826,204889,204890,204895,204896,204902,204903,204909,204910,204917,204918,204987,204988,204996,204997,205004,205005,205024,205025,205046,205047,205316,205317,210139,210140,210169,210170,210177,210178,210292,210293,210315,210316,210366,210367,210396,210397,210421,210422,210435,210436,210441,210442,210455,210456,210460,210461,210496,210497,210503,210504,210510,210511,210519,210520,210529,210530,210538,210539,210595,210596,210614,210615,210646,210647,210652,210653,210664,210665,210720,210721,210733,210734,210902,210903,210917,210918,210993,210994,211052,211053,211074,211075,211119,211120,211134,211135,211139,211140,211145,211146,211151,211152,211157,211158,211163,211164,211169,211170,211177,211178,211480,211481,211485,211486,211513,211514,211527,211528,211532,211533,211539,211540,211549,211550,211581,211582,211587,211588,211594,211595,211602,211603,211610,211611,211615,211616,211620,211621,211627,211628,211634,211635,211641,211642,211647,211648,211653,211654,211659,211660,211665,211666,211671,211672,211676,211677,211682,211683,211688,211689,211694,211695,211700,211701,211707,211708,211713,211714,211719,211720,211724,211725,211731,211732,211738,211739,211745,211746,211755,211756,211765,211766,211773,211774,211779,211780,211793,211794,211803,211804,211809,211810,211817,211818,211823,211824,211829,211830,211835,211836,211842,211843,211847,211848,211853,211854,211859,211860,211864,211865,211870,211871,211876,211877,211881,211882,211886,211887,211892,211893,211897,211898,211905,211906,211912,211913,211917,211918,211923,211924,212066,212067,212079,212080,212108,212109,212130,212131,212169,212170,212311,212312,212345,212346,212352,212353,212488,212489,212507,212508,212544,212545,212554,212555,212576,212577,212826,212827,212868,212869,212881,212882,212889,212890,212896,212897,212902,212903,212911,212912,212918,212919,212950,212951,212968,212969,212983,212984,212992,212993,212999,213000,213006,213007,213025,213026,213057,213058,213082,213083,213131,213132,213143,213144,213150,213151,213165,213166,213168,213169,213176,213177,213186,213187,213193,213194,213219,213220,213239,213240,213257,213258,213287,213288,213292,213293,213297,213298,213302,213303,213316,213317,213319,213320,215785,215786,215788,215789,215793,215794,215799,215800,215806,215807,215862,215863,215865,215866,216277,216278,217497,217498,217505,217506,217684,217685,217689,217690,217697,217698,217741,217742,217763,217764,217768,217769,217773,217774,217783,217784,217789,217790,217795,217796,217804,217805,217839,217840,217844,217845,217855,217856,217863,217864,217868,217869,217874,217875,218055,218056,218092,218093,218100,218101,218119,218120,218146,218147,218175,218176,218183,218184,218189,218190,218201,218202,218222,218223,218229,218230,218258,218259,218298,218299,218306,218307,218318,218319,218384,218385,218403,218404,218437,218438,218442,218443,218451,218452,218457,218458,218467,218468,218473,218474,218503,218504,218643,218644,218654,218655,218659,218660,218665,218666,218685,218686,218687,218688,218699,218700,218708,218709,218720,218721,218728,218729,218735,218736,218742,218743,218754,218755,218761,218762,218769,218770,218777,218778,218784,218785,218789,218790,218796,218797,218801,218802,218809,218810,218816,218817,218828,218829,218833,218834,218842,218843,218850,218851,218857,218858,218864,218865,218872,218873,218880,218881,218886,218887,218893,218894,218900,218901,218902,218903,218940,218941,218978,218979,219018,219019,219021,219022,219023,219024,219025,219026,219038,219039,219040,219041,219042,219043,219064,219065,219076,219077,219078,219079,219080,219081,219205,219206,219207,219208,219214,219215,219216,219217,219218,219219,219220,219221,219222,219223,219224,219225,219233,219234,219239,219240,219246,219247,219253,219254,219266,219267,219273,219274,219294,219295,219306,219307,219308,219309,219359,219360,219366,219367,219372,219373,219427,219428,219433,219434,219439,219440,219446,219447,219452,219453,219627,219628,219635,219636,219641,219642,219647,219648,219654,219655,219664,219665,219719,219720,219732,219733,219762,219763,219768,219769,219775,219776,219781,219782,219789,219790,219795,219796,219801,219802,219807,219808,219884,219885,219903,219904,219979,219980,219985,219986,219992,219993,220198,229376,229378,229457,229458,248666,248723,248724,248899,248900,248980,248981,249087,249088,249235,249236,249237,249238,250106,250107,250108,250109,250110,250111,250112,250113,250147,250148,250155,250156,250157,250158,250159,250160,250161,250162,250194,250195,250249,250250,250285,250286,250287,250288,250289,250290,250291,250292,250293,250294,250295,250296,250297,250298,250299,250300,250301,250302,250303,250304,250305,250306,250307,250308,250309,250310,250311,250312,250313,250314,250315,250316,250317,250318,250319,250320,250321,250322,250478,250479,250587,250588,250731,250732,250833,250834,251024,251025,251184,251185,251248,251249,251397,251398,251602,251603,251697,251698,251852,251853,251915,251916,251917,251918,251919,251920,251921,251922,251923,251924,251925,251926,251927,251928,251937,251938,251939,251940,251942,251943,251944,251945,251972,251973,251974,251975,252001,252002,252003,252004,252031,252032,252033,252034,252046,252047,252048,252049,252057,252058,252059,252060,252064,252065,252066,252067,252073,252074,252075,252076,252077,252078,252079,252080,252082,252083,252084,252085,252094,252095,252096,252097,252098,252099,252100,252101,252102,252103,252104,252105,252106,252107,252108,252109,252187,252188,252189,252190,252191,252192,252193,252194,252195,252196,252197,252198,252199,252200,252201,252202,252204,252205,252206,252207,252208,252209,252210,252211,252247,252248,252249,252250,252286,252287,252288,252289,252290,252291,252292,252293,252294,252295,252296,252297,252298,252299,252301,252302,252304,252305,252306,252307,252308,252309,252310,252311,252312,252313,252314,252315,252316,252317,252318,252319,252320,252321,252322,252323,252324,252325,257746,257747,257748,257749,257750,257751,257752,257753,257754,257755,257756,257757,257761,257762,257765,257766,257770,257771,257775,257776,257780,257781,257782,257783,257784,257785,257788,257789,257790,257791,257792,257793,257794,257795,257796,257797,257798,257799,257800,257801,257802,257803,257804,257805,257806,257807,257808,257809,257810,257811,257812,257813,257814,257815,257816,257817,257818,257819,257820,257821,257822,257823,257824,257825,257826,257827,257828,257829,257830,257831,257832,257833,257834,257835,257836,257837,257838,257839,257840,257841,257842,257843,257844,257845,257846,257847,257848,257849,257850,257851,257852,257853,257854,257855,257856,257857,257858,257859,257860,257861,257862,257863,257864,257865,257869,257870,257875,257876,257877,257878,258001,258002,258003,258004,258005,258006,258007,258008,258009,258010,258011,258012,258013,258014,258016,258017,258018,258019,258021,258022,258023,258024,258026,258027,258028,258029,258031,258032,258033,258034,258036,258037,258038,258039,258041,258042,258043,258044,258046,258047,258048,258049,258050,258051,258052,258053,258054,258055,258056,258057,258063,258064,258065,258066,258067,258068,258074,258075,258076,258077,258158,258159,258160,258161,258162,258163,258549,258550,258551,258552,258554,258555,258556,258557,258558,258559,258565,258566,258567,258568,258573,258574,258575,258576,258577,258578,258595,258596,258597,258598,258628,258629,258630,258631,258632,258633,258652,258653,258654,258655,258665,258666,258667,258668,258669,258670,258693,258694,258695,258696,258697,258698,258699,258700,258702,258703,258704,258705,258709,258710,258711,258712,258714,258715,258716,258717,258719,258720,258721,258722,258724,258725,258726,258727,258729,258730,258731,258732,258734,258735,258736,258737,258739,258740,258741,258742,258745,258746,258747,258748,258750,258751,258752,258753,258756,258757,258758,258759,258761,258762,258763,258764,258774,258775,258776,258777,258778,258779,258780,258781,258782,258783,258784,258785,258786,258787,258792,258793,258794,258795,258796,258797,258804,258805,258806,258807,258829,258830,258831,258832,258833,258834,258879,258880,258881,258882,258896,258897,258898,258899,258900,258901,258917,258918,258919,258920,258921,258922,258923,258924,258937,258938,258939,258940,258942,258943,258944,258945,258947,258948,258949,258950,258952,258953,258954,258955,258957,258958,258959,258960,258962,258963,258964,258965,258967,258968,258969,258970,258972,258973,258974,258975,258977,258978,258979,258980,258982,258983,258984,258985,258992,258993,258994,258995,258997,258998,258999,259000,259001,259002,259003,259004,259005,259006,259007,259008,259009,259010,259015,259016,259017,259018,259019,259020,259027,259028,259029,259030,259034,259035,259036,259037,259038,259039,259046,259047,259048,259049,259050,259051,259052,259053,259055,259056,259057,259058,259060,259061,259062,259063,259065,259066,259067,259068,259070,259071,259072,259073,259075,259076,259077,259078,259080,259081,259082,259083,259191,259192,259193,259194,259195,259196,259197,259198,259199,259200,259201,259202,259203,259204,259205,259206,259207,259208,259209,259210,259211,259212,259213,259214,259222,259223,259224,259225,259233,259234,259235,259236,259237,259238,259245,259246,259247,259248,259255,259256,259257,259258,259259,259260,259261,259262,259263,259264,259265,259266,259275,259276,259277,259278,259279,259280,259296,259297,259298,259299,259301,259302,259303,259304,259306,259307,259308,259309,259311,259312,259313,259314,259319,259320,259321,259322,259324,259325,259326,259327,259328,259329,259330,259331,259336,259337,259338,259339,259340,259341,259351,259352,259353,259354,259379,259380,259381,259382,259383,259384,259470,259471,259472,259473,259536,259537,259538,259539,259540,259541,259692,259693,259694,259695,259710,259711,259712,259713,259714,259715,259734,259735,259736,259737,259738,259739,259740,259741,260046,260047,260111,260112,260113,260114,260201,260202,260865,260866,260871,260872,260877,260878,260888,260889,260902,260903,260918,260919,260947,260948,260958,260959,260996,260997,261269,261270,261271,261272,261273,261274,261275,261276,261349,261350,261423,261424,261467,261468,261469,261470,261473,261474,261475,261476,261477,261478,261479,261480,261481,261482,261484,261485,261491,261492,261497,261498,261573,261574,261577,261578,261583,261584,261585,261586,261587,261588,261589,261590,261591,261592,261593,261594,261600,261601,261602,261603,261624,261625,261648,261649,261650,261651,261662,261663,261706,261707,261758,261759,262078,262079,262080,262081,262089,262090,262095,262096,262108,262109,262123,262124,262137,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:bdd26141161a37c7cda96ec62988d8e208d50de5:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945",
            "-", 81902c9f4b875ababdc75b8a9f2a6b887f7b6945, 16209192,
            bdd26141161a37c7cda96ec62988d8e208d50de5,
            package_extract_file("patch/boot.img.p")) ||
    abort("E3008: Failed to apply patch to EMMC:/dev/block/bootdevice/by-name/boot:16209192:bdd26141161a37c7cda96ec62988d8e208d50de5:16209192:81902c9f4b875ababdc75b8a9f2a6b887f7b6945");

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

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