287236567821872591893806824345758272694293718355314839237210962233954271587760412195860470087485227836758934685213235859652955573878545188951459489274378485398935143500350343468751124463204166154124286020735336581782451754541004301586175113499515246934446056336207402193538910702299778410357900972007220425692898892159730969228820948884051272647075612772339110707554170421117602178725740132732586740260518197757812596668169583419801468528783418842943157803812974964855107055836259236264225674352141588499627701677775242756428176849929789448786935521080025381757312038816581798286690901470214830682615448543950128825506484848993261907190887361661659108237848287013909882297779665868227183850570859849809705781683151875818426629114695287388466857530559082637943607245995769457370323486150420942975753926546489736444886750478014707671841548850814635772773258423676997168471624774049158587782660452025466153197165859080517627888357772811920296593653639219622126562448822146827562196115628293314598023235364335849582597582495298633981067134939122240446269702338674008443235063874501754266713639796792970326715274948513194576433459282816620034097771956108726608836414571393866444770287031832082463589097117471348868003603640929903892405360854858957252210963201851315260919529164094523679235596939759075353844835729645272514818263108294586060997917518341546643088027865607916093592659467477130570435967515175893775402091783565731644513470037779648892553243758761556286609977593529441845248371657130338066881211335433790380473387261336369111813047987797101659771084618943693755222480914244955895651312599413548234209485862533178288025900364059626880515668231724912284824257114163326187368271552713887136473234128195654167792089824288232110723271752821983235671605245619303381999782084658795597973937259898916870359873770621862202465883595900276692128932476072165702339549304472876514494099510485147953640739209783259875533755005837536898478892820676933126312712474595844378688403106661762153878727386816739543521112796519258119417659346910544264017318162181517360968270620610765134196414383386619177395064718750568032217475758118844820387638615933251672086192941224208902338377584252164249999938342346930640039174057682024053644839059438234233527512156662303787275134180546045155307115713262803895351375785426520474423194321317058678856148767656902187222498998869178654849550262765184780642437327906255539208901173755793415322924065470482642679870201969688289440814118570987795197745961813325987619918733779306227608831216442761251185436704873906648373982766288921481175956408633647238641181197065568961816648597470217859878442932121926288718239669212489528474335947778048993414005592179618762469891396344387412269263664693306801280975773475484807501839593424146242624730038303576765526221839971007541360154946169725621639896882896283334010343680897317173434386972021462874026936916005124043022976695987097326587940391030759757894881370242097930467370661773797959088314329194092040947036916750500496134367858159594361401547838498311618496143222940112820779236965097178118286498004019129538578407622138770964691813212116499844973157944364295286252977122917969846744937366253583093995457062659732841443637342856423396327339727202873939933530551350272670874753484346033033668065587173482263121977615317456468137215892815668526102354379982038882848093312107889793745928156238556336095990087609463708287009161798458334645413248471770339849185155064110129863285989452841801665679633028494421421786101786916612718648721143982297450985080744994617947086414324962761751400904165203817135639119443599178534873510441845164178814244643575671958018141566371595424073575069706556495232539572504238117027970438767995751357695508534392725661196851959973956375442467598071558145265490776359769428933905895952055025689801549882667417659180054064982069636459570864329079875957483437229789137988346671969421918232282987588624992604195929254739274130454827296361783966887921390015669829439346024402611166559607674611740687389960958037852982869941758497947859575533565452910859064370833359818446937616733169935241774727374865198614331194403350542854262123051981886035194127080751163337184232040456494986872555008347543989884455663809373235335944243214327013977046569221002417344942737322288272331102048825348991859179363143971246248003614523881408302329309518414794835374428692949232778713761998178458458389110835352763488989602943981838375100144571592687170768256729887587583845991981223268226997187896444687856359953902536161715169973884509416871073295354988324142467864656732979823822885593397806241762204848651892743271266546589055605563736296484282779751040556311058325328861328464847360313441116114211479830214930535645370573525627989339137185802317783598159751236497743369330400783567398757519656315301856386489948016903077620795175402388642576349513998559371799831386519879242342124796788079142730969866419388093961383705734042173567065092695688011044935546837973986922888111618560279319340394046551707855953216953176834896473644333911748708290151779121861043974209366250436961257460611432444948677541732984275259563377745546248540060877554958531624939623094744069739500169462204686170216112045166039829045942903227247313052663846483351787537237727152944495023872728736773987512410104960143774119697618692903222811915524996722220778893267643760889437776590601927632272986174294129680499782164854282119070370539818965676933382733226348623142353709980396142993288625399868417946318361992084351289962610501082303432354599773758536149321984621255446526708044903877856153713196309085371649302098882781916582709540225900709849432365856186375432395841819982545532321193653878242479498330026781468353167589890973370894362935392793687695279157996431792236733870561092674270045774254623565854887270539033067356686938483799431784560460957055616648345046643510288064640958407012