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/134/brian01170247:userdebug/test-keys");
ui_print("Target: qcom/msm8909/msm8909:7.1.2/133/brian01150104:userdebug/test-keys");
ui_print("Verifying current system...");
getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/134/brian01170247:userdebug/test-keys" ||
    getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/133/brian01150104:userdebug/test-keys" ||
    abort("E3001: Package expects build fingerprint of qcom/msm8909/msm8909:7.1.2/134/brian01170247:userdebug/test-keys or qcom/msm8909/msm8909:7.1.2/133/brian01150104:userdebug/test-keys; this device has " + getprop("ro.build.fingerprint") + ".");
apply_patch_check("EMMC:/dev/block/bootdevice/by-name/boot:16276776:069b77af2ca1eb3e402f4e5b66fdd01da2349996:16276776:d51109ab17b4aee63642506175ccbc6ff6ef8069") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:16276776:069b77af2ca1eb3e402f4e5b66fdd01da2349996:16276776:d51109ab17b4aee63642506175ccbc6ff6ef8069\" has unexpected contents.");
apply_patch_space(22482944) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/bootdevice/by-name/system", "3694,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,67723,67724,67725,67726,67727,67800,67801,67874,67875,67918,67919,67920,67921,67924,67925,67926,67927,67928,67929,67930,67931,67932,67933,67935,67936,67942,67943,67948,67949,68024,68025,68028,68029,68034,68035,68036,68037,68038,68039,68040,68041,68042,68043,68044,68045,68051,68052,68053,68054,68075,68076,68099,68100,68101,68102,68113,68114,68157,68158,68209,68210,68529,68530,68637,68638,68639,68640,68648,68649,68654,68655,68667,68668,68682,68683,68726,68727,68740,68741,68786,68787,68798,68799,68906,68907,69223,69224,69322,69323,69360,69361,69390,69391,69410,69411,69419,69420,69604,69605,69747,69748,69758,69759,69776,69777,69786,69787,69921,69922,69928,69929,69958,69959,69989,69990,70179,70180,70186,70187,70193,70194,70199,70200,70204,70205,70218,70219,70227,70228,70232,70233,70263,70264,70281,70282,70312,70313,70367,70368,70385,70386,70416,70417,70436,70437,70445,70446,70453,70454,70477,70478,70527,70528,70539,70540,70544,70545,70549,70550,71355,71356,71360,71361,71365,71366,71382,71383,71387,71388,71394,71395,71399,71400,71405,71406,71411,71412,71416,71417,71422,71423,71428,71429,71433,71434,71438,71439,71444,71445,71450,71451,71456,71457,71462,71463,71467,71468,71473,71474,71479,71480,71484,71485,71490,71491,71496,71497,71501,71502,71507,71508,71513,71514,71518,71519,71524,71525,71530,71531,71535,71536,71541,71542,71547,71548,71552,71553,71558,71559,71564,71565,71569,71570,71575,71576,71581,71582,71586,71587,71592,71593,71598,71599,71603,71604,71609,71610,71615,71616,71620,71621,71626,71627,71632,71633,71637,71638,71643,71644,71649,71650,71657,71658,71665,71666,71679,71680,71685,71686,71708,71709,71738,71739,71781,71782,71818,71819,71825,71826,71884,71885,71889,71890,71908,71909,71913,71914,72087,72088,72257,72258,72264,72265,72279,72280,72289,72290,72299,72300,72309,72310,72319,72320,72329,72330,72339,72340,72349,72350,72359,72360,72369,72370,72384,72385,72394,72395,72404,72405,72419,72420,72429,72430,72439,72440,72449,72450,72459,72460,72469,72470,72479,72480,72489,72490,72499,72500,72509,72510,72524,72525,72534,72535,72544,72545,72554,72555,72564,72565,72579,72580,72589,72590,72599,72600,72609,72610,72624,72625,72634,72635,72644,72645,72654,72655,72669,72670,72679,72680,72689,72690,72699,72700,72709,72710,72724,72725,72734,72735,72744,72745,72754,72755,72764,72765,72774,72775,72783,72784,72798,72799,72808,72809,72818,72819,72828,72829,72838,72839,72848,72849,72858,72859,72868,72869,72878,72879,72893,72894,72903,72904,72913,72914,72923,72924,72933,72934,72943,72944,72953,72954,72963,72964,72973,72974,72983,72984,72993,72994,73008,73009,73018,73019,73028,73029,73038,73039,73048,73049,73058,73059,73073,73074,73083,73084,73093,73094,73103,73104,73113,73114,73123,73124,73133,73134,73143,73144,73158,73159,73168,73169,73178,73179,73188,73189,73203,73204,73218,73219,73228,73229,73238,73239,73248,73249,73258,73259,73268,73269,73278,73279,73293,73294,73303,73304,73313,73314,73323,73324,73338,73339,73348,73349,73358,73359,73368,73369,73383,73384,73393,73394,73403,73404,73413,73414,73428,73429,73438,73439,73448,73449,73458,73459,73468,73469,73478,73479,73493,73494,73503,73504,73513,73514,73523,73524,73533,73534,73548,73549,73558,73559,73568,73569,73578,73579,73588,73589,73598,73599,73613,73614,73623,73624,73633,73634,73643,73644,73653,73654,73663,73664,73678,73679,73688,73689,73698,73699,73708,73709,73718,73719,73728,73729,73738,73739,73748,73749,73758,73759,73768,73769,73783,73784,73793,73794,73803,73804,73813,73814,73823,73824,73833,73834,73843,73844,73853,73854,73863,73864,73873,73874,73888,73889,73898,73899,73908,73909,73918,73919,73928,73929,73938,73939,73948,73949,73958,73959,73968,73969,73978,73979,73993,73994,74003,74004,74013,74014,74023,74024,74033,74034,74043,74044,74053,74054,74063,74064,74073,74074,74088,74089,74098,74099,74108,74109,74118,74119,74128,74129,74138,74139,74148,74149,74158,74159,74168,74169,74178,74179,74188,74189,74198,74199,74208,74209,74223,74224,74233,74234,74243,74244,74253,74254,74263,74264,74273,74274,74283,74284,74293,74294,74303,74304,74318,74319,74328,74329,74338,74339,74348,74349,74358,74359,74368,74369,74378,74379,74393,74394,74403,74404,74413,74414,74423,74424,74433,74434,74443,74444,74453,74454,74463,74464,74473,74474,74483,74484,74493,74494,74503,74504,74518,74519,74528,74529,74538,74539,74548,74549,74558,74559,74568,74569,74578,74579,74588,74589,74598,74599,74608,74609,74623,74624,74633,74634,74643,74644,74653,74654,74668,74669,74678,74679,74688,74689,74698,74699,74708,74709,74718,74719,74728,74729,74738,74739,74748,74749,74758,74759,74773,74774,74783,74784,74793,74794,74803,74804,74813,74814,74823,74824,74833,74834,74843,74844,74858,74859,74868,74869,74878,74879,74888,74889,74898,74899,74908,74909,74923,74924,74933,74934,74943,74944,74953,74954,74963,74964,74973,74974,74983,74984,74993,74994,75003,75004,75018,75019,75028,75029,75038,75039,75048,75049,75159,75160,75223,75224,75228,75229,75235,75236,75249,75250,75256,75257,75315,75316,75337,75338,75351,75352,75384,75385,75478,75479,75493,75494,75503,75504,75548,75549,75581,75582,75592,75593,75599,75600,75605,75606,75719,75720,75739,75740,75745,75746,76422,76423,76442,76443,76455,76456,76469,76470,76533,76534,76539,76540,76546,76547,76553,76554,76561,76562,76631,76632,76640,76641,76648,76649,76668,76669,76690,76691,76960,76961,81783,81784,81813,81814,81821,81822,81936,81937,81959,81960,82010,82011,82040,82041,82065,82066,82079,82080,82085,82086,82099,82100,82104,82105,82140,82141,82147,82148,82154,82155,82163,82164,82173,82174,82182,82183,82239,82240,82258,82259,82290,82291,82296,82297,82308,82309,82364,82365,82377,82378,82546,82547,82561,82562,82637,82638,82696,82697,82718,82719,82763,82764,82778,82779,82783,82784,82789,82790,82795,82796,82801,82802,82807,82808,82813,82814,82821,82822,83124,83125,83129,83130,83157,83158,83171,83172,83176,83177,83183,83184,83193,83194,83225,83226,83231,83232,83238,83239,83246,83247,83254,83255,83259,83260,83264,83265,83271,83272,83278,83279,83285,83286,83291,83292,83297,83298,83303,83304,83309,83310,83315,83316,83320,83321,83326,83327,83332,83333,83338,83339,83344,83345,83351,83352,83357,83358,83363,83364,83368,83369,83375,83376,83382,83383,83389,83390,83399,83400,83409,83410,83417,83418,83423,83424,83437,83438,83447,83448,83453,83454,83461,83462,83467,83468,83473,83474,83479,83480,83486,83487,83491,83492,83497,83498,83503,83504,83508,83509,83514,83515,83520,83521,83525,83526,83530,83531,83536,83537,83541,83542,83549,83550,83556,83557,83561,83562,83567,83568,83710,83711,83723,83724,83752,83753,83774,83775,83813,83814,83955,83956,83989,83990,83996,83997,84132,84133,84151,84152,84188,84189,84198,84199,84220,84221,84470,84471,84512,84513,84525,84526,84533,84534,84540,84541,84546,84547,84555,84556,84562,84563,84594,84595,84612,84613,84627,84628,84636,84637,84643,84644,84650,84651,84669,84670,84701,84702,84726,84727,84775,84776,84787,84788,84794,84795,84809,84810,84812,84813,84820,84821,84830,84831,84837,84838,84863,84864,84883,84884,84901,84902,84931,84932,84936,84937,84941,84942,84946,84947,84960,84961,84963,84964,87429,87430,87432,87433,87437,87438,87443,87444,87450,87451,87506,87507,87509,87510,87921,87922,89141,89142,89149,89150,89328,89329,89333,89334,89341,89342,89385,89386,89407,89408,89412,89413,89417,89418,89427,89428,89433,89434,89439,89440,89448,89449,89483,89484,89488,89489,89499,89500,89507,89508,89512,89513,89518,89519,89699,89700,89736,89737,89744,89745,89763,89764,89790,89791,89819,89820,89827,89828,89833,89834,89845,89846,89866,89867,89873,89874,89902,89903,89942,89943,89950,89951,89962,89963,90028,90029,90047,90048,90081,90082,90086,90087,90095,90096,90101,90102,90111,90112,90117,90118,90147,90148,90287,90288,90298,90299,90303,90304,90309,90310,90329,90330,90331,90332,90343,90344,90352,90353,90364,90365,90372,90373,90379,90380,90386,90387,90398,90399,90405,90406,90413,90414,90421,90422,90428,90429,90433,90434,90440,90441,90445,90446,90453,90454,90460,90461,90472,90473,90477,90478,90486,90487,90494,90495,90501,90502,90508,90509,90516,90517,90524,90525,90530,90531,90537,90538,90544,90545,90546,90547,90584,90585,90622,90623,90662,90663,90665,90666,90667,90668,90669,90670,90682,90683,90684,90685,90686,90687,90708,90709,90720,90721,90722,90723,90724,90725,90849,90850,90851,90852,90858,90859,90860,90861,90862,90863,90864,90865,90866,90867,90868,90869,90877,90878,90883,90884,90890,90891,90897,90898,90910,90911,90917,90918,90938,90939,90950,90951,90952,90953,91003,91004,91010,91011,91016,91017,91071,91072,91077,91078,91083,91084,91090,91091,91096,91097,91271,91272,91279,91280,91285,91286,91291,91292,91298,91299,91308,91309,91363,91364,91376,91377,91406,91407,91412,91413,91419,91420,91425,91426,91433,91434,91439,91440,91445,91446,91451,91452,91528,91529,91547,91548,91623,91624,91629,91630,91636,91637,91842,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,168414,168434,168453,168454,168458,168459,168463,168464,168468,168469,168480,168481,168487,168488,168501,168502,168512,168513,168515,168516,168523,168524,168528,168529,168533,168534,168538,168539,168542,168543,168546,168547,168551,168552,168556,168557,168560,168561,168565,168566,168569,168570,168574,168575,168579,168580,168592,168593,168598,168599,169629,169630,169635,169636,169644,169645,169650,169651,169653,169654,169655,169656,169663,169664,169682,169683,169688,169689,169693,169694,169699,169700,169711,169712,169718,169719,169724,169725,169735,169736,169741,169742,169743,169744,169745,169746,169747,169748,169752,169753,169755,169756,169762,169763,169766,169767,169774,169775,169778,169779,169808,169809,169822,169823,169847,169848,169884,169885,169911,169912,169956,169957,169981,169982,169993,169994,170022,170023,170049,170050,170062,170063,170064,170065,170068,170069,170071,170072,170074,170075,170078,170079,170082,170083,170090,170091,170093,170094,170098,170099,170108,170109,170113,170114,170119,170120,170124,170125,170130,170131,170134,170135,170139,170140,170144,170145,170152,170153,170158,170159,170162,170163,170168,170169,170173,170174,170177,170178,170183,170184,170188,170189,170193,170194,170197,170198,170204,170205,170208,170209,170214,170215,170221,170222,170225,170226,170236,170237,170239,170240,170245,170246,170250,170251,170266,170267,170270,170271,170275,170276,170281,170282,170287,170288,170293,170294,170299,170300,170304,170305,170307,170308,170314,170315,170321,170322,170328,170329,170333,170334,170341,170342,170348,170349,170352,170353,170359,170360,170366,170367,170374,170375,170378,170379,170389,170390,170393,170394,170405,170406,170409,170410,170414,170415,170420,170421,170426,170427,170433,170434,170442,170443,170448,170449,170456,170457,170461,170462,170464,170465,170469,170470,170475,170476,170481,170482,170489,170490,170497,170498,170501,170502,170510,170511,170512,170513,170520,170521,170528,170529,170535,170536,170592,170593,170615,170616,170623,170624,170633,170634,170641,170642,170650,170651,170663,170664,170675,170676,170686,170687,170699,170700,170708,170709,170717,170718,170728,170729,170739,170740,170748,170749,170757,170758,170762,170763,170770,170771,170781,170782,170792,170793,170803,170804,170855,170856,170864,170865,170873,170874,170889,170890,170894,170895,170908,170909,170917,170918,170961,170962,170975,170976,170992,170993,171002,171003,171011,171012,171040,171041,171053,171054,171064,171065,171078,171079,171089,171090,171101,171102,171116,171117,171128,171129,171146,171147,171153,171154,171158,171159,171200,171201,171211,171212,171221,171222,171233,171234,171244,171245,171252,171253,171262,171263,171274,171275,171286,171287,171291,171292,171301,171302,171311,171312,171322,171323,171330,171331,171339,171340,171354,171355,171383,171384,171394,171395,171417,171418,171476,171477,171491,171492,171497,171498,171542,171543,171556,171557,171572,171573,171588,171589,171595,171596,171609,171610,171621,171622,171634,171635,171643,171644,171655,171656,171666,171667,171694,171695,171773,171774,171785,171786,171796,171797,171808,171809,171817,171818,171840,171841,171848,171849,171859,171860,171869,171870,171888,171889,171932,171933,171942,171943,171955,171956,171963,171964,172000,172001,172047,172048,172056,172057,172062,172063,172071,172072,172092,172093,172099,172100,172101,172102,172104,172105,172107,172108,172110,172111,172114,172115,172117,172118,172120,172121,172123,172124,172127,172128,172132,172133,172135,172136,172139,172140,172142,172143,172145,172146,172148,172149,172152,172153,172155,172156,172159,172160,172161,172162,172163,172164,172226,172227,172228,172229,172230,172231,172241,172242,172243,172244,172285,172286,172287,172288,172289,172290,172509,172510,172511,172512,172545,172546,172547,172548,172549,172550,172785,172786,172787,172788,172796,172797,172798,172799,172800,172801,172814,172815,172816,172817,172849,172850,172851,172852,172853,172854,172861,172862,172863,172864,173472,173473,173474,173475,173476,173477,173561,173562,173563,173564,173630,173631,173632,173633,173634,173635,173729,173730,173731,173732,175687,175688,175689,175690,175691,175692,177217,177218,177219,177220,177367,177368,177369,177370,177371,177372,178062,178063,178064,178065,178072,178073,178074,178075,178076,178077,178078,178079,178080,178081,178093,178094,178095,178096,180684,180685,180686,180687,180688,180689,183053,183054,183055,183056,183539,183540,183541,183542,183543,183544,184439,184440,184441,184442,184599,184600,184601,184602,184603,184604,184880,184881,184882,184883,185866,185867,185868,185869,185870,185871,186457,186458,186459,186460,186466,186467,186468,186469,186470,186471,186481,186482,186483,186484,186497,186498,186499,186500,186501,186502,186536,186537,186538,186539,186545,186546,186547,186548,186549,186550,186561,186562,186563,186564,186624,186625,186626,186627,186628,186629,186635,186636,186637,186638,186872,186873,186874,186875,186876,186877,187034,187035,187036,187037,187084,187085,187086,187087,187088,187089,187222,187223,187224,187225,188904,188905,188906,188907,188908,188909,190216,190217,190218,190219,190229,190230,190231,190232,190233,190234,190285,190286,190287,190288,190324,190325,190326,190327,190328,190329,190330,190331,190332,190333,190389,190390,190391,190392,190397,190398,190399,190400,190401,190402,190425,190426,190427,190428,191842,191843,191844,191845,191846,191847,192896,192897,192898,192899,192902,192903,192904,192905,192906,192907,192920,192921,192922,192923,192929,192930,192931,192932,192933,192934,192950,192951,192952,192953,192965,192966,192967,192968,192969,192970,193050,193051,193052,193053,193054,193055,193056,193057,195455,195456,195457,195458,195501,195502,195503,195504,195505,195506,195623,195624,195625,195626,195629,195630,195631,195632,195633,195634,195645,195646,195647,195648,195709,195710,195711,195712,195713,195714,195803,195804,195805,195806,195939,195940,195941,195942,195943,195944,196190,196191,196192,196193,196204,196205,196206,196207,196208,196209,196252,196253,196254,196255,196256,196257,196258,196259,196260,196261,196262,196263,196264,196265,196266,196267,196268,196269,196270,196271,196272,196273,196274,196275,196276,196277,196278,196279,196288,196289,196290,196291,196292,196293,196302,196303,196304,196305,196362,196363,196364,196365,196366,196367,196542,196543,196544,196545,196546,196547,196548,196549,196550,196551,196575,196576,196577,196578,196579,196580,196590,196591,196592,196593,196594,196595,196596,196597,196598,196599,196600,196601,196602,196603,196604,196605,196606,196608,196609,229376,229378,229457,229458,252723,252724,252725,252757,252758,252812,252813,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,252880,252881,252882,252883,252884,252885,253041,253042,253150,253151,253294,253295,253396,253397,253587,253588,253747,253748,253811,253812,253960,253961,254165,254166,254260,254261,254415,254416,254478,254479,254480,254481,254482,254483,254484,254485,254486,254487,254488,254489,254490,254491,254500,254501,254502,254503,254505,254506,254507,254508,254535,254536,254537,254538,254564,254565,254566,254567,254594,254595,254596,254597,254609,254610,254611,254612,254620,254621,254622,254623,254627,254628,254629,254630,254636,254637,254638,254639,254640,254641,254642,254643,254645,254646,254647,254648,254657,254658,254659,254660,254661,254662,254663,254664,254665,254666,254667,254668,254669,254670,254671,254672,254750,254751,254752,254753,254754,254755,254756,254757,254758,254759,254760,254761,254762,254763,254764,254765,254767,254768,254769,254770,254771,254772,254773,254774,254810,254811,254812,254813,254849,254850,254851,254852,254853,254854,254855,254856,254857,254858,254859,254860,254861,254862,254864,254865,254867,254868,254869,254870,254871,254872,254873,254874,254875,254876,254877,254878,254879,254880,254881,254882,254883,254884,254885,254886,254887,254888,260309,260310,260311,260312,260313,260314,260315,260316,260317,260318,260319,260320,260324,260325,260328,260329,260333,260334,260338,260339,260343,260344,260345,260346,260347,260348,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,260423,260424,260425,260426,260427,260428,260432,260433,260438,260439,260440,260441,260564,260565,260566,260567,260568,260569,260570,260571,260572,260573,260574,260575,260576,260577,260579,260580,260581,260582,260584,260585,260586,260587,260589,260590,260591,260592,260594,260595,260596,260597,260599,260600,260601,260602,260604,260605,260606,260607,260609,260610,260611,260612,260613,260614,260615,260616,260617,260618,260619,260620,260626,260627,260628,260629,260630,260631,260637,260638,260639,260640,260721,260722,260723,260724,260725,260726,261112,261113,261114,261115,261117,261118,261119,261120,261121,261122,261128,261129,261130,261131,261136,261137,261138,261139,261140,261141,261158,261159,261160,261161,261191,261192,261193,261194,261195,261196,261215,261216,261217,261218,261228,261229,261230,261231,261232,261233,261256,261257,261258,261259,261260,261261,261262,261263,261265,261266,261267,261268,261272,261273,261274,261275,261277,261278,261279,261280,261282,261283,261284,261285,261287,261288,261289,261290,261292,261293,261294,261295,261297,261298,261299,261300,261302,261303,261304,261305,261308,261309,261310,261311,261313,261314,261315,261316,261319,261320,261321,261322,261324,261325,261326,261327,261337,261338,261339,261340,261341,261342,261343,261344,261345,261346,261347,261348,261349,261350,261355,261356,261357,261358,261359,261360,261367,261368,261369,261370,261392,261393,261394,261395,261396,261397,261442,261443,261444,261445,261459,261460,261461,261462,261463,261464,261480,261481,261482,261483,261484,261485,261486,261487,261500,261501,261502,261503,261505,261506,261507,261508,261510,261511,261512,261513,261515,261516,261517,261518,261520,261521,261522,261523,261525,261526,261527,261528,261530,261531,261532,261533,261535,261536,261537,261538,261540,261541,261542,261543,261545,261546,261547,261548,261555,261556,261557,261558,261560,261561,261562,261563,261564,261565,261566,261567,261568,261569,261570,261571,261572,261573,261578,261579,261580,261581,261582,261583,261590,261591,261592,261593,261597,261598,261599,261600,261601,261602,261609,261610,261611,261612,261613,261614,261615,261616,261618,261619,261620,261621,261623,261624,261625,261626,261628,261629,261630,261631,261633,261634,261635,261636,261638,261639,261640,261641,261643,261644,261645,261646,261754,261755,261756,261757,261758,261759,261760,261761,261762,261763,261764,261765,261766,261767,261768,261769,261770,261771,261772,261773,261774,261775,261776,261777,261785,261786,261787,261788,261796,261797,261798,261799,261800,261801,261808,261809,261810,261811,261818,261819,261820,261821,261822,261823,261824,261825,261826,261827,261828,261829,261838,261839,261840,261841,261842,261843,261859,261860,261861,261862,261864,261865,261866,261867,261869,261870,261871,261872,261874,261875,261876,261877,261882,261883,261884,261885,261887,261888,261889,261890,261891,261892,261893,261894,261899,261900,261901,261902,261903,261904,261914,261915,261916,261917,261942,261943,261944,261945,261946,261947,262033,262034,262035,262036,262099,262100,262101,262102,262103,262104,262105,262106,262121,262122,262123,262124,262125,262126,262127,262128,262129,262130,262131,262132,262133,262134,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") == "845e8ebc3ac05d8f500819b26198881281d74463" || 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", "3694,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,67723,67724,67725,67726,67727,67800,67801,67874,67875,67918,67919,67920,67921,67924,67925,67926,67927,67928,67929,67930,67931,67932,67933,67935,67936,67942,67943,67948,67949,68024,68025,68028,68029,68034,68035,68036,68037,68038,68039,68040,68041,68042,68043,68044,68045,68051,68052,68053,68054,68075,68076,68099,68100,68101,68102,68113,68114,68157,68158,68209,68210,68529,68530,68637,68638,68639,68640,68648,68649,68654,68655,68667,68668,68682,68683,68726,68727,68740,68741,68786,68787,68798,68799,68906,68907,69223,69224,69322,69323,69360,69361,69390,69391,69410,69411,69419,69420,69604,69605,69747,69748,69758,69759,69776,69777,69786,69787,69921,69922,69928,69929,69958,69959,69989,69990,70179,70180,70186,70187,70193,70194,70199,70200,70204,70205,70218,70219,70227,70228,70232,70233,70263,70264,70281,70282,70312,70313,70367,70368,70385,70386,70416,70417,70436,70437,70445,70446,70453,70454,70477,70478,70527,70528,70539,70540,70544,70545,70549,70550,71355,71356,71360,71361,71365,71366,71382,71383,71387,71388,71394,71395,71399,71400,71405,71406,71411,71412,71416,71417,71422,71423,71428,71429,71433,71434,71438,71439,71444,71445,71450,71451,71456,71457,71462,71463,71467,71468,71473,71474,71479,71480,71484,71485,71490,71491,71496,71497,71501,71502,71507,71508,71513,71514,71518,71519,71524,71525,71530,71531,71535,71536,71541,71542,71547,71548,71552,71553,71558,71559,71564,71565,71569,71570,71575,71576,71581,71582,71586,71587,71592,71593,71598,71599,71603,71604,71609,71610,71615,71616,71620,71621,71626,71627,71632,71633,71637,71638,71643,71644,71649,71650,71657,71658,71665,71666,71679,71680,71685,71686,71708,71709,71738,71739,71781,71782,71818,71819,71825,71826,71884,71885,71889,71890,71908,71909,71913,71914,72087,72088,72257,72258,72264,72265,72279,72280,72289,72290,72299,72300,72309,72310,72319,72320,72329,72330,72339,72340,72349,72350,72359,72360,72369,72370,72384,72385,72394,72395,72404,72405,72419,72420,72429,72430,72439,72440,72449,72450,72459,72460,72469,72470,72479,72480,72489,72490,72499,72500,72509,72510,72524,72525,72534,72535,72544,72545,72554,72555,72564,72565,72579,72580,72589,72590,72599,72600,72609,72610,72624,72625,72634,72635,72644,72645,72654,72655,72669,72670,72679,72680,72689,72690,72699,72700,72709,72710,72724,72725,72734,72735,72744,72745,72754,72755,72764,72765,72774,72775,72783,72784,72798,72799,72808,72809,72818,72819,72828,72829,72838,72839,72848,72849,72858,72859,72868,72869,72878,72879,72893,72894,72903,72904,72913,72914,72923,72924,72933,72934,72943,72944,72953,72954,72963,72964,72973,72974,72983,72984,72993,72994,73008,73009,73018,73019,73028,73029,73038,73039,73048,73049,73058,73059,73073,73074,73083,73084,73093,73094,73103,73104,73113,73114,73123,73124,73133,73134,73143,73144,73158,73159,73168,73169,73178,73179,73188,73189,73203,73204,73218,73219,73228,73229,73238,73239,73248,73249,73258,73259,73268,73269,73278,73279,73293,73294,73303,73304,73313,73314,73323,73324,73338,73339,73348,73349,73358,73359,73368,73369,73383,73384,73393,73394,73403,73404,73413,73414,73428,73429,73438,73439,73448,73449,73458,73459,73468,73469,73478,73479,73493,73494,73503,73504,73513,73514,73523,73524,73533,73534,73548,73549,73558,73559,73568,73569,73578,73579,73588,73589,73598,73599,73613,73614,73623,73624,73633,73634,73643,73644,73653,73654,73663,73664,73678,73679,73688,73689,73698,73699,73708,73709,73718,73719,73728,73729,73738,73739,73748,73749,73758,73759,73768,73769,73783,73784,73793,73794,73803,73804,73813,73814,73823,73824,73833,73834,73843,73844,73853,73854,73863,73864,73873,73874,73888,73889,73898,73899,73908,73909,73918,73919,73928,73929,73938,73939,73948,73949,73958,73959,73968,73969,73978,73979,73993,73994,74003,74004,74013,74014,74023,74024,74033,74034,74043,74044,74053,74054,74063,74064,74073,74074,74088,74089,74098,74099,74108,74109,74118,74119,74128,74129,74138,74139,74148,74149,74158,74159,74168,74169,74178,74179,74188,74189,74198,74199,74208,74209,74223,74224,74233,74234,74243,74244,74253,74254,74263,74264,74273,74274,74283,74284,74293,74294,74303,74304,74318,74319,74328,74329,74338,74339,74348,74349,74358,74359,74368,74369,74378,74379,74393,74394,74403,74404,74413,74414,74423,74424,74433,74434,74443,74444,74453,74454,74463,74464,74473,74474,74483,74484,74493,74494,74503,74504,74518,74519,74528,74529,74538,74539,74548,74549,74558,74559,74568,74569,74578,74579,74588,74589,74598,74599,74608,74609,74623,74624,74633,74634,74643,74644,74653,74654,74668,74669,74678,74679,74688,74689,74698,74699,74708,74709,74718,74719,74728,74729,74738,74739,74748,74749,74758,74759,74773,74774,74783,74784,74793,74794,74803,74804,74813,74814,74823,74824,74833,74834,74843,74844,74858,74859,74868,74869,74878,74879,74888,74889,74898,74899,74908,74909,74923,74924,74933,74934,74943,74944,74953,74954,74963,74964,74973,74974,74983,74984,74993,74994,75003,75004,75018,75019,75028,75029,75038,75039,75048,75049,75159,75160,75223,75224,75228,75229,75235,75236,75249,75250,75256,75257,75315,75316,75337,75338,75351,75352,75384,75385,75478,75479,75493,75494,75503,75504,75548,75549,75581,75582,75592,75593,75599,75600,75605,75606,75719,75720,75739,75740,75745,75746,76422,76423,76442,76443,76455,76456,76469,76470,76533,76534,76539,76540,76546,76547,76553,76554,76561,76562,76631,76632,76640,76641,76648,76649,76668,76669,76690,76691,76960,76961,81783,81784,81813,81814,81821,81822,81936,81937,81959,81960,82010,82011,82040,82041,82065,82066,82079,82080,82085,82086,82099,82100,82104,82105,82140,82141,82147,82148,82154,82155,82163,82164,82173,82174,82182,82183,82239,82240,82258,82259,82290,82291,82296,82297,82308,82309,82364,82365,82377,82378,82546,82547,82561,82562,82637,82638,82696,82697,82718,82719,82763,82764,82778,82779,82783,82784,82789,82790,82795,82796,82801,82802,82807,82808,82813,82814,82821,82822,83124,83125,83129,83130,83157,83158,83171,83172,83176,83177,83183,83184,83193,83194,83225,83226,83231,83232,83238,83239,83246,83247,83254,83255,83259,83260,83264,83265,83271,83272,83278,83279,83285,83286,83291,83292,83297,83298,83303,83304,83309,83310,83315,83316,83320,83321,83326,83327,83332,83333,83338,83339,83344,83345,83351,83352,83357,83358,83363,83364,83368,83369,83375,83376,83382,83383,83389,83390,83399,83400,83409,83410,83417,83418,83423,83424,83437,83438,83447,83448,83453,83454,83461,83462,83467,83468,83473,83474,83479,83480,83486,83487,83491,83492,83497,83498,83503,83504,83508,83509,83514,83515,83520,83521,83525,83526,83530,83531,83536,83537,83541,83542,83549,83550,83556,83557,83561,83562,83567,83568,83710,83711,83723,83724,83752,83753,83774,83775,83813,83814,83955,83956,83989,83990,83996,83997,84132,84133,84151,84152,84188,84189,84198,84199,84220,84221,84470,84471,84512,84513,84525,84526,84533,84534,84540,84541,84546,84547,84555,84556,84562,84563,84594,84595,84612,84613,84627,84628,84636,84637,84643,84644,84650,84651,84669,84670,84701,84702,84726,84727,84775,84776,84787,84788,84794,84795,84809,84810,84812,84813,84820,84821,84830,84831,84837,84838,84863,84864,84883,84884,84901,84902,84931,84932,84936,84937,84941,84942,84946,84947,84960,84961,84963,84964,87429,87430,87432,87433,87437,87438,87443,87444,87450,87451,87506,87507,87509,87510,87921,87922,89141,89142,89149,89150,89328,89329,89333,89334,89341,89342,89385,89386,89407,89408,89412,89413,89417,89418,89427,89428,89433,89434,89439,89440,89448,89449,89483,89484,89488,89489,89499,89500,89507,89508,89512,89513,89518,89519,89699,89700,89736,89737,89744,89745,89763,89764,89790,89791,89819,89820,89827,89828,89833,89834,89845,89846,89866,89867,89873,89874,89902,89903,89942,89943,89950,89951,89962,89963,90028,90029,90047,90048,90081,90082,90086,90087,90095,90096,90101,90102,90111,90112,90117,90118,90147,90148,90287,90288,90298,90299,90303,90304,90309,90310,90329,90330,90331,90332,90343,90344,90352,90353,90364,90365,90372,90373,90379,90380,90386,90387,90398,90399,90405,90406,90413,90414,90421,90422,90428,90429,90433,90434,90440,90441,90445,90446,90453,90454,90460,90461,90472,90473,90477,90478,90486,90487,90494,90495,90501,90502,90508,90509,90516,90517,90524,90525,90530,90531,90537,90538,90544,90545,90546,90547,90584,90585,90622,90623,90662,90663,90665,90666,90667,90668,90669,90670,90682,90683,90684,90685,90686,90687,90708,90709,90720,90721,90722,90723,90724,90725,90849,90850,90851,90852,90858,90859,90860,90861,90862,90863,90864,90865,90866,90867,90868,90869,90877,90878,90883,90884,90890,90891,90897,90898,90910,90911,90917,90918,90938,90939,90950,90951,90952,90953,91003,91004,91010,91011,91016,91017,91071,91072,91077,91078,91083,91084,91090,91091,91096,91097,91271,91272,91279,91280,91285,91286,91291,91292,91298,91299,91308,91309,91363,91364,91376,91377,91406,91407,91412,91413,91419,91420,91425,91426,91433,91434,91439,91440,91445,91446,91451,91452,91528,91529,91547,91548,91623,91624,91629,91630,91636,91637,91842,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,168414,168434,168453,168454,168458,168459,168463,168464,168468,168469,168480,168481,168487,168488,168501,168502,168512,168513,168515,168516,168523,168524,168528,168529,168533,168534,168538,168539,168542,168543,168546,168547,168551,168552,168556,168557,168560,168561,168565,168566,168569,168570,168574,168575,168579,168580,168592,168593,168598,168599,169629,169630,169635,169636,169644,169645,169650,169651,169653,169654,169655,169656,169663,169664,169682,169683,169688,169689,169693,169694,169699,169700,169711,169712,169718,169719,169724,169725,169735,169736,169741,169742,169743,169744,169745,169746,169747,169748,169752,169753,169755,169756,169762,169763,169766,169767,169774,169775,169778,169779,169808,169809,169822,169823,169847,169848,169884,169885,169911,169912,169956,169957,169981,169982,169993,169994,170022,170023,170049,170050,170062,170063,170064,170065,170068,170069,170071,170072,170074,170075,170078,170079,170082,170083,170090,170091,170093,170094,170098,170099,170108,170109,170113,170114,170119,170120,170124,170125,170130,170131,170134,170135,170139,170140,170144,170145,170152,170153,170158,170159,170162,170163,170168,170169,170173,170174,170177,170178,170183,170184,170188,170189,170193,170194,170197,170198,170204,170205,170208,170209,170214,170215,170221,170222,170225,170226,170236,170237,170239,170240,170245,170246,170250,170251,170266,170267,170270,170271,170275,170276,170281,170282,170287,170288,170293,170294,170299,170300,170304,170305,170307,170308,170314,170315,170321,170322,170328,170329,170333,170334,170341,170342,170348,170349,170352,170353,170359,170360,170366,170367,170374,170375,170378,170379,170389,170390,170393,170394,170405,170406,170409,170410,170414,170415,170420,170421,170426,170427,170433,170434,170442,170443,170448,170449,170456,170457,170461,170462,170464,170465,170469,170470,170475,170476,170481,170482,170489,170490,170497,170498,170501,170502,170510,170511,170512,170513,170520,170521,170528,170529,170535,170536,170592,170593,170615,170616,170623,170624,170633,170634,170641,170642,170650,170651,170663,170664,170675,170676,170686,170687,170699,170700,170708,170709,170717,170718,170728,170729,170739,170740,170748,170749,170757,170758,170762,170763,170770,170771,170781,170782,170792,170793,170803,170804,170855,170856,170864,170865,170873,170874,170889,170890,170894,170895,170908,170909,170917,170918,170961,170962,170975,170976,170992,170993,171002,171003,171011,171012,171040,171041,171053,171054,171064,171065,171078,171079,171089,171090,171101,171102,171116,171117,171128,171129,171146,171147,171153,171154,171158,171159,171200,171201,171211,171212,171221,171222,171233,171234,171244,171245,171252,171253,171262,171263,171274,171275,171286,171287,171291,171292,171301,171302,171311,171312,171322,171323,171330,171331,171339,171340,171354,171355,171383,171384,171394,171395,171417,171418,171476,171477,171491,171492,171497,171498,171542,171543,171556,171557,171572,171573,171588,171589,171595,171596,171609,171610,171621,171622,171634,171635,171643,171644,171655,171656,171666,171667,171694,171695,171773,171774,171785,171786,171796,171797,171808,171809,171817,171818,171840,171841,171848,171849,171859,171860,171869,171870,171888,171889,171932,171933,171942,171943,171955,171956,171963,171964,172000,172001,172047,172048,172056,172057,172062,172063,172071,172072,172092,172093,172099,172100,172101,172102,172104,172105,172107,172108,172110,172111,172114,172115,172117,172118,172120,172121,172123,172124,172127,172128,172132,172133,172135,172136,172139,172140,172142,172143,172145,172146,172148,172149,172152,172153,172155,172156,172159,172160,172161,172162,172163,172164,172226,172227,172228,172229,172230,172231,172241,172242,172243,172244,172285,172286,172287,172288,172289,172290,172509,172510,172511,172512,172545,172546,172547,172548,172549,172550,172785,172786,172787,172788,172796,172797,172798,172799,172800,172801,172814,172815,172816,172817,172849,172850,172851,172852,172853,172854,172861,172862,172863,172864,173472,173473,173474,173475,173476,173477,173561,173562,173563,173564,173630,173631,173632,173633,173634,173635,173729,173730,173731,173732,175687,175688,175689,175690,175691,175692,177217,177218,177219,177220,177367,177368,177369,177370,177371,177372,178062,178063,178064,178065,178072,178073,178074,178075,178076,178077,178078,178079,178080,178081,178093,178094,178095,178096,180684,180685,180686,180687,180688,180689,183053,183054,183055,183056,183539,183540,183541,183542,183543,183544,184439,184440,184441,184442,184599,184600,184601,184602,184603,184604,184880,184881,184882,184883,185866,185867,185868,185869,185870,185871,186457,186458,186459,186460,186466,186467,186468,186469,186470,186471,186481,186482,186483,186484,186497,186498,186499,186500,186501,186502,186536,186537,186538,186539,186545,186546,186547,186548,186549,186550,186561,186562,186563,186564,186624,186625,186626,186627,186628,186629,186635,186636,186637,186638,186872,186873,186874,186875,186876,186877,187034,187035,187036,187037,187084,187085,187086,187087,187088,187089,187222,187223,187224,187225,188904,188905,188906,188907,188908,188909,190216,190217,190218,190219,190229,190230,190231,190232,190233,190234,190285,190286,190287,190288,190324,190325,190326,190327,190328,190329,190330,190331,190332,190333,190389,190390,190391,190392,190397,190398,190399,190400,190401,190402,190425,190426,190427,190428,191842,191843,191844,191845,191846,191847,192896,192897,192898,192899,192902,192903,192904,192905,192906,192907,192920,192921,192922,192923,192929,192930,192931,192932,192933,192934,192950,192951,192952,192953,192965,192966,192967,192968,192969,192970,193050,193051,193052,193053,193054,193055,193056,193057,195455,195456,195457,195458,195501,195502,195503,195504,195505,195506,195623,195624,195625,195626,195629,195630,195631,195632,195633,195634,195645,195646,195647,195648,195709,195710,195711,195712,195713,195714,195803,195804,195805,195806,195939,195940,195941,195942,195943,195944,196190,196191,196192,196193,196204,196205,196206,196207,196208,196209,196252,196253,196254,196255,196256,196257,196258,196259,196260,196261,196262,196263,196264,196265,196266,196267,196268,196269,196270,196271,196272,196273,196274,196275,196276,196277,196278,196279,196288,196289,196290,196291,196292,196293,196302,196303,196304,196305,196362,196363,196364,196365,196366,196367,196542,196543,196544,196545,196546,196547,196548,196549,196550,196551,196575,196576,196577,196578,196579,196580,196590,196591,196592,196593,196594,196595,196596,196597,196598,196599,196600,196601,196602,196603,196604,196605,196606,196608,196609,229376,229378,229457,229458,252723,252724,252725,252757,252758,252812,252813,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,252880,252881,252882,252883,252884,252885,253041,253042,253150,253151,253294,253295,253396,253397,253587,253588,253747,253748,253811,253812,253960,253961,254165,254166,254260,254261,254415,254416,254478,254479,254480,254481,254482,254483,254484,254485,254486,254487,254488,254489,254490,254491,254500,254501,254502,254503,254505,254506,254507,254508,254535,254536,254537,254538,254564,254565,254566,254567,254594,254595,254596,254597,254609,254610,254611,254612,254620,254621,254622,254623,254627,254628,254629,254630,254636,254637,254638,254639,254640,254641,254642,254643,254645,254646,254647,254648,254657,254658,254659,254660,254661,254662,254663,254664,254665,254666,254667,254668,254669,254670,254671,254672,254750,254751,254752,254753,254754,254755,254756,254757,254758,254759,254760,254761,254762,254763,254764,254765,254767,254768,254769,254770,254771,254772,254773,254774,254810,254811,254812,254813,254849,254850,254851,254852,254853,254854,254855,254856,254857,254858,254859,254860,254861,254862,254864,254865,254867,254868,254869,254870,254871,254872,254873,254874,254875,254876,254877,254878,254879,254880,254881,254882,254883,254884,254885,254886,254887,254888,260309,260310,260311,260312,260313,260314,260315,260316,260317,260318,260319,260320,260324,260325,260328,260329,260333,260334,260338,260339,260343,260344,260345,260346,260347,260348,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,260423,260424,260425,260426,260427,260428,260432,260433,260438,260439,260440,260441,260564,260565,260566,260567,260568,260569,260570,260571,260572,260573,260574,260575,260576,260577,260579,260580,260581,260582,260584,260585,260586,260587,260589,260590,260591,260592,260594,260595,260596,260597,260599,260600,260601,260602,260604,260605,260606,260607,260609,260610,260611,260612,260613,260614,260615,260616,260617,260618,260619,260620,260626,260627,260628,260629,260630,260631,260637,260638,260639,260640,260721,260722,260723,260724,260725,260726,261112,261113,261114,261115,261117,261118,261119,261120,261121,261122,261128,261129,261130,261131,261136,261137,261138,261139,261140,261141,261158,261159,261160,261161,261191,261192,261193,261194,261195,261196,261215,261216,261217,261218,261228,261229,261230,261231,261232,261233,261256,261257,261258,261259,261260,261261,261262,261263,261265,261266,261267,261268,261272,261273,261274,261275,261277,261278,261279,261280,261282,261283,261284,261285,261287,261288,261289,261290,261292,261293,261294,261295,261297,261298,261299,261300,261302,261303,261304,261305,261308,261309,261310,261311,261313,261314,261315,261316,261319,261320,261321,261322,261324,261325,261326,261327,261337,261338,261339,261340,261341,261342,261343,261344,261345,261346,261347,261348,261349,261350,261355,261356,261357,261358,261359,261360,261367,261368,261369,261370,261392,261393,261394,261395,261396,261397,261442,261443,261444,261445,261459,261460,261461,261462,261463,261464,261480,261481,261482,261483,261484,261485,261486,261487,261500,261501,261502,261503,261505,261506,261507,261508,261510,261511,261512,261513,261515,261516,261517,261518,261520,261521,261522,261523,261525,261526,261527,261528,261530,261531,261532,261533,261535,261536,261537,261538,261540,261541,261542,261543,261545,261546,261547,261548,261555,261556,261557,261558,261560,261561,261562,261563,261564,261565,261566,261567,261568,261569,261570,261571,261572,261573,261578,261579,261580,261581,261582,261583,261590,261591,261592,261593,261597,261598,261599,261600,261601,261602,261609,261610,261611,261612,261613,261614,261615,261616,261618,261619,261620,261621,261623,261624,261625,261626,261628,261629,261630,261631,261633,261634,261635,261636,261638,261639,261640,261641,261643,261644,261645,261646,261754,261755,261756,261757,261758,261759,261760,261761,261762,261763,261764,261765,261766,261767,261768,261769,261770,261771,261772,261773,261774,261775,261776,261777,261785,261786,261787,261788,261796,261797,261798,261799,261800,261801,261808,261809,261810,261811,261818,261819,261820,261821,261822,261823,261824,261825,261826,261827,261828,261829,261838,261839,261840,261841,261842,261843,261859,261860,261861,261862,261864,261865,261866,261867,261869,261870,261871,261872,261874,261875,261876,261877,261882,261883,261884,261885,261887,261888,261889,261890,261891,261892,261893,261894,261899,261900,261901,261902,261903,261904,261914,261915,261916,261917,261942,261943,261944,261945,261946,261947,262033,262034,262035,262036,262099,262100,262101,262102,262103,262104,262105,262106,262121,262122,262123,262124,262125,262126,262127,262128,262129,262130,262131,262132,262133,262134,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:069b77af2ca1eb3e402f4e5b66fdd01da2349996:16276776:d51109ab17b4aee63642506175ccbc6ff6ef8069",
            "-", d51109ab17b4aee63642506175ccbc6ff6ef8069, 16276776,
            069b77af2ca1eb3e402f4e5b66fdd01da2349996,
            package_extract_file("patch/boot.img.p")) ||
    abort("E3008: Failed to apply patch to EMMC:/dev/block/bootdevice/by-name/boot:16276776:069b77af2ca1eb3e402f4e5b66fdd01da2349996:16276776:d51109ab17b4aee63642506175ccbc6ff6ef8069");

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

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