getprop("ro.product.device") == "hxk518" || abort("E3004: This package is for \"hxk518\" devices; this is a \"" + getprop("ro.product.device") + "\".");
ui_print("Source: hxk518/hxk518/hxk518:7.0/NRD90M/1616656501:user/test-keys");
ui_print("Target: hxk518/hxk518/hxk518:7.0/NRD90M/1616656501:user/test-keys");
ui_print("Verifying current system...");
getprop("ro.build.fingerprint") == "hxk518/hxk518/hxk518:7.0/NRD90M/1616656501:user/test-keys" ||
    getprop("ro.build.fingerprint") == "hxk518/hxk518/hxk518:7.0/NRD90M/1616656501:user/test-keys" ||
    abort("E3001: Package expects build fingerprint of hxk518/hxk518/hxk518:7.0/NRD90M/1616656501:user/test-keys or hxk518/hxk518/hxk518:7.0/NRD90M/1616656501:user/test-keys; this device has " + getprop("ro.build.fingerprint") + ".");
apply_patch_space(21385216) || abort("E3006: Not enough free space on /cache to apply patches.");
if (range_sha1("/dev/block/platform/mtk-msdc.0/11230000.msdc0/by-name/system", "5316,1,160,161,344,31908,31909,31910,31911,31912,31913,32764,32765,32766,32767,32768,32770,32929,32930,33436,42613,42614,42683,42684,42907,42908,43175,43176,43233,43234,45031,45032,45037,45038,45103,45104,46509,46510,48697,48698,48699,48700,48736,48737,49113,49114,49168,49169,49608,49609,49651,49652,49861,49862,49865,49866,49882,49883,50228,50229,52234,52235,52276,52277,52637,52638,54270,54271,64959,64960,64976,64977,65163,65164,65170,65171,65211,65212,65221,65222,65294,65295,65297,65298,65306,65307,65361,65362,65387,65388,65468,65469,65476,65477,65478,65479,65480,65481,65482,65483,65484,65485,65486,65487,65488,65489,65490,65491,65492,65493,65494,65495,65496,65497,65502,65503,65533,65536,65537,66043,66187,98304,98306,98465,98466,112857,113008,113009,113103,113104,113196,113197,113227,113228,113431,113432,113585,113586,113815,113816,113839,113840,113848,113849,113855,113856,114030,114031,114036,114037,114044,114045,114050,114051,114056,114057,114070,114071,114072,114073,114080,114081,114084,114085,114165,114166,114215,114216,114234,114235,114245,114246,114257,114258,114259,114260,114324,114325,114390,114391,114400,114401,114467,114468,114470,114471,114472,114473,114484,114485,114486,114487,114491,114492,114494,114495,114499,114500,114528,114529,114537,114538,114543,114544,114547,114548,114553,114554,114559,114560,114561,114562,114604,114605,114675,114676,114677,114678,114682,114683,114684,114685,114709,114710,114711,114712,114741,114742,114829,114830,114841,114842,114847,114848,114850,114851,114868,114869,114872,114873,115027,115028,115029,115030,115064,115065,115502,115503,115505,115506,115507,115508,115535,115536,115537,115538,115590,115591,115592,115593,115673,115674,115676,115677,115681,115682,115685,115686,115687,115688,115689,115690,115691,115692,115693,115694,115695,115696,115697,115698,115781,115782,115783,115784,115789,115790,115795,115796,115797,115798,115799,115800,115802,115803,115804,115805,115806,115807,115808,115809,115810,115811,115812,115813,115814,115815,115816,115817,115818,115819,115820,115821,115822,115823,115824,115825,115826,115827,115828,115829,115830,115831,115832,115833,115834,115835,115836,115837,115838,115839,115840,115841,115842,115843,115844,115845,115846,115847,115848,115849,115850,115851,115852,115853,115854,115855,115856,115857,115859,115860,115862,115863,115865,115866,115869,115870,115873,115874,115875,115876,115877,115878,115879,115880,115881,115882,115883,115884,115885,115886,115887,115888,115889,115890,115891,115892,115893,115894,115895,115896,115897,115898,115899,115900,115901,115902,115903,115904,115905,115906,115907,115908,115909,115910,115911,115912,115913,115914,115915,115916,115917,115918,115919,115920,115921,115922,115923,115924,115925,115926,115927,115928,115929,115930,115931,115932,115933,115934,115935,115936,115937,115938,115941,115942,115943,115944,115947,115948,115986,115987,115988,115989,115990,115991,116468,116469,116470,116471,116472,116473,116474,116475,116476,116477,116478,116479,116481,116482,116484,116485,116487,116488,116489,116490,116492,116493,116495,116496,116498,116499,116500,116501,116503,116504,116506,116507,116509,116510,116512,116513,116515,116516,116518,116519,116521,116522,116524,116525,116527,116528,116530,116531,116533,116534,116536,116537,116540,116541,116543,116544,116546,116547,116549,116550,116552,116553,116555,116556,116557,116558,116559,116560,116562,116563,116565,116566,116569,116570,116573,116574,116576,116577,116579,116580,116582,116583,116585,116586,116588,116589,116591,116592,116594,116595,116597,116598,116601,116602,116604,116605,116607,116608,116610,116611,116613,116614,116616,116617,116619,116620,116622,116623,116625,116626,116628,116629,116631,116632,116634,116635,116637,116638,116640,116641,116643,116644,116646,116647,116649,116650,116652,116653,116654,116655,116657,116658,116660,116661,116663,116664,116666,116667,116669,116670,116672,116673,116674,116675,116677,116678,116680,116681,116683,116684,116686,116687,116689,116690,116692,116693,116695,116696,116698,116699,116701,116702,116704,116705,116707,116708,116710,116711,116713,116714,116716,116717,116719,116720,116721,116722,116724,116725,116727,116728,116730,116731,116733,116734,116736,116737,116739,116740,116742,116743,116745,116746,116748,116749,116751,116752,116754,116755,116757,116758,116761,116762,116764,116765,116767,116768,116770,116771,116773,116774,116776,116777,116778,116779,116781,116782,116784,116785,116787,116788,116790,116791,116793,116794,116795,116796,116798,116799,116801,116802,116804,116805,116807,116808,116810,116811,116812,116813,116815,116816,116818,116819,116821,116822,116824,116825,116827,116828,116829,116830,116832,116833,116835,116836,116838,116839,116841,116842,116844,116845,116846,116847,116849,116850,116852,116853,116855,116856,116858,116859,116861,116862,116864,116865,116867,116868,116870,116871,116873,116874,116876,116877,116879,116880,116882,116883,116885,116886,116887,116888,116890,116891,116893,116894,116896,116897,116899,116900,116902,116903,116905,116906,116908,116909,116911,116912,116914,116915,116916,116917,116918,116919,116932,116933,116935,116936,116978,116979,116980,116981,116982,116983,116984,116985,116986,116987,116988,116989,116990,116991,116995,116996,116997,116998,117000,117001,117003,117004,117006,117007,117017,117018,117033,117034,117051,117052,117081,117082,117111,117112,117139,117140,117993,117994,118023,118024,118053,118054,118083,118084,118113,118114,118118,118119,118123,118124,118132,118133,118166,118167,118171,118172,118197,118198,118223,118224,118250,118251,118278,118279,118281,118282,118284,118285,122845,122846,122858,122859,122865,122866,122872,122873,122882,122883,122889,122890,122923,122924,122958,122959,122989,122990,123021,123022,123058,123059,123094,123095,123100,123101,123106,123107,123111,123112,123141,123142,123172,123173,123201,123202,123231,123232,123240,123241,123249,123250,123258,123259,123267,123268,123270,123271,123276,123277,123282,123283,123293,123294,123314,123315,123336,123337,123357,123358,123378,123379,123381,123382,123391,123392,123401,123402,123411,123412,123422,123423,123431,123432,123440,123441,123449,123450,123458,123459,123484,123485,123488,123489,123491,123492,123506,123507,123521,123522,123536,123537,123551,123552,123556,123557,123561,123562,123590,123591,123618,123619,123646,123647,123673,123674,123700,123701,123706,123707,123711,123712,123714,123715,123736,123737,123758,123759,123779,123780,123800,123801,123803,123804,123809,123810,123848,123849,123889,123890,123893,123894,123898,123899,123970,123971,123975,123976,123988,123989,123991,123992,123995,123996,124008,124009,124013,124014,124023,124024,124033,124034,124043,124044,124053,124054,124081,124082,124110,124111,124139,124140,124168,124169,124173,124174,124178,124179,124184,124185,124191,124192,124197,124198,124204,124205,124297,124298,124397,124398,124402,124403,124419,124420,124451,124452,124513,124514,124579,124580,124642,124643,124704,124705,124807,124808,124883,124884,124965,124966,125041,125042,125123,125124,125205,125206,125282,125283,125365,125366,125441,125442,125523,125524,125599,125600,125675,125676,125756,125757,125831,125832,125913,125914,125995,125996,126071,126072,126154,126155,126230,126231,126232,126233,126234,126235,126236,126237,126242,126243,126244,126245,126246,126247,126272,126273,126640,126641,126678,126679,127097,127098,127126,127127,127303,127304,127306,127307,127322,127323,127552,127553,129311,129312,129342,129343,129681,129682,130763,130764,130775,130776,130946,130947,130952,130953,130993,130994,131001,131002,131004,131005,131013,131014,131050,131051,131069,131072,131073,131579,131615,163840,163842,164001,164002,191778,191779,195725,195727,195728,195729,195730,195736,195737,195742,195743,195785,195786,195787,195788,195789,195790,195798,195799,195805,195806,195812,195813,195825,195826,195830,195831,195832,195833,195849,195850,195860,195861,195862,195863,195866,195867,195870,195871,195875,195876,195890,195891,195895,195896,195897,195898,195903,195904,195908,195909,195997,195998,196091,196092,196125,196126,196145,196146,196191,196192,196193,196194,196214,196215,196263,196264,196269,196270,196321,196322,196337,196338,196350,196351,196367,196368,196375,196376,196379,196380,196467,196468,196469,196470,196482,196483,196491,196492,196493,196494,196495,196496,196497,196498,196520,196521,196584,196585,196590,196591,196599,196600,196603,196604,196605,196608,196609,197115,197161,197162,197168,197169,197176,197177,197276,197277,197389,197390,197395,197396,197401,197402,197518,197519,197522,197523,197528,197529,197541,197542,197548,197549,197556,197557,197561,197562,197578,197579,197584,197585,197672,197673,197701,197702,197730,197731,197736,197737,197771,197772,197986,197987,198017,198018,198048,198049,198267,198268,198271,198272,198276,198277,198323,198324,198392,198393,198398,198399,198722,198723,198726,198727,198749,198750,198751,198752,198759,198760,198777,198778,198782,198783,198786,198787,198790,198791,198800,198801,198804,198805,198806,198807,198808,198809,198810,198811,198815,198816,198818,198819,198825,198826,198829,198830,198837,198838,198841,198842,198871,198872,198885,198886,198910,198911,198940,198941,198977,198978,199014,199015,199041,199042,199086,199087,199111,199112,199156,199157,199168,199169,199176,199177,199205,199206,199232,199233,199245,199246,199247,199248,199251,199252,199254,199255,199257,199258,199261,199262,199265,199266,199273,199274,199276,199277,199281,199282,199291,199292,199296,199297,199302,199303,199307,199308,199313,199314,199317,199318,199322,199323,199327,199328,199335,199336,199341,199342,199345,199346,199351,199352,199356,199357,199360,199361,199366,199367,199371,199372,199376,199377,199380,199381,199387,199388,199391,199392,199397,199398,199404,199405,199408,199409,199419,199420,199422,199423,199428,199429,199433,199434,199449,199450,199453,199454,199458,199459,199464,199465,199470,199471,199476,199477,199482,199483,199487,199488,199490,199491,199497,199498,199504,199505,199511,199512,199516,199517,199524,199525,199531,199532,199535,199536,199542,199543,199549,199550,199557,199558,199561,199562,199572,199573,199576,199577,199588,199589,199592,199593,199597,199598,199603,199604,199609,199610,199616,199617,199622,199623,199630,199631,199635,199636,199640,199641,199646,199647,199652,199653,199660,199661,199668,199669,199672,199673,199681,199682,199683,199684,199691,199692,199698,199699,199755,199756,199778,199779,199786,199787,199796,199797,199804,199805,199813,199814,199826,199827,199838,199839,199849,199850,199862,199863,199871,199872,199880,199881,199891,199892,199902,199903,199911,199912,199916,199917,199924,199925,199935,199936,199946,199947,199957,199958,200009,200010,200018,200019,200027,200028,200043,200044,200048,200049,200062,200063,200071,200072,200115,200116,200129,200130,200146,200147,200156,200157,200165,200166,200194,200195,200207,200208,200218,200219,200232,200233,200243,200244,200255,200256,200270,200271,200282,200283,200300,200301,200307,200308,200312,200313,200354,200355,200365,200366,200375,200376,200387,200388,200398,200399,200406,200407,200416,200417,200428,200429,200440,200441,200445,200446,200455,200456,200465,200466,200476,200477,200484,200485,200493,200494,200508,200509,200537,200538,200548,200549,200571,200572,200586,200587,200592,200593,200637,200638,200651,200652,200667,200668,200683,200684,200690,200691,200704,200705,200716,200717,200729,200730,200738,200739,200750,200751,200761,200762,200789,200790,200868,200869,200880,200881,200891,200892,200903,200904,200912,200913,200935,200936,200943,200944,200954,200955,200964,200965,200983,200984,201027,201028,201037,201038,201050,201051,201058,201059,201095,201096,201142,201143,201151,201152,201157,201158,201166,201167,201187,201188,201189,201190,201192,201193,201195,201196,201198,201199,201202,201203,201205,201206,201208,201209,201211,201212,201215,201216,201220,201221,201223,201224,201227,201228,201230,201231,201233,201234,201236,201237,201240,201241,201243,201244,201247,201248,201251,201252,201864,201865,201898,201899,201900,201901,202356,202357,202402,202403,202873,202874,203203,203204,203237,203238,203790,203791,204236,204237,204643,204644,204660,204661,204673,204674,204675,204676,205448,205449,206237,206238,206953,206954,207667,207668,208690,208691,209713,209714,210507,210508,211321,211322,212743,212744,214173,214174,215182,215183,216198,216199,217564,217565,218933,218934,225736,225737,225740,225741,225745,225746,225750,225751,225752,225753,225754,225755,225790,225791,225792,225793,225794,225795,225805,225806,225807,225808,225812,225813,225814,225815,225816,225817,226075,226076,226077,226078,226100,226101,226102,226103,226104,226105,226522,226523,226524,226525,226528,226529,226530,226531,226532,226533,226547,226548,226549,226550,226576,226577,226578,226579,226580,226581,226589,226590,226591,226592,227972,227973,227974,227975,227976,227977,227978,227979,228009,228010,228011,228012,228013,228014,228864,228865,228866,228867,228869,228870,228871,228872,228876,228877,228878,228879,228880,228881,228882,228883,228884,228885,228898,228899,228900,228901,229091,229092,229093,229094,229095,229096,229097,229098,229170,229171,229172,229173,229174,229175,229176,229177,229178,229179,229180,229181,229182,229183,229185,229186,229187,229188,229189,229190,229200,229201,229202,229203,229208,229209,229210,229211,229212,229213,229260,229261,229262,229263,229266,229267,229268,229269,229270,229271,229283,229284,229285,229286,229326,229327,229328,229329,229330,229331,229337,229338,229339,229340,229341,229342,229343,229344,229345,229346,229368,229369,229370,229371,229372,229373,229374,229376,229378,229537,229538,230044,230301,230302,230612,230613,232715,232716,232787,232788,234425,234426,236948,236949,236950,236951,236952,236953,237356,237357,241423,241424,241425,241426,241427,241428,241429,241430,241431,241432,241433,241434,241435,241436,241437,241438,241439,241440,241441,241442,241443,241444,241445,241446,241447,241448,241449,241450,241498,241499,241605,241606,241614,241615,241632,241633,241641,241642,241650,241651,241670,241671,241681,241682,241689,241690,241705,241706,241715,241716,241730,241731,241740,241741,241751,241752,241796,241797,241809,241810,241892,241893,241924,241925,241935,241936,241948,241949,241959,241960,241972,241973,241983,241984,242073,242074,242084,242085,242086,242087,242146,242147,242270,242271,242280,242281,242301,242302,242311,242312,242321,242322,242344,242345,242355,242356,242363,242364,242382,242383,242392,242393,242416,242417,242433,242434,242444,242445,242456,242457,242510,242511,242524,242525,242622,242623,242661,242662,242674,242675,250021,250022,250035,250036,250047,250048,250061,250062,250072,250073,250180,250181,251215,251216,251227,251228,251229,251230,251231,251232,251233,251234,251235,251236,251237,251238,251239,251240,251241,251242,251243,251244,251245,251246,251247,251248,251249,251250,251251,251252,251253,251254,251255,251256,251258,251259,251260,251261,251262,251263,251264,251265,251290,251291,251292,251293,251301,251302,251307,251308,251317,251318,251324,251325,251350,251351,251355,251356,251781,251782,251788,251789,251793,251794,251798,251799,251803,251804,251808,251809,251834,251835,251840,251841,251896,251897,251906,251907,251924,251925,251942,251943,254852,254853,254864,254865,254870,254871,254876,254877,254888,254889,255005,255006,255045,255046,255101,255102,255163,255164,255343,255344,255350,255351,255372,255373,255620,255621,255665,255666,255718,255719,256487,256488,257926,257927,257935,257936,257944,257945,258034,258035,258058,258059,258063,258064,258217,258218,258239,258240,258279,258280,258286,258287,258295,258296,258311,258312,258323,258324,258436,258437,258492,258493,258499,258500,258590,258591,258786,258787,258817,258818,258959,258960,259152,259153,259191,259192,259215,259216,259278,259279,259289,259290,259461,259462,259468,259469,259674,259675,259762,259763,259855,259856,260156,260157,260244,260245,260255,260256,260433,260434,260459,260460,260467,260468,260472,260473,260611,260612,260640,260641,260650,260651,260657,260658,260717,260718,260760,260761,260784,260785,260796,260797,260802,260803,260811,260812,260818,260819,260825,260826,260872,260873,260908,260909,260914,260915,260992,260993,261097,261098,261105,261106,261113,261114,261222,261223,261227,261228,261236,261237,261314,261315,261452,261453,261844,261845,262121,262122,262130,262131,262135,262136,262140,262141,262142,262144,262145,262651,264970,264971,266038,266039,266409,266410,266877,266878,267569,267570,267688,267689,267876,267877,268205,268206,268208,268209,268210,268211,268212,268213,268286,268287,268288,268289,268301,268302,268303,268304,268305,268306,268307,268308,268309,268310,268376,268377,268378,268379,268381,268382,268383,268384,268385,268386,268413,268414,268415,268416,269098,269099,269100,269101,269102,269103,270381,270382,270383,270384,270386,270387,270388,270389,270390,270391,270398,270399,270400,270401,270403,270404,270405,270406,270407,270408,270423,270424,270425,270426,275120,275121,275122,275123,275149,275150,275151,275152,275153,275154,275296,275297,275298,275299,275301,275302,275303,275304,275305,275306,275317,275318,275319,275320,275346,275347,275348,275349,275350,275351,275455,275456,275457,275458,275460,275461,275462,275463,275464,275465,275538,275539,275540,275541,275543,275544,275545,275546,275547,275548,275599,275600,275601,275602,277352,277353,277354,277355,277356,277357,277358,277359,277360,277361,280430,280431,280432,280433,281471,281472,281473,281474,281475,281476,282883,282884,282885,282886,283369,283370,283371,283372,283373,283374,284196,284197,284198,284199,284231,284232,284233,284234,284235,284236,284620,284621,284622,284623,284636,284637,284638,284639,284640,284641,284651,284652,284653,284654,284660,284661,284662,284663,284664,284665,284783,284784,284846,284847,284848,284849,284850,284851,285007,285008,285116,285117,285260,285261,285362,285363,285553,285554,285713,285714,285777,285778,285926,285927,286131,286132,286226,286227,286381,286382,286444,286445,286446,286447,286448,286449,286450,286451,286452,286453,286454,286455,286456,286457,286466,286467,286468,286469,286471,286472,286473,286474,286501,286502,286503,286504,286530,286531,286532,286533,286560,286561,286562,286563,286575,286576,286577,286578,286586,286587,286588,286589,286593,286594,286595,286596,286602,286603,286604,286605,286606,286607,286608,286609,286611,286612,286613,286614,286623,286624,286625,286626,286627,286628,286629,286630,286631,286632,286633,286634,286635,286636,286637,286638,286716,286717,286718,286719,286720,286721,286722,286723,286724,286725,286726,286727,286728,286729,286730,286731,286733,286734,286735,286736,286737,286738,286739,286740,286776,286777,286778,286779,286815,286816,286817,286818,286819,286820,286821,286822,286823,286824,286825,286826,286827,286828,286830,286831,286833,286834,286835,286836,286837,286838,286839,286840,286841,286842,286843,286844,286845,286846,286847,286848,286849,286850,286851,286852,286853,286854,292439,292440,292441,292442,292443,292444,292445,292446,292447,292448,292449,292450,292454,292455,292458,292459,292463,292464,292468,292469,292473,292474,292475,292476,292477,292478,292479,292480,292483,292484,292485,292486,292487,292488,292489,292490,292491,292492,292493,292494,292495,292496,292497,292498,292499,292500,292501,292502,292503,292504,292505,292506,292507,292508,292509,292510,292511,292512,292513,292514,292515,292516,292517,292518,292519,292520,292521,292522,292523,292524,292525,292526,292527,292528,292529,292530,292531,292532,292533,292534,292535,292536,292537,292538,292539,292540,292541,292542,292543,292544,292545,292546,292547,292548,292549,292550,292551,292552,292553,292554,292558,292559,292564,292565,292566,292567,292689,292690,292691,292692,292693,292694,292695,292696,292698,292699,292700,292701,292702,292703,292770,292771,292772,292773,292854,292855,292856,292857,292885,292886,292887,292888,292889,292890,292902,292903,292904,292905,292979,292980,292981,292982,292983,292984,293767,293768,293769,293770,293790,293791,293792,293793,293794,293795,294070,294071,294072,294073,294074,294075,294076,294077,294078,294079,294080,294081,294082,294083,294091,294092,294093,294094,294095,294096,294121,294122,294123,294124,294278,294279,294280,294281,294282,294283,294284,294285,294337,294338,294339,294340,294341,294342,294343,294344,294457,294458,294459,294460,294461,294462,294669,294670,294671,294672,294738,294739,294740,294741,294742,294743,294744,294745,294755,294756,294757,294758,294759,294760,294790,294791,294792,294793,294794,294795,294796,294797,294798,294799,294800,294801,294802,294803,294804,294805,294806,294807,294808,294809,294810,294811,294812,294813,294814,294815,294816,294817,294859,294860,294861,294862,294863,294864,294910,294912,294914,295073,295074,295580,295596,295597,295632,295633,295704,295705,295719,295720,295734,295735,295776,295777,295819,295820,295848,295849,295859,295860,295869,295870,295874,295875,295935,295936,295970,295971,295984,295985,295990,295991,296014,296015,296031,296032,296044,296045,296069,296070,296103,296104,296113,296114,296346,296347,296430,296431,296438,296439,296455,296456,296463,296464,296472,296473,296492,296493,296669,296670,296675,296676,296687,296688,296692,296693,296718,296719,296734,296735,296761,296762,296786,296787,296792,296793,296802,296803,296812,296813,296823,296824,296829,296830,296837,296838,296850,296851,296855,296856,296876,296877,296922,296923,296936,296937,296993,296994,298203,298204,298208,298209,298230,298231,299398,299399,299409,299410,299446,299447,299485,299486,299490,299491,299498,299499,299504,299505,299676,299677,299705,299706,299721,299722,299726,299727,299743,299744,299755,299756,299768,299769,299789,299790,299795,299796,299810,299811,299844,299845,299863,299864,299889,299890,299895,299896,299900,299901,301168,301169,301175,301176,301203,301204,301209,301210,301298,301299,301310,301311,301327,301328,301345,301346,301353,301354,301478,301479,301523,301524,302090,302091,302107,302108,302117,302118,302122,302123,302160,302161,302165,302166,302208,302209,302260,302261,302365,302366,302479,302480,302510,302511,302531,302532,302567,302568,302653,302654,302739,302740,302781,302782,302789,302790,302799,302800,302920,302921,302942,302943,302974,302975,303005,303006,303047,303048,303057,303058,303065,303066,303074,303075,303174,303175,303298,303299,303384,303385,303391,303392,303398,303399,303477,303478,303482,303483,303489,303490,303494,303495,303505,303506,303514,303515,303522,303523,303529,303530,303542,303543,303565,303566,303588,303589,303595,303596,303621,303622,303801,303802,303833,303834,303857,303858,304059,304060,304065,304066,304071,304072,304105,304106,304154,304155,304161,304162,304352,304353,304377,304378,304385,304386,304404,304405,304410,304411,304415,304416,304421,304422,304432,304433,304438,304439,304441,304442,304443,304444,304445,304446,304447,304448,304479,304480,304481,304482,304490,304491,304494,304495,304504,304505,304510,304511,304544,304545,304548,304549,304553,304554,304556,304557,304559,304560,304562,304563,304565,304566,304599,304600,304604,304605,304686,304687,304697,304698,304720,304721,304743,304744,309259,309260,309263,309264,309267,309268,309280,309281,309472,309473,309527,309528,309603,309604,309685,309686,310008,310009,310014,310015,310042,310043,310458,310459,310519,310520,310588,310589,310593,310594,311692,311693,311729,311730,313570,313571,313577,313578,313587,313588,313618,313619,313621,313622,313861,313862,313891,313892,313901,313902,313919,313920,313932,313933,314070,314071,314149,314150,314155,314156,314279,314280,314548,314549,314774,314775,315023,315024,315094,315095,315127,315128,315217,315218,315227,315228,315463,315464,315558,315559,315658,315659,315971,315972,316005,316006,316279,316280,316310,316311,316317,316318,316321,316322,316327,316328,316330,316331,316524,316525,316565,316566,316578,316579,316584,316585,316642,316643,316681,316682,316694,316695,316699,316700,316708,316709,316715,316716,316726,316727,316731,316732,316791,316792,316812,316813,316818,316819,316865,316866,316869,316870,316966,316967,317074,317075,317081,317082,317088,317089,317246,317247,317250,317251,317259,317260,317345,317346,317350,317351,317556,317557,318114,318115,318496,318497,318506,318507,318527,318528,318573,318574,318669,318670,318686,318687,318690,318691,318710,318711,318785,318786,318847,318848,318891,318892,318894,318895,318904,318905,318913,318914,319187,319188,319191,319192,319194,319195,319254,319255,319302,319303,319320,319321,319325,319326,319356,319357,319374,319375,319379,319380,319394,319395,319433,319434,319489,319490,319499,319500,319850,319851,319973,319974,319996,319997,320021,320022,320026,320027,320038,320039,320042,320043,320080,320081,320112,320113,320146,320147,320151,320152,320161,320162,320172,320173,320185,320186,320189,320190,320201,320202,320208,320209,320223,320224,320227,320228,320257,320258,320322,320323,320336,320337,320414,320415,322488,322489,322492,322493,322521,322522,322532,322533,323773,323774,323785,323786,323834,323835,323888,323889,323891,323892,323898,323899,323902,323903,323906,323907,323943,323944,323965,323966,323969,323970,323989,323990,324001,324002,324031,324032,324035,324036,324054,324055,324104,324105,324128,324129,324163,324164,324168,324169,324171,324172,325595,325596,325602,325603,325638,325639,325644,325645,325735,325736,325749,325750,325771,325772,325792,325793,325801,325802,325807,325808,326061,326062,326125,326126,326842,326843,326860,326861,326870,326871,326873,326874,326922,326923,326926,326927,326992,326993,327111,327112,327238,327239,327280,327281,327308,327309,327346,327347,327453,327454,327555,327556,327593,327594,327600,327601,327612,327613,327633,327634,327667,327668,327675,327676,327678,327680,327681,328187,329948,329949,332468,332469,335789,335790,338019,338020,338460,338461,353108,353109,354029,354030,354889,354890,355801,355802,356171,356172,357154,357155,357358,357359,357800,357801,357802,357803,357812,357813,357814,357815,357816,357817,357859,357860,357861,357862,357868,357869,357870,357871,357872,357873,357884,357885,357886,357887,357891,357892,357899,357900,357905,357906,357913,357914,357925,357926,357941,357942,357954,357955,357965,357966,357976,357977,357992,357993,358009,358010,358028,358029,358035,358036,358045,358046,358049,358050,358069,358070,358097,358098,358124,358125,358158,358159,358165,358166,358196,358197,358219,358220,358222,358223,358317,358318,358350,358351,358483,358484,358499,358500,358504,358505,358512,358513,358521,358522,358541,358542,358561,358562,358606,358607,358614,358615,358620,358621,358631,358632,358642,358643,358645,358646,358656,358657,358659,358660,358663,358664,358673,358674,358683,358684,358804,358805,358820,358821,358824,358825,358829,358830,358834,358835,358841,358842,358856,358857,358868,358869,358875,358876,358881,358882,358887,358888,358891,358892,358896,358897,358900,358901,358919,358920,358923,358924,358928,358929,360345,360346,360350,360351,360360,360361,360394,360395,360398,360399,360401,360402,360411,360412,360423,360424,360429,360430,360438,360439,360442,360443,360446,360448,360449,360955,362200,362201,362210,362211,362215,362216,362219,362220,362225,362226,362229,362230,362232,362233,362235,362236,362240,362241,362257,362258,362263,362264,362267,362268,362276,362277,362280,362281,362284,362285,362286,362287,362288,362289,362296,362297,362298,362299,362300,362301,362302,362303,362304,362305,362306,362307,362308,362309,362310,362311,362312,362313,362314,362315,362318,362319,362320,362321,362322,362323,362324,362325,362327,362328,362329,362330,362331,362332,362333,362334,362335,362336,362337,362338,362339,362340,362341,362342,362343,362344,362345,362346,362347,362348,362349,362350,362351,362352,362353,362354,362355,362356,362357,362358,362359,362360,362361,362362,362363,362364,362365,362366,362367,362368,362369,362370,362371,362372,362373,362374,362375,362376,362377,362378,362381,362382,362383,362384,362385,362386,362387,362388,362389,362390,362391,362392,362393,362394,362395,362396,362397,362398,362399,362400,362401,362402,362403,362404,362405,362406,362407,362408,362409,362410,362411,362412,362413,362414,362415,362416,362417,362418,362426,362427,362431,362432,362433,362434,364037,364038,366868,366869,366870,366871,366873,366874,366876,366877,366878,366879,366880,366881,366882,366883,366891,366892,366932,366933,366939,366940,366980,366981,367159,367160,368343,368344,368345,368346,368347,368348,368349,368350,368351,368352,368353,368354,368355,368356,368357,368358,368416,368417,368418,368419,368420,368421,368438,368439,368450,368451,368460,368461,368477,368478,368479,368480,368481,368482,368483,368484,368937,368938,368939,368940,368941,368942,368949,368950,368951,368952,368959,368960,368962,368963,368964,368965,368983,368984,369007,369008,369009,369010,369011,369012,375301,375302,375303,375304,375566,375567,375577,375578,375585,375586,375598,375599,375604,375605,375617,375618,375668,375669,375678,375679,375684,375685,375690,375691,375728,375729,375849,375850,375866,375867,375885,375886,375904,375905,375982,375983,375997,375998,376006,376007,376011,376012,376028,376029,376045,376046,376060,376061,376076,376077,376084,376085,376135,376136,376148,376149,376164,376165,376194,376195,376211,376212,376264,376265,376296,376297,376330,376331,376337,376338,376344,376345,376350,376351,376526,376527,376531,376532,376538,376539,376603,376604,376628,376629,376675,376676,376712,376713,376717,376718,376730,376731,376771,376772,376776,376777,376786,376787,376797,376798,376805,376806,376810,376811,376813,376814,376818,376819,376870,376871,376889,376890,376913,376914,376939,376940,376947,376948,376956,376957,376965,376966,376971,376972,376977,376978,376982,376983,376997,376998,377111,377112,377202,377203,377260,377261,377309,377310,377329,377330,377344,377345,377359,377360,377373,377374,377379,377380,377523,377524,377579,377580,377630,377631,377649,377650,377671,377672,377734,377735,377782,377783,377788,377789,377796,377797,377807,377808,377815,377816,377854,377855,377904,377905,377937,377938,377968,377969,378004,378005,378009,378010,378014,378015,378020,378021,378051,378052,379646,379647,379696,379697,380687,380688,380700,380701,380710,380711,380715,380716,380734,380735,380740,380741,380755,380756,380760,380761,380769,380770,380882,380883,381018,381019,381026,381027,381034,381035,381042,381043,381080,381081,381089,381090,381097,381098,381103,381104,381112,381113,381118,381119,381124,381125,381129,381130,381135,381136,381150,381151,381163,381164,381172,381173,381179,381180,381399,381400,381431,381432,381457,381458,381477,381478,381489,381490,381503,381504,381514,381515,381524,381525,381531,381532,381557,381558,381620,381621,381665,381666,381678,381679,381706,381707,381779,381780,381805,381806,381852,381853,381860,381861,381866,381867,381876,381877,381884,381885,381889,381890,381894,381895,381904,381905,381912,381913,381988,381989,382101,382102,382120,382121,382128,382129,382139,382140,382149,382150,382442,382443,382471,382472,382508,382509,382514,382515,382700,382701,382711,382712,382716,382717,382840,382841,382856,382857,382862,382863,382868,382869,382883,382884,382922,382923,382972,382973,382978,382979,382986,382987,382992,382993,382999,383000,383008,383009,383065,383066,383268,383269,383277,383278,383297,383298,383311,383312,383366,383367,383372,383373,383375,383376,383381,383382,383397,383398,383403,383404,383411,383412,383431,383432,383436,383437,383441,383442,383447,383448,383456,383457,383477,383478,383486,383487,383508,383509,383530,383531,383554,383555,383567,383568,383573,383574,383614,383615,383655,383656,383683,383684,383689,383690,383694,383695,383709,383710,383750,383751,383786,383787,383903,383904,383909,383910,383919,383920,383926,383927,383933,383934,383943,383944,383962,383963,383975,383976,384025,384026,384217,384218,384230,384231,384234,384235,384252,384253,384405,384406,384451,384452,384459,384460,384545,384546,384613,384614,384699,384700,384706,384707,384711,384712,384718,384719,384850,384851,384852,384853,384864,384865,384876,384877,385265,385266,385430,385431,385595,385596,385798,385799,385835,385836,385838,385839,385840,385841,385863,385864,385893,385894,385895,385896,392772,392773,392774,392775,393048,393049,393059,393060,393066,393067,393081,393082,393085,393086,393098,393099,393167,393168,393177,393178,393182,393183,393186,393187,393206,393207,393209,393210,393212,393213,393214,393216,393217,393723,393769,393770,393916,393917,393937,393938,393955,393956,393964,393965,393971,393972,393978,393979,393986,393987,393992,393993,394263,394264,394270,394271,394347,394348,394377,394378,394380,394381,394395,394396,394448,394449,394452,394453,394462,394463,394472,394473,394479,394480,394482,394483,394486,394487,394504,394505,394526,394527,394549,394550,394556,394557,394564,394565,394572,394573,394577,394578,394581,394582,394599,394600,394752,394753,394873,394874,394949,394950,395012,395013,395036,395037,395053,395054,395071,395072,395088,395089,395093,395094,395295,395296,395361,395362,395425,395426,395446,395447,395475,395476,395547,395548,395613,395614,395618,395619,395625,395626,395638,395639,395646,395647,395700,395701,395769,395770,395817,395818,395860,395861,395909,395910,395913,395914,395916,395917,395920,395921,395963,395964,397568,397569,397622,397623,398631,398632,398645,398646,398654,398655,398657,398658,398676,398677,398681,398682,398693,398694,398696,398697,398705,398706,398862,398863,399058,399059,399065,399066,399073,399074,399081,399082,399133,399134,399141,399142,399148,399149,399153,399154,399167,399168,399171,399172,399175,399176,399179,399180,399183,399184,399201,399202,399216,399217,399225,399226,399231,399232,399535,399536,399579,399580,399600,399601,399614,399615,399632,399633,399642,399643,399652,399653,399659,399660,399691,399692,399748,399749,399761,399762,399796,399797,399886,399887,399915,399916,399971,399972,399978,399979,399982,399983,399988,399989,399998,399999,400006,400007,400020,400021,400026,400027,400089,400090,400180,400181,400198,400199,400204,400205,400214,400215,400222,400223,400461,400462,400485,400486,400518,400519,400522,400523,400686,400687,400698,400699,400701,400702,400826,400827,400830,400831,400834,400835,400838,400839,400845,400846,400851,400852,400859,400860,400886,400887,400900,400901,400952,400953,400957,400958,400960,400961,400965,400966,400977,400978,400983,400984,400991,400992,401012,401013,401015,401016,401018,401019,401022,401023,401031,401032,401056,401057,401064,401065,401084,401085,401110,401111,401143,401144,401157,401158,401162,401163,401217,401218,401272,401273,401310,401311,401314,401315,401317,401318,401366,401367,401409,401410,401506,401507,401510,401511,401515,401516,401531,401532,401539,401540,401555,401556,401568,401569,401583,401584,401588,401589,401610,401611,401706,401707,401711,401712,401719,401720,401732,401733,401746,401747,401970,401971,402194,402195,402491,402492,402522,402523,402524,402525,402526,402527,402529,402530,402531,402532,402533,402534,402644,402645,402646,402647,402648,402649,402651,402652,402654,402655,402656,402657,402658,402659,402704,402705,402706,402707,402759,402760,402761,402762,402765,402766,402767,402768,402769,402770,402929,402930,402931,402932,402933,402934,403394,403395,403396,403397,403413,403414,403415,403416,403417,403418,403533,403534,403535,403536,403537,403538,404052,404053,405037,405038,405489,405490,405491,405492,405961,405962,406002,406003,406004,406005,407297,407298,408826,408827,408828,408829,408862,408863,408867,408868,408901,408902,409223,425984,425985,458752,458753,491520,491521,524288,524289,557056,557057,589824,589825,622592,622593,623099,623100,633180,633182,633183,633184,633185,633186,633187,633188,633198,633199,633200,633201,633225,633226,633235,633236,633237,633238,633254,633255,633409,633410,633411,633412,633413,633414,633415,633416,635530,635531,635535,635536,635537,635538,635556,635557,635564,635565,635566,635567,635576,635577,635590,635591,635592,635593,635612,635613,635670,635671,635672,635673,635710,635711,635715,635716,636259,636260,636261,636262,638565,638566,638625,638626,638627,638628,638660,638661,638673,638674,638675,638676,638948,638949,638998,638999,639000,639001,639209,639210,639214,639215,639216,639217,639225,639226,639227,639228,639229,639230,639236,639237,639243,639244,640349,640350,640351,640352,640353,640354,640355,640356,643260,643261,643267,643268,643269,643270,643282,643283,643316,643317,643334,643335,643336,643337,643367,643368,643413,643414,643415,643416,643436,643437,643467,643468,643469,643470,643550,643551,643555,643556,643557,643558,643559,643560,643561,643562,643573,643574,643585,643586,643587,643588,643589,643590,643591,643592,643610,643611,643616,643617,643618,643619,643665,643666,643739,643740,643741,643742,643743,643744,643745,643746,644191,644192,644197,644198,644199,644200,644219,644220,644224,644225,644226,644227,644238,644239,644240,644241,644242,644243,644244,644245,645070,645071,645072,645073,645074,645075,645076,645077,645078,645079,645080,645081,645082,645083,645127,650210,650217,655360") == "226fdc7cfce5166b593dd2c1932422bfaddc3539" || block_image_verify("/dev/block/platform/mtk-msdc.0/11230000.msdc0/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/platform/mtk-msdc.0/11230000.msdc0/by-name/system");
ifelse (block_image_recover("/dev/block/platform/mtk-msdc.0/11230000.msdc0/by-name/system", "5316,1,160,161,344,31908,31909,31910,31911,31912,31913,32764,32765,32766,32767,32768,32770,32929,32930,33436,42613,42614,42683,42684,42907,42908,43175,43176,43233,43234,45031,45032,45037,45038,45103,45104,46509,46510,48697,48698,48699,48700,48736,48737,49113,49114,49168,49169,49608,49609,49651,49652,49861,49862,49865,49866,49882,49883,50228,50229,52234,52235,52276,52277,52637,52638,54270,54271,64959,64960,64976,64977,65163,65164,65170,65171,65211,65212,65221,65222,65294,65295,65297,65298,65306,65307,65361,65362,65387,65388,65468,65469,65476,65477,65478,65479,65480,65481,65482,65483,65484,65485,65486,65487,65488,65489,65490,65491,65492,65493,65494,65495,65496,65497,65502,65503,65533,65536,65537,66043,66187,98304,98306,98465,98466,112857,113008,113009,113103,113104,113196,113197,113227,113228,113431,113432,113585,113586,113815,113816,113839,113840,113848,113849,113855,113856,114030,114031,114036,114037,114044,114045,114050,114051,114056,114057,114070,114071,114072,114073,114080,114081,114084,114085,114165,114166,114215,114216,114234,114235,114245,114246,114257,114258,114259,114260,114324,114325,114390,114391,114400,114401,114467,114468,114470,114471,114472,114473,114484,114485,114486,114487,114491,114492,114494,114495,114499,114500,114528,114529,114537,114538,114543,114544,114547,114548,114553,114554,114559,114560,114561,114562,114604,114605,114675,114676,114677,114678,114682,114683,114684,114685,114709,114710,114711,114712,114741,114742,114829,114830,114841,114842,114847,114848,114850,114851,114868,114869,114872,114873,115027,115028,115029,115030,115064,115065,115502,115503,115505,115506,115507,115508,115535,115536,115537,115538,115590,115591,115592,115593,115673,115674,115676,115677,115681,115682,115685,115686,115687,115688,115689,115690,115691,115692,115693,115694,115695,115696,115697,115698,115781,115782,115783,115784,115789,115790,115795,115796,115797,115798,115799,115800,115802,115803,115804,115805,115806,115807,115808,115809,115810,115811,115812,115813,115814,115815,115816,115817,115818,115819,115820,115821,115822,115823,115824,115825,115826,115827,115828,115829,115830,115831,115832,115833,115834,115835,115836,115837,115838,115839,115840,115841,115842,115843,115844,115845,115846,115847,115848,115849,115850,115851,115852,115853,115854,115855,115856,115857,115859,115860,115862,115863,115865,115866,115869,115870,115873,115874,115875,115876,115877,115878,115879,115880,115881,115882,115883,115884,115885,115886,115887,115888,115889,115890,115891,115892,115893,115894,115895,115896,115897,115898,115899,115900,115901,115902,115903,115904,115905,115906,115907,115908,115909,115910,115911,115912,115913,115914,115915,115916,115917,115918,115919,115920,115921,115922,115923,115924,115925,115926,115927,115928,115929,115930,115931,115932,115933,115934,115935,115936,115937,115938,115941,115942,115943,115944,115947,115948,115986,115987,115988,115989,115990,115991,116468,116469,116470,116471,116472,116473,116474,116475,116476,116477,116478,116479,116481,116482,116484,116485,116487,116488,116489,116490,116492,116493,116495,116496,116498,116499,116500,116501,116503,116504,116506,116507,116509,116510,116512,116513,116515,116516,116518,116519,116521,116522,116524,116525,116527,116528,116530,116531,116533,116534,116536,116537,116540,116541,116543,116544,116546,116547,116549,116550,116552,116553,116555,116556,116557,116558,116559,116560,116562,116563,116565,116566,116569,116570,116573,116574,116576,116577,116579,116580,116582,116583,116585,116586,116588,116589,116591,116592,116594,116595,116597,116598,116601,116602,116604,116605,116607,116608,116610,116611,116613,116614,116616,116617,116619,116620,116622,116623,116625,116626,116628,116629,116631,116632,116634,116635,116637,116638,116640,116641,116643,116644,116646,116647,116649,116650,116652,116653,116654,116655,116657,116658,116660,116661,116663,116664,116666,116667,116669,116670,116672,116673,116674,116675,116677,116678,116680,116681,116683,116684,116686,116687,116689,116690,116692,116693,116695,116696,116698,116699,116701,116702,116704,116705,116707,116708,116710,116711,116713,116714,116716,116717,116719,116720,116721,116722,116724,116725,116727,116728,116730,116731,116733,116734,116736,116737,116739,116740,116742,116743,116745,116746,116748,116749,116751,116752,116754,116755,116757,116758,116761,116762,116764,116765,116767,116768,116770,116771,116773,116774,116776,116777,116778,116779,116781,116782,116784,116785,116787,116788,116790,116791,116793,116794,116795,116796,116798,116799,116801,116802,116804,116805,116807,116808,116810,116811,116812,116813,116815,116816,116818,116819,116821,116822,116824,116825,116827,116828,116829,116830,116832,116833,116835,116836,116838,116839,116841,116842,116844,116845,116846,116847,116849,116850,116852,116853,116855,116856,116858,116859,116861,116862,116864,116865,116867,116868,116870,116871,116873,116874,116876,116877,116879,116880,116882,116883,116885,116886,116887,116888,116890,116891,116893,116894,116896,116897,116899,116900,116902,116903,116905,116906,116908,116909,116911,116912,116914,116915,116916,116917,116918,116919,116932,116933,116935,116936,116978,116979,116980,116981,116982,116983,116984,116985,116986,116987,116988,116989,116990,116991,116995,116996,116997,116998,117000,117001,117003,117004,117006,117007,117017,117018,117033,117034,117051,117052,117081,117082,117111,117112,117139,117140,117993,117994,118023,118024,118053,118054,118083,118084,118113,118114,118118,118119,118123,118124,118132,118133,118166,118167,118171,118172,118197,118198,118223,118224,118250,118251,118278,118279,118281,118282,118284,118285,122845,122846,122858,122859,122865,122866,122872,122873,122882,122883,122889,122890,122923,122924,122958,122959,122989,122990,123021,123022,123058,123059,123094,123095,123100,123101,123106,123107,123111,123112,123141,123142,123172,123173,123201,123202,123231,123232,123240,123241,123249,123250,123258,123259,123267,123268,123270,123271,123276,123277,123282,123283,123293,123294,123314,123315,123336,123337,123357,123358,123378,123379,123381,123382,123391,123392,123401,123402,123411,123412,123422,123423,123431,123432,123440,123441,123449,123450,123458,123459,123484,123485,123488,123489,123491,123492,123506,123507,123521,123522,123536,123537,123551,123552,123556,123557,123561,123562,123590,123591,123618,123619,123646,123647,123673,123674,123700,123701,123706,123707,123711,123712,123714,123715,123736,123737,123758,123759,123779,123780,123800,123801,123803,123804,123809,123810,123848,123849,123889,123890,123893,123894,123898,123899,123970,123971,123975,123976,123988,123989,123991,123992,123995,123996,124008,124009,124013,124014,124023,124024,124033,124034,124043,124044,124053,124054,124081,124082,124110,124111,124139,124140,124168,124169,124173,124174,124178,124179,124184,124185,124191,124192,124197,124198,124204,124205,124297,124298,124397,124398,124402,124403,124419,124420,124451,124452,124513,124514,124579,124580,124642,124643,124704,124705,124807,124808,124883,124884,124965,124966,125041,125042,125123,125124,125205,125206,125282,125283,125365,125366,125441,125442,125523,125524,125599,125600,125675,125676,125756,125757,125831,125832,125913,125914,125995,125996,126071,126072,126154,126155,126230,126231,126232,126233,126234,126235,126236,126237,126242,126243,126244,126245,126246,126247,126272,126273,126640,126641,126678,126679,127097,127098,127126,127127,127303,127304,127306,127307,127322,127323,127552,127553,129311,129312,129342,129343,129681,129682,130763,130764,130775,130776,130946,130947,130952,130953,130993,130994,131001,131002,131004,131005,131013,131014,131050,131051,131069,131072,131073,131579,131615,163840,163842,164001,164002,191778,191779,195725,195727,195728,195729,195730,195736,195737,195742,195743,195785,195786,195787,195788,195789,195790,195798,195799,195805,195806,195812,195813,195825,195826,195830,195831,195832,195833,195849,195850,195860,195861,195862,195863,195866,195867,195870,195871,195875,195876,195890,195891,195895,195896,195897,195898,195903,195904,195908,195909,195997,195998,196091,196092,196125,196126,196145,196146,196191,196192,196193,196194,196214,196215,196263,196264,196269,196270,196321,196322,196337,196338,196350,196351,196367,196368,196375,196376,196379,196380,196467,196468,196469,196470,196482,196483,196491,196492,196493,196494,196495,196496,196497,196498,196520,196521,196584,196585,196590,196591,196599,196600,196603,196604,196605,196608,196609,197115,197161,197162,197168,197169,197176,197177,197276,197277,197389,197390,197395,197396,197401,197402,197518,197519,197522,197523,197528,197529,197541,197542,197548,197549,197556,197557,197561,197562,197578,197579,197584,197585,197672,197673,197701,197702,197730,197731,197736,197737,197771,197772,197986,197987,198017,198018,198048,198049,198267,198268,198271,198272,198276,198277,198323,198324,198392,198393,198398,198399,198722,198723,198726,198727,198749,198750,198751,198752,198759,198760,198777,198778,198782,198783,198786,198787,198790,198791,198800,198801,198804,198805,198806,198807,198808,198809,198810,198811,198815,198816,198818,198819,198825,198826,198829,198830,198837,198838,198841,198842,198871,198872,198885,198886,198910,198911,198940,198941,198977,198978,199014,199015,199041,199042,199086,199087,199111,199112,199156,199157,199168,199169,199176,199177,199205,199206,199232,199233,199245,199246,199247,199248,199251,199252,199254,199255,199257,199258,199261,199262,199265,199266,199273,199274,199276,199277,199281,199282,199291,199292,199296,199297,199302,199303,199307,199308,199313,199314,199317,199318,199322,199323,199327,199328,199335,199336,199341,199342,199345,199346,199351,199352,199356,199357,199360,199361,199366,199367,199371,199372,199376,199377,199380,199381,199387,199388,199391,199392,199397,199398,199404,199405,199408,199409,199419,199420,199422,199423,199428,199429,199433,199434,199449,199450,199453,199454,199458,199459,199464,199465,199470,199471,199476,199477,199482,199483,199487,199488,199490,199491,199497,199498,199504,199505,199511,199512,199516,199517,199524,199525,199531,199532,199535,199536,199542,199543,199549,199550,199557,199558,199561,199562,199572,199573,199576,199577,199588,199589,199592,199593,199597,199598,199603,199604,199609,199610,199616,199617,199622,199623,199630,199631,199635,199636,199640,199641,199646,199647,199652,199653,199660,199661,199668,199669,199672,199673,199681,199682,199683,199684,199691,199692,199698,199699,199755,199756,199778,199779,199786,199787,199796,199797,199804,199805,199813,199814,199826,199827,199838,199839,199849,199850,199862,199863,199871,199872,199880,199881,199891,199892,199902,199903,199911,199912,199916,199917,199924,199925,199935,199936,199946,199947,199957,199958,200009,200010,200018,200019,200027,200028,200043,200044,200048,200049,200062,200063,200071,200072,200115,200116,200129,200130,200146,200147,200156,200157,200165,200166,200194,200195,200207,200208,200218,200219,200232,200233,200243,200244,200255,200256,200270,200271,200282,200283,200300,200301,200307,200308,200312,200313,200354,200355,200365,200366,200375,200376,200387,200388,200398,200399,200406,200407,200416,200417,200428,200429,200440,200441,200445,200446,200455,200456,200465,200466,200476,200477,200484,200485,200493,200494,200508,200509,200537,200538,200548,200549,200571,200572,200586,200587,200592,200593,200637,200638,200651,200652,200667,200668,200683,200684,200690,200691,200704,200705,200716,200717,200729,200730,200738,200739,200750,200751,200761,200762,200789,200790,200868,200869,200880,200881,200891,200892,200903,200904,200912,200913,200935,200936,200943,200944,200954,200955,200964,200965,200983,200984,201027,201028,201037,201038,201050,201051,201058,201059,201095,201096,201142,201143,201151,201152,201157,201158,201166,201167,201187,201188,201189,201190,201192,201193,201195,201196,201198,201199,201202,201203,201205,201206,201208,201209,201211,201212,201215,201216,201220,201221,201223,201224,201227,201228,201230,201231,201233,201234,201236,201237,201240,201241,201243,201244,201247,201248,201251,201252,201864,201865,201898,201899,201900,201901,202356,202357,202402,202403,202873,202874,203203,203204,203237,203238,203790,203791,204236,204237,204643,204644,204660,204661,204673,204674,204675,204676,205448,205449,206237,206238,206953,206954,207667,207668,208690,208691,209713,209714,210507,210508,211321,211322,212743,212744,214173,214174,215182,215183,216198,216199,217564,217565,218933,218934,225736,225737,225740,225741,225745,225746,225750,225751,225752,225753,225754,225755,225790,225791,225792,225793,225794,225795,225805,225806,225807,225808,225812,225813,225814,225815,225816,225817,226075,226076,226077,226078,226100,226101,226102,226103,226104,226105,226522,226523,226524,226525,226528,226529,226530,226531,226532,226533,226547,226548,226549,226550,226576,226577,226578,226579,226580,226581,226589,226590,226591,226592,227972,227973,227974,227975,227976,227977,227978,227979,228009,228010,228011,228012,228013,228014,228864,228865,228866,228867,228869,228870,228871,228872,228876,228877,228878,228879,228880,228881,228882,228883,228884,228885,228898,228899,228900,228901,229091,229092,229093,229094,229095,229096,229097,229098,229170,229171,229172,229173,229174,229175,229176,229177,229178,229179,229180,229181,229182,229183,229185,229186,229187,229188,229189,229190,229200,229201,229202,229203,229208,229209,229210,229211,229212,229213,229260,229261,229262,229263,229266,229267,229268,229269,229270,229271,229283,229284,229285,229286,229326,229327,229328,229329,229330,229331,229337,229338,229339,229340,229341,229342,229343,229344,229345,229346,229368,229369,229370,229371,229372,229373,229374,229376,229378,229537,229538,230044,230301,230302,230612,230613,232715,232716,232787,232788,234425,234426,236948,236949,236950,236951,236952,236953,237356,237357,241423,241424,241425,241426,241427,241428,241429,241430,241431,241432,241433,241434,241435,241436,241437,241438,241439,241440,241441,241442,241443,241444,241445,241446,241447,241448,241449,241450,241498,241499,241605,241606,241614,241615,241632,241633,241641,241642,241650,241651,241670,241671,241681,241682,241689,241690,241705,241706,241715,241716,241730,241731,241740,241741,241751,241752,241796,241797,241809,241810,241892,241893,241924,241925,241935,241936,241948,241949,241959,241960,241972,241973,241983,241984,242073,242074,242084,242085,242086,242087,242146,242147,242270,242271,242280,242281,242301,242302,242311,242312,242321,242322,242344,242345,242355,242356,242363,242364,242382,242383,242392,242393,242416,242417,242433,242434,242444,242445,242456,242457,242510,242511,242524,242525,242622,242623,242661,242662,242674,242675,250021,250022,250035,250036,250047,250048,250061,250062,250072,250073,250180,250181,251215,251216,251227,251228,251229,251230,251231,251232,251233,251234,251235,251236,251237,251238,251239,251240,251241,251242,251243,251244,251245,251246,251247,251248,251249,251250,251251,251252,251253,251254,251255,251256,251258,251259,251260,251261,251262,251263,251264,251265,251290,251291,251292,251293,251301,251302,251307,251308,251317,251318,251324,251325,251350,251351,251355,251356,251781,251782,251788,251789,251793,251794,251798,251799,251803,251804,251808,251809,251834,251835,251840,251841,251896,251897,251906,251907,251924,251925,251942,251943,254852,254853,254864,254865,254870,254871,254876,254877,254888,254889,255005,255006,255045,255046,255101,255102,255163,255164,255343,255344,255350,255351,255372,255373,255620,255621,255665,255666,255718,255719,256487,256488,257926,257927,257935,257936,257944,257945,258034,258035,258058,258059,258063,258064,258217,258218,258239,258240,258279,258280,258286,258287,258295,258296,258311,258312,258323,258324,258436,258437,258492,258493,258499,258500,258590,258591,258786,258787,258817,258818,258959,258960,259152,259153,259191,259192,259215,259216,259278,259279,259289,259290,259461,259462,259468,259469,259674,259675,259762,259763,259855,259856,260156,260157,260244,260245,260255,260256,260433,260434,260459,260460,260467,260468,260472,260473,260611,260612,260640,260641,260650,260651,260657,260658,260717,260718,260760,260761,260784,260785,260796,260797,260802,260803,260811,260812,260818,260819,260825,260826,260872,260873,260908,260909,260914,260915,260992,260993,261097,261098,261105,261106,261113,261114,261222,261223,261227,261228,261236,261237,261314,261315,261452,261453,261844,261845,262121,262122,262130,262131,262135,262136,262140,262141,262142,262144,262145,262651,264970,264971,266038,266039,266409,266410,266877,266878,267569,267570,267688,267689,267876,267877,268205,268206,268208,268209,268210,268211,268212,268213,268286,268287,268288,268289,268301,268302,268303,268304,268305,268306,268307,268308,268309,268310,268376,268377,268378,268379,268381,268382,268383,268384,268385,268386,268413,268414,268415,268416,269098,269099,269100,269101,269102,269103,270381,270382,270383,270384,270386,270387,270388,270389,270390,270391,270398,270399,270400,270401,270403,270404,270405,270406,270407,270408,270423,270424,270425,270426,275120,275121,275122,275123,275149,275150,275151,275152,275153,275154,275296,275297,275298,275299,275301,275302,275303,275304,275305,275306,275317,275318,275319,275320,275346,275347,275348,275349,275350,275351,275455,275456,275457,275458,275460,275461,275462,275463,275464,275465,275538,275539,275540,275541,275543,275544,275545,275546,275547,275548,275599,275600,275601,275602,277352,277353,277354,277355,277356,277357,277358,277359,277360,277361,280430,280431,280432,280433,281471,281472,281473,281474,281475,281476,282883,282884,282885,282886,283369,283370,283371,283372,283373,283374,284196,284197,284198,284199,284231,284232,284233,284234,284235,284236,284620,284621,284622,284623,284636,284637,284638,284639,284640,284641,284651,284652,284653,284654,284660,284661,284662,284663,284664,284665,284783,284784,284846,284847,284848,284849,284850,284851,285007,285008,285116,285117,285260,285261,285362,285363,285553,285554,285713,285714,285777,285778,285926,285927,286131,286132,286226,286227,286381,286382,286444,286445,286446,286447,286448,286449,286450,286451,286452,286453,286454,286455,286456,286457,286466,286467,286468,286469,286471,286472,286473,286474,286501,286502,286503,286504,286530,286531,286532,286533,286560,286561,286562,286563,286575,286576,286577,286578,286586,286587,286588,286589,286593,286594,286595,286596,286602,286603,286604,286605,286606,286607,286608,286609,286611,286612,286613,286614,286623,286624,286625,286626,286627,286628,286629,286630,286631,286632,286633,286634,286635,286636,286637,286638,286716,286717,286718,286719,286720,286721,286722,286723,286724,286725,286726,286727,286728,286729,286730,286731,286733,286734,286735,286736,286737,286738,286739,286740,286776,286777,286778,286779,286815,286816,286817,286818,286819,286820,286821,286822,286823,286824,286825,286826,286827,286828,286830,286831,286833,286834,286835,286836,286837,286838,286839,286840,286841,286842,286843,286844,286845,286846,286847,286848,286849,286850,286851,286852,286853,286854,292439,292440,292441,292442,292443,292444,292445,292446,292447,292448,292449,292450,292454,292455,292458,292459,292463,292464,292468,292469,292473,292474,292475,292476,292477,292478,292479,292480,292483,292484,292485,292486,292487,292488,292489,292490,292491,292492,292493,292494,292495,292496,292497,292498,292499,292500,292501,292502,292503,292504,292505,292506,292507,292508,292509,292510,292511,292512,292513,292514,292515,292516,292517,292518,292519,292520,292521,292522,292523,292524,292525,292526,292527,292528,292529,292530,292531,292532,292533,292534,292535,292536,292537,292538,292539,292540,292541,292542,292543,292544,292545,292546,292547,292548,292549,292550,292551,292552,292553,292554,292558,292559,292564,292565,292566,292567,292689,292690,292691,292692,292693,292694,292695,292696,292698,292699,292700,292701,292702,292703,292770,292771,292772,292773,292854,292855,292856,292857,292885,292886,292887,292888,292889,292890,292902,292903,292904,292905,292979,292980,292981,292982,292983,292984,293767,293768,293769,293770,293790,293791,293792,293793,293794,293795,294070,294071,294072,294073,294074,294075,294076,294077,294078,294079,294080,294081,294082,294083,294091,294092,294093,294094,294095,294096,294121,294122,294123,294124,294278,294279,294280,294281,294282,294283,294284,294285,294337,294338,294339,294340,294341,294342,294343,294344,294457,294458,294459,294460,294461,294462,294669,294670,294671,294672,294738,294739,294740,294741,294742,294743,294744,294745,294755,294756,294757,294758,294759,294760,294790,294791,294792,294793,294794,294795,294796,294797,294798,294799,294800,294801,294802,294803,294804,294805,294806,294807,294808,294809,294810,294811,294812,294813,294814,294815,294816,294817,294859,294860,294861,294862,294863,294864,294910,294912,294914,295073,295074,295580,295596,295597,295632,295633,295704,295705,295719,295720,295734,295735,295776,295777,295819,295820,295848,295849,295859,295860,295869,295870,295874,295875,295935,295936,295970,295971,295984,295985,295990,295991,296014,296015,296031,296032,296044,296045,296069,296070,296103,296104,296113,296114,296346,296347,296430,296431,296438,296439,296455,296456,296463,296464,296472,296473,296492,296493,296669,296670,296675,296676,296687,296688,296692,296693,296718,296719,296734,296735,296761,296762,296786,296787,296792,296793,296802,296803,296812,296813,296823,296824,296829,296830,296837,296838,296850,296851,296855,296856,296876,296877,296922,296923,296936,296937,296993,296994,298203,298204,298208,298209,298230,298231,299398,299399,299409,299410,299446,299447,299485,299486,299490,299491,299498,299499,299504,299505,299676,299677,299705,299706,299721,299722,299726,299727,299743,299744,299755,299756,299768,299769,299789,299790,299795,299796,299810,299811,299844,299845,299863,299864,299889,299890,299895,299896,299900,299901,301168,301169,301175,301176,301203,301204,301209,301210,301298,301299,301310,301311,301327,301328,301345,301346,301353,301354,301478,301479,301523,301524,302090,302091,302107,302108,302117,302118,302122,302123,302160,302161,302165,302166,302208,302209,302260,302261,302365,302366,302479,302480,302510,302511,302531,302532,302567,302568,302653,302654,302739,302740,302781,302782,302789,302790,302799,302800,302920,302921,302942,302943,302974,302975,303005,303006,303047,303048,303057,303058,303065,303066,303074,303075,303174,303175,303298,303299,303384,303385,303391,303392,303398,303399,303477,303478,303482,303483,303489,303490,303494,303495,303505,303506,303514,303515,303522,303523,303529,303530,303542,303543,303565,303566,303588,303589,303595,303596,303621,303622,303801,303802,303833,303834,303857,303858,304059,304060,304065,304066,304071,304072,304105,304106,304154,304155,304161,304162,304352,304353,304377,304378,304385,304386,304404,304405,304410,304411,304415,304416,304421,304422,304432,304433,304438,304439,304441,304442,304443,304444,304445,304446,304447,304448,304479,304480,304481,304482,304490,304491,304494,304495,304504,304505,304510,304511,304544,304545,304548,304549,304553,304554,304556,304557,304559,304560,304562,304563,304565,304566,304599,304600,304604,304605,304686,304687,304697,304698,304720,304721,304743,304744,309259,309260,309263,309264,309267,309268,309280,309281,309472,309473,309527,309528,309603,309604,309685,309686,310008,310009,310014,310015,310042,310043,310458,310459,310519,310520,310588,310589,310593,310594,311692,311693,311729,311730,313570,313571,313577,313578,313587,313588,313618,313619,313621,313622,313861,313862,313891,313892,313901,313902,313919,313920,313932,313933,314070,314071,314149,314150,314155,314156,314279,314280,314548,314549,314774,314775,315023,315024,315094,315095,315127,315128,315217,315218,315227,315228,315463,315464,315558,315559,315658,315659,315971,315972,316005,316006,316279,316280,316310,316311,316317,316318,316321,316322,316327,316328,316330,316331,316524,316525,316565,316566,316578,316579,316584,316585,316642,316643,316681,316682,316694,316695,316699,316700,316708,316709,316715,316716,316726,316727,316731,316732,316791,316792,316812,316813,316818,316819,316865,316866,316869,316870,316966,316967,317074,317075,317081,317082,317088,317089,317246,317247,317250,317251,317259,317260,317345,317346,317350,317351,317556,317557,318114,318115,318496,318497,318506,318507,318527,318528,318573,318574,318669,318670,318686,318687,318690,318691,318710,318711,318785,318786,318847,318848,318891,318892,318894,318895,318904,318905,318913,318914,319187,319188,319191,319192,319194,319195,319254,319255,319302,319303,319320,319321,319325,319326,319356,319357,319374,319375,319379,319380,319394,319395,319433,319434,319489,319490,319499,319500,319850,319851,319973,319974,319996,319997,320021,320022,320026,320027,320038,320039,320042,320043,320080,320081,320112,320113,320146,320147,320151,320152,320161,320162,320172,320173,320185,320186,320189,320190,320201,320202,320208,320209,320223,320224,320227,320228,320257,320258,320322,320323,320336,320337,320414,320415,322488,322489,322492,322493,322521,322522,322532,322533,323773,323774,323785,323786,323834,323835,323888,323889,323891,323892,323898,323899,323902,323903,323906,323907,323943,323944,323965,323966,323969,323970,323989,323990,324001,324002,324031,324032,324035,324036,324054,324055,324104,324105,324128,324129,324163,324164,324168,324169,324171,324172,325595,325596,325602,325603,325638,325639,325644,325645,325735,325736,325749,325750,325771,325772,325792,325793,325801,325802,325807,325808,326061,326062,326125,326126,326842,326843,326860,326861,326870,326871,326873,326874,326922,326923,326926,326927,326992,326993,327111,327112,327238,327239,327280,327281,327308,327309,327346,327347,327453,327454,327555,327556,327593,327594,327600,327601,327612,327613,327633,327634,327667,327668,327675,327676,327678,327680,327681,328187,329948,329949,332468,332469,335789,335790,338019,338020,338460,338461,353108,353109,354029,354030,354889,354890,355801,355802,356171,356172,357154,357155,357358,357359,357800,357801,357802,357803,357812,357813,357814,357815,357816,357817,357859,357860,357861,357862,357868,357869,357870,357871,357872,357873,357884,357885,357886,357887,357891,357892,357899,357900,357905,357906,357913,357914,357925,357926,357941,357942,357954,357955,357965,357966,357976,357977,357992,357993,358009,358010,358028,358029,358035,358036,358045,358046,358049,358050,358069,358070,358097,358098,358124,358125,358158,358159,358165,358166,358196,358197,358219,358220,358222,358223,358317,358318,358350,358351,358483,358484,358499,358500,358504,358505,358512,358513,358521,358522,358541,358542,358561,358562,358606,358607,358614,358615,358620,358621,358631,358632,358642,358643,358645,358646,358656,358657,358659,358660,358663,358664,358673,358674,358683,358684,358804,358805,358820,358821,358824,358825,358829,358830,358834,358835,358841,358842,358856,358857,358868,358869,358875,358876,358881,358882,358887,358888,358891,358892,358896,358897,358900,358901,358919,358920,358923,358924,358928,358929,360345,360346,360350,360351,360360,360361,360394,360395,360398,360399,360401,360402,360411,360412,360423,360424,360429,360430,360438,360439,360442,360443,360446,360448,360449,360955,362200,362201,362210,362211,362215,362216,362219,362220,362225,362226,362229,362230,362232,362233,362235,362236,362240,362241,362257,362258,362263,362264,362267,362268,362276,362277,362280,362281,362284,362285,362286,362287,362288,362289,362296,362297,362298,362299,362300,362301,362302,362303,362304,362305,362306,362307,362308,362309,362310,362311,362312,362313,362314,362315,362318,362319,362320,362321,362322,362323,362324,362325,362327,362328,362329,362330,362331,362332,362333,362334,362335,362336,362337,362338,362339,362340,362341,362342,362343,362344,362345,362346,362347,362348,362349,362350,362351,362352,362353,362354,362355,362356,362357,362358,362359,362360,362361,362362,362363,362364,362365,362366,362367,362368,362369,362370,362371,362372,362373,362374,362375,362376,362377,362378,362381,362382,362383,362384,362385,362386,362387,362388,362389,362390,362391,362392,362393,362394,362395,362396,362397,362398,362399,362400,362401,362402,362403,362404,362405,362406,362407,362408,362409,362410,362411,362412,362413,362414,362415,362416,362417,362418,362426,362427,362431,362432,362433,362434,364037,364038,366868,366869,366870,366871,366873,366874,366876,366877,366878,366879,366880,366881,366882,366883,366891,366892,366932,366933,366939,366940,366980,366981,367159,367160,368343,368344,368345,368346,368347,368348,368349,368350,368351,368352,368353,368354,368355,368356,368357,368358,368416,368417,368418,368419,368420,368421,368438,368439,368450,368451,368460,368461,368477,368478,368479,368480,368481,368482,368483,368484,368937,368938,368939,368940,368941,368942,368949,368950,368951,368952,368959,368960,368962,368963,368964,368965,368983,368984,369007,369008,369009,369010,369011,369012,375301,375302,375303,375304,375566,375567,375577,375578,375585,375586,375598,375599,375604,375605,375617,375618,375668,375669,375678,375679,375684,375685,375690,375691,375728,375729,375849,375850,375866,375867,375885,375886,375904,375905,375982,375983,375997,375998,376006,376007,376011,376012,376028,376029,376045,376046,376060,376061,376076,376077,376084,376085,376135,376136,376148,376149,376164,376165,376194,376195,376211,376212,376264,376265,376296,376297,376330,376331,376337,376338,376344,376345,376350,376351,376526,376527,376531,376532,376538,376539,376603,376604,376628,376629,376675,376676,376712,376713,376717,376718,376730,376731,376771,376772,376776,376777,376786,376787,376797,376798,376805,376806,376810,376811,376813,376814,376818,376819,376870,376871,376889,376890,376913,376914,376939,376940,376947,376948,376956,376957,376965,376966,376971,376972,376977,376978,376982,376983,376997,376998,377111,377112,377202,377203,377260,377261,377309,377310,377329,377330,377344,377345,377359,377360,377373,377374,377379,377380,377523,377524,377579,377580,377630,377631,377649,377650,377671,377672,377734,377735,377782,377783,377788,377789,377796,377797,377807,377808,377815,377816,377854,377855,377904,377905,377937,377938,377968,377969,378004,378005,378009,378010,378014,378015,378020,378021,378051,378052,379646,379647,379696,379697,380687,380688,380700,380701,380710,380711,380715,380716,380734,380735,380740,380741,380755,380756,380760,380761,380769,380770,380882,380883,381018,381019,381026,381027,381034,381035,381042,381043,381080,381081,381089,381090,381097,381098,381103,381104,381112,381113,381118,381119,381124,381125,381129,381130,381135,381136,381150,381151,381163,381164,381172,381173,381179,381180,381399,381400,381431,381432,381457,381458,381477,381478,381489,381490,381503,381504,381514,381515,381524,381525,381531,381532,381557,381558,381620,381621,381665,381666,381678,381679,381706,381707,381779,381780,381805,381806,381852,381853,381860,381861,381866,381867,381876,381877,381884,381885,381889,381890,381894,381895,381904,381905,381912,381913,381988,381989,382101,382102,382120,382121,382128,382129,382139,382140,382149,382150,382442,382443,382471,382472,382508,382509,382514,382515,382700,382701,382711,382712,382716,382717,382840,382841,382856,382857,382862,382863,382868,382869,382883,382884,382922,382923,382972,382973,382978,382979,382986,382987,382992,382993,382999,383000,383008,383009,383065,383066,383268,383269,383277,383278,383297,383298,383311,383312,383366,383367,383372,383373,383375,383376,383381,383382,383397,383398,383403,383404,383411,383412,383431,383432,383436,383437,383441,383442,383447,383448,383456,383457,383477,383478,383486,383487,383508,383509,383530,383531,383554,383555,383567,383568,383573,383574,383614,383615,383655,383656,383683,383684,383689,383690,383694,383695,383709,383710,383750,383751,383786,383787,383903,383904,383909,383910,383919,383920,383926,383927,383933,383934,383943,383944,383962,383963,383975,383976,384025,384026,384217,384218,384230,384231,384234,384235,384252,384253,384405,384406,384451,384452,384459,384460,384545,384546,384613,384614,384699,384700,384706,384707,384711,384712,384718,384719,384850,384851,384852,384853,384864,384865,384876,384877,385265,385266,385430,385431,385595,385596,385798,385799,385835,385836,385838,385839,385840,385841,385863,385864,385893,385894,385895,385896,392772,392773,392774,392775,393048,393049,393059,393060,393066,393067,393081,393082,393085,393086,393098,393099,393167,393168,393177,393178,393182,393183,393186,393187,393206,393207,393209,393210,393212,393213,393214,393216,393217,393723,393769,393770,393916,393917,393937,393938,393955,393956,393964,393965,393971,393972,393978,393979,393986,393987,393992,393993,394263,394264,394270,394271,394347,394348,394377,394378,394380,394381,394395,394396,394448,394449,394452,394453,394462,394463,394472,394473,394479,394480,394482,394483,394486,394487,394504,394505,394526,394527,394549,394550,394556,394557,394564,394565,394572,394573,394577,394578,394581,394582,394599,394600,394752,394753,394873,394874,394949,394950,395012,395013,395036,395037,395053,395054,395071,395072,395088,395089,395093,395094,395295,395296,395361,395362,395425,395426,395446,395447,395475,395476,395547,395548,395613,395614,395618,395619,395625,395626,395638,395639,395646,395647,395700,395701,395769,395770,395817,395818,395860,395861,395909,395910,395913,395914,395916,395917,395920,395921,395963,395964,397568,397569,397622,397623,398631,398632,398645,398646,398654,398655,398657,398658,398676,398677,398681,398682,398693,398694,398696,398697,398705,398706,398862,398863,399058,399059,399065,399066,399073,399074,399081,399082,399133,399134,399141,399142,399148,399149,399153,399154,399167,399168,399171,399172,399175,399176,399179,399180,399183,399184,399201,399202,399216,399217,399225,399226,399231,399232,399535,399536,399579,399580,399600,399601,399614,399615,399632,399633,399642,399643,399652,399653,399659,399660,399691,399692,399748,399749,399761,399762,399796,399797,399886,399887,399915,399916,399971,399972,399978,399979,399982,399983,399988,399989,399998,399999,400006,400007,400020,400021,400026,400027,400089,400090,400180,400181,400198,400199,400204,400205,400214,400215,400222,400223,400461,400462,400485,400486,400518,400519,400522,400523,400686,400687,400698,400699,400701,400702,400826,400827,400830,400831,400834,400835,400838,400839,400845,400846,400851,400852,400859,400860,400886,400887,400900,400901,400952,400953,400957,400958,400960,400961,400965,400966,400977,400978,400983,400984,400991,400992,401012,401013,401015,401016,401018,401019,401022,401023,401031,401032,401056,401057,401064,401065,401084,401085,401110,401111,401143,401144,401157,401158,401162,401163,401217,401218,401272,401273,401310,401311,401314,401315,401317,401318,401366,401367,401409,401410,401506,401507,401510,401511,401515,401516,401531,401532,401539,401540,401555,401556,401568,401569,401583,401584,401588,401589,401610,401611,401706,401707,401711,401712,401719,401720,401732,401733,401746,401747,401970,401971,402194,402195,402491,402492,402522,402523,402524,402525,402526,402527,402529,402530,402531,402532,402533,402534,402644,402645,402646,402647,402648,402649,402651,402652,402654,402655,402656,402657,402658,402659,402704,402705,402706,402707,402759,402760,402761,402762,402765,402766,402767,402768,402769,402770,402929,402930,402931,402932,402933,402934,403394,403395,403396,403397,403413,403414,403415,403416,403417,403418,403533,403534,403535,403536,403537,403538,404052,404053,405037,405038,405489,405490,405491,405492,405961,405962,406002,406003,406004,406005,407297,407298,408826,408827,408828,408829,408862,408863,408867,408868,408901,408902,409223,425984,425985,458752,458753,491520,491521,524288,524289,557056,557057,589824,589825,622592,622593,623099,623100,633180,633182,633183,633184,633185,633186,633187,633188,633198,633199,633200,633201,633225,633226,633235,633236,633237,633238,633254,633255,633409,633410,633411,633412,633413,633414,633415,633416,635530,635531,635535,635536,635537,635538,635556,635557,635564,635565,635566,635567,635576,635577,635590,635591,635592,635593,635612,635613,635670,635671,635672,635673,635710,635711,635715,635716,636259,636260,636261,636262,638565,638566,638625,638626,638627,638628,638660,638661,638673,638674,638675,638676,638948,638949,638998,638999,639000,639001,639209,639210,639214,639215,639216,639217,639225,639226,639227,639228,639229,639230,639236,639237,639243,639244,640349,640350,640351,640352,640353,640354,640355,640356,643260,643261,643267,643268,643269,643270,643282,643283,643316,643317,643334,643335,643336,643337,643367,643368,643413,643414,643415,643416,643436,643437,643467,643468,643469,643470,643550,643551,643555,643556,643557,643558,643559,643560,643561,643562,643573,643574,643585,643586,643587,643588,643589,643590,643591,643592,643610,643611,643616,643617,643618,643619,643665,643666,643739,643740,643741,643742,643743,643744,643745,643746,644191,644192,644197,644198,644199,644200,644219,644220,644224,644225,644226,644227,644238,644239,644240,644241,644242,644243,644244,644245,645070,645071,645072,645073,645074,645075,645076,645077,645078,645079,645080,645081,645082,645083,645127,650210,650217,655360") && block_image_verify("/dev/block/platform/mtk-msdc.0/11230000.msdc0/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/platform/mtk-msdc.0/11230000.msdc0/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat") ||
  abort("E1001: Failed to update system image.");
show_mtupdate_stage("/cache/recovery/last_mtupdate_stage");
ifelse (
less_than_int(get_mtupdate_stage("/cache/recovery/last_mtupdate_stage"), "3") ,
(
if less_than_int(get_mtupdate_stage("/cache/recovery/last_mtupdate_stage"), "2") then

ui_print("start to update alt loader image");
package_extract_file("trustzone.bin", "/dev/block/platform/mtk-msdc.0/11230000.msdc0/by-name/tee2");
set_mtupdate_stage("/cache/recovery/last_mtupdate_stage", "2");
endif;

switch_active("tee1", "tee2");
set_mtupdate_stage("/cache/recovery/last_mtupdate_stage", "3");
),
ui_print("alt loder images are already updated");
);
ifelse (
less_than_int(get_mtupdate_stage("/cache/recovery/last_mtupdate_stage"), "5") ,
(
if less_than_int(get_mtupdate_stage("/cache/recovery/last_mtupdate_stage"), "4") then

ui_print("start to update main loader image");
package_extract_file("trustzone.bin", "/dev/block/platform/mtk-msdc.0/11230000.msdc0/by-name/tee1");
set_mtupdate_stage("/cache/recovery/last_mtupdate_stage", "4");
endif;

switch_active("tee2", "tee1");
),
ui_print("main loader images are already updated");
);
delete("/cache/recovery/last_mtupdate_stage");
set_progress(1.000000);
