448330354019305733764233485170573114271493068033119958976774277837028874857418579759655829566141585875461195899689395686736831902229942740769427743100689314257574514772787157197518082779337998689619836237851149779794985758685316659278856008314686317954140555693004832247111600479897160994621286013413896728447545184947226193570628223132811566848158392345443729416909523221551357758513038950682032756014907637813627126998274540589064912032183934534283645815753340457081993518888768159917419836040253230608142046216655686621715938109282074357211091814613571506723797269635499133525588315872647364880495947753993898527849167119287379524684107555230434697157070022349791984833742760981944192958715051794823344533170710195612145587314173593857983319372045689765229496565405217076162334623124765287478547135275798087828255883129306753101553005953290347343471477557263606460547365088133487128113984001979770944698622438878841632241432363838691823296079416362204789283542742381477968172229394016786488215728646539165463123824022461355327949673916817190099951037411631573956581843331353546776632488625606807751366008877341659746848359861153130891925866539515156930318345101748479588005665101352441910846969803222493792681178423824561831114194602579624887002198126667556391330434333596225161897512278044255989607212913014873760088023154313214562727811664207422327830903628490192585772451645225986108432487084500342695191400358725159403127792896645477251082331059681908459884381943290884789135020739495545001267767273000852518517969722311418834019626995579347607732826983007736320057633487396225616869740743703136243293645599230870783716701484685171946830238448071214255898746145783555375128594866219431579523363669724743818351393890548972952773551464128639052119912931886318093896945235463383859051484670139229321301725156515613202253979114660035878502194440446988884282546963542717101765529291207877683026231566120347404780154161762851632287785948379620354223344388618214696369638814107068124982544761747188053661541419223824991096485979837543463366048457793124438663574229608445251231941254569542721958494338745172092807586154328434184842363771027615033541042512964566258184886436516784095421033502526543770791183655697895480041706167713334583345066784592034927353403171392266714941847686685041088719307172614099984463774486396558017222630292996126729763230572087630159687703333511052211279561173988299227080987605391432162733902280593749650948792970327986943198311843988312206201779747275689211044526914930654067553529289595923518727488388707848774426137577544857831060813869947347849894711232615122422591184694737787802941227734053705290428652947248700148343877470546221972154848782050771392281483468829916208250069012071599164993736722776987924752639386266851968154083792052537782111981786218132392979669554343217423139528240479822123947382434624303587041818379570759360984232238763223344646395503171825786881823787393326316764959148068130818177651886594062363346479117823044538954130532033774613799867685159916616237722021153422740619858887133698646617592231928651243544718154399614223830968164551412655736426077157098294296589139933746653775727573315510903244981867506263408778852104103533693406490383163380216735429735750022425076149347882885651149544975716090466303208826127674760147592916253441943033943420614667959856640131982755769872741728498765174151963513574149147138946369225616161702969341046920524381842425720743362509858464651274755372327834641578371088299339582486064411522851462203980635613972014537196362430874837183312312066984722602244985220873357043981178377049742845332651924751405284675084485624614143380445057282219989710041733756564524009038422370577199850651461615791492464731362872237446298909567469384013361265525292956281038760304123454872206610735064329662777835184545332584819211286767099454569977428132163280064363590844804685765720045551121013719113481314484755954137915098328846109139882784169884247127969027977617276144506016976039965994458163126432990762384985290096342480042615932318687172295165508203266662164957194010499793404518898144298729641844924837264364786306462038713223977446866907322829253646168457935732408811597576321812532676647932290404053763040015981156733615805006590648007134359193789157033473732928028885695280111792663088031298815353036522963096149029305189229804698435916903107040889232768617111893610931440975574714831714775184015212592343388117570771548895822315693778944084454495646948161589456118286352691253313630509460553612819445195244292794029500238503245027854434016947989896904825388145805874527178479736052285425985698785774966965683886375421377998739123037678952731319572272520879949585895949993746741212927744415010591121943089495313460051740507931003555761322352229852696094564195238729977294552647634157872942328947466926652884189385835662214832558530466690175244924448602494845670439481860655164492730229814450564470675988493040357037342117347566850933172253943449786670906896791644003973568648117269250485727162220266535569293188319034946324937535862672317366677531871524824557483971199524732428881072172537111786021726466225437220332281242876591315231174093653633722080719374093736705930775979449179567379547310382065455474716949112963389279028674013681951341246674961172760645944604062728551912530934508876579387242867831171336224467477846141794405351828155103935897296352397750702965208285466875119176245777075425239812373040294336483244057912167133754904297692454663485217877994555165259176842365486467856056498497829223669308240027160414296931697039324473112134221884336516732334036039344995837998838983434438854073273925561268191734718977883066081149352419211338114038859931762869326902169378661375640330532473629620545705335860650636507261652096140999930791304584751598318435748791413808881470489820341589584475390827328429653563130182213378554044093704511866224840130966177535