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/130/brian10060909:userdebug/test-keys");
ui_print("Target: qcom/msm8909/msm8909:7.1.2/131/brian10120611:userdebug/test-keys");
ui_print("Verifying current system...");
getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/130/brian10060909:userdebug/test-keys" ||
    getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/131/brian10120611:userdebug/test-keys" ||
    abort("E3001: Package expects build fingerprint of qcom/msm8909/msm8909:7.1.2/130/brian10060909:userdebug/test-keys or qcom/msm8909/msm8909:7.1.2/131/brian10120611:userdebug/test-keys; this device has " + getprop("ro.build.fingerprint") + ".");
apply_patch_check("EMMC:/dev/block/bootdevice/by-name/boot:16276776:659d280e3623ca5ddb40ea36a38039256908cc30:16276776:61542adb005fa30d5eaf9bdce28300455cb42e7e") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:16276776:659d280e3623ca5ddb40ea36a38039256908cc30:16276776:61542adb005fa30d5eaf9bdce28300455cb42e7e\" has unexpected contents.");
apply_patch_space(22249472) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/bootdevice/by-name/system", "3724,1,80,81,306,2816,2817,2818,2819,2820,2821,2822,2823,2832,2833,2940,2941,2942,2943,3036,3037,3045,3046,3047,3048,3049,3050,3051,3052,3069,3070,3089,3090,3091,3092,3102,3103,3157,3158,3159,3160,3172,3173,3177,3178,3179,3180,3190,3191,3205,3206,3207,3208,3244,3245,3254,3255,3256,3257,3300,3301,3327,3328,3329,3330,3382,3383,3392,3393,3394,3395,3433,3434,3446,3447,3448,3449,3450,3451,3530,3531,3532,3533,3766,3767,3768,6942,6943,6944,8086,8087,8311,8312,9151,9152,9156,9157,9158,9159,9168,9169,9177,9178,9179,9180,9208,9209,9274,9275,9276,9277,9345,9346,9354,9355,9356,9357,9386,9387,9393,9394,9395,9396,9417,9418,9422,9423,9424,9425,9433,9434,9440,9441,9442,9443,9461,9462,9467,9468,9469,9470,9482,9483,9488,9489,9490,9491,9506,9507,9513,9514,9515,9516,9529,9530,9531,9532,9533,9534,9612,9613,9614,9615,9616,9617,9629,9630,9634,9635,9636,9637,9638,9639,9698,9699,9700,9701,9702,9703,9768,9769,9770,9771,9772,9773,21723,21725,21987,21988,22999,23000,23043,23044,23074,23075,23403,23404,24372,24406,24980,24981,25086,25087,25379,25380,25592,25593,26513,26516,26517,26518,26584,26585,26586,26587,26753,26754,26898,26899,27072,27073,27244,27245,27605,27606,27623,27865,27868,27869,27878,27879,27880,27881,27898,27899,27920,27921,28030,28031,28069,28070,28073,28074,28085,28086,28552,28553,28554,28555,28577,28578,28599,28600,28839,28840,29952,29953,30249,30250,30368,30369,30846,30847,30848,30849,31374,31375,31390,31391,31422,31423,31484,31485,31491,31492,32768,32770,32849,32850,48416,48419,48424,48425,48442,48443,48472,48473,65531,65532,65533,65534,65536,65537,66182,66183,66184,66185,66186,66491,66492,66556,66557,66558,66559,66646,66647,67310,67311,67316,67317,67322,67323,67333,67334,67347,67348,67363,67364,67392,67393,67403,67404,67441,67442,67714,67715,67716,67717,67718,67719,67720,67721,67794,67795,67868,67869,67912,67913,67914,67915,67918,67919,67920,67921,67922,67923,67924,67925,67926,67927,67929,67930,67936,67937,67942,67943,68018,68019,68022,68023,68028,68029,68030,68031,68032,68033,68034,68035,68036,68037,68038,68039,68045,68046,68047,68048,68069,68070,68093,68094,68095,68096,68107,68108,68151,68152,68203,68204,68523,68524,68631,68632,68633,68634,68642,68643,68648,68649,68661,68662,68676,68677,68720,68721,68734,68735,68780,68781,68792,68793,68900,68901,69217,69218,69316,69317,69354,69355,69384,69385,69404,69405,69413,69414,69598,69599,69741,69742,69752,69753,69770,69771,69780,69781,69915,69916,69922,69923,69952,69953,69983,69984,70173,70174,70180,70181,70187,70188,70193,70194,70198,70199,70212,70213,70221,70222,70226,70227,70257,70258,70275,70276,70306,70307,70361,70362,70379,70380,70410,70411,70430,70431,70439,70440,70447,70448,70471,70472,70521,70522,70533,70534,70538,70539,70543,70544,71349,71350,71354,71355,71359,71360,71376,71377,71381,71382,71388,71389,71393,71394,71399,71400,71405,71406,71410,71411,71416,71417,71422,71423,71427,71428,71432,71433,71438,71439,71444,71445,71450,71451,71456,71457,71461,71462,71467,71468,71473,71474,71478,71479,71484,71485,71490,71491,71495,71496,71501,71502,71507,71508,71512,71513,71518,71519,71524,71525,71529,71530,71535,71536,71541,71542,71546,71547,71552,71553,71558,71559,71563,71564,71569,71570,71575,71576,71580,71581,71586,71587,71592,71593,71597,71598,71603,71604,71609,71610,71614,71615,71620,71621,71626,71627,71631,71632,71637,71638,71643,71644,71651,71652,71659,71660,71673,71674,71679,71680,71702,71703,71732,71733,71775,71776,71812,71813,71819,71820,71878,71879,71883,71884,71902,71903,71907,71908,72081,72082,72251,72252,72258,72259,72273,72274,72283,72284,72293,72294,72303,72304,72313,72314,72323,72324,72333,72334,72343,72344,72353,72354,72363,72364,72378,72379,72388,72389,72398,72399,72413,72414,72423,72424,72433,72434,72443,72444,72453,72454,72463,72464,72473,72474,72483,72484,72493,72494,72503,72504,72518,72519,72528,72529,72538,72539,72548,72549,72558,72559,72573,72574,72583,72584,72593,72594,72603,72604,72618,72619,72628,72629,72638,72639,72648,72649,72663,72664,72673,72674,72683,72684,72693,72694,72703,72704,72718,72719,72728,72729,72738,72739,72748,72749,72758,72759,72768,72769,72777,72778,72792,72793,72802,72803,72812,72813,72822,72823,72832,72833,72842,72843,72852,72853,72862,72863,72872,72873,72887,72888,72897,72898,72907,72908,72917,72918,72927,72928,72937,72938,72947,72948,72957,72958,72967,72968,72977,72978,72987,72988,73002,73003,73012,73013,73022,73023,73032,73033,73042,73043,73052,73053,73067,73068,73077,73078,73087,73088,73097,73098,73107,73108,73117,73118,73127,73128,73137,73138,73152,73153,73162,73163,73172,73173,73182,73183,73197,73198,73212,73213,73222,73223,73232,73233,73242,73243,73252,73253,73262,73263,73272,73273,73287,73288,73297,73298,73307,73308,73317,73318,73332,73333,73342,73343,73352,73353,73362,73363,73377,73378,73387,73388,73397,73398,73407,73408,73422,73423,73432,73433,73442,73443,73452,73453,73462,73463,73472,73473,73487,73488,73497,73498,73507,73508,73517,73518,73527,73528,73542,73543,73552,73553,73562,73563,73572,73573,73582,73583,73592,73593,73607,73608,73617,73618,73627,73628,73637,73638,73647,73648,73657,73658,73672,73673,73682,73683,73692,73693,73702,73703,73712,73713,73722,73723,73732,73733,73742,73743,73752,73753,73762,73763,73777,73778,73787,73788,73797,73798,73807,73808,73817,73818,73827,73828,73837,73838,73847,73848,73857,73858,73867,73868,73882,73883,73892,73893,73902,73903,73912,73913,73922,73923,73932,73933,73942,73943,73952,73953,73962,73963,73972,73973,73987,73988,73997,73998,74007,74008,74017,74018,74027,74028,74037,74038,74047,74048,74057,74058,74067,74068,74082,74083,74092,74093,74102,74103,74112,74113,74122,74123,74132,74133,74142,74143,74152,74153,74162,74163,74172,74173,74182,74183,74192,74193,74202,74203,74217,74218,74227,74228,74237,74238,74247,74248,74257,74258,74267,74268,74277,74278,74287,74288,74297,74298,74312,74313,74322,74323,74332,74333,74342,74343,74352,74353,74362,74363,74372,74373,74387,74388,74397,74398,74407,74408,74417,74418,74427,74428,74437,74438,74447,74448,74457,74458,74467,74468,74477,74478,74487,74488,74497,74498,74512,74513,74522,74523,74532,74533,74542,74543,74552,74553,74562,74563,74572,74573,74582,74583,74592,74593,74602,74603,74617,74618,74627,74628,74637,74638,74647,74648,74662,74663,74672,74673,74682,74683,74692,74693,74702,74703,74712,74713,74722,74723,74732,74733,74742,74743,74752,74753,74767,74768,74777,74778,74787,74788,74797,74798,74807,74808,74817,74818,74827,74828,74837,74838,74852,74853,74862,74863,74872,74873,74882,74883,74892,74893,74902,74903,74917,74918,74927,74928,74937,74938,74947,74948,74957,74958,74967,74968,74977,74978,74987,74988,74997,74998,75012,75013,75022,75023,75032,75033,75042,75043,75153,75154,75217,75218,75222,75223,75229,75230,75243,75244,75250,75251,75309,75310,75331,75332,75345,75346,75378,75379,75472,75473,75487,75488,75497,75498,75542,75543,75575,75576,75586,75587,75593,75594,75599,75600,75713,75714,75733,75734,75739,75740,76416,76417,76436,76437,76449,76450,76463,76464,76527,76528,76533,76534,76540,76541,76547,76548,76555,76556,76625,76626,76634,76635,76642,76643,76662,76663,76684,76685,76954,76955,81777,81778,81807,81808,81815,81816,81930,81931,81953,81954,82004,82005,82034,82035,82059,82060,82073,82074,82079,82080,82093,82094,82098,82099,82134,82135,82141,82142,82148,82149,82157,82158,82167,82168,82176,82177,82233,82234,82252,82253,82284,82285,82290,82291,82302,82303,82358,82359,82371,82372,82540,82541,82555,82556,82631,82632,82690,82691,82712,82713,82757,82758,82772,82773,82777,82778,82783,82784,82789,82790,82795,82796,82801,82802,82807,82808,82815,82816,83118,83119,83123,83124,83151,83152,83165,83166,83170,83171,83177,83178,83187,83188,83219,83220,83225,83226,83232,83233,83240,83241,83248,83249,83253,83254,83258,83259,83265,83266,83272,83273,83279,83280,83285,83286,83291,83292,83297,83298,83303,83304,83309,83310,83314,83315,83320,83321,83326,83327,83332,83333,83338,83339,83345,83346,83351,83352,83357,83358,83362,83363,83369,83370,83376,83377,83383,83384,83393,83394,83403,83404,83411,83412,83417,83418,83431,83432,83441,83442,83447,83448,83455,83456,83461,83462,83467,83468,83473,83474,83480,83481,83485,83486,83491,83492,83497,83498,83502,83503,83508,83509,83514,83515,83519,83520,83524,83525,83530,83531,83535,83536,83543,83544,83550,83551,83555,83556,83561,83562,83704,83705,83717,83718,83746,83747,83768,83769,83807,83808,83949,83950,83983,83984,83990,83991,84126,84127,84145,84146,84182,84183,84192,84193,84214,84215,84464,84465,84506,84507,84519,84520,84527,84528,84534,84535,84540,84541,84549,84550,84556,84557,84588,84589,84606,84607,84621,84622,84630,84631,84637,84638,84644,84645,84663,84664,84695,84696,84720,84721,84769,84770,84781,84782,84788,84789,84803,84804,84806,84807,84814,84815,84824,84825,84831,84832,84857,84858,84877,84878,84895,84896,84925,84926,84930,84931,84935,84936,84940,84941,84954,84955,84957,84958,87423,87424,87426,87427,87431,87432,87437,87438,87444,87445,87500,87501,87503,87504,87915,87916,89135,89136,89143,89144,89322,89323,89327,89328,89335,89336,89379,89380,89401,89402,89406,89407,89411,89412,89421,89422,89427,89428,89433,89434,89442,89443,89477,89478,89482,89483,89493,89494,89501,89502,89506,89507,89512,89513,89693,89694,89730,89731,89738,89739,89757,89758,89784,89785,89813,89814,89821,89822,89827,89828,89839,89840,89860,89861,89867,89868,89896,89897,89936,89937,89944,89945,89956,89957,90022,90023,90041,90042,90075,90076,90080,90081,90089,90090,90095,90096,90105,90106,90111,90112,90141,90142,90281,90282,90292,90293,90297,90298,90303,90304,90323,90324,90325,90326,90337,90338,90346,90347,90358,90359,90366,90367,90373,90374,90380,90381,90392,90393,90399,90400,90407,90408,90415,90416,90422,90423,90427,90428,90434,90435,90439,90440,90447,90448,90454,90455,90466,90467,90471,90472,90480,90481,90488,90489,90495,90496,90502,90503,90510,90511,90518,90519,90524,90525,90531,90532,90538,90539,90540,90541,90578,90579,90616,90617,90656,90657,90659,90660,90661,90662,90663,90664,90676,90677,90678,90679,90680,90681,90702,90703,90714,90715,90716,90717,90718,90719,90843,90844,90845,90846,90852,90853,90854,90855,90856,90857,90858,90859,90860,90861,90862,90863,90871,90872,90877,90878,90884,90885,90891,90892,90904,90905,90911,90912,90932,90933,90944,90945,90946,90947,90997,90998,91004,91005,91010,91011,91065,91066,91071,91072,91077,91078,91084,91085,91090,91091,91265,91266,91273,91274,91279,91280,91285,91286,91292,91293,91302,91303,91357,91358,91370,91371,91400,91401,91406,91407,91413,91414,91419,91420,91427,91428,91433,91434,91439,91440,91445,91446,91522,91523,91541,91542,91617,91618,91623,91624,91630,91631,91836,98304,98306,98385,98386,106921,106922,107121,107122,127835,127836,127837,127838,131072,131073,163840,163842,163921,163922,168362,168369,168370,168374,168375,168381,168382,168384,168409,168413,168414,168432,168433,168451,168452,168456,168457,168460,168461,168465,168466,168477,168478,168484,168485,168498,168499,168509,168510,168517,168518,168521,168522,168526,168527,168531,168532,168535,168536,168539,168540,168544,168545,168549,168550,168553,168554,168558,168559,168562,168563,168567,168568,168572,168573,168585,168586,168590,168591,168592,168593,169623,169624,169629,169630,169638,169639,169644,169645,169647,169648,169649,169650,169657,169658,169676,169677,169682,169683,169687,169688,169693,169694,169705,169706,169712,169713,169718,169719,169729,169730,169735,169736,169737,169738,169739,169740,169741,169742,169746,169747,169749,169750,169756,169757,169760,169761,169768,169769,169772,169773,169802,169803,169816,169817,169841,169842,169878,169879,169905,169906,169950,169951,169975,169976,169987,169988,170016,170017,170043,170044,170056,170057,170058,170059,170062,170063,170065,170066,170068,170069,170072,170073,170076,170077,170084,170085,170087,170088,170092,170093,170102,170103,170107,170108,170113,170114,170118,170119,170124,170125,170128,170129,170133,170134,170138,170139,170146,170147,170152,170153,170156,170157,170162,170163,170167,170168,170171,170172,170177,170178,170182,170183,170187,170188,170191,170192,170198,170199,170202,170203,170208,170209,170215,170216,170219,170220,170230,170231,170233,170234,170239,170240,170244,170245,170260,170261,170264,170265,170269,170270,170275,170276,170281,170282,170287,170288,170293,170294,170298,170299,170301,170302,170308,170309,170315,170316,170322,170323,170327,170328,170335,170336,170342,170343,170346,170347,170353,170354,170360,170361,170368,170369,170372,170373,170383,170384,170387,170388,170399,170400,170403,170404,170408,170409,170414,170415,170420,170421,170427,170428,170436,170437,170442,170443,170450,170451,170455,170456,170458,170459,170463,170464,170469,170470,170475,170476,170483,170484,170491,170492,170495,170496,170504,170505,170506,170507,170514,170515,170522,170523,170529,170530,170586,170587,170609,170610,170617,170618,170627,170628,170635,170636,170644,170645,170657,170658,170669,170670,170680,170681,170693,170694,170702,170703,170711,170712,170722,170723,170733,170734,170742,170743,170751,170752,170756,170757,170764,170765,170775,170776,170786,170787,170797,170798,170849,170850,170858,170859,170867,170868,170883,170884,170888,170889,170902,170903,170911,170912,170955,170956,170969,170970,170986,170987,170996,170997,171005,171006,171034,171035,171047,171048,171058,171059,171072,171073,171083,171084,171095,171096,171110,171111,171122,171123,171140,171141,171147,171148,171152,171153,171194,171195,171205,171206,171215,171216,171227,171228,171238,171239,171246,171247,171256,171257,171268,171269,171280,171281,171285,171286,171295,171296,171305,171306,171316,171317,171324,171325,171333,171334,171348,171349,171377,171378,171388,171389,171411,171412,171470,171471,171485,171486,171491,171492,171536,171537,171550,171551,171566,171567,171582,171583,171589,171590,171603,171604,171615,171616,171628,171629,171637,171638,171649,171650,171660,171661,171688,171689,171767,171768,171779,171780,171790,171791,171802,171803,171811,171812,171834,171835,171842,171843,171853,171854,171863,171864,171882,171883,171926,171927,171936,171937,171949,171950,171957,171958,171994,171995,172041,172042,172050,172051,172056,172057,172065,172066,172086,172087,172093,172094,172095,172096,172098,172099,172101,172102,172104,172105,172108,172109,172111,172112,172114,172115,172117,172118,172121,172122,172126,172127,172129,172130,172133,172134,172136,172137,172139,172140,172142,172143,172146,172147,172149,172150,172153,172154,172155,172156,172157,172158,172220,172221,172222,172223,172224,172225,172235,172236,172237,172238,172279,172280,172281,172282,172283,172284,172503,172504,172505,172506,172539,172540,172541,172542,172543,172544,172779,172780,172781,172782,172790,172791,172792,172793,172794,172795,172808,172809,172810,172811,172843,172844,172845,172846,172847,172848,172855,172856,172857,172858,173466,173467,173468,173469,173470,173471,173555,173556,173557,173558,173624,173625,173626,173627,173628,173629,173723,173724,173725,173726,175681,175682,175683,175684,175685,175686,177211,177212,177213,177214,177361,177362,177363,177364,177365,177366,178056,178057,178058,178059,178066,178067,178068,178069,178070,178071,178072,178073,178074,178075,178087,178088,178089,178090,180678,180679,180680,180681,180682,180683,183047,183048,183049,183050,183533,183534,183535,183536,183537,183538,184433,184434,184435,184436,184593,184594,184595,184596,184597,184598,184874,184875,184876,184877,185860,185861,185862,185863,185864,185865,186451,186452,186453,186454,186460,186461,186462,186463,186464,186465,186475,186476,186477,186478,186491,186492,186493,186494,186495,186496,186530,186531,186532,186533,186539,186540,186541,186542,186543,186544,186555,186556,186557,186558,186618,186619,186620,186621,186622,186623,186629,186630,186631,186632,186866,186867,186868,186869,186870,186871,187028,187029,187030,187031,187078,187079,187080,187081,187082,187083,187216,187217,187218,187219,188898,188899,188900,188901,188902,188903,190210,190211,190212,190213,190223,190224,190225,190226,190227,190228,190279,190280,190281,190282,190318,190319,190320,190321,190322,190323,190324,190325,190326,190327,190383,190384,190385,190386,190391,190392,190393,190394,190395,190396,190419,190420,190421,190422,191836,191837,191838,191839,191840,191841,192890,192891,192892,192893,192896,192897,192898,192899,192900,192901,192914,192915,192916,192917,192923,192924,192925,192926,192927,192928,192944,192945,192946,192947,192959,192960,192961,192962,192963,192964,193044,193045,193046,193047,193048,193049,193050,193051,195449,195450,195451,195452,195495,195496,195497,195498,195499,195500,195617,195618,195619,195620,195623,195624,195625,195626,195627,195628,195639,195640,195641,195642,195703,195704,195705,195706,195707,195708,195797,195798,195799,195800,195933,195934,195935,195936,195937,195938,196184,196185,196186,196187,196198,196199,196200,196201,196202,196203,196246,196247,196248,196249,196250,196251,196252,196253,196254,196255,196256,196257,196258,196259,196260,196261,196262,196263,196264,196265,196266,196267,196268,196269,196270,196271,196272,196273,196282,196283,196284,196285,196286,196287,196296,196297,196298,196299,196356,196357,196358,196359,196360,196361,196536,196537,196538,196539,196540,196541,196542,196543,196544,196545,196569,196570,196571,196572,196573,196574,196584,196585,196586,196587,196588,196589,196590,196591,196592,196593,196594,196595,196596,196597,196604,196605,196606,196608,196609,229376,229378,229457,229458,252715,252716,252717,252718,252719,252751,252752,252806,252807,252842,252843,252844,252845,252846,252847,252848,252849,252850,252851,252852,252853,252854,252855,252856,252857,252858,252859,252860,252861,252862,252863,252864,252865,252866,252867,252868,252869,252870,252871,252872,252873,252874,252875,252876,252877,252878,252879,253035,253036,253144,253145,253288,253289,253390,253391,253581,253582,253741,253742,253805,253806,253954,253955,254159,254160,254254,254255,254409,254410,254472,254473,254474,254475,254476,254477,254478,254479,254480,254481,254482,254483,254484,254485,254494,254495,254496,254497,254499,254500,254501,254502,254529,254530,254531,254532,254558,254559,254560,254561,254588,254589,254590,254591,254603,254604,254605,254606,254614,254615,254616,254617,254621,254622,254623,254624,254630,254631,254632,254633,254634,254635,254636,254637,254639,254640,254641,254642,254651,254652,254653,254654,254655,254656,254657,254658,254659,254660,254661,254662,254663,254664,254665,254666,254744,254745,254746,254747,254748,254749,254750,254751,254752,254753,254754,254755,254756,254757,254758,254759,254761,254762,254763,254764,254765,254766,254767,254768,254804,254805,254806,254807,254843,254844,254845,254846,254847,254848,254849,254850,254851,254852,254853,254854,254855,254856,254858,254859,254861,254862,254863,254864,254865,254866,254867,254868,254869,254870,254871,254872,254873,254874,254875,254876,254877,254878,254879,254880,254881,254882,260303,260304,260305,260306,260307,260308,260309,260310,260311,260312,260313,260314,260318,260319,260322,260323,260327,260328,260332,260333,260337,260338,260339,260340,260341,260342,260345,260346,260347,260348,260349,260350,260351,260352,260353,260354,260355,260356,260357,260358,260359,260360,260361,260362,260363,260364,260365,260366,260367,260368,260369,260370,260371,260372,260373,260374,260375,260376,260377,260378,260379,260380,260381,260382,260383,260384,260385,260386,260387,260388,260389,260390,260391,260392,260393,260394,260395,260396,260397,260398,260399,260400,260401,260402,260403,260404,260405,260406,260407,260408,260409,260410,260411,260412,260413,260414,260415,260416,260417,260418,260419,260420,260421,260422,260426,260427,260432,260433,260434,260435,260558,260559,260560,260561,260562,260563,260564,260565,260566,260567,260568,260569,260570,260571,260573,260574,260575,260576,260578,260579,260580,260581,260583,260584,260585,260586,260588,260589,260590,260591,260593,260594,260595,260596,260598,260599,260600,260601,260603,260604,260605,260606,260607,260608,260609,260610,260611,260612,260613,260614,260620,260621,260622,260623,260624,260625,260631,260632,260633,260634,260715,260716,260717,260718,260719,260720,261106,261107,261108,261109,261111,261112,261113,261114,261115,261116,261122,261123,261124,261125,261130,261131,261132,261133,261134,261135,261152,261153,261154,261155,261185,261186,261187,261188,261189,261190,261209,261210,261211,261212,261222,261223,261224,261225,261226,261227,261250,261251,261252,261253,261254,261255,261256,261257,261259,261260,261261,261262,261266,261267,261268,261269,261271,261272,261273,261274,261276,261277,261278,261279,261281,261282,261283,261284,261286,261287,261288,261289,261291,261292,261293,261294,261296,261297,261298,261299,261302,261303,261304,261305,261307,261308,261309,261310,261313,261314,261315,261316,261318,261319,261320,261321,261331,261332,261333,261334,261335,261336,261337,261338,261339,261340,261341,261342,261343,261344,261349,261350,261351,261352,261353,261354,261361,261362,261363,261364,261386,261387,261388,261389,261390,261391,261436,261437,261438,261439,261453,261454,261455,261456,261457,261458,261474,261475,261476,261477,261478,261479,261480,261481,261494,261495,261496,261497,261499,261500,261501,261502,261504,261505,261506,261507,261509,261510,261511,261512,261514,261515,261516,261517,261519,261520,261521,261522,261524,261525,261526,261527,261529,261530,261531,261532,261534,261535,261536,261537,261539,261540,261541,261542,261549,261550,261551,261552,261554,261555,261556,261557,261558,261559,261560,261561,261562,261563,261564,261565,261566,261567,261572,261573,261574,261575,261576,261577,261584,261585,261586,261587,261591,261592,261593,261594,261595,261596,261603,261604,261605,261606,261607,261608,261609,261610,261612,261613,261614,261615,261617,261618,261619,261620,261622,261623,261624,261625,261627,261628,261629,261630,261632,261633,261634,261635,261637,261638,261639,261640,261748,261749,261750,261751,261752,261753,261754,261755,261756,261757,261758,261759,261760,261761,261762,261763,261764,261765,261766,261767,261768,261769,261770,261771,261779,261780,261781,261782,261790,261791,261792,261793,261794,261795,261802,261803,261804,261805,261812,261813,261814,261815,261816,261817,261818,261819,261820,261821,261822,261823,261832,261833,261834,261835,261836,261837,261853,261854,261855,261856,261858,261859,261860,261861,261863,261864,261865,261866,261868,261869,261870,261871,261876,261877,261878,261879,261881,261882,261883,261884,261885,261886,261887,261888,261893,261894,261895,261896,261897,261898,261908,261909,261910,261911,261936,261937,261938,261939,261940,261941,262027,262028,262029,262030,262093,262094,262095,262096,262097,262098,262099,262100,262115,262116,262117,262118,262119,262120,262139,262140,262141,262144,262145,294912,294914,294993,294994,295487,295488,300403,300405,300406,300407,300408,300409,300410,300411,300421,300422,300423,300424,300459,300460,300466,300467,300468,300469,300482,300483,300496,300497,300498,300499,300514,300515,301303,301304,301305,301306,301307,301308,301309,301310,305216,305217,305275,305276,305277,305278,305279,305280,305281,305282,305460,305461,305468,305469,305470,305471,305487,305488,305498,305499,305500,305501,305520,305521,305533,305534,305535,305536,305556,305557,305578,305579,305580,305581,305598,305599,305606,305607,305608,305609,305636,305637,305665,305666,305667,305668,305719,305720,305753,305754,305755,305756,305772,305773,305782,305783,305784,305785,305795,305796,305899,305900,305901,305902,305933,305934,306479,306480,306481,306482,308207,308208,308223,308224,308225,308226,308241,308242,308308,308309,308310,308311,308324,308325,308335,308336,308337,308338,308360,308361,308464,308465,308466,308467,308514,308515,308521,308522,308523,308524,308532,308533,308542,308543,308544,308545,308567,308568,308578,308579,308580,308581,308591,308592,308624,308625,308626,308627,308653,308654,313384,313385,313386,313387,313388,313389,313390,313391,314050,314051,314415,314416,314417,314418,314419,314420,314438,314439,314440,314441,314468,314469,314470,314471,314472,314473,314553,314554,314555,314556,314557,314558,314559,314560,314567,314568,314569,314570,314571,314572") == "cbbbf6b13dd830ac05fda66a71f6da0e3d311b5b" || 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", "3724,1,80,81,306,2816,2817,2818,2819,2820,2821,2822,2823,2832,2833,2940,2941,2942,2943,3036,3037,3045,3046,3047,3048,3049,3050,3051,3052,3069,3070,3089,3090,3091,3092,3102,3103,3157,3158,3159,3160,3172,3173,3177,3178,3179,3180,3190,3191,3205,3206,3207,3208,3244,3245,3254,3255,3256,3257,3300,3301,3327,3328,3329,3330,3382,3383,3392,3393,3394,3395,3433,3434,3446,3447,3448,3449,3450,3451,3530,3531,3532,3533,3766,3767,3768,6942,6943,6944,8086,8087,8311,8312,9151,9152,9156,9157,9158,9159,9168,9169,9177,9178,9179,9180,9208,9209,9274,9275,9276,9277,9345,9346,9354,9355,9356,9357,9386,9387,9393,9394,9395,9396,9417,9418,9422,9423,9424,9425,9433,9434,9440,9441,9442,9443,9461,9462,9467,9468,9469,9470,9482,9483,9488,9489,9490,9491,9506,9507,9513,9514,9515,9516,9529,9530,9531,9532,9533,9534,9612,9613,9614,9615,9616,9617,9629,9630,9634,9635,9636,9637,9638,9639,9698,9699,9700,9701,9702,9703,9768,9769,9770,9771,9772,9773,21723,21725,21987,21988,22999,23000,23043,23044,23074,23075,23403,23404,24372,24406,24980,24981,25086,25087,25379,25380,25592,25593,26513,26516,26517,26518,26584,26585,26586,26587,26753,26754,26898,26899,27072,27073,27244,27245,27605,27606,27623,27865,27868,27869,27878,27879,27880,27881,27898,27899,27920,27921,28030,28031,28069,28070,28073,28074,28085,28086,28552,28553,28554,28555,28577,28578,28599,28600,28839,28840,29952,29953,30249,30250,30368,30369,30846,30847,30848,30849,31374,31375,31390,31391,31422,31423,31484,31485,31491,31492,32768,32770,32849,32850,48416,48419,48424,48425,48442,48443,48472,48473,65531,65532,65533,65534,65536,65537,66182,66183,66184,66185,66186,66491,66492,66556,66557,66558,66559,66646,66647,67310,67311,67316,67317,67322,67323,67333,67334,67347,67348,67363,67364,67392,67393,67403,67404,67441,67442,67714,67715,67716,67717,67718,67719,67720,67721,67794,67795,67868,67869,67912,67913,67914,67915,67918,67919,67920,67921,67922,67923,67924,67925,67926,67927,67929,67930,67936,67937,67942,67943,68018,68019,68022,68023,68028,68029,68030,68031,68032,68033,68034,68035,68036,68037,68038,68039,68045,68046,68047,68048,68069,68070,68093,68094,68095,68096,68107,68108,68151,68152,68203,68204,68523,68524,68631,68632,68633,68634,68642,68643,68648,68649,68661,68662,68676,68677,68720,68721,68734,68735,68780,68781,68792,68793,68900,68901,69217,69218,69316,69317,69354,69355,69384,69385,69404,69405,69413,69414,69598,69599,69741,69742,69752,69753,69770,69771,69780,69781,69915,69916,69922,69923,69952,69953,69983,69984,70173,70174,70180,70181,70187,70188,70193,70194,70198,70199,70212,70213,70221,70222,70226,70227,70257,70258,70275,70276,70306,70307,70361,70362,70379,70380,70410,70411,70430,70431,70439,70440,70447,70448,70471,70472,70521,70522,70533,70534,70538,70539,70543,70544,71349,71350,71354,71355,71359,71360,71376,71377,71381,71382,71388,71389,71393,71394,71399,71400,71405,71406,71410,71411,71416,71417,71422,71423,71427,71428,71432,71433,71438,71439,71444,71445,71450,71451,71456,71457,71461,71462,71467,71468,71473,71474,71478,71479,71484,71485,71490,71491,71495,71496,71501,71502,71507,71508,71512,71513,71518,71519,71524,71525,71529,71530,71535,71536,71541,71542,71546,71547,71552,71553,71558,71559,71563,71564,71569,71570,71575,71576,71580,71581,71586,71587,71592,71593,71597,71598,71603,71604,71609,71610,71614,71615,71620,71621,71626,71627,71631,71632,71637,71638,71643,71644,71651,71652,71659,71660,71673,71674,71679,71680,71702,71703,71732,71733,71775,71776,71812,71813,71819,71820,71878,71879,71883,71884,71902,71903,71907,71908,72081,72082,72251,72252,72258,72259,72273,72274,72283,72284,72293,72294,72303,72304,72313,72314,72323,72324,72333,72334,72343,72344,72353,72354,72363,72364,72378,72379,72388,72389,72398,72399,72413,72414,72423,72424,72433,72434,72443,72444,72453,72454,72463,72464,72473,72474,72483,72484,72493,72494,72503,72504,72518,72519,72528,72529,72538,72539,72548,72549,72558,72559,72573,72574,72583,72584,72593,72594,72603,72604,72618,72619,72628,72629,72638,72639,72648,72649,72663,72664,72673,72674,72683,72684,72693,72694,72703,72704,72718,72719,72728,72729,72738,72739,72748,72749,72758,72759,72768,72769,72777,72778,72792,72793,72802,72803,72812,72813,72822,72823,72832,72833,72842,72843,72852,72853,72862,72863,72872,72873,72887,72888,72897,72898,72907,72908,72917,72918,72927,72928,72937,72938,72947,72948,72957,72958,72967,72968,72977,72978,72987,72988,73002,73003,73012,73013,73022,73023,73032,73033,73042,73043,73052,73053,73067,73068,73077,73078,73087,73088,73097,73098,73107,73108,73117,73118,73127,73128,73137,73138,73152,73153,73162,73163,73172,73173,73182,73183,73197,73198,73212,73213,73222,73223,73232,73233,73242,73243,73252,73253,73262,73263,73272,73273,73287,73288,73297,73298,73307,73308,73317,73318,73332,73333,73342,73343,73352,73353,73362,73363,73377,73378,73387,73388,73397,73398,73407,73408,73422,73423,73432,73433,73442,73443,73452,73453,73462,73463,73472,73473,73487,73488,73497,73498,73507,73508,73517,73518,73527,73528,73542,73543,73552,73553,73562,73563,73572,73573,73582,73583,73592,73593,73607,73608,73617,73618,73627,73628,73637,73638,73647,73648,73657,73658,73672,73673,73682,73683,73692,73693,73702,73703,73712,73713,73722,73723,73732,73733,73742,73743,73752,73753,73762,73763,73777,73778,73787,73788,73797,73798,73807,73808,73817,73818,73827,73828,73837,73838,73847,73848,73857,73858,73867,73868,73882,73883,73892,73893,73902,73903,73912,73913,73922,73923,73932,73933,73942,73943,73952,73953,73962,73963,73972,73973,73987,73988,73997,73998,74007,74008,74017,74018,74027,74028,74037,74038,74047,74048,74057,74058,74067,74068,74082,74083,74092,74093,74102,74103,74112,74113,74122,74123,74132,74133,74142,74143,74152,74153,74162,74163,74172,74173,74182,74183,74192,74193,74202,74203,74217,74218,74227,74228,74237,74238,74247,74248,74257,74258,74267,74268,74277,74278,74287,74288,74297,74298,74312,74313,74322,74323,74332,74333,74342,74343,74352,74353,74362,74363,74372,74373,74387,74388,74397,74398,74407,74408,74417,74418,74427,74428,74437,74438,74447,74448,74457,74458,74467,74468,74477,74478,74487,74488,74497,74498,74512,74513,74522,74523,74532,74533,74542,74543,74552,74553,74562,74563,74572,74573,74582,74583,74592,74593,74602,74603,74617,74618,74627,74628,74637,74638,74647,74648,74662,74663,74672,74673,74682,74683,74692,74693,74702,74703,74712,74713,74722,74723,74732,74733,74742,74743,74752,74753,74767,74768,74777,74778,74787,74788,74797,74798,74807,74808,74817,74818,74827,74828,74837,74838,74852,74853,74862,74863,74872,74873,74882,74883,74892,74893,74902,74903,74917,74918,74927,74928,74937,74938,74947,74948,74957,74958,74967,74968,74977,74978,74987,74988,74997,74998,75012,75013,75022,75023,75032,75033,75042,75043,75153,75154,75217,75218,75222,75223,75229,75230,75243,75244,75250,75251,75309,75310,75331,75332,75345,75346,75378,75379,75472,75473,75487,75488,75497,75498,75542,75543,75575,75576,75586,75587,75593,75594,75599,75600,75713,75714,75733,75734,75739,75740,76416,76417,76436,76437,76449,76450,76463,76464,76527,76528,76533,76534,76540,76541,76547,76548,76555,76556,76625,76626,76634,76635,76642,76643,76662,76663,76684,76685,76954,76955,81777,81778,81807,81808,81815,81816,81930,81931,81953,81954,82004,82005,82034,82035,82059,82060,82073,82074,82079,82080,82093,82094,82098,82099,82134,82135,82141,82142,82148,82149,82157,82158,82167,82168,82176,82177,82233,82234,82252,82253,82284,82285,82290,82291,82302,82303,82358,82359,82371,82372,82540,82541,82555,82556,82631,82632,82690,82691,82712,82713,82757,82758,82772,82773,82777,82778,82783,82784,82789,82790,82795,82796,82801,82802,82807,82808,82815,82816,83118,83119,83123,83124,83151,83152,83165,83166,83170,83171,83177,83178,83187,83188,83219,83220,83225,83226,83232,83233,83240,83241,83248,83249,83253,83254,83258,83259,83265,83266,83272,83273,83279,83280,83285,83286,83291,83292,83297,83298,83303,83304,83309,83310,83314,83315,83320,83321,83326,83327,83332,83333,83338,83339,83345,83346,83351,83352,83357,83358,83362,83363,83369,83370,83376,83377,83383,83384,83393,83394,83403,83404,83411,83412,83417,83418,83431,83432,83441,83442,83447,83448,83455,83456,83461,83462,83467,83468,83473,83474,83480,83481,83485,83486,83491,83492,83497,83498,83502,83503,83508,83509,83514,83515,83519,83520,83524,83525,83530,83531,83535,83536,83543,83544,83550,83551,83555,83556,83561,83562,83704,83705,83717,83718,83746,83747,83768,83769,83807,83808,83949,83950,83983,83984,83990,83991,84126,84127,84145,84146,84182,84183,84192,84193,84214,84215,84464,84465,84506,84507,84519,84520,84527,84528,84534,84535,84540,84541,84549,84550,84556,84557,84588,84589,84606,84607,84621,84622,84630,84631,84637,84638,84644,84645,84663,84664,84695,84696,84720,84721,84769,84770,84781,84782,84788,84789,84803,84804,84806,84807,84814,84815,84824,84825,84831,84832,84857,84858,84877,84878,84895,84896,84925,84926,84930,84931,84935,84936,84940,84941,84954,84955,84957,84958,87423,87424,87426,87427,87431,87432,87437,87438,87444,87445,87500,87501,87503,87504,87915,87916,89135,89136,89143,89144,89322,89323,89327,89328,89335,89336,89379,89380,89401,89402,89406,89407,89411,89412,89421,89422,89427,89428,89433,89434,89442,89443,89477,89478,89482,89483,89493,89494,89501,89502,89506,89507,89512,89513,89693,89694,89730,89731,89738,89739,89757,89758,89784,89785,89813,89814,89821,89822,89827,89828,89839,89840,89860,89861,89867,89868,89896,89897,89936,89937,89944,89945,89956,89957,90022,90023,90041,90042,90075,90076,90080,90081,90089,90090,90095,90096,90105,90106,90111,90112,90141,90142,90281,90282,90292,90293,90297,90298,90303,90304,90323,90324,90325,90326,90337,90338,90346,90347,90358,90359,90366,90367,90373,90374,90380,90381,90392,90393,90399,90400,90407,90408,90415,90416,90422,90423,90427,90428,90434,90435,90439,90440,90447,90448,90454,90455,90466,90467,90471,90472,90480,90481,90488,90489,90495,90496,90502,90503,90510,90511,90518,90519,90524,90525,90531,90532,90538,90539,90540,90541,90578,90579,90616,90617,90656,90657,90659,90660,90661,90662,90663,90664,90676,90677,90678,90679,90680,90681,90702,90703,90714,90715,90716,90717,90718,90719,90843,90844,90845,90846,90852,90853,90854,90855,90856,90857,90858,90859,90860,90861,90862,90863,90871,90872,90877,90878,90884,90885,90891,90892,90904,90905,90911,90912,90932,90933,90944,90945,90946,90947,90997,90998,91004,91005,91010,91011,91065,91066,91071,91072,91077,91078,91084,91085,91090,91091,91265,91266,91273,91274,91279,91280,91285,91286,91292,91293,91302,91303,91357,91358,91370,91371,91400,91401,91406,91407,91413,91414,91419,91420,91427,91428,91433,91434,91439,91440,91445,91446,91522,91523,91541,91542,91617,91618,91623,91624,91630,91631,91836,98304,98306,98385,98386,106921,106922,107121,107122,127835,127836,127837,127838,131072,131073,163840,163842,163921,163922,168362,168369,168370,168374,168375,168381,168382,168384,168409,168413,168414,168432,168433,168451,168452,168456,168457,168460,168461,168465,168466,168477,168478,168484,168485,168498,168499,168509,168510,168517,168518,168521,168522,168526,168527,168531,168532,168535,168536,168539,168540,168544,168545,168549,168550,168553,168554,168558,168559,168562,168563,168567,168568,168572,168573,168585,168586,168590,168591,168592,168593,169623,169624,169629,169630,169638,169639,169644,169645,169647,169648,169649,169650,169657,169658,169676,169677,169682,169683,169687,169688,169693,169694,169705,169706,169712,169713,169718,169719,169729,169730,169735,169736,169737,169738,169739,169740,169741,169742,169746,169747,169749,169750,169756,169757,169760,169761,169768,169769,169772,169773,169802,169803,169816,169817,169841,169842,169878,169879,169905,169906,169950,169951,169975,169976,169987,169988,170016,170017,170043,170044,170056,170057,170058,170059,170062,170063,170065,170066,170068,170069,170072,170073,170076,170077,170084,170085,170087,170088,170092,170093,170102,170103,170107,170108,170113,170114,170118,170119,170124,170125,170128,170129,170133,170134,170138,170139,170146,170147,170152,170153,170156,170157,170162,170163,170167,170168,170171,170172,170177,170178,170182,170183,170187,170188,170191,170192,170198,170199,170202,170203,170208,170209,170215,170216,170219,170220,170230,170231,170233,170234,170239,170240,170244,170245,170260,170261,170264,170265,170269,170270,170275,170276,170281,170282,170287,170288,170293,170294,170298,170299,170301,170302,170308,170309,170315,170316,170322,170323,170327,170328,170335,170336,170342,170343,170346,170347,170353,170354,170360,170361,170368,170369,170372,170373,170383,170384,170387,170388,170399,170400,170403,170404,170408,170409,170414,170415,170420,170421,170427,170428,170436,170437,170442,170443,170450,170451,170455,170456,170458,170459,170463,170464,170469,170470,170475,170476,170483,170484,170491,170492,170495,170496,170504,170505,170506,170507,170514,170515,170522,170523,170529,170530,170586,170587,170609,170610,170617,170618,170627,170628,170635,170636,170644,170645,170657,170658,170669,170670,170680,170681,170693,170694,170702,170703,170711,170712,170722,170723,170733,170734,170742,170743,170751,170752,170756,170757,170764,170765,170775,170776,170786,170787,170797,170798,170849,170850,170858,170859,170867,170868,170883,170884,170888,170889,170902,170903,170911,170912,170955,170956,170969,170970,170986,170987,170996,170997,171005,171006,171034,171035,171047,171048,171058,171059,171072,171073,171083,171084,171095,171096,171110,171111,171122,171123,171140,171141,171147,171148,171152,171153,171194,171195,171205,171206,171215,171216,171227,171228,171238,171239,171246,171247,171256,171257,171268,171269,171280,171281,171285,171286,171295,171296,171305,171306,171316,171317,171324,171325,171333,171334,171348,171349,171377,171378,171388,171389,171411,171412,171470,171471,171485,171486,171491,171492,171536,171537,171550,171551,171566,171567,171582,171583,171589,171590,171603,171604,171615,171616,171628,171629,171637,171638,171649,171650,171660,171661,171688,171689,171767,171768,171779,171780,171790,171791,171802,171803,171811,171812,171834,171835,171842,171843,171853,171854,171863,171864,171882,171883,171926,171927,171936,171937,171949,171950,171957,171958,171994,171995,172041,172042,172050,172051,172056,172057,172065,172066,172086,172087,172093,172094,172095,172096,172098,172099,172101,172102,172104,172105,172108,172109,172111,172112,172114,172115,172117,172118,172121,172122,172126,172127,172129,172130,172133,172134,172136,172137,172139,172140,172142,172143,172146,172147,172149,172150,172153,172154,172155,172156,172157,172158,172220,172221,172222,172223,172224,172225,172235,172236,172237,172238,172279,172280,172281,172282,172283,172284,172503,172504,172505,172506,172539,172540,172541,172542,172543,172544,172779,172780,172781,172782,172790,172791,172792,172793,172794,172795,172808,172809,172810,172811,172843,172844,172845,172846,172847,172848,172855,172856,172857,172858,173466,173467,173468,173469,173470,173471,173555,173556,173557,173558,173624,173625,173626,173627,173628,173629,173723,173724,173725,173726,175681,175682,175683,175684,175685,175686,177211,177212,177213,177214,177361,177362,177363,177364,177365,177366,178056,178057,178058,178059,178066,178067,178068,178069,178070,178071,178072,178073,178074,178075,178087,178088,178089,178090,180678,180679,180680,180681,180682,180683,183047,183048,183049,183050,183533,183534,183535,183536,183537,183538,184433,184434,184435,184436,184593,184594,184595,184596,184597,184598,184874,184875,184876,184877,185860,185861,185862,185863,185864,185865,186451,186452,186453,186454,186460,186461,186462,186463,186464,186465,186475,186476,186477,186478,186491,186492,186493,186494,186495,186496,186530,186531,186532,186533,186539,186540,186541,186542,186543,186544,186555,186556,186557,186558,186618,186619,186620,186621,186622,186623,186629,186630,186631,186632,186866,186867,186868,186869,186870,186871,187028,187029,187030,187031,187078,187079,187080,187081,187082,187083,187216,187217,187218,187219,188898,188899,188900,188901,188902,188903,190210,190211,190212,190213,190223,190224,190225,190226,190227,190228,190279,190280,190281,190282,190318,190319,190320,190321,190322,190323,190324,190325,190326,190327,190383,190384,190385,190386,190391,190392,190393,190394,190395,190396,190419,190420,190421,190422,191836,191837,191838,191839,191840,191841,192890,192891,192892,192893,192896,192897,192898,192899,192900,192901,192914,192915,192916,192917,192923,192924,192925,192926,192927,192928,192944,192945,192946,192947,192959,192960,192961,192962,192963,192964,193044,193045,193046,193047,193048,193049,193050,193051,195449,195450,195451,195452,195495,195496,195497,195498,195499,195500,195617,195618,195619,195620,195623,195624,195625,195626,195627,195628,195639,195640,195641,195642,195703,195704,195705,195706,195707,195708,195797,195798,195799,195800,195933,195934,195935,195936,195937,195938,196184,196185,196186,196187,196198,196199,196200,196201,196202,196203,196246,196247,196248,196249,196250,196251,196252,196253,196254,196255,196256,196257,196258,196259,196260,196261,196262,196263,196264,196265,196266,196267,196268,196269,196270,196271,196272,196273,196282,196283,196284,196285,196286,196287,196296,196297,196298,196299,196356,196357,196358,196359,196360,196361,196536,196537,196538,196539,196540,196541,196542,196543,196544,196545,196569,196570,196571,196572,196573,196574,196584,196585,196586,196587,196588,196589,196590,196591,196592,196593,196594,196595,196596,196597,196604,196605,196606,196608,196609,229376,229378,229457,229458,252715,252716,252717,252718,252719,252751,252752,252806,252807,252842,252843,252844,252845,252846,252847,252848,252849,252850,252851,252852,252853,252854,252855,252856,252857,252858,252859,252860,252861,252862,252863,252864,252865,252866,252867,252868,252869,252870,252871,252872,252873,252874,252875,252876,252877,252878,252879,253035,253036,253144,253145,253288,253289,253390,253391,253581,253582,253741,253742,253805,253806,253954,253955,254159,254160,254254,254255,254409,254410,254472,254473,254474,254475,254476,254477,254478,254479,254480,254481,254482,254483,254484,254485,254494,254495,254496,254497,254499,254500,254501,254502,254529,254530,254531,254532,254558,254559,254560,254561,254588,254589,254590,254591,254603,254604,254605,254606,254614,254615,254616,254617,254621,254622,254623,254624,254630,254631,254632,254633,254634,254635,254636,254637,254639,254640,254641,254642,254651,254652,254653,254654,254655,254656,254657,254658,254659,254660,254661,254662,254663,254664,254665,254666,254744,254745,254746,254747,254748,254749,254750,254751,254752,254753,254754,254755,254756,254757,254758,254759,254761,254762,254763,254764,254765,254766,254767,254768,254804,254805,254806,254807,254843,254844,254845,254846,254847,254848,254849,254850,254851,254852,254853,254854,254855,254856,254858,254859,254861,254862,254863,254864,254865,254866,254867,254868,254869,254870,254871,254872,254873,254874,254875,254876,254877,254878,254879,254880,254881,254882,260303,260304,260305,260306,260307,260308,260309,260310,260311,260312,260313,260314,260318,260319,260322,260323,260327,260328,260332,260333,260337,260338,260339,260340,260341,260342,260345,260346,260347,260348,260349,260350,260351,260352,260353,260354,260355,260356,260357,260358,260359,260360,260361,260362,260363,260364,260365,260366,260367,260368,260369,260370,260371,260372,260373,260374,260375,260376,260377,260378,260379,260380,260381,260382,260383,260384,260385,260386,260387,260388,260389,260390,260391,260392,260393,260394,260395,260396,260397,260398,260399,260400,260401,260402,260403,260404,260405,260406,260407,260408,260409,260410,260411,260412,260413,260414,260415,260416,260417,260418,260419,260420,260421,260422,260426,260427,260432,260433,260434,260435,260558,260559,260560,260561,260562,260563,260564,260565,260566,260567,260568,260569,260570,260571,260573,260574,260575,260576,260578,260579,260580,260581,260583,260584,260585,260586,260588,260589,260590,260591,260593,260594,260595,260596,260598,260599,260600,260601,260603,260604,260605,260606,260607,260608,260609,260610,260611,260612,260613,260614,260620,260621,260622,260623,260624,260625,260631,260632,260633,260634,260715,260716,260717,260718,260719,260720,261106,261107,261108,261109,261111,261112,261113,261114,261115,261116,261122,261123,261124,261125,261130,261131,261132,261133,261134,261135,261152,261153,261154,261155,261185,261186,261187,261188,261189,261190,261209,261210,261211,261212,261222,261223,261224,261225,261226,261227,261250,261251,261252,261253,261254,261255,261256,261257,261259,261260,261261,261262,261266,261267,261268,261269,261271,261272,261273,261274,261276,261277,261278,261279,261281,261282,261283,261284,261286,261287,261288,261289,261291,261292,261293,261294,261296,261297,261298,261299,261302,261303,261304,261305,261307,261308,261309,261310,261313,261314,261315,261316,261318,261319,261320,261321,261331,261332,261333,261334,261335,261336,261337,261338,261339,261340,261341,261342,261343,261344,261349,261350,261351,261352,261353,261354,261361,261362,261363,261364,261386,261387,261388,261389,261390,261391,261436,261437,261438,261439,261453,261454,261455,261456,261457,261458,261474,261475,261476,261477,261478,261479,261480,261481,261494,261495,261496,261497,261499,261500,261501,261502,261504,261505,261506,261507,261509,261510,261511,261512,261514,261515,261516,261517,261519,261520,261521,261522,261524,261525,261526,261527,261529,261530,261531,261532,261534,261535,261536,261537,261539,261540,261541,261542,261549,261550,261551,261552,261554,261555,261556,261557,261558,261559,261560,261561,261562,261563,261564,261565,261566,261567,261572,261573,261574,261575,261576,261577,261584,261585,261586,261587,261591,261592,261593,261594,261595,261596,261603,261604,261605,261606,261607,261608,261609,261610,261612,261613,261614,261615,261617,261618,261619,261620,261622,261623,261624,261625,261627,261628,261629,261630,261632,261633,261634,261635,261637,261638,261639,261640,261748,261749,261750,261751,261752,261753,261754,261755,261756,261757,261758,261759,261760,261761,261762,261763,261764,261765,261766,261767,261768,261769,261770,261771,261779,261780,261781,261782,261790,261791,261792,261793,261794,261795,261802,261803,261804,261805,261812,261813,261814,261815,261816,261817,261818,261819,261820,261821,261822,261823,261832,261833,261834,261835,261836,261837,261853,261854,261855,261856,261858,261859,261860,261861,261863,261864,261865,261866,261868,261869,261870,261871,261876,261877,261878,261879,261881,261882,261883,261884,261885,261886,261887,261888,261893,261894,261895,261896,261897,261898,261908,261909,261910,261911,261936,261937,261938,261939,261940,261941,262027,262028,262029,262030,262093,262094,262095,262096,262097,262098,262099,262100,262115,262116,262117,262118,262119,262120,262139,262140,262141,262144,262145,294912,294914,294993,294994,295487,295488,300403,300405,300406,300407,300408,300409,300410,300411,300421,300422,300423,300424,300459,300460,300466,300467,300468,300469,300482,300483,300496,300497,300498,300499,300514,300515,301303,301304,301305,301306,301307,301308,301309,301310,305216,305217,305275,305276,305277,305278,305279,305280,305281,305282,305460,305461,305468,305469,305470,305471,305487,305488,305498,305499,305500,305501,305520,305521,305533,305534,305535,305536,305556,305557,305578,305579,305580,305581,305598,305599,305606,305607,305608,305609,305636,305637,305665,305666,305667,305668,305719,305720,305753,305754,305755,305756,305772,305773,305782,305783,305784,305785,305795,305796,305899,305900,305901,305902,305933,305934,306479,306480,306481,306482,308207,308208,308223,308224,308225,308226,308241,308242,308308,308309,308310,308311,308324,308325,308335,308336,308337,308338,308360,308361,308464,308465,308466,308467,308514,308515,308521,308522,308523,308524,308532,308533,308542,308543,308544,308545,308567,308568,308578,308579,308580,308581,308591,308592,308624,308625,308626,308627,308653,308654,313384,313385,313386,313387,313388,313389,313390,313391,314050,314051,314415,314416,314417,314418,314419,314420,314438,314439,314440,314441,314468,314469,314470,314471,314472,314473,314553,314554,314555,314556,314557,314558,314559,314560,314567,314568,314569,314570,314571,314572") && block_image_verify("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat"), ui_print("system recovered successfully."), abort("E1004: system partition fails to recover"));
endif;

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

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

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

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