52621431164579383677857677131557014823142141496139151591040554292214239528461378875096533528746525987986404195137353402818045924994540123482521395281562617939142452696106293336786914295337523026980725585551264380717585332353742151938316365779423312338804143617150701468175037689517771864766422059198925248731607513690246999757947503336517339581149553518663590448840778934195247398452836298926781272613764734385182916615033552965047962362214245026255065522227551476651236039855132339427399444376416700616362549875184030267725614396911997258089496392169989947168124858650788981028848999573701505363594805147144168149375225151793930368461727597654239939293760776184301514520012963987353471828013289435669921728725488528429508153106925803785175766317478971462256718757233220472277997671661256727580238155929899555843532708256639637967447356208675594679868663094620925412592303838248449190496796221741255849534970500370091902874343481545431618972531893408488830589292197816522069715254778569364319085036145010127907633523055306179043744893441687952655649227478895130616783322628647263961387716726161307476666265201477066982326744940687659178574776780603535523265146752367171141735767252183102789616579628773654854283970914749433191834196471225316145722937234139099691868739678842258382831265065966584122057105844226016173901500799913339957117583782116850123296318675913550262186091154220460647465868877421778355514585652249574821341413099234710718935053276571167118864767513262994948393484287044991290679464246631784774962224686191671464096064618163168314456867541070209699896936394627295753769296645578155425456098925538268640007867892903638721179493163769127250330772581952540734959367807428228136455385022816245513006388145945174672147890120485548504527299384309987187616885739486556698851272553332610329166904630351109693113256033623630452735581669032691995130724561783565580182963685329910417259209982110313288045129411898553691533958608742432845932841585476766038725350788756986025257786670588421084494750528246219279361129720980184351857416974491181631828490165589521615854467301236546392422495474621016165780830484741209582063282787990775783748227368665931209419903715911191444188267417181629215154924069333808649583822743648794103654687742952359854677135623310074229289663909622626489144111485005754696437081870579565704932767624169936134881174127973136436034695803572279186741679769403821006641942436583984762862888882528213315451536988914841575514333273415861121283341942235967655860278258483887310411099578337914554060822815274041501891855685002033128379896256768115579915490175821897694405656095065733822286573430512746548477223558522212634422217462474922418550692882983619402705924281544398738835040872032862233584935918064967458376897163563928538527192768992366579191139091188090085550861852927452395512733842368820244297517606736795802291143505321865876318978437129240807875867115350669713725549197216686722977516576668511423674324510502106413629352795943558226571018478281029182699403740945447708975144267192100687709270658796389542124477014270247783359977680345291978728451794241129389992598530472814842674712454972951008728141754082711128056826797542066331401617866835586692596588444924563296937842186368310198538238116818944337742424694670725898129221643688116250929908398848386726195372710318176365689408377672872647335294221972870419128403104513871780602321736216433598583809654686878141514468325170371251513950263704910635717000564224557804521770674425744440533774515612223255871461268414779156598935468672215939923138301264684413643212745036076265578849978850325729487214285107174264977157296759139478948248149155099937473603150654125243574583496547558460679063914501630313552737700357621375331772648263446187791752653119742467289630644324232682595470336844795130762919291395380774334928615294175939979191255266673864994499745959081710498032256418521828225217766717741199029962811351338587048345112316686306636832159729751227586617167526020575796711643751766799763209397930993386789713531669291577878541586665456149465844772765333733027086932864187092113665847761828299845292357125255084194529885309246616519178834963501521633107620082473479955644969342957761302933088418800523998438726726591817669650171527729624388049288391823331354907611791428019732929454758717365802581361075377450414782291912279015116431899552687472566598833454154197265229644219576786574822259321164465889299824602747286449792312924157002891027338789147385326010940744212079533848151203291343426997612032369851496524756308501882077763319686436623959070212853015141983585385734951405188122932902600425268783179351377145616855270167894739461331891495776439643400689598493738343780055816775169689141798070973103103479118772958924135685048995185235882348609356326024274983687086679713892239427282447052961464937637874612758268657552701170662736611909301191804017858091595785464366920642245873524543997247493408354416132363504397635812839101980297109573757560315509597598962366825403830188079391544367360132633307697617960795849954541922584833491358372363529976422432122518850125551202766285775572769589501678162726315465511053672772425535765400381432751175710875749364549877318924254464348620011628559298260941833797511345053460859917576370899609738782576767910949513159719912325145140782418594830921724430989702314296213680867567627274674644973290379791052876159669795964269454034875381450617402433184039623598792455179434226552543197949756738160457048263423686983025458272950815241004856527608332871222607767299471111894926159396263419405584620892469154714493335715547518584394942688385494175370699011481578826718534088843642856325862444857799444514943375746226977941723574429047924524225194275145493744141156367761696111654845038229856898069869472558193191964216463660017071456856677291562526594463966365