317012526958619195074507531398043981506591343797789554930481369508878051472297569944537266165496286853730184182295247542627521919179054568544749624905363416854677409016587857320560252748254192994671358869854458477363395278820036678691131251353833205412246269761575950736454691736742387547415453545633309557216570343412648946394505439112328654862159352068806251871521415374993798470144490735944319849118422366107635584953953664356222744461486104722240560492882362277063436960886585973276574830350291813584850219766239695795415441784529416397721970413439688190761245187096152571227414554569525527410886059179894873126551995012353501294335237416377638526212634625814020457294837240676625237910572429119054407589038837244186597329196662168693481419150895836284761250695852408651131564752467944437588609931641124612458843997000569787979689312979461507886829124649208324690238385399758329302526132648720060575978857940368368766475397559810621203521259761363915317390415694181683545963546444489263998745324629918878316271759515015547394626230833844785977181782991989858498765550521038904177870790747524326785552685005894105778034565371597698059970169261533695316522551618258654284670426334109787945243676936483830314775477366662684824173004552931249443096519841765994509641189266339625834416592971875285359422885926135194374305967167779147845909322975413705390268518584807111806669883852378694218776176451288353251417023445726460193811295622515853015205965475318167366340798063768498987172677833055881743039703729907319583933704517261472807867151413481239245184904682699599251783587444626838644924942920364062780328829487816186534545027307851547848515152328910381321125545422358994445325073552121667411752095603811381689145791819024608157719966605583695113591910706161494220960732941488354892766794968825592722378567343636912429485695994393221419964519469844821580848474105497328607988475596604306407082456325824763650312110271640011633820441818681207316298136955592319526937290152819732714272961224125358511386462898428455296085700036756900534753984631478850565991566259017862860503778413322257579369573007621937121611968388830789169189796114653924853764795406962690538031132653043185741727905588482734522248535672544804327697081069024358482905447365070564665118567692335287395728282532753495976326146967703662189311298590181664444381860848086451278811680973738406619547743894488347035001558686609103374572975147411397267375401348739024130317610736556413252533967977994222504658533142445373792962621765186064766359881102148813230992200974786905701171541958762154078902512794392337036989268299268892789809431089178126225253275266244341559317544077125211438943335461518742703380697024285327827363721619635058699191126335066035764836204640207430999110758526574337765637072132970852069765350813527754287978244164292950332401825723810048375805955096604318720161986284305487837869348589558128792786358849108370328018895597309017168444900558615933223697568550219443094687587856525485182701313965391525676558832343274053576978447811195340786743143915516462242990928969616096777328173396072108522702278355983859169340701128008653508490329995370260186246286720469190979270503805185684274137624344688786713008778536012907394287050829256541574007616968448387332219864118277884539870028019421671665616291068782690554884822026307050137724504199215174994376490944634293843331844491002000947041849350686744918263702637113333589774983393897438540943708068688773528380791786807515475159277675504147575538539714740058473023635290473289363987147185248128948288414275221569788071364745358894918008302257879924548444716813209309818770648721360106860151277886596202015888697252746316068873066256733369562350186395630775729988285736644616032658298745443923764386696146696981446997790331880576054301622994800364316974431433978012820683217168445437524838318542121231372450167912472837855523342969124905059524854409332196587846425939717253144213082315013769242660474116957993775138994520638489124681342012441274464170916616509479823436563257792015399719889896614729984735892868565487769520432802685725294508180313938732529731506779443700958641636389483132656714365615638148221609720319234348242975234902924048449881029400591378306819289693812722527090266720219317471437542868258906311122046487850545287919577790392611778603216850934466760527153318113710793128823230029278770882094331598993755950993406811709662849438554955035371981750881276261730228714806706632521934722784653233456283151144046507516949937427248955748105617642257254535058192250577084979156751686848857945705362444738532752187461893309033524205949297855662569736313514456159819118648147163704616204097437992566616433032493117612784444548430572542625336841555130647946270512503106393058949156374849273491106512141642900794887916106606775266814342880725372660246266371265641984860678593445766409610085151299687145006357398687382049795674566314519756104154001151981331748020514552037780796238458121275083844170633396319205513285465094627133893647572327191868691476823392302226734650300027527092575747127303243747331116848706339455172125907443888224318792281192562494001889116477588079472168171022165163264241983347419804543064102944338537924537277825099952033783032337039623036434417761187005475755273423041768997124484469186991799948908839893875954180544758298962045372263423719754697163439325021816540497986642614758665951625339962757284737377938649105679139791377893482454004579721136276812621166081773681461402942164426119245189578348251980361062974037275385027442585036898008323425412307053765861975447722776119692508236588773305538909835168751205357309096871585222284198615506665058366445880651782904923425665815909255982822424480552455572195377886723459490605123115111404323600154065743390586673299618696761696491108424138831573269461932494023491882791518202082062131454723924302028802676636998620