1 1
2 3
3 1
4 3
5 4
6 4095
7 1
8 3
9 3
10 1
11 3
12 4722366482869645213695
13 1
14 2
15 1
16 3
17 3
18 1
19 4095
20 4
21 3
22 1
23 3
24 3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290175
25 1
26 2
27 1
28 3
29 4
30 4095
31 1
32 3
33 3
34 1
35 2
36 1
37 4722366482869645213695
38 3
39 1
40 3
41 3
42 1
43 4095
44 4
45 3
46 1
47 3
48 5104866514341945590710842651568281920101670963940301617298884589783947025654989209426383867325613524543351416833597764127456946916446081781809010549986553357741499190223136441251634489586652942274537384864347088262714867022887786366083090924141383506229439852977377003900548348898351843259305917045924853771632524370243927651743845488737416874805848368486492650738383584061192790228759690288354373732123915430018234619975254042908858938625059308072478312356363081018346276548919002917583248151532523790105677074132985556300525623246994398997696641975576343860751434216573702938766124166198630901624439464793581607521987353750595573887822793123705818050746432686022104079817609890994191214546801218255872018703385608345194043092491620892210302046725582683029489136603774682567680282632685757711764405303795386293220314902546474539632698134739750566765427099848313932256081872633513314483128831881481867184896549309061788140015231068341421962504120281883042706210346559274047369836280866215728520613525447857373937770199894887258997449658106174721909842993657489968700917291224846565375
49 1
50 2
51 1
52 3
53 4
54 4095
55 1
56 3
57 3
58 1
59 3
60 4722366482869645213695
61 1
62 2
63 1
64 3
65 3
66 1
67 4095
68 4
69 3
70 1
71 2
72 1
73 3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290175
74 3
75 1
76 3
77 4
78 4095
79 1
80 3
81 3
82 1
83 2
84 1
85 4722366482869645213695
86 3
87 1
88 3
89 3
90 1
91 4095
92 4
93 3
94 1
95 3
96 14030362074468413636347984658737107532392021802289416217307228994305075536178829923025355141912446591598051067299013707453186439294632805382609352595839507263593471211652008794076269726722766285034281920192717909397689392125256701109424903094474865329233733538936061858216664972800975748872067316232823236625828654235603699060266803827603840870398522967427864566410071585302743060093772438171073149679370490853829770323783854525924145013364729093252543799963135853189859700207015096773616693145703047074426796866496647524149587781129779633246697176294347896554891180811824163360705536530151190700017253207617112201072698333962682048812588781714405357180628447801299734033624838150036964085545109612032371223753541214705809465224206532992020941693370468567674574786722779603489630848748193218058652412404716083398969392139348664764519921709988258183442360380646986517875836304911593266534245669910081678043610308839882067994207105740121598446076994643602842165930367017777658875007475063919323112376487809353260317674516142171778052004647071710951589176567678504599380853747944735997634384458905252997109492932761601206336869324368827376397515168854436498949281879425194602866991851379723938273128106215965159666620822131451823001071242436067705233094000016281678568461228924549369485548656619655264987231563678205117646921257186029203327300340139989282579878255282104419325138089382414879649054789721349271068198711942439862005953967335419428841990814851601976048733410078527911412781928713650862935868646796054605275279326768666406157635627612972147596348639295220892097827139656133403698000533765924612707719736545875591742086821783365582741230511077693847829476028573139998185016349639030067172817195144551992523306329036235136441307531264601199548828031836204764225340884971097319452293215058340363063858221677748064512300403133821167656591507915301633754080879329803810938120645929753334647616421096057341168040315871579832082953048694276266440900895570502636861849976965694243189641832170656585217334157213542935231299032289901750033215212471601982803860487369537550516360589949272324362621677579020744588787492256775163704705209479473738078062783094262660944520593833876675701075667040942366175067562880797501500510688244745695087988655468782984267027226196597727432289284950338315174747582329536084032888299770571513947663286612682006319763560512120382412476299003202035921010446409305783111853058249725493958226437412776672971756708864790246693357125152871195265696382547795834044992610958725365507268586699222168388367583155557321668785388067176067849057281425476540103513718740566665071762858334933127354674281411971234751268817966613723088143362123812466038199094898774709883785356456787532131434002578416077944092683873043568121865000467275634799450228937683762338655037217835832334537745544264836787993631555649067918320487318941181417869541284672943398140194378111824718053756614234384818214936303812671855336252711184851283623551066503255707091676514185270611305044407320055439599612890371283805927344188203452739198751831936541881102586793767372263265823817500871306868427966338388041085609145587961584986345343977799388828542614785048908453907168700278931479148143532696215323193303552730868845870584588809166339764550808684814750811931354591010539439925287962391161185678640530042568029739192012015730888994502980952178618257928739025979707899441317920504259541240127554485613619254342349737056754945302791294239217031307370652015926942447468711068362017496405619501389215266067103535241617705710875114739486418340992977137892782400613974433715831372483803163063437207417450735549123918516103247067608959517113979318739753165023286248390144893620178129877554257286232172355361577808828440010141191481166254016014200029712254188622900396182198026188142976835653980164918660475356841593552463552612306909388052862201402111797388376022345896369161974362912579045840131077640267642333838976400243343335768250010304055981964415474038625550843221337099728975412756277918465683099894128256697185839481614059851245509574364384112818789668823795278144552443620220817939389267294329287344371115674265808723944040588042673269319811750975662588633095384250371645324806780879336646446804462105854729496703191087872039187515285829599951110844182919750184239753693434652671745920621406283481303424136534953634048202177113896708866287302507368575940361988816955082230147598539481528608903432132093969890113485353814140448698913647869924343138955185225453070916031693907616142631472545877430410917569737298822391306058895439191406730699667902308910619950070133886324329321105502986748154109112953680700620296945809854596510882176469508376798293222137937237059401255144905808721741591356940657579375439889761203792265399418430655755626414305516245990012861439239310919988102275392479840377823393084623971788523116995401169727755724867372714739848206736876328966544295199413202612814114174692843335763721450409130340637229219923350166612010692557652060924909497812417616100626622474954969535310303864155390726539743350227595495610211556111584650371636659765649562819904381664021515533457024508138348555013071797224238012153533426317867802796254639824501164651907857581616591535974202363602898183185805383837897172841653792122050840888340118775307465228758846167090589496159463177811091865119333215539616816832795895572810268417793143221344865540852626118092303481935005320365968251144491623427402763275639544876981437763127047793481160605057822721669853748445578380189809211960113267251716387348235379459444687938466015886882143487037238432471166112672958267744989149999770963516239415228180222830858567489209303852375084269479856581353714007576548163742599884972150883905060785794043280477699916652563517243817701522118388475561491310752043674225278827487826963281718867071422551244364416254937787074986605886030314997639915416813953712817039618133374008964388770450817655666252984265426889496266156349511143525485873755382557103629334708197577318018605684116137014114972259059431601566469893471232310786498988381186698756087945285352117440676460975632197185378514430435705341350496527890520803679502735067365736472202742591447953539154244306103119621694951873536521000952651922698444000163161174317743492503897158327490711877871411722328409848032133757353830590857097408645985267136431108597849503293604054112853862533647331231941906546275438104123035870444013539846548076528633489862963881822411573267533847170063483239078219982037794329075662126581671727412297820796985152101995649948940569611623531267018505978029693187452740128127091010851198984461173701507602786943719045174339284593557535240911424666545052634774527484451786044316166329957705507778105449128638671249955104817091758988718178955179107873510243702238873961382999846595541542222388727402782670932230447591680295234498532172884125404591126859201151666216646583986884410426679780992903499458568420330098669909643425939913585480083221515742890939452491402199237338296660793462634602262391918878789797234982807651473303979533797449269285321908626847632785340812937801513832309414877195984064432888293850780181996123850757319398681165486178546070572331108165978899336642713974051244033293171123066078546442634629450989707762487684703222983749870500191333575014879222504515797576812369166626303737506078651523148115363460915721480830302671491004645652400518760542038165749228454029686964703703852749533232142837164692840055258084216299549238814099117754824652053157323171427517711811539328201333395112492117139834586294043790297749746765495384427719695791986578202947343029224089501309352735897503827710947450936199283775789986492933696327762018755046270964689569587436488450702489609444847622661401152398642060912471069013545333642055249366491156263217153454043081429898156182305943590538059615274132419913869186614149658501847829666682968858142439460475112391355984717742612134653315793418473667289906540848176572009499702035501510424949962928196338631781202213491177625283149077274956495268328209344115301868481609610691646216476985424316879542899795140204880127924932990014142786446845314232454285438147085453068262780819339016679338093028840877499143349929331608513812857620652675600747441288543479061176845597127734721679902669426295464163755869049800706089938941225537666624709789192027166555747658203565959369714777786797315341969049681146612060660111420067043039045565367478904193191424116691376334900609550465065016476139432097889370190108645766422483839701884097978236490319462635844909040340098716534629540588665456815932799991517359231632903237119366922847720295889548209749467990098769608063613078609650198216740276414879731570081745130214718824527059963218748918949410853973972338417812375722659396402146301469214817662278800907567172204223617436031347182506280267420837574644073040577801775035310590806327520359491781874713689174673479119124185916970377042179936698201738722154663911488377598259377113766842961043769892318585295422272643274689620140458477243625420329579989349542167818096307473013190760286884415562628932182376487010155650953561269978977348067090603219809246761215684526404693227394641027147984473241419775
97 1
98 2
99 1
100 3
101 4
102 4095
103 1
104 3
105 3
106 1
107 3
108 4722366482869645213695
109 1
110 2
111 1
112 3
113 3
114 1
115 4095
116 4
117 3
118 1
119 3
120 3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290175
121 1
122 2
123 1
124 3
125 4
126 4095
127 1
128 3
129 3
130 1
131 2
132 1
133 4722366482869645213695
134 3
135 1
136 3
137 3
138 1
139 4095
140 4
141 3
142 1
143 2
144 1
145 5104866514341945590710842651568281920101670963940301617298884589783947025654989209426383867325613524543351416833597764127456946916446081781809010549986553357741499190223136441251634489586652942274537384864347088262714867022887786366083090924141383506229439852977377003900548348898351843259305917045924853771632524370243927651743845488737416874805848368486492650738383584061192790228759690288354373732123915430018234619975254042908858938625059308072478312356363081018346276548919002917583248151532523790105677074132985556300525623246994398997696641975576343860751434216573702938766124166198630901624439464793581607521987353750595573887822793123705818050746432686022104079817609890994191214546801218255872018703385608345194043092491620892210302046725582683029489136603774682567680282632685757711764405303795386293220314902546474539632698134739750566765427099848313932256081872633513314483128831881481867184896549309061788140015231068341421962504120281883042706210346559274047369836280866215728520613525447857373937770199894887258997449658106174721909842993657489968700917291224846565375
146 3
147 1
148 3
149 4
150 4095
151 1
152 3
153 3
154 1
155 3
156 4722366482869645213695
157 1
158 2
159 1
160 3
161 3
162 1
163 4095
164 4
165 3
166 1
167 2
168 1
169 3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290175
170 3
171 1
172 3
173 4
174 4095
175 1
176 3
177 3
178 1
179 2
180 1
181 4722366482869645213695
182 3
183 1
184 3
185 3
186 1
187 4095
188 4
189 3
190 1
191 3
192 508131597812598565438636754340458189279925127008708883415175341442874161341404471014015358424171939198805855937578500940883304567800767641556377891614109539879684594534804719110113356188464938707371820470723056839240764746085262215385411955736245070084996187977238209006971920316674110637027861104857621537190595296341416812661545047416571937720328209165628925821542587163346354207588554925103559168764317848573545847334501230221164433067042860181092995918392531658963748614885800021078581867581604634693605226270066623072462308688781564076314159263218113879870251672429087598079485379633520978956229688393382217077042642503016141470507796602982649605784076589386494070915818450173962732924720901244461464235896513089264828300749612577766638791480933273262214265724865557356768739120324120133824769510242434199029004819990986183955618645906880070053737950356491796787058783537887956260829009369832122689373422133742559199107704923873253666084145871879902771880260842715128002555729577308377475316273332054766110982218014100707507004159736509923418812705404529371623668302528579668390365335578503859158187703745604943150700180198283701810734056402366061316970305654513262841433780779491214534425646588221617248537542977498482457580730535785327883674917644736323593446704995847156122896830363860842755416153792429873130099598606567853000498604157916686182128495476240533335427367999463666084115296427358550965130705096985569925580676462330110244445311490371547740991277070100212381522593108240205461745337434180864912674982372739016486021778860636857131390360650088668408773009106283902232790214066030049837129251908520104266539799185690437847309354052750236612592323444412053651615783213201489705595028515201736233938086907827428369894061443494990895406809384865269798395975202292667658167045448528008914169459427473622363295365586476329120677854082175860641998481498694556744835537792333505423202361206597506648441889082558130500455606702287016967278130721110939507240997411582759086427192153293350264406180128069290960429324629826695586345161350956198625040968287408392799947782080712558527550918867511898410197197686414936004025586766988091962250904898350023387323311343108329569751848316768644987986955735308204724163868396567832321624228785093352723639636381760771625180029768435162733878712605928872871249292443604181291724552059566858853822183532708219092940119604057983489748667999286453570902230051217979518031207066621906252455171259201583715065986387263877595499146472719175137307919079231927963836042661463349602812248094046036215931170210119435972847700918270649253148091002489657301640317128270715532567160916725733925178038761447262860527532405733829337335609672387308212342997491560118449505505767691537583556347455356178643899054277205790078531831252383479868230972762678782972739520889061736351290300022147506043938218313097765968862850805965056133196805179684244597904039863921489818871602561148641968151032469732780058096349425965672452133111968433266767035139913210666134753724544422450000192437549686772356324214620695197410342275994559803378665372802027880373682333430299328214280862910358837214368956995227163641422513908206714811189021988599990875787602905354182453009499850632014085943095773303728776188690141181718506397541419193916000720872787615814903813227597630819466538811058961132328716327843533554142478302641275411243072095365193492847616999131397864919053580105393829012640443830142047309805866150335917501927212298701457543219718987379717601718831470032460049606640034600188299792237232098184477337575220945726747054733762325147926646047215113368355421333355695354778513360590825034763765017395815275309586329113683309976913679642305693478145396019591787813461376190341873470459968814159078977265161793325759778903098826727170176004228235575095192965959191798503023593055315099328406947745134795757118308399369524483834696867257031327468689206004468068091263342974837976807124681728768017623409164437759515428369772043239014258881282984646377086763219040894462926895037799026787679052509634156635669631743930095665882885882630546139396579665532430676889301559683575405730489617709607687369189916534809552490451962557299473110115936656003258799178900536297757441433810840053354124117830683199246449299183062216680960082884526687912900586332616933752296400698376463847066552508211167348941042819108269910157587134480156071433936786746071467272952944460443662444483568751274642141377471885832725225304691102370440880059010822026261335880668219756350088087323331846853702658603903484710987198627773307686326147087892320001866244773895520214163509983812121598174415623738412680835045194212413798810032686530807915861875249377157512553663233930730972608788869208929399954485282399644477081169121480479954513166351462346623479763314454826902854950965005987957169297387685688774741417142059677775500930375020030979712231844814530142678175241177918710199401517344508153656917522011686575801731172850045302362903362607943871136932848928512747543168201644871425953867503276531372078205223580816952503597954477124854871600777680252699402265865235775772390587114763547336073265869921528141458353971655270810297697210567601179837392815473996811669805668184634171487294545166050471701774207989236813016970385853586750269285871110017642039123120832886928699652631803239726422635149154655760685540152436656047207516359172410450256410946686228211961822571158369017376731160205452046120093007481436099630829495402500565861114552410814782132736304826230487853981347426803254063008681285502504069857181398019595386898530857617165909712622875001709406046971938129252082184111707130141633805715808936222307306315388323524252916336305128817402285638152674384807199175933105515603250093831968440098226830549952809346202517931592372066937363942927387321456848284231869706272349042016115938205339402869212501522862946323706187084666614894772689979881723393271708922444945501846450068482521289299387097472896561358413153994810131253889037649147242469786665382847844246936337853970236949682071746739999928864160095629797401910730000707449932957100307811728794250295396155612807072587299603475332790623073249946414684745625428124497768516832873111711531305165701996873888823901874675852047364248800319498966103259786350310363293843325992253806540304434830224161619453714962164087756606554023437712949107884757297469322753899072371584069824693887437762987170153668004976989417644358077482377143523121167477766326757487221494378055156820113282365338411157450392593780242565207590606656921800966604240754326436964428248294386097386750384244249360257432113904134956147607947976816597819618500202043938314607981099352554636074292293333321581380976041940975154741821467151882331268184820576261138226523768437722763781757877493255104502062658147089472243248414581098185963172110436831770351089204322020188845883115069949185185635143341506198113376355572441473310197411777754668854550905497346695494544231089798088861834263253596871076057650256483265160136620763298372023989517713547100004815349273725688517052492182562199997245188682449100949940772075734272320235732748264649840786360847716353761946979664209136625238307462827141078261894309095343345689923623318637055718819383953682086373934575154200824149983206117915794298772956242926806292861835508027741119685101105050794993151601608380329107358975951283933715569496981961343009674481590027754943305672221796486204118046510289641777397106819677198397338451256083216636582248259486790546057288529433353988692470933267549573607864249795769377154636120993396420670593141684685026988848152514621471430410024185819702230129863208090343410345776475775409247996412863301686435368268743671966657550233251848768385189804343053844261177904251290606672948336293491093284061778768458371461437016156678997290642955195805842430127462218231631008239364090249855427245606807315600089801587894515238505007296061867079573503117241146196523762975734677261915893032647146360950897420096866233408497232482610779804064302885300342561951087360636129831241029565626645994674985490382924234899554901168245970557592419730459921261879812605442201826314575939704864787544379918223583437710061365612390562816585784923989540789833834628270928471310509871734987844356962260679634814987977376396501642389494775838843007042629523040133383754280134496722444280574494172589792945184976048828846210418056367338053425470292055745805513441995174565053138526574551614735458411174670033347666251140779904571979821440412998024743137996341471260125176696991977607249027816692741287482095149083785268479934499591603044960108956427308478031934052159730724167782241151667159343805409843537783591079441157320025210282233131288462589463336133505388677059753414950599702627477233468945462794498882510501073324598718288263650237314255207192631660298200637152178668454915351571280055683548726009668901024275840819652191112957674587475215476241737048054299809198164423394882755552035887038463141107419284010412054836890743799546965914042446703779388566950021542813926905450356028055844699763396981795390699874023734634909500279088045182962409001253862091348393445530304868331577687309777999092544699410021621912776724416147273973520201125252629259403577173840892596438092583279052410456894759470008183566218351630663619611513670230497847805820709214282896169345720159538427701050199268799852159168364318692630055036776707682872608171555299288094704430450469072596088765101402997657968406816778933670499268501860027118546085824449116896651577982978156622902253178716883086966349015462178179522799884995854587257696661603632151996985593211974041532653491063196150380301654053049199959949240436927820882700905283949620973815284207071212079556616309919135738348460399413536922157086970177126157298487758404320916728788473188308478161573220806224752087630444215397998093749963068082741824898307571156001590903533906754966039329165589095096690742033526928336016582397299413710464977092834442695043410144658540101750500148454774285795945433724560064408775191316589092394097224602505676401444241479502056231489362960494467296686553834795383535779291147468735679306271964785935143273498140627260176732932332929595957046802430152321267891115096704387695354836715705714525132989134304373923532197025887256459264573645055821553374590103372095039270312092924019092274718074178974411219654181086143884475208556208505995355643147066917069105040749320068326706307946374385158543904114097094831951346379794903875768387233616923670304643619029757713405041999732453266612582859036612473780368448231297066375029894813318955247507203183606679193587770322491636334534748757643259751883988119798432374456998797738274891422677179276930775182929753154335962909356841566281804844599801678834658083167577089138303477594373728861937026975101337871227743913497178004378170961900457955868651763820693570106637432695337636738810055304112418144589100212965172088215662717509090588038178853971119789414411902080855970957508155400302356999340461411376419381269080138165147932541200382890414156893637674076988369727692578967805728229707947382694036426037995884169413954470891169491025771058313222703166683740871374959286879834719136660055683806810227201460370103243148797334925104217109150783095823133519189649509076988128277899352408581224253662028877759760376878320743219396465991355973582109539605153322729754493361164569844723616679597965555084919120735149991781982272905285146093737986560331926129728536920953917929349321334101987705921801015362709711187394713872415983869139075251344981343888256865594356827664640881773989943298472527238690458456167773124255441958545332686029740195486016577410627616219672289466985501424711261184697630305276415057550677205818555358335860433525375429873512358370810129186940211641681226328790072913391369182845217235210124656675014087917501664825388553914304701312630681231463742219698352708842827630449896068610173128090000624491482991794989695810103606071261322003695246695362449199544964482041233923484026263402750406846131243435297660010558761090164167973158274528571681850101143188415215040478920517654783658449412824774609168041798070999005926991020584026922873197238092772951018693501119923901731918896522274763469290037957733080040961826844758587559475320503204245884222077081318747954339340704299651079303199107377126329921567938917975060979897584602936698172396156744611889150507308408252483710937230458627215526563750664278566750034558914175672225259759988195807356431100884853530928096873646509443056231072993780943619182108509081042989614041734580957450867326745030518757959883777612862582725499178862592746250484691679414145906436452187460110661279873975419433523338060225080008542588294437776792168528951263480562865688228009488867372136714234213368204643942866955937393233951365984792301306825603955866341727449542413634146831830919567668101730799105576046978156356388958271951614464287847640790459782512725036032364869933961956556558574574342485152883600775260594278713931740265600771917264408553551370736015898811175508390864560190548269677274275121367820471436001288244545476073941708142365250125365084527763067358359327827813664199955196170279774685344499366350759005131338375850465841644563016720716118850264413509670948020843458994738968610383073428043696833754168082392663223739037845712252089694933225998762815964470212697512721942527731845591580028025889372580778520846323143180633109816858121207620001568573088183961584535697183004921581521329370327400926646585455838192951115003639653916422652688368088175936199819392268605962503987294750713723116991725718800649365011151691786100886778547626278181449057310827178056364664784333013329401020305891429935508687776960321293842749556744985802820830566362187541466500551504161826818251560084349894581406244221543376702357244306809397762507343694676419083009024937396673871055354759593615193194632959315993874722032848766133837304722875692308119366251725347112043623360759979630312723807477758815635683576678505968033414784758023459367821168828958088442554748899584776635966569913955734075792448634769254472164302700700187570528735907493603096356925679551708155773749109779957053119581399710186166534989808565372367871265580673498414824682376644367141624535442145935788484499952040885739094092279730088206061529954656374667497713811330357792630571465433959515288234165466684712741754821915695278111161842806401001880840759603965149267047186544958787539698592619758543113506618002502726290061663004637065563583002883990049004922802106394691710205421248775983385269787175324623661611848895084391382009730141783764136234638774902787772327170573502844141122959904567682474933026389290034621935561978660191541963607254308595762124516324069356305842297520005296953911929548974390094604830620274151994536045020731784702069167073213155684217512828588742456369978460392780477682951078575145470021702852340588224245309809271559065190629200047307096772243063658519962263827286271229128617437887719087448462450883065512568337366269897848059358969001588777729489684572286633116109481870177603490644626210344680609030449281751059253970043057127806390557049638285712364844723924554521047021523449114124872690211133773826978823026868605967049250449664373685482432435742460970192004518752098930572307257036770131755500917384494856191322825551926465798159570703693758869793363201247126850653445638325416372863379147018637869263379824817366628125849648805051652613550485823910558690193952103986483761646980255536840684524936607448246570347901896491235859677922848119533825383181482365758133262784004266008647645440589470613929704909225962407342650510561567857797221553873616391251977848354751155322192283440537651598959268131950121812455655264656231433017149842191893087507834709923999710815382956471861482547769370520767874419003198493690600236132536642267569007120946454548593519307602675279324209153793157861041274216111472813474225838812620120278527606288893068314333938784410719608896733116013028677314587107595550196436688797296831583092468225238781668423479641359513991197140716537202016177747439348956522503058413653643294506691531543398814292852449878066586232452732442756666454420618173555709947274760119631968493165798698620238147589565146906152083040780545184107018291097072725415400882307572085832283428744257637649416557209449488089629565189761112996525641495647063692498073016135452520994180277831100892043639668668353972379663462721579649892550103580042569296669553945812701358548494025649684830714745888535832903989589690126404450148477802747656647307997072632023161641773221335241831654982622258775169648650147896551490118362984249494938914511842935372589306820069015511013558328628915549909351109288804676620509157719545204128416193601005089288488347909066256959565159798211985396185799292520155720925752281900707014477582801630157388510716726799143388002474562017960734478509022360029675658561979066631450453331385598583580902730880969242151976920036780488695140018855717306249738646730301035491646885069558486034501912531241251292482996500714850491165346227343546963234533534249131823869057325876781167853765111408685862815766581984688768965071923292984641696863179910467821471787075862944735343702840572222752887966621900156506683704581695262373406673237881824458098204200007058445905114586628474937540885134334287953733894724645439449726596989114536653751981373569272831754006533733082836977635761626269508683237188282058089179019538633315746368509322498269881618199604844899326036216227473439685711190802829537581919198558272578372916808414661784999778986306483412982654780883209306897527777934521745613002561805247001226848899745998896812455993763348340518360821566869720500121873047487852830308055796261723338405577959402827976164863770765653278951199758274657166952093253896352459490721904434875305372180191079889250121103498773043417239085638281960693909929730522154925881367412897054867261333906385518446710003346356521997813846548454846822181081677034728471351886568432780476060284045053347410354299449167979286727857671966274229717435409439100413509650945843861593293877983642960642954450785991330240042312107639938397780334298668723372257296337607838036376880674552623726190681543746670014978731234218116715290646130864079065483266679338082825189256581209872745173306405220413702318308298423559855669423660695202061695221711824904180416134653056187285840034785771636308083272556976409551172643224026998618708464662392542515206853750174055389727791041859374462549543893592408319691575104342728880753748455721805236118895907753128473198580859081995008981989363015477701953028231144029879357727165334822330983839388763550338173435037475662850471791166539931866257875011808963087628329575998350804270630320911602739825370440975412560860869484994358783708463359820459126117272771975454296590905564281069770375627455832700422919341602584637158267513384946804464155351726259650825189516216568750064260100109905933194915455701278256310044676824087330092427611076004056151068143184852671613955450152128730058802350383193440136815771649287642491831577800956773557661162076420310439326733476626024374910358528218431605502385142923281970991554623895300697119447290679087716672818923548626448111800996442704565357241874256637610540283550705919748638182109589698609438599999141858113058153198170556579761996620966945841542646315389046899282943306829376190731398726260642038799726660293311517568625862997671308914670002019908069796867544046935669970611268024168260140360345175165296214231264454032990654305905998762873113224494498879139914833311886649908758478834900059233453391988076284052948465334042917578111069173895230419528262534964383386763209145287912567266559940236428563800619474519951902812453769774011324935378934752403548983762969760546581333619676346387046615300183973117463123162935345643832421939526778752055676979490677852881916671378335573297894951700772199018338020568455956883275903547415515078497847542037924630935133507019987072574105782789457731436591535244652165585724168527693973111412052709725028031837265159082175528586067662023133684342446897571447612539565657472666576884470051551033800675749554433626593753771583612983910604742163812797429848014507968914774996352606367665496049356706751605724881719932876481810625509445769158743592353015642328864103889796508350131216512320568132721610935810792536316809295990272283544963944307734662562505537943413885413474254544726827112165231607213880254214513485493897623556381280978598743171194123278576965247056681809093419747706330761664755551514220081716195189217302818373525893971494695061898362413673973454467490318103215286906451696840864575109497323197201271899462778647988083584752975971090260844451737117137736832754888558397632345886686722081738498154283278497795106335578491757352375042451060032864341657315836741340806814307152440040886262948463389084153901160233278999351753001493496324993696598866084516068887522425298095502922639378910374496233211694488389241486860679228371968170877052294648150708608043101781594682064422894509827061883413134528310297597247094801964476219709119504333412029576254832314948580536151131738091799797870476964495076822076415256152048291393781967131482629137649806853741176626679005147289184412079358757040747992011290756431271168783955550679477987913528076966658265255922072614922946276255269473473381054162781574605138849733926362712579172870057103239638336082386143139363316996673186348782109665872825645867439257097945112753935244713086950227076496475630389708811847187920903748947368432323009324343390358983279614330366668936574899980111162795086569606951298328118482348278249448415421681739391846527427895391419401967663210455198074926198982259108235643558423847641648790260290275438993838837475609990993283617427012362014151512496373118320535877164398182268681737183952392902590728334214533978796497871734845283317257233640022952639417564395152613812155274034011606755615776485499975270628534908560037748486200023630630775348681948143380345818103449211528884575636488583889230723607894090187651018609052885659856015985173969778265421439094113940049306635023940041732775853302950567371663714738361725587130043749823387160877393064393449622910658282800531266322403945000394910431817486105661603559166481522053655087656647264324955063661679096228397080039634125098388642470546928384771511999305203661265737576773759236918873301601305622201243162698668952105181728633529115881895315566492310991063837186863162569916938149884153424386424450486025904501757455816998816722975170720402033636608905270943614077819272230361450710411673072212966623866034997195469073156402614238674392026300973331134717389313178488523086350600369307848789907611151747137402526106324766844738827300596658191852225673899195447826633475904330833919026719228159056857756170538533670385080258901490762248713130270113512614192841199880561835893936664320935790353425651610910509497970198805344621226554214342514478043112391905506839913334625228756484468699251060786497738092746685793663101388023382453410814797011650603299164074664785382819690746295680420726465824813341900510768137606350486240207103493864204062781160105379561642932671316727137401210844893059130337345223204494474540056098558809698486355230712212338381041539462183286078199031581525409358686811760915449932926789249696966826446859555718924689254126671286414413323710958610304478650405017926333411256249085967191297090301678597290877907554062993274199448900681899720237069136846660011499637857095992006912746668322106613390145112080733711091390640984323369932300968748679605265697960658066534768332163807001244681019430368768753710866651793409114813875192589544971262273192032213482376717032788531467289612884777694891408020843108320819114453811818900210702396518261917571897925736584792797130935556338231899123781125828037179052721207222281621079642910481578109621353770751009034985799640383112952532189081532435413570543701021818137846951600871878328256354316790773496575975010982617434376599475795846343007985269446091831392966012362150464484965201119294986407061697567211628025948683630796033956808909941603117059032042702153414443070861932762233026518625818448055234180326446548993389476708122598037198201523441525228618522620242855900827092850292136883620044082567918913056208995761373400152792062772150681239336265586458594480877316518976330874743485199403494968099192589116526088189744481891313749406473799030852525085653433027019286613736776384199982634701263994245002692050892364752607826627519115699305779149528159580162922087410201745721777304043805820590506501585215050734449033772050823298124438702251291782426118379528451983818751785738146670136682199203338135916325175868277993340806873767410081557190530298540569698770513870501709488380732295272015512811236210029260248764964208459542688367107054049811460941653336593101946313074831321337108389608886952847482980964413212908180695326892952447812051164428331570209982862342291073628692932095636391778149140868665531982691316005433626975496145459478253662816196366626455723335023644456517634345854534001937828514094807709923321088430383373862657459245622430451635625625162596440675867594189814108604504693175418941756977991523322423282326315774158438838389485315258239492303431754360201401908261925183142478914839394048374400038259433188362163275329989145317612595027663342516176988720364043028944555925600717728866876095624032614936594726079889783412575044627597032355431686067467585909069415984969750667462401949561722982324352285831149052044496406071207244325803895217216239201098039872126278047387077338690954174387229858651365617350527450475577879581425023707487371546156098185067390717063352567005231194672148515905518858087302913504969048907572164608084504905768156305586760274206833287301507371383419820107221895705553638179807830418549461794892278651320362876759434630822393091305129250763161267383979834099270494109579178965399487442261692367598612110937165545265858299364666523892947775314136498748009666493624627387414916616314998456340860233603594229459311390988569342597221702835593457717223323836215531317224393213507036643473629482187865993973402063555910461217680315033143510081569120793326303215392356752056689757041874861623072999713446271505920854837266555143979326418975947995663686849551665958305732488738887315935104695525662434173408966433420706506293362220922709604458501888935614735860996303637665104683767736937516864801565316918064077498456930059373139155607307196147362572386846541488862559211644112032329705696995941261578596511445954324417335248469687322292369898059627069018365262814385012693406269098610645101495967263636021757556594256195156426301827799459564660794213904846878034200890034084434647403068124688407251384043197043733827551277716930703446461239077444027648437303347571110195749097030750603890926093388142128755910089832835630317533210854631004704807338930084966188368075667644167291534279993054940323527622680817499937142476874212890460667396445844382003253622594622710681980535438975970243913944069252901813802605324192660437653365163933175523691805165899153721373672285621504870989408381795912164327103236537962909719481502179328097601214386395829313805358277009135608053576407474657076844365502260626075933364694379960120174507214323343508387832101260712773176533774982304565080186719116493809921540831651607949388194552107476674206097223736980640634766639477380463618827603954836072286585511506192389615053674566405705101606053829514218855928656388196152697563497740319715609384830416321541359381080443359980507766829843674734371076216967055162361006444308209378293379627750937707729023065517162291393752617382367734989556794230419441760793357562362488390664623585750265776746518081407292374638465678318553953275857339775137775566197106033664272509154249061525319716837832537343277295855206556886663587735537874173670975661535328092428174862334077748289571576665425079703452133059703872371664661912091075309483430529530571903398234198997990369710364081174277221721586219365855046671322629319276552475806455800620901970285284880660979312102062246391524245627514569770460054105078398187384987428243283415612063592837723110784061654896220018358268678988657081010482699452052681573617003273954700125033796962728958695110119690226656002297580605366795300706724825728524955677676723692973578284739761736311540069367253489449572924687374788259480664898022129032387691470713917185635145406731835757141339747646117992579466549755473402843239137526977162138223526226230959887355565070691807438342437905647595931134787638177745152921171449858572699153161774011248531412732381052979137568459964497281487798158076688747116150597150180321344716436879124668799242626741692169591353029500271922423021167343641826566562041099403132076732473312437584658352033580407008230564042734092393345938781235494536834416639075346881296781158002685111685391666450578260362256459387242649491795936827867854303492750426308004513858940015838552549595311043838034658131331856539843834752841190130719315631289149561522189253898396953108509883257168128811605045361882241955913373688152206745041033958785046668255503034546855398498990732672358052565205989935229243343800112806412645057681013199356308022267773401694821151989277787169803889691228928300006031290974041236993677514392533666163717594118966950341794904552078241538309423354827186608902594710305988973975456564733079052785068251746948322506987694866118014052430975798646719774176064436538167957593922064248086369589942290988668901386465177089901820961749411074419021030991262311895776101056468778459546040302142936543892227534152343544567576565863028910062004123894845150346374274436675353785322502080426759491149293174878318631665031760776793718190497092813725759077669885920364519211528225776247107655500591702013018384792754982458983545990351995820545229313503274801117525699942680857869309867669697430002679916233060516631913780412016744090620504372664421173647111786223061495984757546843445097273125427448351149747071640013118064548894264972078771558936019635135678933543475196581316224176943158149014694221888613436244306063794395326831983334801238823078923978304676643480445132717045598372954237983312428917959208032502090390696150784466851182638852978096759495611089687814227824102786448420878655691141810537099242765830679452658828290528843319496981200625579036704574320101322408003862977602750044212352772157854706689681426318905721053085580465025878349658653276082885716931745886589446980822086726998616867186628936119592912066538690617474879971168618268114596081692365788935655285820454562743737947858995331359978583057479453517170804857681659590923245862749161335156461852081573594616736340346409766288074489688651331979524337550635950005717942583808673752961521409694141639017831367609812206173983502251924869160990769642824265969210737410146824661107388177275720362721363451926938347742586622472071896013809039853622432046443728599721220310609723170800316713630351752434244061073322980237490075939574298453428618262695563399746434005531881255378685706175899995926684721218307256404316029986064027927764573346869458945853030093407939814623162951629089102137879943931749969003692241293480514363245670346220150314953169787651882150520786313799463172457814622346508648406682510437122436296713028587373454406502407624409154420961378392133835410065722531138056434746507528905485192063567401376306967284470104431415901667690369970523693737084114250726548998803235662983859181263628006922607284287244280348578040474632046522628901224716477819091933131113160286711504123870091777436316821732685722230586425223637339075848443202196895153624440118744317790055240450538202112703448590342214162065081229779162928965138526104831525330152207944927874458176853234042255157924339142052980839939688168547137715114179654035451043744138709900380364035794609356960330359673162102021250274344456564107050267317409475826762929237522718675264392178844340799188976239736449684193873438543370068585777708248205932905341619917940284220157075486449518860170477269567173079640856239206460993542899306700188470789321869644661657031786527819398640959835256739970127514071120448927043444150952111132619078381750185797752576948339737274158950881043802237337683684852818240691447821857306156266572352931449175478644490953727843367934466316272667105805137151475978166828169101713928915627777203079790220453660585535825295997339698616995530270038499810754044257153807280056586532193777250021338047315306110171430830302649324735460043949455404640835507183979246319158151541803777154927086831750212273402161330005898840687748411179952461105046156879644308271182929493515113937165857083083991171381667855744807247251383677629877249930001821623114327989680494392417642731483700609213129413532987137904693243424646627582739771699408215263730297707321928066125622623730458038827184490233928841659556228893569894508548634108131170816035430367578642735058668065884857940689636190994158283940874756468555461005902798942994357897875582111206999763295960412722185640647059828907468738898609863836066100202825061638925081401526010056725706396634599693777900444675161921748769448772480534414558090147506477525749904783324921945570851641284435938594116883773167710894296886410939968359350353377585498997669393244057491590539843649746581973821314737296627769987736191062671957942794136576428901082886215001785963051914140334129769561350878158531663534384624014758802534203597548681182407533169142790606877401998456285817092840643389812808157657468534194354606276934645450477020546498496497841955200488922344637099863886144929556485195817170481514745080407243096450320335705136664596917189420432121727545669331436593166527078112996217537826381618351766580553260394260003688764481294685085271607199994668202574914652221892880832661761768313512797988057688499498609853745146930648639344303266244053424733847821112783194412034417231018440364192412001488442687511667421212977433419629216548445665687498704883618930153401846549251408772388499527349709526882927179010977457131612453404593587015920067312782405919086153475892601382938593418749075238973860614479177264562294366862768814712468193589684299105115364139138784628545929801677291319491809004019017634961769030313070421209293416938391904135973976627770838928412169265598094056754157650724758735547986555577239406605075744654547887330348545063540222981743978396392920247521098217615878732907350362503244565917661315140083770538987326396607729528451265784034687965305606755410471016357863229160457797357623852260002675407978695928380625020224132667788671082188183902783988549384246282822488135517334283552831482788339830059524759645609730774544005531618656458463484819894527519511539920492469543527995259456930612207852480198858156138788635620067110436528628630458196827214624877705045180055201409688407815317591558951699516260676332569090195205015502442567950929371053263704721839099302692778202847499915454249289664103735355053818861401079568803329628823789730319403783640532684849971434397324587264032539457973772195038655704343339378882481885252745161506457610729518625294047550042778236683019930616553656712666838038788674337723475914777641748029721252747567404706541198462404840228125492119512221446500850420044210791464847915718840632100247023735116472489541547885944026602144267433483991603498131885393588715359520070321523524033302137059031700142479666435650245223786306150877623359281812662974077587832401060424675716734803755848094539255860253422254479866178634023516189338228767845697303066184639012315297012279840434598155986390415400555372969705974760516539410400355296662556090343807684212295896651223662093033897396719986498913102508958732467021304540154127098654377541782276242251776778568798131600462483220150387457012976810279913353192575138374644032731588200975735356640938770190209398955859192042209868221420494649217888033440210350778478008729074263519636458571921351258699492487738167601896139808123411722267252098813927395651176838951097015318542456865953945137610048456640719579725000911527029380713489648774233549154744757162692155522121064874806350915393608510044125698062446267681080826087456544387935530222740952282502343910106763260091850180167100000764892386362054339230390308684837682266509907535051522784539089319770764751426364752367120233348655768232613649850166190271253621077467761160815632153176350608790856959245927030707691741678065012928606307488947839073665112077112883991207232639661994327447791333891522830823275826418219272751492474606923710817440960657466009734999830597225574859584898439053913236558592603325617294292026862603726665272856398873701192791142312043949235695025504019369753846116220935251312377255431124259386210613636280762069797910285349983953672735553519331001761552075468013132625123120906028271881802568803168380826552343491178110136066536968129664553754014146265688266592131882501533582926109965995401161340868533176013339130669180859693496920233933587276917689250155041589986863498598927522297321694649045125635412208037881862624557318257877568347849542890674650927541687555649710454067896799297766830989816736920072385348956033710860791372571936838280216093989671735637586718464561811750974763699064293420888885411776033582885686201728946890545852856254197290594690919063554654634743790855398030696371201380419977638673983443719111564305482347752601418908508348733549770828426108732859462731703372997380873077639386927487714190035552529221087802525395098722105137776157715179616291666647082681872481355781852336370139418700761849481255727296795506937755295152461058758219254183064207979196981182333587567458529750239544548622123154028885319548728369710352149933122059492029123623309010621141113096698779652579617875645797590299358172881071648547709593927255718701051060543619764837595613647336356443451951218427589623159979850177571786171437676099512394520654530756974496720797853414118087151976923800415065887037490923041898342693383523918675099496520279184205541168555314143114387056127902772724813855550747815093627539768129592238574801059010328586845944352170568803400494798283852886553711832026531728583806086582770836007550685599672509239915220489525569537730436687685777874195280808276797552406999028644516688003385734660781353390114776525304408377157913575644892746592988345122854268208251744833595824480049836677690857823659619010968007801287881809287939148206283873768981099815623233280172177481901415459101654652304722759474938109376828363074505938329526094583245726791819512640964785914317027049686620837037216473241343189242017087055090349446755301287324274755314297624653021286642757546836265534686781826899621005457311676650792639694771525490170087477991171963047614950802641512130348622428879337532090186917990425015669072865991581081939613890809051286096305660972261549778390164008464248804164288671630589940067463669730402427378850989649919599923462114762492603143225294788786661648166156545466867809870775757231927258389761289648393930759011881920540848269081645689369020995213694331794307538998487562303808107654183381228425238278968727502057417936665417869913114039732643527963882624198685819962660273750809389575146872758043660443557079623775008816102427305446541878271058617231354197017943624958719121877376503830126331267721017747104101712005656149398190970532273382793583286897113317401697324106169317561037911627322922517996931877459620040087287523489909360115577212071888853896389704348205323671892462293369751705100680448547823704846777881851941328333656615716511473463791347605532537185004405251829825398117524485584816914370099250527991524547074175874809058467820907447491066705233982079842697632276671532083243522902578627730350705336509491070894127501334431876739888532697615651870073891370848289384569940208569238849943234721265430200251776048942562274524110254739732751833736791369064603237506802865260449275243907524990756750711309419455578501869221166995869636853206593316384375536777838094364082678107269765191701051141833224647477200790749072670833555513638773220199956204425871321423573231934086069272963340103414612049082260550500009987008973135956914964749601430647915465678315517306825954172055093927022366555099891662202061937923873428952149317057901269714946616114079546842591552524044973555485237871691861249680936491087030406389188520064451978072132289734737675489092988913303113736150775161119537910898269465432496020341687317607127104099407768905948904550389202910191687535378500508652432007942012970657697461118736439805663646814255215586268953601356896886416512420675594172807354771700313912487207315488019897588965488048522198702506576267586833171523536088945196683073384339645438264766819272420205300049505590506314073653128661701149771817016131061273105128869703949162053509979580969525899957797156239957498550125111616111563642144368768330573841079987115730923112446819621785882847061605277430862874903629716085507250853694412966175260407278397876933860897651890564871283910862141545763322552335163060920905630497876244028646875362390730547006842742818964188881881495519097939977189883979501625493650506731866576162423868993107919086500858265200754043886881357693122237902492811307995303207886311249472384929977706274466570900954062381159303949823910213821200488688861919486910783996853894700103395478435726993555558976598317511467464946479301041356856264536287851135275727205986724692201456670856860520219780925397057549359210796164930833096291140546455083353017507068618660811871786079718983853906109715815479119747340978900666730582088107490986521245292495680631510500833995819341181624204927707918220650038319665688313630598162155148640964811613819549244588151832540031516686221107828699517988129816718505549723425432012296675110803575589111745287710142587005400462801827772198795596565503904172314650263975134605422598269212298304493956478540791046912669989332844049720581693270202816788639235364565547355331139744102140892067716659320504660265189559556850987718201730868764963546398214208995666002053847418753322164539387758655251259362030394006190766122443625179725775478059521132749256625172358153477669404537568787999586963812784145725886818584235474337223728957163745908485768736201748458836505686145672039755424802756359263153428680565507742421787441160982491222769476425239549723263788241205232799710860407520827803890352143907972496546565663770863417772588421323638489351786450338662388996874025702631485946896562471842919563820130544074890780798097624083780587044127667428746901918908423368423788222156265102149137539401586075514664312725033791806452166318471001962414658855641414096401831291062711819288675202016324695797333355778951767828663590268010890751208588795751824107104741152687715776805296219775714811174144912553303580482152745861387136890861085054997900295128377314723424466230514143947675032706974556864485340844504267460230808312368487008443366004211538550135124805927838971481805486811701344237309211337509002021881920012458977833012363206807328605730491459812288846988689750099263785665411325948130076952069206203360764113791684696910022344338931927589371006200907890510294834533384442123538695496624630714372830170185747632483385036986888121566209500204108183921724922981607450061071089952370175228649187813077337899527455885356978873037999443910284072872917278819751898216942796246148631429235776742327447181471526629218092863233648243124157749905901091749191434460890002335854711147572688574140403043811779095255591432592214969948158135118054110201737182617283266826710396087349540080247354488759346193520686167549106221528826741256832299934457564360006409375242701330342058367753017147484759285239763378852386329649759460547464866446514227777416096232730523333202652270550506552442796657535790631683886941796340381017807402376486031491072524874170512348778647032910293036906996346524571099952608353942251469694485420345472965596755699602062745499565820828568133436239706746238879959968442616948438694706972195397493089252135300555627442598577086554058823656927974606722943162430612614538806487974807248329625894433409433926872338726443998648755515006284190437666500203289863043718942845929687167049391771077238868954051607173110939387671306922766394422244493702043166035554605760745056998939584979651838605098881307022676488167305980094078768102495302913367381652990681689687193232470758418324278613414645246635704005734551387667514387169943576762890990389351662604442066761722424286818334005510981714117324860287110501974539072699578999106942608885070479093918782651645669025084814564236858879786745616354556579148637385645993536713971025978438645899528014890222587239122844788468823064085596602544601528060240242476505170549855563946061067820286926819248554239367511149508447318489258280777722987528857349424795062008969532500022253946306116272126316467986574023109588198489460850393910207376784486767802488375868396080609206636375038807472686603674798723194734256901776929888402453933431615074429421727781057504566365202210330880418316817688984834398362293168917634148315726072220070091424191836364286646809447040617566733336449816186919898500570133980970771536872268019509113042288637110403626998484017080253760335333554605533615599711933178692562205897956267440592993259725849704652444921376196336436072064896833138843577318783000854626490223441539414819917899434295896007425303290211140942836398197464447466904727087974218043247308644241605521872431103449326202706414990282733126256461763778283989030693571468890403352753764237805247663905886972431980203631055710523656083045767770679957376447521366891134746338153045007411152377242785969079809851100719947763298736509557224240967450315970030905035261997872692665175290081449123825527204448680399291675952397665438147323438798204263987440764650332666535463235493975885892404207613495915708634314507083117531858555137543615266797003401442311415889397028435926937648802213150317974001092100663839723373340007442598936774906437917963002241526602131865049251262311959668482994250154047109943345183701463647041568955705974132814136429451890161565158574128839353928435486099468909557441328347680034992329022380942368335202621723678261531207355967465995965387319250665997786832882271303755319620714844118670440310501991671677015991691038098140734676162956682385090612899388075384493705951438375295679876041112444182364452269707406720739651654923386094613742233056474168404189438424238930638862126585424806460422450142530891202932555738636368392213238982970076144104423902759053686210182549101601111729380629744799570188211061473405268603715420924315600537750893691607717654375586214586528045089559923352613750548458286196728224853688117826525940953180008545535672350124477861025623294504964175632345186413543011103966271462570047774757714976678417369122484541732757221586464005072442817011460823343087969464180058621809836082427527359166550855092993423153550561224763801628880338440458910784802477576679932819559830924914450153604819413045613526060808919688468320015304239353764076754892487045767481225142838650049400478744581524375429855746481446033870103899291951630811434922686535593433850471269751432315618102687396812820682721662159800064415187767634764211654523090983629929489779955204359747757515697928419419275651304960861984813558448423473093516903708519275153653650841575372349399874112859651120320077076639206573708823882087343269078424703022122408288465976564744663918170188828844074223819761675612241324996286171694620969821975851515470673001343247197660131419354129873655332232182651335574665721673704497850951794217702986127650993871564045399260096545084232624849079076162657204303261937139702151220403341380653302388747660583891815002721652584988335867198305737653655082698410669837910737094159630227106351154056012531874026941091359981769220423410951728603814050516321057994584826501175113243667356032093742910358949466032585100681221139634461229214758963560750661652587055543903068546672477061230711968140194318471101735004593128976050973724792891767564580652693048374543262512947741340279555608183267829969238643379618278686431314813369809039451180792496691048422673684311199633748568666675668169734477338376528791883691384199270234633598455711296034002297904263081482864529955178008316940928788502736427258813333538866706500412170501597140586377522494279150897439472743318377641279462442827511535613430721224255161661191585222755300166528737632053806344444312926942908986846383526987444287213376825835552973199967039217248365262941041657033626031713336615292541000884849758282472064445596794753344832818502670291153958034228145117340055393020447838266436152277183860114071061835139313843862087647109194904152638708609866008299636621244550363832292508745896448806468242350003972669328477166488662498228042906778577858699578034044430344084510208438928394616085840529334309832896139693865848939921576327904362558398175453956744912134472257005829691884534042583263871730572637286064996187349335897011474291978975684687339344437070792393118690763502982292398814197703233607505615310210806326786545075754512183012505900816550404438974647086480930339966040281885276555798479554419287788641949029732130857591361314240825472843714122778315958831705218051524959171605182666300440777901281334986177434635210230996404039454743832071366977202909809560214560257283177916759356149621085929537286016559671268355981536646691547952721158784983898884134344542923873246782697923425265954599858670265054722144640386443283706205253702300439540963526219700763446224032154891229344393566563231495969840388249127283044369392434080612067681522640159335627014417397515750526834022733777378704818174684439169832975237517605425552659259596929092970940147680714375597233242215449498017277709756892999108945646132905312525652662602235941131218402749197491676797731382315251332347284385039011324137386542879348683429043677083992577040001630545229131670413266877695471720659975854867318726279138681005288718983862040439703047106582901574411978201518261012278840876516934916253579792030618419099056812026655924992195023041895217105993205933314645160575413847125099404387322330087265035114090252246952777944868390574725171105125010245836710437608857515142239141765501723019159584104255846649120440706212842331435598182820168098669166885365209135660059565287788347553143134026121911306661189761334990696572818252637733415997806279894110677616256722544851840070387566687746330022539271640374040192406612897405935163371362649457235134143504350163412185331465370890357898427886846477522515388397854037712004905973178366304559524668435637496621247695744326282532021011752682439057125136465726862640738476146988240747215097591632792531906472458509917395077084555111617624338427547195770869187997797145010907831346026820227806926860855870535088152812578244163839165213919039138509510477077365305234268762683829264729425227685964660462121486733545640828106376149059717306487355612259688481491208473932819459130690620059671449177046586204697135093065320244597285663779668002729772992227095720537855683154171281945486549130417533764759239252749579385513416670187896070909084767334437737572754834950008743159821630192226571457480694016040627054367388394892456935646653072703300768924053270012040953871487235932910123271161764192190908929251591034654515250465222558411215754360919821192334106429330835924987993790616702368979221016853621453450328868544653890795468157306759976449365578243776427429283407772423285692375622236972701654478004599608701838171999752393302807020754435500895848358361648659404022275980120288891018035816731324717444545338248838606453913992185577559666444640383016024603845013538441326569253683157493144439993391984549642920577598606975975640058891212574425549905112920857760850540911699609169704555544285949179084103938374651723848601866150086025570177283909304522250358378461758838579228902845313103471941042196725039126675537902089810830310070097003167240774357520546375957603525674443170167027391914322240934778191934718504358546839661340874143433862977771967591325724595197620386043894587956815549036323111198623979507408185603830504290568965422836857531697149305228808217100146477103553129362870074877204856323978337478731857393412785652666276354518186393320817031346671705074075596194527934724680246506273751671759239862987107561546480622187038186765498839960945825599724596289155296052230923400346313029675888532377735203572887728168608530986219348639577943909994022106733478413050609564536690758121104762450769060035300925018742022264120008528388580713360934566685314284842058080659479915425467402642239301145713967546532009848626741979409946671877562405472166301196038692566572084214418477608926472232740388939060179229142926584112529071475067944375811530203991519401833154200644332320370596651557616624910292831205945220055263514091519718795693717080715638234441182812978895528920384518056621300018910653545138558309222092477353844519636570788359829179583750357857583791080046859008237844665753381124840519051690587811186158021883456358167618736989633625098957215945038728827593598747556630779847312462100559348372906661248598091741095984383704940198610058412624154812709402840218488655065998004587450539560903156630830426584468746852639211281451553105433752733683300987409031824708591520325027567557394169142021819624156576965443712308387883371793150592422604812955740907072843277211202614158344882880496488439905744496509050002982915241283202969132090444146732425951240018934025139187937909146050841149036492868032012124261552533732816003674949031046169560467918562295466305099392368826619741873966748239875511470547412072750053184500434811439448239723767714344635323478815896088635771697315797833381673385067461617363189397535636211833677410276473956412264782787310961908347652064617360657367981800747458338005973750291351328139057584707263078828583064891501716612242287561691536355641789479860286103634249448505494978583089038587782343149203981458099548104945043233337540128050753013270177159893762309450204022814312299265419769411551618526434222689003976741487465835581648197864131521746957110875235990312557163828200899019724295134249810406629373469702111791527837473087689040084464760236283940867447435943530914738165138299516858607198038105017349883392420936814553238188375825308906309445079438865007035706159218983831091018412570968156356504383677362668685431918752183774058773612286022648437738358104353210162330203021663448699982480200561350861274082881912383992712702124959503350571280682514351520285468806411439757216157627518803814170067732900346352284145420223645992089840391633420508116088842996513362783325194033123488840189370057656184452066860902803491910897141634259379557728093994935720369397363056434834059262692071460274621755246109319345459563469172196982653103406513450195480059589847765234907111931300722927200483214788580264727147812411178146965545786021647291164666747073311108506825411625163151316847358078088005698973343687937107082164281167804758876390425660634273922878365072657490114879704637421313585888555344650057750084417172623049997871386249817992327859229625109499439313124237608853915644117397238010629057855529136894062486638911020526176563297520940009665130138098737630538524928262124878998088071523570875307893329213737916536394339923761043669626536687119610986710165081567881015964424116395167354965814025769825616862541329492315115923830816337014774766092434111224067674868920344141571077855124160254298687260427062918413278799051343960407593374186152989957351637364911242671107443642303133448222189334389810158911015545603560158133027897654823787106301536389134673848339739265267312563709585561407211747665275327288989471342731560491945187933956503802807360616985281359914469271438422945230657709592989116265849742547991828401537366377775083650411046790592634428200701152699139227871478888392893207477831198116443233973089423403668549478202382488070491629221350448173753033808475197064014033821939573150854390500184576695353768818885732781806616243011391881567212091244817549920892614304870768792549082211926226854542787760301187592311271189305458096025006976405830613000122185530413313795220532241972795124686467308192276661429797661387806124776674432326890420410645705210920655591090648429351999427009899035563515091886202277708005328584648066377918554117534986119200232633841381290034239931317888167471054647787358637341595495304942416009277758449630355468078193042037695022229438759924997549615633511400801301798283406830382943458956059754124980099132595619291061471413063104021219737686049103893024708825018799110240320239076628783522184761496610418480172796592000186699087301453038983621964626196792932852861772810870273630105678496360960971201882159768324110860210542429971376444302378081886717110759711282224228012797570491678651280186213011422347538728967153369171171404549926187094228256609275637030810777916568333495178674417060882242562253737327740835606896611522021064399730155992403782252154992700646637700633676502440367325186175510866827633059828874539378345428941594914346931696829077734211603153296247711594996741106215273087613544288817989644169710536932256886420552150465377963198179721435805447546489555495704546292230035085319436825312335394070524053105591769625310236140838642692684021569024846143040394390702752921450994547109848435313907735015772921829131839629371609008319647111961769683476961295904051265567702512664873360879614057676982257172503888125598380292369415121152305373802118865436976211420409106328643580305858415816395619114414551567015378705834263959506454656545660137525687647840806701439159235533749585200548095429791944144714541827164845403697032424680870597273815440738326862342616553952627607596911402781143695823977912959710205927731980165449449509241829433596519917415055814230155629163801082576651880019403500328553553050688842231608497836313747176103329944933321100046031230768556114952557174694442748979643746922192303759117031627141358346579797523800293263502965846913026152695983014951268600519613057858631136995774886833075396780189682126499850324576581698087945857082424836089429962128653683862579968105191582936851724451053437342413237821874799326808157605042374891404429379182755001653746720197997048207214322131245435464135465788436985062538554644900127214204707586441437964489987551291126695065291109637069186528882437465792724978176882781074224375776352050824730271589462397560643675450150035492987582100463146120653396330496579210668043889455972363985340540020350045057779487425182217649315146164346495240549583222309529661914568790542055988799274512427275100906610776850316196174900645538328385628271599949254637843837349859273756963733180934058563542875261227172362258695322437998758150813507170093482961631997923127114312520414009168578572588920043202753215088532459061380317322390780882911471803799670594415965254613986820576657100250520554007277211705165782533741526811095965383107983766029634315250249854960877686586161425028882523203000129795761048516994561208811662748969124608207292027953317272009350828140740873884470702812370548013384414508170382155180420211491813343802422544229388528359902130488520296065637307710239286873597128844555895604689887614180330947989552119426324021823163041205747642151593567489619136383246516971884787520389687794510099152397390208675336145063300718272602512986890262468513167724439604023789403212323947674024472380366008360818642535108904041875895697359856776260242703857504512602692795409147470144769357644979276972633777963036168652990545112996430897131710874143350848470439685678129460935083292533250970021901415982755934958342474278750631346528589799880568975921109308991608674325173317966124170160061623723086705676535716845135830180824422801398051149730277718618093486154219704676017246903800816359461375940535301008097926247716094758436128790414299066796215919503826846779335493058536489412915107266016550673036320421703030204929285937996605705956833114533815657169774546048425313866193214387898800408819599128189095717304497941726651049310787961848064889689889959778727265240784166814868876792218075128194871402605579121014824821103813832287328731507017209803420860627699142237609511466560394855865160825987166301313076431371900579387990642168729400261487941308008883763901726016666101747236442443376365783873381516954376780046946017697258318916519333786216921606532834804586591708977350099170623400140215415399274207488086659728721001252588839202471507263632299038276721357931614443476905208021986358504519197705480302951674498809337364676560143530467697693015036626226752623412332974324225901647034383231801887410961541324934250045999779723965438270371710845421140105914612529687351089592118243096879991549686906610158682917154129337011119252270332932351474226957650785986345038730414220477967118680563095157059440813282404835872541962045808413800170126201020473475181056137425478713928275563379797312742011782801306277128220760765139074037068589211157475476478487433252791424943523926101512108201524270587400257073395025084786518250622768269338623715213517604321061340149135041671488625847534380233808489669224069642362887324009986886201140733082258750905607493399344122266171338679422046081472662795163687096581393862290561667811241195052203024038919626321488928849861814958606123971412976682585066525884261556557335249029075442648670792234595182184053012249542174230780876961906729833753980985328454550149179755856863060585693768328528686283991254525936663583037012182434031241596898256055888977755821888297348480569567843829382762764942895926594866237645229456882870769272315419152802245694761122426045597805095664963555868697612853383704336141948173967186912998628245352857292437644070237490065759055085774471974664959314880353643082684468597922188013235049899257625411074246955900615372306649016441625972233531028955393929808673834929649027885258727688094032291739234179990563418953713563298685322248616490757475885234341574799002167349907210517481092450609124740147884024752695959764402599775041013668806824204819065612469718184157386015863801901501675003348358407903897186402625551430733126113442871634528219065671601415049605720640781605087165313757111923844013159489939781817378978754760927002424682552969646268675064655052916833882563965197058766436834261678951870886908414807798951421361550465715100629311389045812403999746534430734930670625947217586922001483548785956607326522364540087614481800385891425619817122186804433468787099723283903237185980190450165426125973984410133907391819329053460966066360464338461491190088764600736744207863313044334497028873743715451803317565318526743709166026120582633835638973523565492538425191227524939592839766784276281997903460327115053294160223134673942815903800844114512375869752264494162734837984511817846554011596711793700203553178380203158594513082528077677349007482992281837062073835338101453624044573870104476560568343590055040419576553178750494867698808524551036029108062514577974427459261778810576656239979977042669889719425790227567973919880100068416941896090272084392556709504002539166129002563724691106270596883745387516306680334039558866832694258566117908929765878638006148474384913339328968281570310347809221950817996191795706450569379369736540230108372400886778289948572108843519703597708423488547424252103215866728707539671192278997552107707320146926316348958649561771062047695828401312663904333683261295426861043780050351577637429440363485865739853374652575956655694324781187560796079518732289038602676459836290391893644118160666587611821091111799804761988758714908998893267448212717865624918071810040352483671132270409949001741920695968920381985672773268935694668167944494344590615598382034099224754502177232623346320798135108936289893435235499092821750358136375580400410055212488404341709292358474007965659453797889521405252136219136482497203697930374307007939464051618783924317442315447842576566082703571088814260690715140075792743864078172948897098126933339257725437173648116159685991650271684986308504801178983267965741316362736776321811283050512569188448465189777601258172904094934965260494224352641227347646403094926677868474300292576753442820192582479266288285177678387372491003009325691224646868010971839804434299580301285905634429635966431822741855254901901742276129383055883726423500756395099676580590198179276456203723156660870626419918639284905496651498334172073995008010753876551825493369488016831029221697920367978005926819653627131724886715847636743387567234283243216168911405145920682983217632043636059271694084510251740100146887555073143925311079074752281246840000348633733870951269271205839643624451774905263040538772267504977611873822342440362418494067481614529529217586898087603545773516855337535212146291575806569891098043519997937452874370897267055466734425044573167437726997481677842801021739519475867731545688131698864267510004058836864333454658878447219568257536949100003987668823420915569907277601784819756657625637599315624640876938085319605645043382525458552119559779946645197378593788338528090446367530219290024819446945169242140623990434140833979895314205879515832407992530257615810699721479328887637217763551622265624663760754731542434061467032664729519519653535309950984637137672731015751516262803182922800488336795939861394559226701160669546842992165687731056405273129817847478139306409632984468947170068341028592639241400366691862025679860127923508463497157577933541505396979564575766302977367770995723283925362057671950222532293033203018411734081584115583654359619791848322044508710104148311643030595123259317653581375381491773514761789455897643694215095430797217171093379804593733696014056446515408082244264241463785831829910780560033660166003095141820342875542220798854517771045746448409185648054975945799240463444566388810809886871738418860800848475918681055707686464819336150385596968685819517056017991213121004142564687041370480041468167874755701364565943956101305208748764368076176273308327888634592500543983553957500606967332484497539456344330551557011499524221723669502181420291051522420630682741279866749059365337705970843169619671609326148471738348354058623898236352139054850546006254569604121700691500016095081312315587306593317167983033499622847562745545348164133610057518175307843979319368655157197764801792817837916505278379180769560594137557370087662921810431736045836235430589716212743120040813258249958177491401756821201558815707029482813177467626721208137755401740130948797122512570039628775919367394394540112157566728135694671002821291907405440019448604611610325316393882093668468670457973555019779991442269060240260580134645994822383284076081555707298839911544240618282001285602148186873062575700244773036499392898108420382256609406654239912092153866616995173998692753250970387293962497578467938158892413484150959035007647300307956725377520755747805787215365850372832036815314278833369004142247059386399232387543812474315556909512861520902841867482976075834287103709387565537030474440137297640234549925553273926016904045601765190352654238014988293172719062301465024574489779920583567522443839345241284360074875228815445063082887905267967118760064537231152473815848523416424087725341911546507253585829754118312044255085676936589699023918761890880962108298866677500966687049399415716450391605540855913037567386742218146870956137168431260549491105181874200678987317287072940873400276764879707828794484295255392030971714853100486683837075403113259306062112984650144856375235373252844878463300705750230280226734876024963437140382389563805904795199100309633794811604611997585681867670621218131389247153311090398710678289738047401658687384744976844821266604621544798034624515191863563016038408190901708202283405997294938112840522249738730292027246545481241970796233766477494442409455121362220014144022141361454107245841439905224233617276853826512139839865614107631378924990586035413120487924685750906620106182758894384109706113868470744999069460081795181038128221346067945705826560902654101429026327183345062967907483269884778333668249273305935929153041269564139830313348634680437690576821989871202845533579081628368142230568196273900040671810476973898673026200294394774399487684824274592442024720664291273370160219530642277651065959609709133162078631675470204576545959478906400604627678649722581785674580188161070294409871285285947616198609407066341868631256298979461291696450006992059906059488827740425815877802202793497977129033736132189995313820405053667217502790311665734889611239076889188028569298382838019341730005893592577015436008367451733860020229509511663427036862301486347131782801856324182376650026727518757386807371663714186111723729547371186773539660801895594839440317118187500460208448796614998303424454504363085192000689189741034306566197913431115102249550254607194349413119249227954395524838812819544697143760044542370871448098797708753217115859646852176162477497299107504766650859914338609440742523093920477171782357858496403622995872732475845324092414073946097096852486379323842865006729535258869614806933378800080123382275073505291768562601265609456294804072973249678943776693564972727054799330801915766487088864134257799430568246455387888963421525037460637477642576984029863109132974940694757788782958903269704450148178656482258139461712617709940305129516828243878641585041391604581003975925361609444037043878388595809546624664815160539528769924554268185663228843812575500400882095027029257116684692212517024968762848731309672738088775953037589360452178414355899484183922209298805534443495852591849659527619078519640458594532832766002473349084954321187935203982826723893099491660140963688636979003078104121004917225095347510151248672858407920344010876059035528697039003961916586279421179620421641148902846168109824871218833479475021711421616925394163149201668542988552819692850502276373119259607356099717371386015851874554165365938849769769563856403412226353757519844411009153491125462027601024308497548481952757781659749756351400541531543499575613543769978186521581372653321639002802276179528606136508366524675154467358477338230404554247729431478892672860782999607428655533237994931888172029725107361065022321846970662053250688444821135585026476098544015329248242769246964575365273072514140178911197814120543198828512638975575392469701059739981579664052269920821896299992058383823833271458173550605160976897897994970344167870250769105456898260975587064046505946794485982593248982783658569689635474976519913963837277741015243433019263244353627805916554401879107945224390593039607364986601987569701312367379553035425835971574549147277816499422859375337051415229317478742211387390062851434267584503283075268680295706732504552126564426367240135902309277442752446407802340372420234190086913036158640339977819282631479674883903160114960090832621828754508883778546375700420528351083159587733894536531234996720150292749791634652200575701233260533223974642641701592435655037648947496548270218666363731831078976596752081081294135465349833505702086471124043509229133038143106434940609975910334506928740936294619149358827417870258963789992892021881676284059878090505526177942253346135842148126262740669752977761228779939335411522319694440235324988774468105691884736671305235018110044225414617941818309820803829409948631941818122294034262333419484050397722645381588012414376843424642355496726247529580684013705599589327979899915330490137091153906373432651501403048377583726180553279564935103531918793705676060633471418321927725686570083305744135808697209559874561130119157974983449077100037455687564303009538400719622382060129610717109606592893884616540530008543723382468608700041827508911940853334028137892276573993714987169538761682995108820902074840887279798519059291547334389422123572702228377865172629349089487826563296298933086701354814029398723542196816971528889973912686660373807478717188954952859982405796599490467198982985263041845206455698341477184678307833396704319519457980957105381648449216110921200577080554611879364812693044592795240105888975019967234242363535256487902464597952474049141558999135954050868834146658094308929164084959811042286562662237934203160931600004555617458942135781854352866626180643549250518300776607279877647610912509818690117804196040380312161956731800338685833090777963056265598181983286370327293565480564507658442432348157085533458041465779087093097820567158471723754082044478387089350380792600990163955076938159066246402425310164501745345090768728803436645761480580491132607570225823780366711006512421900137360670012880639655081454407529312223547042199297521105932666691961383587206315011969598947776761662276094362300931609522649889405783099212782841110445756864003878419809891406792439848925557674965828818460157467039377484991559741753991020360403609727044077280049886126995954057965081428014271057153598338037466229891177160042259586262294400492785329394922908996133575735990027195035027308386381636242131762085403208160411843590101181897816633833505286112747309157467702963252955254819595834986371727080491753040574119015926160245278433235039552250370022395618937103554431287926374600179927360009896468680434090717647774822988841744654996376830894512861350081425733411293300778288050558901524409662178064698303371262280293756865393706901832056670462060431174608361965031944377950379601057791723504287122625730907665801659118122497928019221532953554555430226821888161668232027014779394912301797606177239208489717616944545748446569554796688233276784630381049670848864271055855977529399179104979844350496697797206019459223375806061894931157237048005344440642663466738865037113034413531900124007705054734814023598090463359500337718200171485314287886274940822307016169308202983144436833950511969769070801907193239520384897192131647605461072483394909784097659542282988566584018580324919987892804835726762623087946131568191405338772743434382016148872751735190846278284494245690844365665557064943244385024691572315469724680453503935353123587155789560516632400253887396355143211701208225346914667887886473111225735493275172108722168197254980555155981696159448408746027656926542439168879917442395578731875900011463911205710287266866102934859249464070548383376460209485993036225492075177513355523613763157472876644974856183739405203967605042621246824248538137675644655945296445937083710519371170806695937061217777057611636158098904038215163386081639358402085152689616114648299559097631970786004686871538057980282645481368432022590047180635511035380744893407451008656395565526668525964736034301363820579872798459059538462536955563833166875291103113671603377486988912574891550272579283082589905894799617742268416093408428359721618611613240723998514706443959596978227090214532946290004125391520018525489123157933477629871257456825307437441197986911096047508372472802830183558900936249529192642482702042797045787657456298666238402848676083866341109869988086708693547960816675913780521825950977591168766299663641946105278710792150665289921620978400418107008945792693930850852206238211707034243771917524729046776859399939242208285857224780700234003101237361048684917373432330555218669531839279863229499444743074955496372594153195970292804409682840908453121625886290900654759824501610062085671611777321763550540681530800071462537245963217851171491800454191453491235195428495808007675968309939836272792297427288988194333331367975967729405114859866547909589073888219091270174496669881794461770337829901718459423001033460181473962587639969102860799108208349279660374815063075793596004606212655797540661915006574026904497410635171765056694652289462538919836487828417014454736461128354683640364773888648803197418548001938658061427382259890422911349091812999535897059144302706142428684954136482690498423680259106112430409063702715165031132967147050055875761460521766844531136632708514292292380736354617066086861078280321691751790015724720523090301424730564781264983242367795362474966917711091971291173609095864959970400816912609149185999852223726784134975457641923844569809787076643620646720605862927115075247049564288280929504678107089330336053144869959871026540914551619446217009670409325729696691130167443577293493290862091266944337691250175306757596974164643347773111552475562797501377685875293501092979753211130263440885701674885651578397535849045733733444374203909133325140979132379559957555929474893995324155504237574818052778551765223686475600406190973120552347861727652424700980232905792208639573144337501532257916930676909258372854368649051047859859714306681660582101316506672893995264915618142945223847359385960575163060959066373796460557509999651572485651672277414528939345436959241828554017086446518173195279902775599346325823653176497332281282854329345557484914494752466305265731057584780391801929467868937961511573769697008727580261125189586374293613110711086789813836698780254445045218631496606380408566736466769772434849862541797403469907184338213516483963585814032574759721823654431580139438211811298833226569956079923446495171592619992171633518900597032051691849480269660811591009134829729276564568136179376363364633705095429088768630126924829831302657921535704468693918763794422428818462689142516579450354876650853811150814902645289637246297199006413981327910600952572132234862287761649843695380079731708770198050128207402014941380730266917400878309605713753680369615131793872548127045673197439277980949708356028543114276087419629599673041469647715397867426155188437058863157309421099779736112758485512621683582710161338822310021901884970054429776397152260466320789179325340235241212566208179454219642370628120270217595328120811520119374083360788057747464938816454693606187239730346336240893520767070315221197510795061158043824837392002895852834689686512112570205255323256195657727384297331931299311458360240491895668965222952479494087408961038664837921421669170444235571698922952654638806124606302753054129720814966965037242048826974248978995748355923398173856871928890418811293725873519171636112750836337149764989788544820446704246186514257606593697779597795905443275386648202752579636483236289179814861371591317466305366693591559404019782434965094355841538388788762340574586164411962020452236613099314264380603471522997960540576173344078755882314991480319678595291650532864453002072972116729393826541236948819658348255005439523332791730806961830655104174626795194724072126039204199327738007999194214757785236315022996632393607064465808968314198479610307260880747335922777262824457097399316954886168289719054912020912886966047914555626143257031057919801484500992193548774675617994957113642819408446416040168072350088655880816149928769973430187534585379346980990728162031325398845425857052657078889258388005415578923771232427885565796659074053648647024116175813608688880241460619388410352149763289597248748802761102003607022871526796416061119118980853923311731595451267883649099343522352915890453834043241792895689198657698996635474620069547254020642164137568669250098332463926821554767233459640711932190164274878263720590550982509469105363147593676963293003427437170843461304474449671968885808522792922313602768103123719307967951536723687387453346421542911267963811809815616291310014545654711572378425511669121213919703672465296118868106469523340869250992368143083682677757504884874726841120350636499355186167102984920401257099170599308974320738618865667452692191631202992060688615049859821508338637395328054851810053469297724784056647713640219517224839634464610866802286829476142915106886044452534266095301708576760950889087808668130738702320590193187684999566329260177270438797496488095886742299167780431426792863998986404244068743657837077171166408250226059725052346627681097820426526062092043482158856583340939004923752168456082340968641909716518071583283815696434203750324364303250555664330219529770727164158513711781585221375997276477149328509992503673861476445740774628430769887451780175379333342171044282643698411814653807726838567280161381896200942412222084419423585955207028944986906048948063891001954772264648393030419894613698220101083268071640474208106049453996147530077550622488080186850531082735753717420874666739587600036553298415172972999563245964439356082703781494659828074836613472737186247733383963412593835459898382467281687099326375243912134584943157261460479404302549711804802781623084879385369024381190400108464644828258672902513877409393485762513370273954369166564042131879529709993156931712110321777185309175289860222601431307952587307973160750857789262942524749008352531037613974802042862274743647325186462632057425056074084121257142554024970719769524600414633016558979021997307531776079469906335286689412778664333951853542633703437069134763101845170691099440062533939346638130306466180010930700577219446006181189316787546756004845489901355201308364193535654905031165766839829062503392137901923878066515942396340992474203683014737989324116759058165445294139424939604843677082895082235471102364104578940674644980280549256941582099437989919880657383642006445140709750193893037206487826517567212266739608460723353101672387677911539222293410699106405424270629486402002203018253595165268905663429085952562504190992109253018569449358700532225712464388765838533809152567058521866135204784011905876183595475276759995015834898595023247270366966220628676419527907302521995210962866832242972326267414675610694717706431759408041628280029860949606588593155331983878686054391076292003398962132813273819119874706871269433871047877629665156480203967290972617159025722995369980629778155936988709139969993960573721293203437437683749516069059045654890928595166546786387810685825949223802814351359592826317913411000035866670956201661513468352834301424335077184192279338932380635065394326968780031754247870395894031796257011049943393292102409322354464494214131813156761606972733516929293961720776629549113288662298644599002118624362343098138858167479899480789545616499323948673900243813596879871771245191712426516497718174463875978887169903112652066173656595558989297917601682784184598930330431238772889737835680190590528514677086382944774585111277962116435648920431123085919485873801221083700646870743168758415281124846083872873030237434986790235003047418071004520481580777963297471540103827318629358080711817859357530163878849112848206189366436967370831956534423113931197248806091639929378364012419962844235071750612181365802299699059614670158373669073468849142234025191038957361025637828774231384610136504754813381080718773229050204321513674738484016661600707663740879179536966279263476180917533360101111803607193116177574253468439597937119359324267235295539277162290860019423002037365536012134751729870621308329623883864607253030792686438813097018218438574755456598278263206594200015283375364861083189986798747256446212170221007237545069487821300910646151235284671595267921252407785470014354718486482430647788250390885682452393068343855866469022231760130545542872969371959569387575890706224482379206316215492705955641004207372313193041053361681673082644754382327995067646838053397817603365662552622538236771003155869864740982519650258347681414114396963568155153380477626956637110880786666443064825074949688365795418761590798244781935190798409535749485494171703718734453156322358069297729740922351499997176130323601234382059800065491882448087317109978465644672448497303990536825502900721290298556929850852212427366133841641873037645791930410520169522818600399248253263241137672756555158326829270903531856416885908704451386225845631170792998545028761330594251708757759340213450718213751993259460600310560955608547981093462506128858756355466520918160005920510427901215616716552617976472072464693417255794170725821160667017877909548553737908396091075574047212846408400355464456128382057154773367662555145411153459307257396237936028944553631101866999719666440711239158528093801499083283260464612760532868753423385859549680654423942942575569782872860467649661858982915658470225774154965074384406821736989919216018578548537827551513472787881100088693140732037495412325122137867185921197890078332091830547688312530299583806304427705416301015934761625597767557144281119506704358980897041241808231459562639586293586302248123314553887527802870147876759245580665706211575246972132497608385303276069557970115306183747403253837094106153110267072099140247737339487146428896295918171454535301532184014708665401057225461044741091044431394096066361404218117280192379081433447759487718789163851881334453926058998704783765435519544672775879092775725363194349948276784269713434040096554667625870281152528755984040803141026436532653283199119123977417108118994009684089185713128135114480224808285584210166398171236517208701995316863687099584443868015133063717166914123252175436828108994698927763977281376298129092471397658720557022406647718905422743628289368352407467931247811653285493909950596482732708329853128855061425391820958714473842781183106478536279940956881977861162994464233593948402005409256071658193851450684874041706518982930028950334222701001315394860891067617330194301292222283010539471655860874332877189333157031437558110815308974165460358086133750115619103451943599700008595816957125329739065233873525426102127756795968643588927784214573464543390180102808398618163448498748981849552597699527084540933937970932967592863409769103280402747624078285789206836144781187700983674176887283328579226255029203594755380546484485409230207226701468511341382636646962674994996160577911835325774126575925894320962813772089315592444292488033814403690873496793096018034528780945209707457597243842560574950614850774787349145563079349022154565914407236430006688384673991801562990792699980021082423574001006664733758441060966665619605259928811339775
193 1
194 2
195 1
196 3
197 4
198 4095
199 1
200 3
201 3
202 1
203 3
204 4722366482869645213695
205 1
206 2
207 1
208 3
209 3
210 1
211 4095
212 4
213 3
214 1
215 3
216 3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290175
217 1
218 2
219 1
220 3
221 4
222 4095
223 1
224 3
225 3
226 1
227 2
228 1
229 4722366482869645213695
230 3
231 1
232 3
233 3
234 1
235 4095
236 4
237 3
238 1
239 3
240 5104866514341945590710842651568281920101670963940301617298884589783947025654989209426383867325613524543351416833597764127456946916446081781809010549986553357741499190223136441251634489586652942274537384864347088262714867022887786366083090924141383506229439852977377003900548348898351843259305917045924853771632524370243927651743845488737416874805848368486492650738383584061192790228759690288354373732123915430018234619975254042908858938625059308072478312356363081018346276548919002917583248151532523790105677074132985556300525623246994398997696641975576343860751434216573702938766124166198630901624439464793581607521987353750595573887822793123705818050746432686022104079817609890994191214546801218255872018703385608345194043092491620892210302046725582683029489136603774682567680282632685757711764405303795386293220314902546474539632698134739750566765427099848313932256081872633513314483128831881481867184896549309061788140015231068341421962504120281883042706210346559274047369836280866215728520613525447857373937770199894887258997449658106174721909842993657489968700917291224846565375
241 1
242 2
243 1
244 3
245 4
246 4095
247 1
248 3
249 3
250 1
251 3
252 4722366482869645213695
253 1
254 2
255 1
256 3
257 3
258 1
259 4095
260 4
261 3
262 1
263 2
264 1
265 3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290175
266 3
267 1
268 3
269 4
270 4095
271 1
272 3
273 3
274 1
275 2
276 1
277 4722366482869645213695
278 3
279 1
280 3
281 3
282 1
283 4095
284 4
285 3
286 1
287 2
288 1
289 14030362074468413636347984658737107532392021802289416217307228994305075536178829923025355141912446591598051067299013707453186439294632805382609352595839507263593471211652008794076269726722766285034281920192717909397689392125256701109424903094474865329233733538936061858216664972800975748872067316232823236625828654235603699060266803827603840870398522967427864566410071585302743060093772438171073149679370490853829770323783854525924145013364729093252543799963135853189859700207015096773616693145703047074426796866496647524149587781129779633246697176294347896554891180811824163360705536530151190700017253207617112201072698333962682048812588781714405357180628447801299734033624838150036964085545109612032371223753541214705809465224206532992020941693370468567674574786722779603489630848748193218058652412404716083398969392139348664764519921709988258183442360380646986517875836304911593266534245669910081678043610308839882067994207105740121598446076994643602842165930367017777658875007475063919323112376487809353260317674516142171778052004647071710951589176567678504599380853747944735997634384458905252997109492932761601206336869324368827376397515168854436498949281879425194602866991851379723938273128106215965159666620822131451823001071242436067705233094000016281678568461228924549369485548656619655264987231563678205117646921257186029203327300340139989282579878255282104419325138089382414879649054789721349271068198711942439862005953967335419428841990814851601976048733410078527911412781928713650862935868646796054605275279326768666406157635627612972147596348639295220892097827139656133403698000533765924612707719736545875591742086821783365582741230511077693847829476028573139998185016349639030067172817195144551992523306329036235136441307531264601199548828031836204764225340884971097319452293215058340363063858221677748064512300403133821167656591507915301633754080879329803810938120645929753334647616421096057341168040315871579832082953048694276266440900895570502636861849976965694243189641832170656585217334157213542935231299032289901750033215212471601982803860487369537550516360589949272324362621677579020744588787492256775163704705209479473738078062783094262660944520593833876675701075667040942366175067562880797501500510688244745695087988655468782984267027226196597727432289284950338315174747582329536084032888299770571513947663286612682006319763560512120382412476299003202035921010446409305783111853058249725493958226437412776672971756708864790246693357125152871195265696382547795834044992610958725365507268586699222168388367583155557321668785388067176067849057281425476540103513718740566665071762858334933127354674281411971234751268817966613723088143362123812466038199094898774709883785356456787532131434002578416077944092683873043568121865000467275634799450228937683762338655037217835832334537745544264836787993631555649067918320487318941181417869541284672943398140194378111824718053756614234384818214936303812671855336252711184851283623551066503255707091676514185270611305044407320055439599612890371283805927344188203452739198751831936541881102586793767372263265823817500871306868427966338388041085609145587961584986345343977799388828542614785048908453907168700278931479148143532696215323193303552730868845870584588809166339764550808684814750811931354591010539439925287962391161185678640530042568029739192012015730888994502980952178618257928739025979707899441317920504259541240127554485613619254342349737056754945302791294239217031307370652015926942447468711068362017496405619501389215266067103535241617705710875114739486418340992977137892782400613974433715831372483803163063437207417450735549123918516103247067608959517113979318739753165023286248390144893620178129877554257286232172355361577808828440010141191481166254016014200029712254188622900396182198026188142976835653980164918660475356841593552463552612306909388052862201402111797388376022345896369161974362912579045840131077640267642333838976400243343335768250010304055981964415474038625550843221337099728975412756277918465683099894128256697185839481614059851245509574364384112818789668823795278144552443620220817939389267294329287344371115674265808723944040588042673269319811750975662588633095384250371645324806780879336646446804462105854729496703191087872039187515285829599951110844182919750184239753693434652671745920621406283481303424136534953634048202177113896708866287302507368575940361988816955082230147598539481528608903432132093969890113485353814140448698913647869924343138955185225453070916031693907616142631472545877430410917569737298822391306058895439191406730699667902308910619950070133886324329321105502986748154109112953680700620296945809854596510882176469508376798293222137937237059401255144905808721741591356940657579375439889761203792265399418430655755626414305516245990012861439239310919988102275392479840377823393084623971788523116995401169727755724867372714739848206736876328966544295199413202612814114174692843335763721450409130340637229219923350166612010692557652060924909497812417616100626622474954969535310303864155390726539743350227595495610211556111584650371636659765649562819904381664021515533457024508138348555013071797224238012153533426317867802796254639824501164651907857581616591535974202363602898183185805383837897172841653792122050840888340118775307465228758846167090589496159463177811091865119333215539616816832795895572810268417793143221344865540852626118092303481935005320365968251144491623427402763275639544876981437763127047793481160605057822721669853748445578380189809211960113267251716387348235379459444687938466015886882143487037238432471166112672958267744989149999770963516239415228180222830858567489209303852375084269479856581353714007576548163742599884972150883905060785794043280477699916652563517243817701522118388475561491310752043674225278827487826963281718867071422551244364416254937787074986605886030314997639915416813953712817039618133374008964388770450817655666252984265426889496266156349511143525485873755382557103629334708197577318018605684116137014114972259059431601566469893471232310786498988381186698756087945285352117440676460975632197185378514430435705341350496527890520803679502735067365736472202742591447953539154244306103119621694951873536521000952651922698444000163161174317743492503897158327490711877871411722328409848032133757353830590857097408645985267136431108597849503293604054112853862533647331231941906546275438104123035870444013539846548076528633489862963881822411573267533847170063483239078219982037794329075662126581671727412297820796985152101995649948940569611623531267018505978029693187452740128127091010851198984461173701507602786943719045174339284593557535240911424666545052634774527484451786044316166329957705507778105449128638671249955104817091758988718178955179107873510243702238873961382999846595541542222388727402782670932230447591680295234498532172884125404591126859201151666216646583986884410426679780992903499458568420330098669909643425939913585480083221515742890939452491402199237338296660793462634602262391918878789797234982807651473303979533797449269285321908626847632785340812937801513832309414877195984064432888293850780181996123850757319398681165486178546070572331108165978899336642713974051244033293171123066078546442634629450989707762487684703222983749870500191333575014879222504515797576812369166626303737506078651523148115363460915721480830302671491004645652400518760542038165749228454029686964703703852749533232142837164692840055258084216299549238814099117754824652053157323171427517711811539328201333395112492117139834586294043790297749746765495384427719695791986578202947343029224089501309352735897503827710947450936199283775789986492933696327762018755046270964689569587436488450702489609444847622661401152398642060912471069013545333642055249366491156263217153454043081429898156182305943590538059615274132419913869186614149658501847829666682968858142439460475112391355984717742612134653315793418473667289906540848176572009499702035501510424949962928196338631781202213491177625283149077274956495268328209344115301868481609610691646216476985424316879542899795140204880127924932990014142786446845314232454285438147085453068262780819339016679338093028840877499143349929331608513812857620652675600747441288543479061176845597127734721679902669426295464163755869049800706089938941225537666624709789192027166555747658203565959369714777786797315341969049681146612060660111420067043039045565367478904193191424116691376334900609550465065016476139432097889370190108645766422483839701884097978236490319462635844909040340098716534629540588665456815932799991517359231632903237119366922847720295889548209749467990098769608063613078609650198216740276414879731570081745130214718824527059963218748918949410853973972338417812375722659396402146301469214817662278800907567172204223617436031347182506280267420837574644073040577801775035310590806327520359491781874713689174673479119124185916970377042179936698201738722154663911488377598259377113766842961043769892318585295422272643274689620140458477243625420329579989349542167818096307473013190760286884415562628932182376487010155650953561269978977348067090603219809246761215684526404693227394641027147984473241419775
290 3
291 1
292 3
293 4
294 4095
295 1
296 3
297 3
298 1
299 3
300 4722366482869645213695
301 1
302 2
303 1
304 3
305 3
306 1
307 4095
308 4
309 3
310 1
311 3
312 3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290175
313 1
314 2
315 1
316 3
317 4
318 4095
319 1
320 3
321 3
322 1
323 2
324 1
325 4722366482869645213695
326 3
327 1
328 3
329 3
330 1
331 4095
332 4
333 3
334 1
335 2
336 1
337 5104866514341945590710842651568281920101670963940301617298884589783947025654989209426383867325613524543351416833597764127456946916446081781809010549986553357741499190223136441251634489586652942274537384864347088262714867022887786366083090924141383506229439852977377003900548348898351843259305917045924853771632524370243927651743845488737416874805848368486492650738383584061192790228759690288354373732123915430018234619975254042908858938625059308072478312356363081018346276548919002917583248151532523790105677074132985556300525623246994398997696641975576343860751434216573702938766124166198630901624439464793581607521987353750595573887822793123705818050746432686022104079817609890994191214546801218255872018703385608345194043092491620892210302046725582683029489136603774682567680282632685757711764405303795386293220314902546474539632698134739750566765427099848313932256081872633513314483128831881481867184896549309061788140015231068341421962504120281883042706210346559274047369836280866215728520613525447857373937770199894887258997449658106174721909842993657489968700917291224846565375
338 3
339 1
340 3
341 4
342 4095
343 1
344 3
345 3
346 1
347 3
348 4722366482869645213695
349 1
350 2
351 1
352 3
353 3
354 1
355 4095
356 4
357 3
358 1
359 2
360 1
361 3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290175
362 3
363 1
364 3
365 4
366 4095
367 1
368 3
369 3
370 1
371 2
372 1
373 4722366482869645213695
374 3
375 1
376 3
377 3
378 1
379 4095
380 4
381 3
382 1
383 3