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/143/brian10250643:userdebug/test-keys");
ui_print("Target: qcom/msm8909/msm8909:7.1.2/137/brian07022358:userdebug/test-keys");
ui_print("Verifying current system...");
getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/143/brian10250643:userdebug/test-keys" ||
    getprop("ro.build.fingerprint") == "qcom/msm8909/msm8909:7.1.2/137/brian07022358:userdebug/test-keys" ||
    abort("E3001: Package expects build fingerprint of qcom/msm8909/msm8909:7.1.2/143/brian10250643:userdebug/test-keys or qcom/msm8909/msm8909:7.1.2/137/brian07022358:userdebug/test-keys; this device has " + getprop("ro.build.fingerprint") + ".");
apply_patch_check("EMMC:/dev/block/bootdevice/by-name/boot:16276776:868c58b844c33ba09fd0f66b74c6ca50858a46b6:16276776:499b1c498024b2a8c666e8fa0198fb563a15fa85") || abort("E3005: \"EMMC:/dev/block/bootdevice/by-name/boot:16276776:868c58b844c33ba09fd0f66b74c6ca50858a46b6:16276776:499b1c498024b2a8c666e8fa0198fb563a15fa85\" has unexpected contents.");
apply_patch_space(33591296) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/bootdevice/by-name/system", "6540,1,80,81,306,2816,2817,2818,2819,2820,2821,2822,2823,2832,2833,2940,2941,2942,2943,3036,3037,3045,3046,3047,3048,3049,3050,3051,3052,3069,3070,3089,3090,3091,3092,3102,3103,3157,3158,3159,3160,3172,3173,3177,3178,3179,3180,3190,3191,3205,3206,3207,3208,3244,3245,3254,3255,3256,3257,3300,3301,3327,3328,3329,3330,3382,3383,3392,3393,3394,3395,3433,3434,3446,3447,3448,3449,3450,3451,3530,3531,3532,3533,3766,3767,3768,6947,6948,6949,6950,8090,8091,8092,8093,8315,8316,8317,8318,9155,9156,9157,9158,9160,9161,9162,9163,9164,9165,9172,9173,9174,9175,9181,9182,9183,9184,9185,9186,9212,9213,9214,9215,9278,9279,9280,9281,9282,9283,9349,9350,9351,9352,9358,9359,9360,9361,9362,9363,9390,9391,9392,9393,9397,9398,9399,9400,9401,9402,9421,9422,9423,9424,9426,9427,9428,9429,9430,9431,9437,9438,9439,9440,9444,9445,9446,9447,9448,9449,9465,9466,9467,9468,9471,9472,9473,9474,9475,9476,9486,9487,9488,9489,9492,9493,9494,9495,9496,9497,9510,9511,9512,9513,9517,9518,9519,9520,9521,9522,9533,9534,9535,9536,9537,9538,9539,9540,9604,9605,9616,9617,9618,9619,9620,9621,9622,9623,9630,9631,9633,9634,9635,9636,9638,9639,9640,9641,9642,9643,9644,9645,9692,9693,9702,9703,9704,9705,9706,9707,9708,9709,9761,9762,9772,9773,9774,9775,9776,9777,9778,9779,10524,10525,21727,21728,21730,21731,21742,21743,21754,21755,21759,21760,21764,21765,21772,21773,21778,21779,21783,21784,21785,21786,21792,21793,21830,21831,21832,21833,21834,21835,21841,21842,21851,21852,21861,21862,21869,21870,21876,21877,21888,21889,21895,21896,21901,21902,21903,21904,21913,21914,21923,21924,21930,21931,21936,21937,21938,21939,21943,21944,21949,21950,21954,21955,21967,21968,21975,21976,21982,21983,21991,21992,22040,22041,22046,22047,22048,22049,22054,22055,22136,22137,22142,22143,22155,22156,22162,22163,22168,22169,22202,22203,22222,22223,22227,22228,22233,22234,22241,22242,22246,22247,22254,22255,22261,22262,22269,22270,22275,22276,22286,22287,22310,22311,22345,22346,22347,22348,22356,22357,22399,22400,22407,22408,22417,22418,22458,22459,22463,22464,22473,22474,22480,22481,22486,22487,22494,22495,22510,22511,22520,22521,22542,22543,22553,22554,22566,22567,22577,22578,22724,22725,22738,22739,22747,22748,22753,22754,22789,22790,22801,22802,22836,22837,22949,22950,22961,22962,22971,22972,22973,22974,23003,23004,23009,23010,23047,23048,23076,23077,23078,23079,23080,23081,23108,23109,23121,23122,23177,23178,23241,23242,23303,23304,23309,23310,23351,23352,23407,23408,23409,23410,23415,23416,23421,23422,23427,23428,23450,23451,23456,23457,23465,23466,23473,23474,23603,23604,23759,23760,23766,23767,23784,23785,23794,23795,23813,23814,23816,23817,23825,23826,23923,23924,23950,23951,23956,23957,23965,23966,24006,24007,24013,24014,24149,24150,24151,24152,24157,24158,24165,24166,24171,24172,24177,24178,24185,24186,24195,24196,24205,24206,24210,24211,24238,24239,24265,24266,24284,24285,24291,24292,24298,24299,24306,24307,24316,24317,24376,24377,24411,24412,24420,24421,24426,24427,24435,24436,24437,24438,24457,24458,24465,24466,24470,24471,24476,24477,24525,24526,24833,24834,24838,24839,24877,24878,24886,24887,24895,24896,24901,24902,24906,24907,24911,24912,24916,24917,24922,24923,24941,24942,24953,24954,24965,24966,24971,24972,24973,24974,24984,24985,24993,24994,25003,25004,25014,25015,25060,25061,25070,25071,25080,25081,25090,25091,25092,25093,25097,25098,25103,25104,25109,25110,25115,25116,25121,25122,25127,25128,25133,25134,25139,25140,25145,25146,25152,25153,25159,25160,25166,25167,25173,25174,25179,25180,25185,25186,25213,25214,25243,25244,25252,25253,25258,25259,25263,25264,25309,25310,25314,25315,25327,25328,25332,25333,25334,25335,25348,25349,25355,25356,25361,25362,25369,25370,25377,25378,25383,25384,25389,25390,25395,25396,25422,25423,25431,25432,25438,25439,25443,25444,25450,25451,25457,25458,25459,25460,25464,25465,25496,25497,25543,25544,25545,25546,25554,25555,25570,25571,25576,25577,25582,25583,25590,25591,25596,25597,25599,25600,25604,25605,25628,25629,25630,25631,25636,25637,25655,25656,25664,25665,25670,25671,25676,25677,25682,25683,25688,25689,25711,25712,25782,25783,25788,25789,25794,25795,25801,25802,25808,25809,25811,25812,25828,25829,25834,25835,25841,25842,25947,25948,25972,25973,25979,25980,25986,25987,25991,25992,25993,25994,26016,26017,26330,26331,26499,26500,26517,26518,26521,26522,26523,26524,26586,26587,26588,26589,26590,26591,26592,26593,26609,26610,26614,26615,26616,26617,26671,26672,26673,26674,26695,26696,26757,26758,26759,26760,26770,26771,26775,26776,26778,26779,26828,26829,26830,26831,26850,26851,26899,26900,26902,26903,26904,26905,26921,26922,26926,26927,26928,26929,26986,26987,26988,26989,27013,27014,27076,27077,27078,27079,27095,27096,27100,27101,27102,27103,27158,27159,27160,27161,27185,27186,27248,27249,27250,27251,27267,27268,27272,27273,27274,27275,27337,27338,27339,27340,27364,27365,27428,27429,27589,27590,27591,27592,27594,27595,27596,27597,27599,27600,27605,27606,27609,27610,27611,27612,27613,27614,27615,27616,27624,27625,27627,27628,27870,27871,27872,27873,27874,27875,27876,27877,27882,27883,27884,27885,27886,27887,27890,27891,27894,27895,27898,27899,27902,27903,27904,27905,27908,27909,27912,27913,27916,27917,27920,27921,27924,27925,27926,27927,27930,27931,27934,27935,27938,27939,27942,27943,27946,27947,27950,27951,28034,28035,28036,28037,28044,28045,28064,28065,28071,28072,28073,28074,28075,28076,28077,28078,28079,28080,28081,28082,28083,28084,28089,28090,28091,28092,28093,28094,28097,28098,28101,28102,28103,28104,28107,28108,28109,28110,28113,28114,28116,28117,28120,28121,28125,28126,28130,28131,28135,28136,28140,28141,28142,28143,28146,28147,28148,28149,28150,28151,28152,28153,28154,28155,28156,28157,28178,28179,28184,28185,28199,28200,28217,28218,28222,28223,28224,28225,28227,28228,28385,28386,28388,28389,28390,28391,28553,28554,28556,28557,28558,28559,28560,28561,28564,28565,28566,28567,28571,28572,28573,28574,28577,28578,28579,28580,28581,28582,28583,28584,28585,28586,28587,28588,28599,28600,28601,28602,28603,28604,28605,28606,28608,28609,28610,28611,28612,28613,28614,28615,28616,28617,28618,28619,28620,28621,28622,28623,28624,28625,28626,28627,28628,28629,28630,28631,28632,28633,28634,28635,28636,28637,28638,28639,28640,28641,28642,28643,28644,28645,28646,28647,28648,28649,28650,28651,28652,28653,28654,28655,28656,28657,28658,28659,28660,28661,28662,28663,28664,28665,28667,28668,28671,28672,28673,28674,28675,28676,28677,28678,28679,28680,28681,28682,28703,28704,28705,28706,28707,28708,28710,28711,28716,28717,28718,28719,28720,28721,28723,28724,28725,28726,28727,28728,28731,28732,28734,28735,28736,28737,28739,28740,28742,28743,28745,28746,28752,28753,28761,28762,28770,28771,28778,28779,28786,28787,28795,28796,28804,28805,28813,28814,28822,28823,28841,28842,28843,28844,28845,28846,28847,28848,28849,28850,29956,29957,29958,29959,29960,29961,29962,29963,29964,29965,29966,29967,29968,29969,29970,29971,29972,29973,29974,29975,29976,29977,29978,29979,29980,29981,29982,29983,29984,29985,29986,29987,29988,29989,29990,29991,29992,29993,29994,29995,29996,29997,29998,29999,30000,30001,30002,30003,30004,30005,30006,30007,30008,30009,30010,30011,30012,30013,30014,30015,30016,30017,30018,30019,30020,30021,30022,30023,30024,30025,30026,30027,30028,30029,30030,30031,30032,30033,30034,30035,30036,30037,30038,30039,30040,30041,30042,30043,30044,30045,30046,30047,30048,30049,30050,30051,30052,30053,30054,30055,30067,30068,30069,30070,30071,30072,30073,30074,30075,30076,30077,30078,30235,30236,30237,30238,30239,30240,30241,30242,30243,30244,30247,30248,30251,30252,30253,30254,30255,30256,30257,30258,30259,30260,30261,30262,30263,30264,30265,30266,30267,30268,30269,30270,30271,30272,30273,30274,30275,30276,30277,30278,30279,30280,30281,30282,30283,30284,30285,30286,30287,30288,30289,30290,30291,30292,30293,30294,30295,30296,30297,30298,30299,30300,30301,30302,30303,30304,30305,30306,30307,30308,30309,30310,30311,30312,30313,30314,30315,30316,30317,30318,30319,30320,30321,30322,30323,30324,30325,30326,30327,30328,30329,30330,30331,30332,30333,30334,30336,30337,30338,30339,30340,30341,30342,30343,30346,30347,30348,30349,30350,30351,30352,30353,30354,30355,30356,30357,30358,30359,30360,30361,30362,30363,30364,30365,30366,30367,30368,30369,30370,30371,30372,30373,30374,30375,30379,30380,30381,30382,30383,30384,30385,30386,30387,30388,30845,30846,30847,30848,30850,30851,30852,30853,30854,30855,30857,30858,30860,30861,30863,30864,30866,30867,30868,30869,30871,30872,30874,30875,30877,30878,30879,30880,30882,30883,30885,30886,30888,30889,30891,30892,30894,30895,30897,30898,30900,30901,30903,30904,30906,30907,30909,30910,30912,30913,30915,30916,30919,30920,30922,30923,30925,30926,30928,30929,30931,30932,30934,30935,30936,30937,30938,30939,30941,30942,30944,30945,30948,30949,30952,30953,30955,30956,30958,30959,30961,30962,30964,30965,30967,30968,30970,30971,30973,30974,30976,30977,30979,30980,30983,30984,30986,30987,30989,30990,30992,30993,30995,30996,30998,30999,31001,31002,31004,31005,31007,31008,31010,31011,31013,31014,31016,31017,31019,31020,31021,31022,31024,31025,31027,31028,31030,31031,31033,31034,31036,31037,31038,31039,31041,31042,31044,31045,31047,31048,31050,31051,31053,31054,31056,31057,31059,31060,31061,31062,31064,31065,31067,31068,31070,31071,31073,31074,31076,31077,31079,31080,31082,31083,31085,31086,31088,31089,31091,31092,31094,31095,31097,31098,31100,31101,31103,31104,31106,31107,31108,31109,31111,31112,31114,31115,31117,31118,31120,31121,31122,31123,31125,31126,31128,31129,31131,31132,31134,31135,31137,31138,31140,31141,31143,31144,31146,31147,31149,31150,31153,31154,31156,31157,31159,31160,31162,31163,31165,31166,31168,31169,31170,31171,31173,31174,31176,31177,31179,31180,31182,31183,31185,31186,31187,31188,31190,31191,31193,31194,31196,31197,31199,31200,31202,31203,31204,31205,31207,31208,31210,31211,31213,31214,31276,31277,31279,31280,31282,31283,31284,31285,31287,31288,31290,31291,31293,31294,31296,31297,31299,31300,31301,31302,31304,31305,31307,31308,31310,31311,31313,31314,31315,31316,31318,31319,31321,31322,31324,31325,31327,31328,31330,31331,31333,31334,31336,31337,31339,31340,31342,31343,31345,31346,31347,31348,31350,31351,31353,31354,31356,31357,31359,31360,31362,31363,31365,31366,31368,31369,31371,31372,31374,31375,31376,31377,31378,31379,31380,31381,31382,31383,31385,31386,31389,31390,31392,31393,31394,31395,31396,31397,31399,31400,31402,31403,31405,31406,31408,31409,31411,31412,31414,31415,31417,31418,31420,31421,31422,31423,31424,31425,31426,31427,31428,31429,31431,31432,31440,31441,31449,31450,31458,31459,31467,31468,31476,31477,31478,31479,31480,31481,31482,31483,31484,31485,31486,31487,31488,31489,31490,31491,31495,31496,31497,31498,31500,31501,31511,31512,31527,31528,31545,31546,31575,31576,31605,31606,31680,31681,31753,31754,31804,31805,31845,31846,31873,31874,31902,31903,31935,31936,31989,31990,32009,32010,32065,32066,32095,32096,32125,32126,32155,32156,32185,32186,32190,32191,32195,32196,32204,32205,32238,32239,32243,32244,32246,32247,32249,32250,32262,32263,32269,32270,32276,32277,32286,32287,32293,32294,32330,32331,32366,32367,32372,32373,32378,32379,32383,32384,32386,32387,32392,32393,32398,32399,32409,32410,32412,32413,32422,32423,32432,32433,32442,32443,32453,32454,32462,32463,32471,32472,32480,32481,32489,32490,32515,32516,32519,32520,32522,32523,32537,32538,32552,32553,32567,32568,32582,32583,32587,32588,32592,32593,32621,32622,32627,32628,32632,32633,32635,32636,32638,32639,32644,32645,32683,32684,32724,32725,32728,32729,32733,32734,32738,32739,32751,32752,32754,32755,32758,32759,32763,32764,32765,32768,32770,32849,32850,65536,65537,66030,74956,74957,76014,76015,76927,76928,80492,80493,83023,83024,85084,85085,86182,86183,87020,87021,87553,87554,87634,87635,87741,87742,87889,87890,88758,88759,88760,88761,88795,88796,88803,88804,88805,88806,88807,88808,88809,88810,88842,88843,88897,88898,88933,88934,88935,88936,88937,88938,88939,88940,88941,88942,88943,88944,88945,88946,88947,88948,88949,88950,88951,88952,88953,88954,88955,88956,88957,88958,88959,88960,88961,88962,88963,88964,88965,88966,88967,88968,88969,88970,89126,89127,89235,89236,89379,89380,89481,89482,89672,89673,89832,89833,89896,89897,90045,90046,90250,90251,90345,90346,90500,90501,90563,90564,90565,90566,90567,90568,90569,90570,90571,90572,90573,90574,90575,90576,90585,90586,90587,90588,90590,90591,90592,90593,90620,90621,90622,90623,90649,90650,90651,90652,90679,90680,90681,90682,90694,90695,90696,90697,90705,90706,90707,90708,90712,90713,90714,90715,90721,90722,90723,90724,90725,90726,90727,90728,90730,90731,90732,90733,90742,90743,90744,90745,90746,90747,90748,90749,90750,90751,90752,90753,90754,90755,90756,90757,90835,90836,90837,90838,90839,90840,90841,90842,90843,90844,90845,90846,90847,90848,90849,90850,90852,90853,90854,90855,90856,90857,90858,90859,90895,90896,90897,90898,90934,90935,90936,90937,90938,90939,90940,90941,90942,90943,90944,90945,90946,90947,90949,90950,90952,90953,90954,90955,90956,90957,90958,90959,90960,90961,90962,90963,90964,90965,90966,90967,90968,90969,90970,90971,90972,90973,96394,96395,96396,96397,96398,96399,96400,96401,96402,96403,96404,96405,96409,96410,96413,96414,96418,96419,96423,96424,96428,96429,96430,96431,96432,96433,96436,96437,96438,96439,96440,96441,96442,96443,96444,96445,96446,96447,96448,96449,96450,96451,96452,96453,96454,96455,96456,96457,96458,96459,96460,96461,96462,96463,96464,96465,96466,96467,96468,96469,96470,96471,96472,96473,96474,96475,96476,96477,96478,96479,96480,96481,96482,96483,96484,96485,96486,96487,96488,96489,96490,96491,96492,96493,96494,96495,96496,96497,96498,96499,96500,96501,96502,96503,96504,96505,96506,96507,96508,96509,96510,96511,96512,96513,96517,96518,96523,96524,96525,96526,96649,96650,96651,96652,96653,96654,96655,96656,96657,96658,96659,96660,96661,96662,96664,96665,96666,96667,96669,96670,96671,96672,96674,96675,96676,96677,96679,96680,96681,96682,96684,96685,96686,96687,96689,96690,96691,96692,96694,96695,96696,96697,96698,96699,96700,96701,96702,96703,96704,96705,96711,96712,96713,96714,96715,96716,96722,96723,96724,96725,96806,96807,96808,96809,96810,96811,97197,97198,97199,97200,97202,97203,97204,97205,97206,97207,97213,97214,97215,97216,97221,97222,97223,97224,97225,97226,97243,97244,97245,97246,97276,97277,97278,97279,97280,97281,97300,97301,97302,97303,97313,97314,97315,97316,97317,97318,97341,97342,97343,97344,97345,97346,97347,97348,97350,97351,97352,97353,97357,97358,97359,97360,97362,97363,97364,97365,97367,97368,97369,97370,97372,97373,97374,97375,97377,97378,97379,97380,97382,97383,97384,97385,97387,97388,97389,97390,97393,97394,97395,97396,97398,97399,97400,97401,97404,97405,97406,97407,97409,97410,97411,97412,97422,97423,97424,97425,97426,97427,97428,97429,97430,97431,97432,97433,97434,97435,97440,97441,97442,97443,97444,97445,97452,97453,97454,97455,97477,97478,97479,97480,97481,97482,97527,97528,97529,97530,97544,97545,97546,97547,97548,97549,97565,97566,97567,97568,97569,97570,97571,97572,97585,97586,97587,97588,97590,97591,97592,97593,97595,97596,97597,97598,97600,97601,97602,97603,97605,97606,97607,97608,97610,97611,97612,97613,97615,97616,97617,97618,97620,97621,97622,97623,97625,97626,97627,97628,97630,97631,97632,97633,97640,97641,97642,97643,97645,97646,97647,97648,97649,97650,97651,97652,97653,97654,97655,97656,97657,97658,97663,97664,97665,97666,97667,97668,97675,97676,97677,97678,97682,97683,97684,97685,97686,97687,97694,97695,97696,97697,97698,97699,97700,97701,97703,97704,97705,97706,97708,97709,97710,97711,97713,97714,97715,97716,97718,97719,97720,97721,97723,97724,97725,97726,97728,97729,97730,97731,97839,97840,97841,97842,97843,97844,97845,97846,97847,97848,97849,97850,97851,97852,97853,97854,97855,97856,97857,97858,97859,97860,97861,97862,97870,97871,97872,97873,97881,97882,97883,97884,97885,97886,97893,97894,97895,97896,97903,97904,97905,97906,97907,97908,97909,97910,97911,97912,97913,97914,97923,97924,97925,97926,97927,97928,97944,97945,97946,97947,97949,97950,97951,97952,97954,97955,97956,97957,97959,97960,97961,97962,97967,97968,97969,97970,97972,97973,97974,97975,97976,97977,97978,97979,97984,97985,97986,97987,97988,97989,97999,98000,98001,98002,98027,98028,98029,98030,98031,98032,98118,98119,98120,98121,98184,98185,98186,98187,98188,98189,98190,98191,98206,98207,98208,98209,98210,98211,98230,98231,98232,98233,98234,98235,98236,98237,98301,98304,98306,98385,98386,104971,104975,104976,104980,104981,104986,104987,104993,104994,104999,105000,105006,105007,105099,105100,105199,105200,105204,105205,105221,105222,105253,105254,105315,105316,105381,105382,105443,105444,105505,105506,105581,105582,105663,105664,105739,105740,105821,105822,105903,105904,105980,105981,106063,106064,106139,106140,106221,106222,106297,106298,106373,106374,106454,106455,106529,106530,106611,106612,106693,106694,106769,106770,106852,106853,106928,106929,106931,106932,106940,106941,106942,106943,106949,106950,106957,106958,106966,106967,106987,106988,107124,107125,107126,107127,107128,107129,107154,107155,107522,107523,107559,107560,107979,107980,108002,108003,108180,108181,108184,108185,108200,108201,108346,108347,110120,110121,110168,110169,110505,110506,111148,111149,120054,120055,120067,120068,120139,120140,120142,120143,120150,120151,120167,120168,120385,120386,120412,120413,120675,120676,120680,120681,120712,120713,120715,120716,120723,120724,120860,120861,122060,122061,122063,122064,122074,122075,122082,122083,122148,122149,122444,122445,124552,124553,124556,124557,124687,124688,124689,124690,124691,124692,124694,124695,124696,124697,124701,124702,124704,124705,124706,124707,124709,124710,124722,124723,124729,124730,124736,124737,124742,124743,124775,124776,124811,124812,124815,124816,124819,124820,125216,125217,125664,125665,125666,125667,125670,125671,125673,125674,125677,125678,126182,126183,127789,127790,127791,127792,127805,127806,127808,127809,127811,127812,127814,127815,127823,127824,127826,127827,127840,127841,127842,127843,127844,127845,127904,127905,127913,127914,127955,127956,127998,127999,128049,128050,128156,128157,128165,128166,128183,128184,128194,128195,128203,128204,128212,128213,128232,128233,128243,128244,128251,128252,128263,128264,128301,128302,128332,128333,128348,128349,128358,128359,128379,128380,128389,128390,128400,128401,128449,128450,128462,128463,128546,128547,128553,128554,128586,128587,128603,128604,128680,128681,128788,128789,129003,129004,129024,129025,129041,129042,129198,129199,129548,129549,129574,129575,129585,129586,129598,129599,129609,129610,129666,129667,129679,129680,129690,129691,129778,129779,129795,129796,129807,129808,129820,129821,129919,129920,130709,130710,130720,130721,130722,130723,130768,130769,130823,130824,130825,130826,130831,130832,130835,130836,130846,130847,130856,130857,130871,130872,130875,130876,130906,130907,130910,130911,130914,130915,130938,130939,130993,130994,130998,130999,131004,131005,131008,131009,131011,131012,131014,131015,131016,131017,131044,131045,131047,131048,131050,131051,131052,131053,131054,131055,131057,131058,131070,131072,131073,131566,131717,131718,132023,132024,132025,132026,132113,132114,132777,132778,132783,132784,132789,132790,132800,132801,132814,132815,132830,132831,132859,132860,132870,132871,132908,132909,133181,133182,133183,133184,133185,133186,133187,133188,133261,133262,133335,133336,133379,133380,133381,133382,133385,133386,133387,133388,133389,133390,133391,133392,133393,133394,133396,133397,133403,133404,133409,133410,133485,133486,133489,133490,133495,133496,133497,133498,133499,133500,133501,133502,133503,133504,133505,133506,133512,133513,133514,133515,133536,133537,133560,133561,133562,133563,133574,133575,133618,133619,133670,133671,133990,133991,134098,134099,134100,134101,134109,134110,134115,134116,134128,134129,134143,134144,134187,134188,134201,134202,134247,134248,134259,134260,134367,134368,134684,134685,134783,134784,134821,134822,134851,134852,134871,134872,134880,134881,135065,135066,135208,135209,135219,135220,135237,135238,135247,135248,135382,135383,135389,135390,135419,135420,135450,135451,135640,135641,135647,135648,135654,135655,135660,135661,135665,135666,135679,135680,135688,135689,135693,135694,135724,135725,135742,135743,135773,135774,135828,135829,135846,135847,135877,135878,135897,135898,135906,135907,135914,135915,135938,135939,135988,135989,136000,136001,136005,136006,136010,136011,136816,136817,136821,136822,136826,136827,136843,136844,136848,136849,136855,136856,136860,136861,136866,136867,136872,136873,136877,136878,136883,136884,136889,136890,136894,136895,136899,136900,136905,136906,136911,136912,136917,136918,136923,136924,136928,136929,136934,136935,136940,136941,136945,136946,136951,136952,136957,136958,136962,136963,136968,136969,136974,136975,136979,136980,136985,136986,136991,136992,136996,136997,137002,137003,137008,137009,137013,137014,137019,137020,137025,137026,137030,137031,137036,137037,137042,137043,137047,137048,137053,137054,137059,137060,137064,137065,137070,137071,137076,137077,137081,137082,137087,137088,137093,137094,137098,137099,137104,137105,137110,137111,137118,137119,137126,137127,137140,137141,137146,137147,137169,137170,137199,137200,137242,137243,137279,137280,137286,137287,137345,137346,137350,137351,137369,137370,137374,137375,137548,137549,137718,137719,137725,137726,137740,137741,137750,137751,137760,137761,137770,137771,137780,137781,137790,137791,137800,137801,137810,137811,137820,137821,137830,137831,137845,137846,137855,137856,137865,137866,137880,137881,137890,137891,137900,137901,137910,137911,137920,137921,137930,137931,137940,137941,137950,137951,137960,137961,137970,137971,137985,137986,137995,137996,138005,138006,138015,138016,138025,138026,138040,138041,138050,138051,138060,138061,138070,138071,138085,138086,138095,138096,138105,138106,138115,138116,138130,138131,138140,138141,138150,138151,138160,138161,138170,138171,138185,138186,138195,138196,138205,138206,138215,138216,138225,138226,138235,138236,138244,138245,138259,138260,138269,138270,138279,138280,138289,138290,138299,138300,138309,138310,138319,138320,138329,138330,138339,138340,138354,138355,138364,138365,138374,138375,138384,138385,138394,138395,138404,138405,138414,138415,138424,138425,138434,138435,138444,138445,138454,138455,138469,138470,138479,138480,138489,138490,138499,138500,138509,138510,138519,138520,138534,138535,138544,138545,138554,138555,138564,138565,138574,138575,138584,138585,138594,138595,138604,138605,138619,138620,138629,138630,138639,138640,138649,138650,138664,138665,138679,138680,138689,138690,138699,138700,138709,138710,138719,138720,138729,138730,138739,138740,138754,138755,138764,138765,138774,138775,138784,138785,138799,138800,138809,138810,138819,138820,138829,138830,138844,138845,138854,138855,138864,138865,138874,138875,138889,138890,138899,138900,138909,138910,138919,138920,138929,138930,138939,138940,138954,138955,138964,138965,138974,138975,138984,138985,138994,138995,139009,139010,139019,139020,139029,139030,139039,139040,139049,139050,139059,139060,139074,139075,139084,139085,139094,139095,139104,139105,139114,139115,139124,139125,139139,139140,139149,139150,139159,139160,139169,139170,139179,139180,139189,139190,139199,139200,139209,139210,139219,139220,139229,139230,139244,139245,139254,139255,139264,139265,139274,139275,139284,139285,139294,139295,139304,139305,139314,139315,139324,139325,139334,139335,139349,139350,139359,139360,139369,139370,139379,139380,139389,139390,139399,139400,139409,139410,139419,139420,139429,139430,139439,139440,139454,139455,139464,139465,139474,139475,139484,139485,139494,139495,139504,139505,139514,139515,139524,139525,139534,139535,139549,139550,139559,139560,139569,139570,139579,139580,139589,139590,139599,139600,139609,139610,139619,139620,139629,139630,139639,139640,139649,139650,139659,139660,139669,139670,139684,139685,139694,139695,139704,139705,139714,139715,139724,139725,139734,139735,139744,139745,139754,139755,139764,139765,139779,139780,139789,139790,139799,139800,139809,139810,139819,139820,139829,139830,139839,139840,139854,139855,139864,139865,139874,139875,139884,139885,139894,139895,139904,139905,139914,139915,139924,139925,139934,139935,139944,139945,139954,139955,139964,139965,139979,139980,139989,139990,139999,140000,140009,140010,140019,140020,140029,140030,140039,140040,140049,140050,140059,140060,140069,140070,140084,140085,140094,140095,140104,140105,140114,140115,140129,140130,140139,140140,140149,140150,140159,140160,140169,140170,140179,140180,140189,140190,140199,140200,140209,140210,140219,140220,140234,140235,140244,140245,140254,140255,140264,140265,140274,140275,140284,140285,140294,140295,140304,140305,140319,140320,140329,140330,140339,140340,140349,140350,140359,140360,140369,140370,140384,140385,140394,140395,140404,140405,140414,140415,140424,140425,140434,140435,140444,140445,140454,140455,140464,140465,140479,140480,140489,140490,140499,140500,140509,140510,140620,140621,140684,140685,140689,140690,140696,140697,140710,140711,140717,140718,140776,140777,140798,140799,140812,140813,140845,140846,140939,140940,140954,140955,140964,140965,141009,141010,141042,141043,141053,141054,141060,141061,141066,141067,141180,141181,141200,141201,141206,141207,141883,141884,141903,141904,141916,141917,141930,141931,141994,141995,142000,142001,142007,142008,142014,142015,142022,142023,142092,142093,142101,142102,142109,142110,142129,142130,142151,142152,142421,142422,147244,147245,147274,147275,147282,147283,147397,147398,147420,147421,147471,147472,147501,147502,147526,147527,147540,147541,147546,147547,147560,147561,147565,147566,147601,147602,147608,147609,147615,147616,147624,147625,147634,147635,147643,147644,147700,147701,147719,147720,147751,147752,147757,147758,147769,147770,147825,147826,147838,147839,148007,148008,148022,148023,148098,148099,148157,148158,148179,148180,148224,148225,148239,148240,148244,148245,148250,148251,148256,148257,148262,148263,148268,148269,148274,148275,148282,148283,148585,148586,148590,148591,148618,148619,148632,148633,148637,148638,148644,148645,148654,148655,148686,148687,148692,148693,148699,148700,148707,148708,148715,148716,148720,148721,148725,148726,148732,148733,148739,148740,148746,148747,148752,148753,148758,148759,148764,148765,148770,148771,148776,148777,148781,148782,148787,148788,148793,148794,148799,148800,148805,148806,148812,148813,148818,148819,148824,148825,148829,148830,148836,148837,148843,148844,148850,148851,148860,148861,148870,148871,148878,148879,148884,148885,148898,148899,148908,148909,148914,148915,148922,148923,148928,148929,148934,148935,148940,148941,148947,148948,148952,148953,148958,148959,148964,148965,148969,148970,148975,148976,148981,148982,148986,148987,148991,148992,148997,148998,149002,149003,149010,149011,149017,149018,149022,149023,149028,149029,149171,149172,149184,149185,149213,149214,149235,149236,149274,149275,149416,149417,149450,149451,149457,149458,149593,149594,149612,149613,149649,149650,149659,149660,149681,149682,149931,149932,149973,149974,149986,149987,149994,149995,150001,150002,150007,150008,150016,150017,150023,150024,150055,150056,150073,150074,150088,150089,150097,150098,150104,150105,150111,150112,150130,150131,150162,150163,150187,150188,150236,150237,150248,150249,150255,150256,150270,150271,150273,150274,150281,150282,150291,150292,150298,150299,150324,150325,150344,150345,150362,150363,150392,150393,150397,150398,150402,150403,150407,150408,150421,150422,150424,150425,152890,152891,152893,152894,152898,152899,152904,152905,152911,152912,152967,152968,152970,152971,153382,153383,154602,154603,154610,154611,154789,154790,154794,154795,154802,154803,154846,154847,154868,154869,154873,154874,154878,154879,154888,154889,154894,154895,154900,154901,154909,154910,154944,154945,154949,154950,154960,154961,154968,154969,154973,154974,154979,154980,155160,155161,155197,155198,155205,155206,155224,155225,155251,155252,155280,155281,155288,155289,155294,155295,155306,155307,155327,155328,155334,155335,155363,155364,155403,155404,155411,155412,155423,155424,155489,155490,155508,155509,155542,155543,155547,155548,155556,155557,155562,155563,155572,155573,155578,155579,155608,155609,155748,155749,155759,155760,155764,155765,155770,155771,155790,155791,155792,155793,155804,155805,155813,155814,155825,155826,155833,155834,155840,155841,155847,155848,155859,155860,155866,155867,155874,155875,155882,155883,155889,155890,155894,155895,155901,155902,155906,155907,155914,155915,155921,155922,155933,155934,155938,155939,155947,155948,155955,155956,155962,155963,155969,155970,155977,155978,155985,155986,155991,155992,155998,155999,156005,156006,156007,156008,156045,156046,156083,156084,156123,156124,156126,156127,156128,156129,156130,156131,156143,156144,156145,156146,156147,156148,156169,156170,156181,156182,156183,156184,156185,156186,156310,156311,156312,156313,156319,156320,156321,156322,156323,156324,156325,156326,156327,156328,156329,156330,156338,156339,156344,156345,156351,156352,156358,156359,156371,156372,156378,156379,156399,156400,156411,156412,156413,156414,156464,156465,156471,156472,156477,156478,156532,156533,156538,156539,156544,156545,156551,156552,156557,156558,156732,156733,156740,156741,156746,156747,156752,156753,156759,156760,156769,156770,156824,156825,156837,156838,156867,156868,156873,156874,156880,156881,156886,156887,156894,156895,156900,156901,156906,156907,156912,156913,156989,156990,157008,157009,157084,157085,157090,157091,157097,157098,157303,163840,163842,163921,163922,164415,172778,172779,178339,178340,179118,179119,179333,179334,179336,179337,179338,179339,179340,179341,179357,179358,179375,179376,179489,179490,179492,179493,179496,179497,179498,179499,179500,179501,179502,179503,179518,179519,179520,179521,179522,179523,179548,179549,179550,179551,179559,179560,179565,179566,179614,179615,179624,179625,179631,179632,179656,179657,180064,180065,180161,180162,180168,180169,180178,180179,180185,180186,180194,180195,180235,180236,180240,180241,180247,180248,180253,180254,180258,180259,180263,180264,180268,180269,180275,180276,180296,180297,180301,180302,180328,180329,180334,180335,180390,180391,180400,180401,180418,180419,180436,180437,183346,183347,183373,183374,183380,183381,183394,183395,183410,183411,183418,183419,183434,183435,183450,183451,183472,183473,183507,183508,183562,183563,183612,183613,183618,183619,183624,183625,183630,183631,183642,183643,183759,183760,183799,183800,183858,183859,183920,183921,184213,184214,184542,184543,184549,184550,184571,184572,184818,184819,184860,184861,184912,184913,184919,184920,184926,184927,185614,185615,185642,185643,187081,187082,187090,187091,187099,187100,187181,187182,187205,187206,187223,187224,187364,187365,187382,187383,187417,187418,187424,187425,187431,187432,187440,187441,187456,187457,187482,187483,187494,187495,187607,187608,187663,187664,187670,187671,187761,187762,187957,187958,187993,187994,188003,188004,188145,188146,188333,188334,188340,188341,188379,188380,188403,188404,188464,188465,188475,188476,188650,188651,188657,188658,188863,188864,188951,188952,189044,189045,189345,189346,189433,189434,189549,189550,189560,189561,189566,189567,189739,189740,189810,189811,189836,189837,189872,189873,189877,189878,189885,189886,189890,189891,190029,190030,190057,190058,190067,190068,190072,190073,190078,190079,190084,190085,190089,190090,190095,190096,190102,190103,190108,190109,190114,190115,190120,190121,190125,190126,190131,190132,190137,190138,190142,190143,190147,190148,190152,190153,190158,190159,190164,190165,190170,190171,190175,190176,190180,190181,190185,190186,190200,190201,190207,190208,190267,190268,190310,190311,190334,190335,190346,190347,190352,190353,190361,190362,190368,190369,190378,190379,190385,190386,190432,190433,190451,190452,190457,190458,190465,190466,190501,190502,190507,190508,190518,190519,190630,190631,190638,190639,190646,190647,190658,190659,190758,190759,190763,190764,190772,190773,190860,190861,190868,190869,190994,190995,191386,191387,191663,191664,191672,191673,191690,191691,191725,191726,191792,191793,191807,191808,191822,191823,191865,191866,191894,191895,192127,192128,192133,192134,192138,192139,192199,192200,192234,192235,192248,192249,192254,192255,192278,192279,192308,192309,192321,192322,192329,192330,192365,192366,192382,192383,192388,192389,192401,192402,192426,192427,192460,192461,192470,192471,192671,192672,192756,192757,192764,192765,192781,192782,192789,192790,192798,192799,192818,192819,192966,192967,192978,192979,192986,192987,192991,192992,193017,193018,193033,193034,193060,193061,193080,193081,193088,193089,193113,193114,193133,193134,193149,193150,193174,193175,193180,193181,193189,193190,193199,193200,193210,193211,193216,193217,193228,193229,193236,193237,193245,193246,193250,193251,193271,193272,193278,193279,193324,193325,193338,193339,193395,193396,193413,193414,194623,194624,194628,194629,194635,194636,194693,194694,194715,194716,194725,194726,195893,195894,195904,195905,195941,195942,195979,195980,195984,195985,195992,195993,195998,195999,196170,196171,196199,196200,196208,196209,196220,196221,196225,196226,196237,196238,196243,196244,196257,196258,196270,196271,196286,196287,196291,196292,196308,196309,196320,196321,196326,196327,196339,196340,196361,196362,196367,196368,196374,196375,196389,196390,196422,196423,196441,196442,196468,196469,196474,196475,196479,196480,196486,196487,196514,196515,196520,196521,196532,196533,196549,196550,196567,196568,196576,196577,196584,196585,196601,196602,196606,196608,196609,229376,229378,229457,229458,229951,230895,230896,230982,230983,231107,231108,231147,231148,231515,231516,231525,231526,231561,231562,231566,231567,231607,231608,231659,231660,231736,231737,231820,231821,231852,231853,231873,231874,231909,231910,231996,231997,232104,232105,232113,232114,232149,232150,232157,232158,232167,232168,232289,232290,232311,232312,232344,232345,232375,232376,232417,232418,232427,232428,232435,232436,232444,232445,232545,232546,232669,232670,232719,232720,232726,232727,232732,232733,232739,232740,232818,232819,232823,232824,232829,232830,232834,232835,232844,232845,232853,232854,232861,232862,232868,232869,232881,232882,232894,232895,232901,232902,232961,232962,232985,232986,233008,233009,233015,233016,233041,233042,233221,233222,233253,233254,233277,233278,233479,233480,233485,233486,233491,233492,233541,233542,233606,233607,233655,233656,233670,233671,233677,233678,233869,233870,233894,233895,233896,233897,233900,233901,233908,233909,233913,233914,233920,233921,233923,233924,233927,233928,233930,233931,233933,233934,233936,233937,233940,233941,233944,233945,233947,233948,233953,233954,233972,233973,233992,233993,233997,233998,234002,234003,234007,234008,234019,234020,234026,234027,234040,234041,234051,234052,234054,234055,234062,234063,234067,234068,234072,234073,234077,234078,234081,234082,234085,234086,234090,234091,234095,234096,234099,234100,234104,234105,234108,234109,234113,234114,234118,234119,234131,234132,234137,234138,234139,234140,235170,235171,235176,235177,235185,235186,235191,235192,235194,235195,235196,235197,235204,235205,235223,235224,235229,235230,235234,235235,235240,235241,235252,235253,235259,235260,235265,235266,235276,235277,235282,235283,235284,235285,235286,235287,235288,235289,235293,235294,235296,235297,235303,235304,235307,235308,235315,235316,235319,235320,235349,235350,235363,235364,235388,235389,235425,235426,235452,235453,235497,235498,235522,235523,235534,235535,235563,235564,235590,235591,235603,235604,235605,235606,235609,235610,235612,235613,235615,235616,235619,235620,235623,235624,235631,235632,235634,235635,235639,235640,235649,235650,235654,235655,235660,235661,235665,235666,235671,235672,235675,235676,235680,235681,235685,235686,235693,235694,235699,235700,235703,235704,235709,235710,235714,235715,235718,235719,235724,235725,235729,235730,235734,235735,235738,235739,235745,235746,235749,235750,235755,235756,235762,235763,235766,235767,235777,235778,235780,235781,235786,235787,235791,235792,235807,235808,235811,235812,235816,235817,235822,235823,235828,235829,235834,235835,235840,235841,235845,235846,235848,235849,235855,235856,235862,235863,235869,235870,235874,235875,235882,235883,235889,235890,235893,235894,235900,235901,235907,235908,235915,235916,235919,235920,235930,235931,235934,235935,235946,235947,235950,235951,235955,235956,235961,235962,235967,235968,235974,235975,235983,235984,235989,235990,235997,235998,236002,236003,236005,236006,236010,236011,236016,236017,236022,236023,236030,236031,236038,236039,236042,236043,236051,236052,236053,236054,236061,236062,236069,236070,236076,236077,236133,236134,236156,236157,236164,236165,236174,236175,236182,236183,236191,236192,236204,236205,236216,236217,236227,236228,236240,236241,236249,236250,236258,236259,236269,236270,236280,236281,236289,236290,236298,236299,236303,236304,236311,236312,236322,236323,236333,236334,236344,236345,236396,236397,236405,236406,236414,236415,236430,236431,236435,236436,236449,236450,236458,236459,236502,236503,236516,236517,236533,236534,236543,236544,236552,236553,236581,236582,236594,236595,236605,236606,236619,236620,236630,236631,236642,236643,236657,236658,236669,236670,236687,236688,236694,236695,236699,236700,236741,236742,236752,236753,236762,236763,236774,236775,236785,236786,236793,236794,236803,236804,236815,236816,236827,236828,236832,236833,236842,236843,236852,236853,236863,236864,236871,236872,236880,236881,236895,236896,236924,236925,236935,236936,236958,236959,237017,237018,237032,237033,237038,237039,237083,237084,237097,237098,237113,237114,237129,237130,237136,237137,237150,237151,237162,237163,237175,237176,237184,237185,237196,237197,237207,237208,237235,237236,237314,237315,237326,237327,237337,237338,237349,237350,237358,237359,237381,237382,237389,237390,237400,237401,237410,237411,237429,237430,237473,237474,237483,237484,237496,237497,237504,237505,237541,237542,237588,237589,237597,237598,237603,237604,237612,237613,237633,237634,237640,237641,237642,237643,237645,237646,237648,237649,237651,237652,237655,237656,237658,237659,237661,237662,237664,237665,237668,237669,237673,237674,237676,237677,237680,237681,237683,237684,237686,237687,237689,237690,237693,237694,237696,237697,237700,237701,237702,237703,237704,237705,237767,237768,237769,237770,237771,237772,237782,237783,237784,237785,237826,237827,237828,237829,237830,237831,238050,238051,238052,238053,238086,238087,238088,238089,238090,238091,238326,238327,238328,238329,238337,238338,238339,238340,238341,238342,238355,238356,238357,238358,238390,238391,238392,238393,238394,238395,238402,238403,238404,238405,239013,239014,239015,239016,239017,239018,239102,239103,239104,239105,239171,239172,239173,239174,239175,239176,239270,239271,239272,239273,241228,241229,241230,241231,241232,241233,242758,242759,242760,242761,242908,242909,242910,242911,242912,242913,243603,243604,243605,243606,243613,243614,243615,243616,243617,243618,243619,243620,243621,243622,243634,243635,243636,243637,246225,246226,246227,246228,246229,246230,248594,248595,248596,248597,249080,249081,249082,249083,249084,249085,249980,249981,249982,249983,250140,250141,250142,250143,250144,250145,250421,250422,250423,250424,251407,251408,251409,251410,251411,251412,251998,251999,252000,252001,252007,252008,252009,252010,252011,252012,252022,252023,252024,252025,252038,252039,252040,252041,252042,252043,252077,252078,252079,252080,252086,252087,252088,252089,252090,252091,252102,252103,252104,252105,252165,252166,252167,252168,252169,252170,252176,252177,252178,252179,252413,252414,252415,252416,252417,252418,252575,252576,252577,252578,252625,252626,252627,252628,252629,252630,252763,252764,252765,252766,254445,254446,254447,254448,254449,254450,255757,255758,255759,255760,255770,255771,255772,255773,255774,255775,255826,255827,255828,255829,255865,255866,255867,255868,255869,255870,255871,255872,255873,255874,255930,255931,255932,255933,255938,255939,255940,255941,255942,255943,255966,255967,255968,255969,257383,257384,257385,257386,257387,257388,258437,258438,258439,258440,258443,258444,258445,258446,258447,258448,258461,258462,258463,258464,258470,258471,258472,258473,258474,258475,258491,258492,258493,258494,258506,258507,258508,258509,258510,258511,258591,258592,258593,258594,258595,258596,258597,258598,260996,260997,260998,260999,261042,261043,261044,261045,261046,261047,261164,261165,261166,261167,261170,261171,261172,261173,261174,261175,261186,261187,261188,261189,261250,261251,261252,261253,261254,261255,261344,261345,261346,261347,261480,261481,261482,261483,261484,261485,261731,261732,261733,261734,261745,261746,261747,261748,261749,261750,261793,261794,261795,261796,261797,261798,261799,261800,261801,261802,261803,261804,261805,261806,261807,261808,261809,261810,261811,261812,261813,261814,261815,261816,261817,261818,261819,261820,261829,261830,261831,261832,261833,261834,261843,261844,261845,261846,261903,261904,261905,261906,261907,261908,262083,262084,262085,262086,262087,262088,262089,262090,262091,262092,262116,262117,262118,262119,262120,262121,262131,262132,262133,262134,262135,262136,262137,262138,262139,262140,262141,262144,262145,294912,294914,294993,294994,295487,295488,300403,300405,300406,300407,300408,300409,300410,300411,300421,300422,300423,300424,300459,300460,300466,300467,300468,300469,300482,300483,300496,300497,300498,300499,300514,300515,301303,301304,301305,301306,301307,301308,301309,301310,305216,305217,305275,305276,305277,305278,305279,305280,305281,305282,305460,305461,305468,305469,305470,305471,305487,305488,305498,305499,305500,305501,305520,305521,305533,305534,305535,305536,305556,305557,305578,305579,305580,305581,305598,305599,305606,305607,305608,305609,305636,305637,305665,305666,305667,305668,305719,305720,305753,305754,305755,305756,305772,305773,305782,305783,305784,305785,305795,305796,305899,305900,305901,305902,305933,305934,306479,306480,306481,306482,308207,308208,308223,308224,308225,308226,308241,308242,308308,308309,308310,308311,308324,308325,308335,308336,308337,308338,308360,308361,308464,308465,308466,308467,308514,308515,308521,308522,308523,308524,308532,308533,308542,308543,308544,308545,308567,308568,308578,308579,308580,308581,308591,308592,308624,308625,308626,308627,308653,308654,313384,313385,313386,313387,313388,313389,313390,313391,314050,314051,314415,314416,314417,314418,314419,314420,314438,314439,314440,314441,314468,314469,314470,314471,314472,314473,314553,314554,314555,314556,314557,314558,314559,314560,314567,314568,314569,314570,314571,314572") == "85723a7e27120731253ba7f31f56c7a04def5afe" || 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", "6540,1,80,81,306,2816,2817,2818,2819,2820,2821,2822,2823,2832,2833,2940,2941,2942,2943,3036,3037,3045,3046,3047,3048,3049,3050,3051,3052,3069,3070,3089,3090,3091,3092,3102,3103,3157,3158,3159,3160,3172,3173,3177,3178,3179,3180,3190,3191,3205,3206,3207,3208,3244,3245,3254,3255,3256,3257,3300,3301,3327,3328,3329,3330,3382,3383,3392,3393,3394,3395,3433,3434,3446,3447,3448,3449,3450,3451,3530,3531,3532,3533,3766,3767,3768,6947,6948,6949,6950,8090,8091,8092,8093,8315,8316,8317,8318,9155,9156,9157,9158,9160,9161,9162,9163,9164,9165,9172,9173,9174,9175,9181,9182,9183,9184,9185,9186,9212,9213,9214,9215,9278,9279,9280,9281,9282,9283,9349,9350,9351,9352,9358,9359,9360,9361,9362,9363,9390,9391,9392,9393,9397,9398,9399,9400,9401,9402,9421,9422,9423,9424,9426,9427,9428,9429,9430,9431,9437,9438,9439,9440,9444,9445,9446,9447,9448,9449,9465,9466,9467,9468,9471,9472,9473,9474,9475,9476,9486,9487,9488,9489,9492,9493,9494,9495,9496,9497,9510,9511,9512,9513,9517,9518,9519,9520,9521,9522,9533,9534,9535,9536,9537,9538,9539,9540,9604,9605,9616,9617,9618,9619,9620,9621,9622,9623,9630,9631,9633,9634,9635,9636,9638,9639,9640,9641,9642,9643,9644,9645,9692,9693,9702,9703,9704,9705,9706,9707,9708,9709,9761,9762,9772,9773,9774,9775,9776,9777,9778,9779,10524,10525,21727,21728,21730,21731,21742,21743,21754,21755,21759,21760,21764,21765,21772,21773,21778,21779,21783,21784,21785,21786,21792,21793,21830,21831,21832,21833,21834,21835,21841,21842,21851,21852,21861,21862,21869,21870,21876,21877,21888,21889,21895,21896,21901,21902,21903,21904,21913,21914,21923,21924,21930,21931,21936,21937,21938,21939,21943,21944,21949,21950,21954,21955,21967,21968,21975,21976,21982,21983,21991,21992,22040,22041,22046,22047,22048,22049,22054,22055,22136,22137,22142,22143,22155,22156,22162,22163,22168,22169,22202,22203,22222,22223,22227,22228,22233,22234,22241,22242,22246,22247,22254,22255,22261,22262,22269,22270,22275,22276,22286,22287,22310,22311,22345,22346,22347,22348,22356,22357,22399,22400,22407,22408,22417,22418,22458,22459,22463,22464,22473,22474,22480,22481,22486,22487,22494,22495,22510,22511,22520,22521,22542,22543,22553,22554,22566,22567,22577,22578,22724,22725,22738,22739,22747,22748,22753,22754,22789,22790,22801,22802,22836,22837,22949,22950,22961,22962,22971,22972,22973,22974,23003,23004,23009,23010,23047,23048,23076,23077,23078,23079,23080,23081,23108,23109,23121,23122,23177,23178,23241,23242,23303,23304,23309,23310,23351,23352,23407,23408,23409,23410,23415,23416,23421,23422,23427,23428,23450,23451,23456,23457,23465,23466,23473,23474,23603,23604,23759,23760,23766,23767,23784,23785,23794,23795,23813,23814,23816,23817,23825,23826,23923,23924,23950,23951,23956,23957,23965,23966,24006,24007,24013,24014,24149,24150,24151,24152,24157,24158,24165,24166,24171,24172,24177,24178,24185,24186,24195,24196,24205,24206,24210,24211,24238,24239,24265,24266,24284,24285,24291,24292,24298,24299,24306,24307,24316,24317,24376,24377,24411,24412,24420,24421,24426,24427,24435,24436,24437,24438,24457,24458,24465,24466,24470,24471,24476,24477,24525,24526,24833,24834,24838,24839,24877,24878,24886,24887,24895,24896,24901,24902,24906,24907,24911,24912,24916,24917,24922,24923,24941,24942,24953,24954,24965,24966,24971,24972,24973,24974,24984,24985,24993,24994,25003,25004,25014,25015,25060,25061,25070,25071,25080,25081,25090,25091,25092,25093,25097,25098,25103,25104,25109,25110,25115,25116,25121,25122,25127,25128,25133,25134,25139,25140,25145,25146,25152,25153,25159,25160,25166,25167,25173,25174,25179,25180,25185,25186,25213,25214,25243,25244,25252,25253,25258,25259,25263,25264,25309,25310,25314,25315,25327,25328,25332,25333,25334,25335,25348,25349,25355,25356,25361,25362,25369,25370,25377,25378,25383,25384,25389,25390,25395,25396,25422,25423,25431,25432,25438,25439,25443,25444,25450,25451,25457,25458,25459,25460,25464,25465,25496,25497,25543,25544,25545,25546,25554,25555,25570,25571,25576,25577,25582,25583,25590,25591,25596,25597,25599,25600,25604,25605,25628,25629,25630,25631,25636,25637,25655,25656,25664,25665,25670,25671,25676,25677,25682,25683,25688,25689,25711,25712,25782,25783,25788,25789,25794,25795,25801,25802,25808,25809,25811,25812,25828,25829,25834,25835,25841,25842,25947,25948,25972,25973,25979,25980,25986,25987,25991,25992,25993,25994,26016,26017,26330,26331,26499,26500,26517,26518,26521,26522,26523,26524,26586,26587,26588,26589,26590,26591,26592,26593,26609,26610,26614,26615,26616,26617,26671,26672,26673,26674,26695,26696,26757,26758,26759,26760,26770,26771,26775,26776,26778,26779,26828,26829,26830,26831,26850,26851,26899,26900,26902,26903,26904,26905,26921,26922,26926,26927,26928,26929,26986,26987,26988,26989,27013,27014,27076,27077,27078,27079,27095,27096,27100,27101,27102,27103,27158,27159,27160,27161,27185,27186,27248,27249,27250,27251,27267,27268,27272,27273,27274,27275,27337,27338,27339,27340,27364,27365,27428,27429,27589,27590,27591,27592,27594,27595,27596,27597,27599,27600,27605,27606,27609,27610,27611,27612,27613,27614,27615,27616,27624,27625,27627,27628,27870,27871,27872,27873,27874,27875,27876,27877,27882,27883,27884,27885,27886,27887,27890,27891,27894,27895,27898,27899,27902,27903,27904,27905,27908,27909,27912,27913,27916,27917,27920,27921,27924,27925,27926,27927,27930,27931,27934,27935,27938,27939,27942,27943,27946,27947,27950,27951,28034,28035,28036,28037,28044,28045,28064,28065,28071,28072,28073,28074,28075,28076,28077,28078,28079,28080,28081,28082,28083,28084,28089,28090,28091,28092,28093,28094,28097,28098,28101,28102,28103,28104,28107,28108,28109,28110,28113,28114,28116,28117,28120,28121,28125,28126,28130,28131,28135,28136,28140,28141,28142,28143,28146,28147,28148,28149,28150,28151,28152,28153,28154,28155,28156,28157,28178,28179,28184,28185,28199,28200,28217,28218,28222,28223,28224,28225,28227,28228,28385,28386,28388,28389,28390,28391,28553,28554,28556,28557,28558,28559,28560,28561,28564,28565,28566,28567,28571,28572,28573,28574,28577,28578,28579,28580,28581,28582,28583,28584,28585,28586,28587,28588,28599,28600,28601,28602,28603,28604,28605,28606,28608,28609,28610,28611,28612,28613,28614,28615,28616,28617,28618,28619,28620,28621,28622,28623,28624,28625,28626,28627,28628,28629,28630,28631,28632,28633,28634,28635,28636,28637,28638,28639,28640,28641,28642,28643,28644,28645,28646,28647,28648,28649,28650,28651,28652,28653,28654,28655,28656,28657,28658,28659,28660,28661,28662,28663,28664,28665,28667,28668,28671,28672,28673,28674,28675,28676,28677,28678,28679,28680,28681,28682,28703,28704,28705,28706,28707,28708,28710,28711,28716,28717,28718,28719,28720,28721,28723,28724,28725,28726,28727,28728,28731,28732,28734,28735,28736,28737,28739,28740,28742,28743,28745,28746,28752,28753,28761,28762,28770,28771,28778,28779,28786,28787,28795,28796,28804,28805,28813,28814,28822,28823,28841,28842,28843,28844,28845,28846,28847,28848,28849,28850,29956,29957,29958,29959,29960,29961,29962,29963,29964,29965,29966,29967,29968,29969,29970,29971,29972,29973,29974,29975,29976,29977,29978,29979,29980,29981,29982,29983,29984,29985,29986,29987,29988,29989,29990,29991,29992,29993,29994,29995,29996,29997,29998,29999,30000,30001,30002,30003,30004,30005,30006,30007,30008,30009,30010,30011,30012,30013,30014,30015,30016,30017,30018,30019,30020,30021,30022,30023,30024,30025,30026,30027,30028,30029,30030,30031,30032,30033,30034,30035,30036,30037,30038,30039,30040,30041,30042,30043,30044,30045,30046,30047,30048,30049,30050,30051,30052,30053,30054,30055,30067,30068,30069,30070,30071,30072,30073,30074,30075,30076,30077,30078,30235,30236,30237,30238,30239,30240,30241,30242,30243,30244,30247,30248,30251,30252,30253,30254,30255,30256,30257,30258,30259,30260,30261,30262,30263,30264,30265,30266,30267,30268,30269,30270,30271,30272,30273,30274,30275,30276,30277,30278,30279,30280,30281,30282,30283,30284,30285,30286,30287,30288,30289,30290,30291,30292,30293,30294,30295,30296,30297,30298,30299,30300,30301,30302,30303,30304,30305,30306,30307,30308,30309,30310,30311,30312,30313,30314,30315,30316,30317,30318,30319,30320,30321,30322,30323,30324,30325,30326,30327,30328,30329,30330,30331,30332,30333,30334,30336,30337,30338,30339,30340,30341,30342,30343,30346,30347,30348,30349,30350,30351,30352,30353,30354,30355,30356,30357,30358,30359,30360,30361,30362,30363,30364,30365,30366,30367,30368,30369,30370,30371,30372,30373,30374,30375,30379,30380,30381,30382,30383,30384,30385,30386,30387,30388,30845,30846,30847,30848,30850,30851,30852,30853,30854,30855,30857,30858,30860,30861,30863,30864,30866,30867,30868,30869,30871,30872,30874,30875,30877,30878,30879,30880,30882,30883,30885,30886,30888,30889,30891,30892,30894,30895,30897,30898,30900,30901,30903,30904,30906,30907,30909,30910,30912,30913,30915,30916,30919,30920,30922,30923,30925,30926,30928,30929,30931,30932,30934,30935,30936,30937,30938,30939,30941,30942,30944,30945,30948,30949,30952,30953,30955,30956,30958,30959,30961,30962,30964,30965,30967,30968,30970,30971,30973,30974,30976,30977,30979,30980,30983,30984,30986,30987,30989,30990,30992,30993,30995,30996,30998,30999,31001,31002,31004,31005,31007,31008,31010,31011,31013,31014,31016,31017,31019,31020,31021,31022,31024,31025,31027,31028,31030,31031,31033,31034,31036,31037,31038,31039,31041,31042,31044,31045,31047,31048,31050,31051,31053,31054,31056,31057,31059,31060,31061,31062,31064,31065,31067,31068,31070,31071,31073,31074,31076,31077,31079,31080,31082,31083,31085,31086,31088,31089,31091,31092,31094,31095,31097,31098,31100,31101,31103,31104,31106,31107,31108,31109,31111,31112,31114,31115,31117,31118,31120,31121,31122,31123,31125,31126,31128,31129,31131,31132,31134,31135,31137,31138,31140,31141,31143,31144,31146,31147,31149,31150,31153,31154,31156,31157,31159,31160,31162,31163,31165,31166,31168,31169,31170,31171,31173,31174,31176,31177,31179,31180,31182,31183,31185,31186,31187,31188,31190,31191,31193,31194,31196,31197,31199,31200,31202,31203,31204,31205,31207,31208,31210,31211,31213,31214,31276,31277,31279,31280,31282,31283,31284,31285,31287,31288,31290,31291,31293,31294,31296,31297,31299,31300,31301,31302,31304,31305,31307,31308,31310,31311,31313,31314,31315,31316,31318,31319,31321,31322,31324,31325,31327,31328,31330,31331,31333,31334,31336,31337,31339,31340,31342,31343,31345,31346,31347,31348,31350,31351,31353,31354,31356,31357,31359,31360,31362,31363,31365,31366,31368,31369,31371,31372,31374,31375,31376,31377,31378,31379,31380,31381,31382,31383,31385,31386,31389,31390,31392,31393,31394,31395,31396,31397,31399,31400,31402,31403,31405,31406,31408,31409,31411,31412,31414,31415,31417,31418,31420,31421,31422,31423,31424,31425,31426,31427,31428,31429,31431,31432,31440,31441,31449,31450,31458,31459,31467,31468,31476,31477,31478,31479,31480,31481,31482,31483,31484,31485,31486,31487,31488,31489,31490,31491,31495,31496,31497,31498,31500,31501,31511,31512,31527,31528,31545,31546,31575,31576,31605,31606,31680,31681,31753,31754,31804,31805,31845,31846,31873,31874,31902,31903,31935,31936,31989,31990,32009,32010,32065,32066,32095,32096,32125,32126,32155,32156,32185,32186,32190,32191,32195,32196,32204,32205,32238,32239,32243,32244,32246,32247,32249,32250,32262,32263,32269,32270,32276,32277,32286,32287,32293,32294,32330,32331,32366,32367,32372,32373,32378,32379,32383,32384,32386,32387,32392,32393,32398,32399,32409,32410,32412,32413,32422,32423,32432,32433,32442,32443,32453,32454,32462,32463,32471,32472,32480,32481,32489,32490,32515,32516,32519,32520,32522,32523,32537,32538,32552,32553,32567,32568,32582,32583,32587,32588,32592,32593,32621,32622,32627,32628,32632,32633,32635,32636,32638,32639,32644,32645,32683,32684,32724,32725,32728,32729,32733,32734,32738,32739,32751,32752,32754,32755,32758,32759,32763,32764,32765,32768,32770,32849,32850,65536,65537,66030,74956,74957,76014,76015,76927,76928,80492,80493,83023,83024,85084,85085,86182,86183,87020,87021,87553,87554,87634,87635,87741,87742,87889,87890,88758,88759,88760,88761,88795,88796,88803,88804,88805,88806,88807,88808,88809,88810,88842,88843,88897,88898,88933,88934,88935,88936,88937,88938,88939,88940,88941,88942,88943,88944,88945,88946,88947,88948,88949,88950,88951,88952,88953,88954,88955,88956,88957,88958,88959,88960,88961,88962,88963,88964,88965,88966,88967,88968,88969,88970,89126,89127,89235,89236,89379,89380,89481,89482,89672,89673,89832,89833,89896,89897,90045,90046,90250,90251,90345,90346,90500,90501,90563,90564,90565,90566,90567,90568,90569,90570,90571,90572,90573,90574,90575,90576,90585,90586,90587,90588,90590,90591,90592,90593,90620,90621,90622,90623,90649,90650,90651,90652,90679,90680,90681,90682,90694,90695,90696,90697,90705,90706,90707,90708,90712,90713,90714,90715,90721,90722,90723,90724,90725,90726,90727,90728,90730,90731,90732,90733,90742,90743,90744,90745,90746,90747,90748,90749,90750,90751,90752,90753,90754,90755,90756,90757,90835,90836,90837,90838,90839,90840,90841,90842,90843,90844,90845,90846,90847,90848,90849,90850,90852,90853,90854,90855,90856,90857,90858,90859,90895,90896,90897,90898,90934,90935,90936,90937,90938,90939,90940,90941,90942,90943,90944,90945,90946,90947,90949,90950,90952,90953,90954,90955,90956,90957,90958,90959,90960,90961,90962,90963,90964,90965,90966,90967,90968,90969,90970,90971,90972,90973,96394,96395,96396,96397,96398,96399,96400,96401,96402,96403,96404,96405,96409,96410,96413,96414,96418,96419,96423,96424,96428,96429,96430,96431,96432,96433,96436,96437,96438,96439,96440,96441,96442,96443,96444,96445,96446,96447,96448,96449,96450,96451,96452,96453,96454,96455,96456,96457,96458,96459,96460,96461,96462,96463,96464,96465,96466,96467,96468,96469,96470,96471,96472,96473,96474,96475,96476,96477,96478,96479,96480,96481,96482,96483,96484,96485,96486,96487,96488,96489,96490,96491,96492,96493,96494,96495,96496,96497,96498,96499,96500,96501,96502,96503,96504,96505,96506,96507,96508,96509,96510,96511,96512,96513,96517,96518,96523,96524,96525,96526,96649,96650,96651,96652,96653,96654,96655,96656,96657,96658,96659,96660,96661,96662,96664,96665,96666,96667,96669,96670,96671,96672,96674,96675,96676,96677,96679,96680,96681,96682,96684,96685,96686,96687,96689,96690,96691,96692,96694,96695,96696,96697,96698,96699,96700,96701,96702,96703,96704,96705,96711,96712,96713,96714,96715,96716,96722,96723,96724,96725,96806,96807,96808,96809,96810,96811,97197,97198,97199,97200,97202,97203,97204,97205,97206,97207,97213,97214,97215,97216,97221,97222,97223,97224,97225,97226,97243,97244,97245,97246,97276,97277,97278,97279,97280,97281,97300,97301,97302,97303,97313,97314,97315,97316,97317,97318,97341,97342,97343,97344,97345,97346,97347,97348,97350,97351,97352,97353,97357,97358,97359,97360,97362,97363,97364,97365,97367,97368,97369,97370,97372,97373,97374,97375,97377,97378,97379,97380,97382,97383,97384,97385,97387,97388,97389,97390,97393,97394,97395,97396,97398,97399,97400,97401,97404,97405,97406,97407,97409,97410,97411,97412,97422,97423,97424,97425,97426,97427,97428,97429,97430,97431,97432,97433,97434,97435,97440,97441,97442,97443,97444,97445,97452,97453,97454,97455,97477,97478,97479,97480,97481,97482,97527,97528,97529,97530,97544,97545,97546,97547,97548,97549,97565,97566,97567,97568,97569,97570,97571,97572,97585,97586,97587,97588,97590,97591,97592,97593,97595,97596,97597,97598,97600,97601,97602,97603,97605,97606,97607,97608,97610,97611,97612,97613,97615,97616,97617,97618,97620,97621,97622,97623,97625,97626,97627,97628,97630,97631,97632,97633,97640,97641,97642,97643,97645,97646,97647,97648,97649,97650,97651,97652,97653,97654,97655,97656,97657,97658,97663,97664,97665,97666,97667,97668,97675,97676,97677,97678,97682,97683,97684,97685,97686,97687,97694,97695,97696,97697,97698,97699,97700,97701,97703,97704,97705,97706,97708,97709,97710,97711,97713,97714,97715,97716,97718,97719,97720,97721,97723,97724,97725,97726,97728,97729,97730,97731,97839,97840,97841,97842,97843,97844,97845,97846,97847,97848,97849,97850,97851,97852,97853,97854,97855,97856,97857,97858,97859,97860,97861,97862,97870,97871,97872,97873,97881,97882,97883,97884,97885,97886,97893,97894,97895,97896,97903,97904,97905,97906,97907,97908,97909,97910,97911,97912,97913,97914,97923,97924,97925,97926,97927,97928,97944,97945,97946,97947,97949,97950,97951,97952,97954,97955,97956,97957,97959,97960,97961,97962,97967,97968,97969,97970,97972,97973,97974,97975,97976,97977,97978,97979,97984,97985,97986,97987,97988,97989,97999,98000,98001,98002,98027,98028,98029,98030,98031,98032,98118,98119,98120,98121,98184,98185,98186,98187,98188,98189,98190,98191,98206,98207,98208,98209,98210,98211,98230,98231,98232,98233,98234,98235,98236,98237,98301,98304,98306,98385,98386,104971,104975,104976,104980,104981,104986,104987,104993,104994,104999,105000,105006,105007,105099,105100,105199,105200,105204,105205,105221,105222,105253,105254,105315,105316,105381,105382,105443,105444,105505,105506,105581,105582,105663,105664,105739,105740,105821,105822,105903,105904,105980,105981,106063,106064,106139,106140,106221,106222,106297,106298,106373,106374,106454,106455,106529,106530,106611,106612,106693,106694,106769,106770,106852,106853,106928,106929,106931,106932,106940,106941,106942,106943,106949,106950,106957,106958,106966,106967,106987,106988,107124,107125,107126,107127,107128,107129,107154,107155,107522,107523,107559,107560,107979,107980,108002,108003,108180,108181,108184,108185,108200,108201,108346,108347,110120,110121,110168,110169,110505,110506,111148,111149,120054,120055,120067,120068,120139,120140,120142,120143,120150,120151,120167,120168,120385,120386,120412,120413,120675,120676,120680,120681,120712,120713,120715,120716,120723,120724,120860,120861,122060,122061,122063,122064,122074,122075,122082,122083,122148,122149,122444,122445,124552,124553,124556,124557,124687,124688,124689,124690,124691,124692,124694,124695,124696,124697,124701,124702,124704,124705,124706,124707,124709,124710,124722,124723,124729,124730,124736,124737,124742,124743,124775,124776,124811,124812,124815,124816,124819,124820,125216,125217,125664,125665,125666,125667,125670,125671,125673,125674,125677,125678,126182,126183,127789,127790,127791,127792,127805,127806,127808,127809,127811,127812,127814,127815,127823,127824,127826,127827,127840,127841,127842,127843,127844,127845,127904,127905,127913,127914,127955,127956,127998,127999,128049,128050,128156,128157,128165,128166,128183,128184,128194,128195,128203,128204,128212,128213,128232,128233,128243,128244,128251,128252,128263,128264,128301,128302,128332,128333,128348,128349,128358,128359,128379,128380,128389,128390,128400,128401,128449,128450,128462,128463,128546,128547,128553,128554,128586,128587,128603,128604,128680,128681,128788,128789,129003,129004,129024,129025,129041,129042,129198,129199,129548,129549,129574,129575,129585,129586,129598,129599,129609,129610,129666,129667,129679,129680,129690,129691,129778,129779,129795,129796,129807,129808,129820,129821,129919,129920,130709,130710,130720,130721,130722,130723,130768,130769,130823,130824,130825,130826,130831,130832,130835,130836,130846,130847,130856,130857,130871,130872,130875,130876,130906,130907,130910,130911,130914,130915,130938,130939,130993,130994,130998,130999,131004,131005,131008,131009,131011,131012,131014,131015,131016,131017,131044,131045,131047,131048,131050,131051,131052,131053,131054,131055,131057,131058,131070,131072,131073,131566,131717,131718,132023,132024,132025,132026,132113,132114,132777,132778,132783,132784,132789,132790,132800,132801,132814,132815,132830,132831,132859,132860,132870,132871,132908,132909,133181,133182,133183,133184,133185,133186,133187,133188,133261,133262,133335,133336,133379,133380,133381,133382,133385,133386,133387,133388,133389,133390,133391,133392,133393,133394,133396,133397,133403,133404,133409,133410,133485,133486,133489,133490,133495,133496,133497,133498,133499,133500,133501,133502,133503,133504,133505,133506,133512,133513,133514,133515,133536,133537,133560,133561,133562,133563,133574,133575,133618,133619,133670,133671,133990,133991,134098,134099,134100,134101,134109,134110,134115,134116,134128,134129,134143,134144,134187,134188,134201,134202,134247,134248,134259,134260,134367,134368,134684,134685,134783,134784,134821,134822,134851,134852,134871,134872,134880,134881,135065,135066,135208,135209,135219,135220,135237,135238,135247,135248,135382,135383,135389,135390,135419,135420,135450,135451,135640,135641,135647,135648,135654,135655,135660,135661,135665,135666,135679,135680,135688,135689,135693,135694,135724,135725,135742,135743,135773,135774,135828,135829,135846,135847,135877,135878,135897,135898,135906,135907,135914,135915,135938,135939,135988,135989,136000,136001,136005,136006,136010,136011,136816,136817,136821,136822,136826,136827,136843,136844,136848,136849,136855,136856,136860,136861,136866,136867,136872,136873,136877,136878,136883,136884,136889,136890,136894,136895,136899,136900,136905,136906,136911,136912,136917,136918,136923,136924,136928,136929,136934,136935,136940,136941,136945,136946,136951,136952,136957,136958,136962,136963,136968,136969,136974,136975,136979,136980,136985,136986,136991,136992,136996,136997,137002,137003,137008,137009,137013,137014,137019,137020,137025,137026,137030,137031,137036,137037,137042,137043,137047,137048,137053,137054,137059,137060,137064,137065,137070,137071,137076,137077,137081,137082,137087,137088,137093,137094,137098,137099,137104,137105,137110,137111,137118,137119,137126,137127,137140,137141,137146,137147,137169,137170,137199,137200,137242,137243,137279,137280,137286,137287,137345,137346,137350,137351,137369,137370,137374,137375,137548,137549,137718,137719,137725,137726,137740,137741,137750,137751,137760,137761,137770,137771,137780,137781,137790,137791,137800,137801,137810,137811,137820,137821,137830,137831,137845,137846,137855,137856,137865,137866,137880,137881,137890,137891,137900,137901,137910,137911,137920,137921,137930,137931,137940,137941,137950,137951,137960,137961,137970,137971,137985,137986,137995,137996,138005,138006,138015,138016,138025,138026,138040,138041,138050,138051,138060,138061,138070,138071,138085,138086,138095,138096,138105,138106,138115,138116,138130,138131,138140,138141,138150,138151,138160,138161,138170,138171,138185,138186,138195,138196,138205,138206,138215,138216,138225,138226,138235,138236,138244,138245,138259,138260,138269,138270,138279,138280,138289,138290,138299,138300,138309,138310,138319,138320,138329,138330,138339,138340,138354,138355,138364,138365,138374,138375,138384,138385,138394,138395,138404,138405,138414,138415,138424,138425,138434,138435,138444,138445,138454,138455,138469,138470,138479,138480,138489,138490,138499,138500,138509,138510,138519,138520,138534,138535,138544,138545,138554,138555,138564,138565,138574,138575,138584,138585,138594,138595,138604,138605,138619,138620,138629,138630,138639,138640,138649,138650,138664,138665,138679,138680,138689,138690,138699,138700,138709,138710,138719,138720,138729,138730,138739,138740,138754,138755,138764,138765,138774,138775,138784,138785,138799,138800,138809,138810,138819,138820,138829,138830,138844,138845,138854,138855,138864,138865,138874,138875,138889,138890,138899,138900,138909,138910,138919,138920,138929,138930,138939,138940,138954,138955,138964,138965,138974,138975,138984,138985,138994,138995,139009,139010,139019,139020,139029,139030,139039,139040,139049,139050,139059,139060,139074,139075,139084,139085,139094,139095,139104,139105,139114,139115,139124,139125,139139,139140,139149,139150,139159,139160,139169,139170,139179,139180,139189,139190,139199,139200,139209,139210,139219,139220,139229,139230,139244,139245,139254,139255,139264,139265,139274,139275,139284,139285,139294,139295,139304,139305,139314,139315,139324,139325,139334,139335,139349,139350,139359,139360,139369,139370,139379,139380,139389,139390,139399,139400,139409,139410,139419,139420,139429,139430,139439,139440,139454,139455,139464,139465,139474,139475,139484,139485,139494,139495,139504,139505,139514,139515,139524,139525,139534,139535,139549,139550,139559,139560,139569,139570,139579,139580,139589,139590,139599,139600,139609,139610,139619,139620,139629,139630,139639,139640,139649,139650,139659,139660,139669,139670,139684,139685,139694,139695,139704,139705,139714,139715,139724,139725,139734,139735,139744,139745,139754,139755,139764,139765,139779,139780,139789,139790,139799,139800,139809,139810,139819,139820,139829,139830,139839,139840,139854,139855,139864,139865,139874,139875,139884,139885,139894,139895,139904,139905,139914,139915,139924,139925,139934,139935,139944,139945,139954,139955,139964,139965,139979,139980,139989,139990,139999,140000,140009,140010,140019,140020,140029,140030,140039,140040,140049,140050,140059,140060,140069,140070,140084,140085,140094,140095,140104,140105,140114,140115,140129,140130,140139,140140,140149,140150,140159,140160,140169,140170,140179,140180,140189,140190,140199,140200,140209,140210,140219,140220,140234,140235,140244,140245,140254,140255,140264,140265,140274,140275,140284,140285,140294,140295,140304,140305,140319,140320,140329,140330,140339,140340,140349,140350,140359,140360,140369,140370,140384,140385,140394,140395,140404,140405,140414,140415,140424,140425,140434,140435,140444,140445,140454,140455,140464,140465,140479,140480,140489,140490,140499,140500,140509,140510,140620,140621,140684,140685,140689,140690,140696,140697,140710,140711,140717,140718,140776,140777,140798,140799,140812,140813,140845,140846,140939,140940,140954,140955,140964,140965,141009,141010,141042,141043,141053,141054,141060,141061,141066,141067,141180,141181,141200,141201,141206,141207,141883,141884,141903,141904,141916,141917,141930,141931,141994,141995,142000,142001,142007,142008,142014,142015,142022,142023,142092,142093,142101,142102,142109,142110,142129,142130,142151,142152,142421,142422,147244,147245,147274,147275,147282,147283,147397,147398,147420,147421,147471,147472,147501,147502,147526,147527,147540,147541,147546,147547,147560,147561,147565,147566,147601,147602,147608,147609,147615,147616,147624,147625,147634,147635,147643,147644,147700,147701,147719,147720,147751,147752,147757,147758,147769,147770,147825,147826,147838,147839,148007,148008,148022,148023,148098,148099,148157,148158,148179,148180,148224,148225,148239,148240,148244,148245,148250,148251,148256,148257,148262,148263,148268,148269,148274,148275,148282,148283,148585,148586,148590,148591,148618,148619,148632,148633,148637,148638,148644,148645,148654,148655,148686,148687,148692,148693,148699,148700,148707,148708,148715,148716,148720,148721,148725,148726,148732,148733,148739,148740,148746,148747,148752,148753,148758,148759,148764,148765,148770,148771,148776,148777,148781,148782,148787,148788,148793,148794,148799,148800,148805,148806,148812,148813,148818,148819,148824,148825,148829,148830,148836,148837,148843,148844,148850,148851,148860,148861,148870,148871,148878,148879,148884,148885,148898,148899,148908,148909,148914,148915,148922,148923,148928,148929,148934,148935,148940,148941,148947,148948,148952,148953,148958,148959,148964,148965,148969,148970,148975,148976,148981,148982,148986,148987,148991,148992,148997,148998,149002,149003,149010,149011,149017,149018,149022,149023,149028,149029,149171,149172,149184,149185,149213,149214,149235,149236,149274,149275,149416,149417,149450,149451,149457,149458,149593,149594,149612,149613,149649,149650,149659,149660,149681,149682,149931,149932,149973,149974,149986,149987,149994,149995,150001,150002,150007,150008,150016,150017,150023,150024,150055,150056,150073,150074,150088,150089,150097,150098,150104,150105,150111,150112,150130,150131,150162,150163,150187,150188,150236,150237,150248,150249,150255,150256,150270,150271,150273,150274,150281,150282,150291,150292,150298,150299,150324,150325,150344,150345,150362,150363,150392,150393,150397,150398,150402,150403,150407,150408,150421,150422,150424,150425,152890,152891,152893,152894,152898,152899,152904,152905,152911,152912,152967,152968,152970,152971,153382,153383,154602,154603,154610,154611,154789,154790,154794,154795,154802,154803,154846,154847,154868,154869,154873,154874,154878,154879,154888,154889,154894,154895,154900,154901,154909,154910,154944,154945,154949,154950,154960,154961,154968,154969,154973,154974,154979,154980,155160,155161,155197,155198,155205,155206,155224,155225,155251,155252,155280,155281,155288,155289,155294,155295,155306,155307,155327,155328,155334,155335,155363,155364,155403,155404,155411,155412,155423,155424,155489,155490,155508,155509,155542,155543,155547,155548,155556,155557,155562,155563,155572,155573,155578,155579,155608,155609,155748,155749,155759,155760,155764,155765,155770,155771,155790,155791,155792,155793,155804,155805,155813,155814,155825,155826,155833,155834,155840,155841,155847,155848,155859,155860,155866,155867,155874,155875,155882,155883,155889,155890,155894,155895,155901,155902,155906,155907,155914,155915,155921,155922,155933,155934,155938,155939,155947,155948,155955,155956,155962,155963,155969,155970,155977,155978,155985,155986,155991,155992,155998,155999,156005,156006,156007,156008,156045,156046,156083,156084,156123,156124,156126,156127,156128,156129,156130,156131,156143,156144,156145,156146,156147,156148,156169,156170,156181,156182,156183,156184,156185,156186,156310,156311,156312,156313,156319,156320,156321,156322,156323,156324,156325,156326,156327,156328,156329,156330,156338,156339,156344,156345,156351,156352,156358,156359,156371,156372,156378,156379,156399,156400,156411,156412,156413,156414,156464,156465,156471,156472,156477,156478,156532,156533,156538,156539,156544,156545,156551,156552,156557,156558,156732,156733,156740,156741,156746,156747,156752,156753,156759,156760,156769,156770,156824,156825,156837,156838,156867,156868,156873,156874,156880,156881,156886,156887,156894,156895,156900,156901,156906,156907,156912,156913,156989,156990,157008,157009,157084,157085,157090,157091,157097,157098,157303,163840,163842,163921,163922,164415,172778,172779,178339,178340,179118,179119,179333,179334,179336,179337,179338,179339,179340,179341,179357,179358,179375,179376,179489,179490,179492,179493,179496,179497,179498,179499,179500,179501,179502,179503,179518,179519,179520,179521,179522,179523,179548,179549,179550,179551,179559,179560,179565,179566,179614,179615,179624,179625,179631,179632,179656,179657,180064,180065,180161,180162,180168,180169,180178,180179,180185,180186,180194,180195,180235,180236,180240,180241,180247,180248,180253,180254,180258,180259,180263,180264,180268,180269,180275,180276,180296,180297,180301,180302,180328,180329,180334,180335,180390,180391,180400,180401,180418,180419,180436,180437,183346,183347,183373,183374,183380,183381,183394,183395,183410,183411,183418,183419,183434,183435,183450,183451,183472,183473,183507,183508,183562,183563,183612,183613,183618,183619,183624,183625,183630,183631,183642,183643,183759,183760,183799,183800,183858,183859,183920,183921,184213,184214,184542,184543,184549,184550,184571,184572,184818,184819,184860,184861,184912,184913,184919,184920,184926,184927,185614,185615,185642,185643,187081,187082,187090,187091,187099,187100,187181,187182,187205,187206,187223,187224,187364,187365,187382,187383,187417,187418,187424,187425,187431,187432,187440,187441,187456,187457,187482,187483,187494,187495,187607,187608,187663,187664,187670,187671,187761,187762,187957,187958,187993,187994,188003,188004,188145,188146,188333,188334,188340,188341,188379,188380,188403,188404,188464,188465,188475,188476,188650,188651,188657,188658,188863,188864,188951,188952,189044,189045,189345,189346,189433,189434,189549,189550,189560,189561,189566,189567,189739,189740,189810,189811,189836,189837,189872,189873,189877,189878,189885,189886,189890,189891,190029,190030,190057,190058,190067,190068,190072,190073,190078,190079,190084,190085,190089,190090,190095,190096,190102,190103,190108,190109,190114,190115,190120,190121,190125,190126,190131,190132,190137,190138,190142,190143,190147,190148,190152,190153,190158,190159,190164,190165,190170,190171,190175,190176,190180,190181,190185,190186,190200,190201,190207,190208,190267,190268,190310,190311,190334,190335,190346,190347,190352,190353,190361,190362,190368,190369,190378,190379,190385,190386,190432,190433,190451,190452,190457,190458,190465,190466,190501,190502,190507,190508,190518,190519,190630,190631,190638,190639,190646,190647,190658,190659,190758,190759,190763,190764,190772,190773,190860,190861,190868,190869,190994,190995,191386,191387,191663,191664,191672,191673,191690,191691,191725,191726,191792,191793,191807,191808,191822,191823,191865,191866,191894,191895,192127,192128,192133,192134,192138,192139,192199,192200,192234,192235,192248,192249,192254,192255,192278,192279,192308,192309,192321,192322,192329,192330,192365,192366,192382,192383,192388,192389,192401,192402,192426,192427,192460,192461,192470,192471,192671,192672,192756,192757,192764,192765,192781,192782,192789,192790,192798,192799,192818,192819,192966,192967,192978,192979,192986,192987,192991,192992,193017,193018,193033,193034,193060,193061,193080,193081,193088,193089,193113,193114,193133,193134,193149,193150,193174,193175,193180,193181,193189,193190,193199,193200,193210,193211,193216,193217,193228,193229,193236,193237,193245,193246,193250,193251,193271,193272,193278,193279,193324,193325,193338,193339,193395,193396,193413,193414,194623,194624,194628,194629,194635,194636,194693,194694,194715,194716,194725,194726,195893,195894,195904,195905,195941,195942,195979,195980,195984,195985,195992,195993,195998,195999,196170,196171,196199,196200,196208,196209,196220,196221,196225,196226,196237,196238,196243,196244,196257,196258,196270,196271,196286,196287,196291,196292,196308,196309,196320,196321,196326,196327,196339,196340,196361,196362,196367,196368,196374,196375,196389,196390,196422,196423,196441,196442,196468,196469,196474,196475,196479,196480,196486,196487,196514,196515,196520,196521,196532,196533,196549,196550,196567,196568,196576,196577,196584,196585,196601,196602,196606,196608,196609,229376,229378,229457,229458,229951,230895,230896,230982,230983,231107,231108,231147,231148,231515,231516,231525,231526,231561,231562,231566,231567,231607,231608,231659,231660,231736,231737,231820,231821,231852,231853,231873,231874,231909,231910,231996,231997,232104,232105,232113,232114,232149,232150,232157,232158,232167,232168,232289,232290,232311,232312,232344,232345,232375,232376,232417,232418,232427,232428,232435,232436,232444,232445,232545,232546,232669,232670,232719,232720,232726,232727,232732,232733,232739,232740,232818,232819,232823,232824,232829,232830,232834,232835,232844,232845,232853,232854,232861,232862,232868,232869,232881,232882,232894,232895,232901,232902,232961,232962,232985,232986,233008,233009,233015,233016,233041,233042,233221,233222,233253,233254,233277,233278,233479,233480,233485,233486,233491,233492,233541,233542,233606,233607,233655,233656,233670,233671,233677,233678,233869,233870,233894,233895,233896,233897,233900,233901,233908,233909,233913,233914,233920,233921,233923,233924,233927,233928,233930,233931,233933,233934,233936,233937,233940,233941,233944,233945,233947,233948,233953,233954,233972,233973,233992,233993,233997,233998,234002,234003,234007,234008,234019,234020,234026,234027,234040,234041,234051,234052,234054,234055,234062,234063,234067,234068,234072,234073,234077,234078,234081,234082,234085,234086,234090,234091,234095,234096,234099,234100,234104,234105,234108,234109,234113,234114,234118,234119,234131,234132,234137,234138,234139,234140,235170,235171,235176,235177,235185,235186,235191,235192,235194,235195,235196,235197,235204,235205,235223,235224,235229,235230,235234,235235,235240,235241,235252,235253,235259,235260,235265,235266,235276,235277,235282,235283,235284,235285,235286,235287,235288,235289,235293,235294,235296,235297,235303,235304,235307,235308,235315,235316,235319,235320,235349,235350,235363,235364,235388,235389,235425,235426,235452,235453,235497,235498,235522,235523,235534,235535,235563,235564,235590,235591,235603,235604,235605,235606,235609,235610,235612,235613,235615,235616,235619,235620,235623,235624,235631,235632,235634,235635,235639,235640,235649,235650,235654,235655,235660,235661,235665,235666,235671,235672,235675,235676,235680,235681,235685,235686,235693,235694,235699,235700,235703,235704,235709,235710,235714,235715,235718,235719,235724,235725,235729,235730,235734,235735,235738,235739,235745,235746,235749,235750,235755,235756,235762,235763,235766,235767,235777,235778,235780,235781,235786,235787,235791,235792,235807,235808,235811,235812,235816,235817,235822,235823,235828,235829,235834,235835,235840,235841,235845,235846,235848,235849,235855,235856,235862,235863,235869,235870,235874,235875,235882,235883,235889,235890,235893,235894,235900,235901,235907,235908,235915,235916,235919,235920,235930,235931,235934,235935,235946,235947,235950,235951,235955,235956,235961,235962,235967,235968,235974,235975,235983,235984,235989,235990,235997,235998,236002,236003,236005,236006,236010,236011,236016,236017,236022,236023,236030,236031,236038,236039,236042,236043,236051,236052,236053,236054,236061,236062,236069,236070,236076,236077,236133,236134,236156,236157,236164,236165,236174,236175,236182,236183,236191,236192,236204,236205,236216,236217,236227,236228,236240,236241,236249,236250,236258,236259,236269,236270,236280,236281,236289,236290,236298,236299,236303,236304,236311,236312,236322,236323,236333,236334,236344,236345,236396,236397,236405,236406,236414,236415,236430,236431,236435,236436,236449,236450,236458,236459,236502,236503,236516,236517,236533,236534,236543,236544,236552,236553,236581,236582,236594,236595,236605,236606,236619,236620,236630,236631,236642,236643,236657,236658,236669,236670,236687,236688,236694,236695,236699,236700,236741,236742,236752,236753,236762,236763,236774,236775,236785,236786,236793,236794,236803,236804,236815,236816,236827,236828,236832,236833,236842,236843,236852,236853,236863,236864,236871,236872,236880,236881,236895,236896,236924,236925,236935,236936,236958,236959,237017,237018,237032,237033,237038,237039,237083,237084,237097,237098,237113,237114,237129,237130,237136,237137,237150,237151,237162,237163,237175,237176,237184,237185,237196,237197,237207,237208,237235,237236,237314,237315,237326,237327,237337,237338,237349,237350,237358,237359,237381,237382,237389,237390,237400,237401,237410,237411,237429,237430,237473,237474,237483,237484,237496,237497,237504,237505,237541,237542,237588,237589,237597,237598,237603,237604,237612,237613,237633,237634,237640,237641,237642,237643,237645,237646,237648,237649,237651,237652,237655,237656,237658,237659,237661,237662,237664,237665,237668,237669,237673,237674,237676,237677,237680,237681,237683,237684,237686,237687,237689,237690,237693,237694,237696,237697,237700,237701,237702,237703,237704,237705,237767,237768,237769,237770,237771,237772,237782,237783,237784,237785,237826,237827,237828,237829,237830,237831,238050,238051,238052,238053,238086,238087,238088,238089,238090,238091,238326,238327,238328,238329,238337,238338,238339,238340,238341,238342,238355,238356,238357,238358,238390,238391,238392,238393,238394,238395,238402,238403,238404,238405,239013,239014,239015,239016,239017,239018,239102,239103,239104,239105,239171,239172,239173,239174,239175,239176,239270,239271,239272,239273,241228,241229,241230,241231,241232,241233,242758,242759,242760,242761,242908,242909,242910,242911,242912,242913,243603,243604,243605,243606,243613,243614,243615,243616,243617,243618,243619,243620,243621,243622,243634,243635,243636,243637,246225,246226,246227,246228,246229,246230,248594,248595,248596,248597,249080,249081,249082,249083,249084,249085,249980,249981,249982,249983,250140,250141,250142,250143,250144,250145,250421,250422,250423,250424,251407,251408,251409,251410,251411,251412,251998,251999,252000,252001,252007,252008,252009,252010,252011,252012,252022,252023,252024,252025,252038,252039,252040,252041,252042,252043,252077,252078,252079,252080,252086,252087,252088,252089,252090,252091,252102,252103,252104,252105,252165,252166,252167,252168,252169,252170,252176,252177,252178,252179,252413,252414,252415,252416,252417,252418,252575,252576,252577,252578,252625,252626,252627,252628,252629,252630,252763,252764,252765,252766,254445,254446,254447,254448,254449,254450,255757,255758,255759,255760,255770,255771,255772,255773,255774,255775,255826,255827,255828,255829,255865,255866,255867,255868,255869,255870,255871,255872,255873,255874,255930,255931,255932,255933,255938,255939,255940,255941,255942,255943,255966,255967,255968,255969,257383,257384,257385,257386,257387,257388,258437,258438,258439,258440,258443,258444,258445,258446,258447,258448,258461,258462,258463,258464,258470,258471,258472,258473,258474,258475,258491,258492,258493,258494,258506,258507,258508,258509,258510,258511,258591,258592,258593,258594,258595,258596,258597,258598,260996,260997,260998,260999,261042,261043,261044,261045,261046,261047,261164,261165,261166,261167,261170,261171,261172,261173,261174,261175,261186,261187,261188,261189,261250,261251,261252,261253,261254,261255,261344,261345,261346,261347,261480,261481,261482,261483,261484,261485,261731,261732,261733,261734,261745,261746,261747,261748,261749,261750,261793,261794,261795,261796,261797,261798,261799,261800,261801,261802,261803,261804,261805,261806,261807,261808,261809,261810,261811,261812,261813,261814,261815,261816,261817,261818,261819,261820,261829,261830,261831,261832,261833,261834,261843,261844,261845,261846,261903,261904,261905,261906,261907,261908,262083,262084,262085,262086,262087,262088,262089,262090,262091,262092,262116,262117,262118,262119,262120,262121,262131,262132,262133,262134,262135,262136,262137,262138,262139,262140,262141,262144,262145,294912,294914,294993,294994,295487,295488,300403,300405,300406,300407,300408,300409,300410,300411,300421,300422,300423,300424,300459,300460,300466,300467,300468,300469,300482,300483,300496,300497,300498,300499,300514,300515,301303,301304,301305,301306,301307,301308,301309,301310,305216,305217,305275,305276,305277,305278,305279,305280,305281,305282,305460,305461,305468,305469,305470,305471,305487,305488,305498,305499,305500,305501,305520,305521,305533,305534,305535,305536,305556,305557,305578,305579,305580,305581,305598,305599,305606,305607,305608,305609,305636,305637,305665,305666,305667,305668,305719,305720,305753,305754,305755,305756,305772,305773,305782,305783,305784,305785,305795,305796,305899,305900,305901,305902,305933,305934,306479,306480,306481,306482,308207,308208,308223,308224,308225,308226,308241,308242,308308,308309,308310,308311,308324,308325,308335,308336,308337,308338,308360,308361,308464,308465,308466,308467,308514,308515,308521,308522,308523,308524,308532,308533,308542,308543,308544,308545,308567,308568,308578,308579,308580,308581,308591,308592,308624,308625,308626,308627,308653,308654,313384,313385,313386,313387,313388,313389,313390,313391,314050,314051,314415,314416,314417,314418,314419,314420,314438,314439,314440,314441,314468,314469,314470,314471,314472,314473,314553,314554,314555,314556,314557,314558,314559,314560,314567,314568,314569,314570,314571,314572") && block_image_verify("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat"), ui_print("system recovered successfully."), abort("E1004: system partition fails to recover"));
endif;

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

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

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

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