22655580141432497337444166512624113877931701441610685254390339865568686325326215878472886879733927554820422621074736181795806462212019388766151168639350661596890324192159986299921412607870391670108918529876657337799629041227555114439194031671844357019042565452522027300480454474734868166413850879463035258123446966315530621947034540445937022649160807388571165714987145481421430689938831145511153895478720111035332370965471272299192876275823989594428404331442479156336946959879744886273292920881300380333888044176276298941183840328362899272169609144697679284034385490123158310870116997348885651880037362904749825958323596696662605651245147478116907345261873521591655927948038488917103393846329393670845629088085451666491236781272621215673215664965470175886914755784312196464735209245259250029850971028384910899781965819153684424627920493489466221224939314048662944031352645227908192283231941111412698207672984285916815633630351179889261309576117323565207496637642361859518494367390485514712965394349530352212774565458195068692235795739877734964414287733614237813255568680932172635402223354636803439063979510924047254973585871699504827948092577391256239437183802440667474898149800822384676215129054433246920129754773621397583194370321698780398585734216847084384486906662556238372160015498895787260304323294378267402447698523908164226178568810311256466811186362681175786059468321817035525015526169913220913972403918979477781701221233967696946139079730801638515117584191741502858634993689529251361401573886536885426129886509776409161937156959292018495669539181629101598958189481942950339911834346798663435613771921516229496241871539385397515817982947683292137861952061639025803570343883832188786268232343841440696753245145268983572123947447791161551827483741522653270281769912275346422774743193539339995446563805874730534128913043278725207665797565752996577447955150194433796736593270191947102696570538072632480132761690478038264491756109477274045517417391119222197351685027534950832131728972899731690384015921278549936845255889441094737392123415642654230284771348318079165867947970722679578011273646981998737034904096438796317142185345588080295220820223637149442160251064777669328004279683996119396313101557524770196021749767174124828231810541772945624963529466353893735872844534835239921398126280059866468389416014690284099124184167186205489773486847066106347074262836891501646983331996364103211816621428683262243998489230295161315918115369123698684024652156514002155166638325049798935110359619465526821288716668288882236923784278384645201043222724565089100735117998364663319987583563828445211350456592230488413532387945547423108385033708390169682093740246366904917497854023116310256323759074622269479036338762802742643147824963283746620922238849178806254568035242513645089926476785974483334880932653828345777184839470010653357747681696564299410147864810855613776243503846265274602633458400142431709971068490778483344005609669722338213420132059239296342844271871262371045313447794531212845396448741439812481117869986076798223251732315189132687536487986798609127798861966662239132356081566851471024534089182114035892951549677635194454817320436949054691425361607334697050296812897171244543221208134259458981862974328613404793054817739152281349546412318084773394221812927473765973575180529238792234891830266256948610828209016873410481337881934164421254389217326909257357285678389586293496183612133552426321262550546476126227362086291807124735124357318314148186785115667699892592622720475013294976619975011215983402898257116775329482407791884632254317400023114660612975197818702662504130397562551305105667759954326036903331285374591538916785703271789922331627432578198142256584338103609112317712256673952793664895502224504929655938115356982483607293322458163562321003304817126734617672993534664840205183974117780896259023501356638651291115847696488684318774849006372490224278940483716418769385530283302348432476893243631721863638255375336786295697431814589522683842225450337195527212296833537424725678977370187739137678849125350757904751832650108478268965677278879132228022204188478399764468657913137224609922703191689378985507787818055425291270454212868247155819567575718336055576459620146599258606312681032745527943132925115064491549950454262421676098075327217891406733143799255314470391133147342483734137294085977348129313628246539688002897372441718082922475994473749286689763383732258447541704057609305915583891921755459948441363889369047593353724102945367279119358222847961604657445781118467208184112145566897064039615445799298494437131255620753454163143259066247632388098534301687950816973446443558392550024547047142612678965452506418158076141453937478024162534023993976377187855429629659855050880181018868394861337659531790681229545794872418467319356475069764914054746651392278863598654792901770662518516937335557639185150171048007946536938501928522535867772471278916343845549439514312699595787095998955226224037526245061853969319585576039955521362261572356781522946369444088208067375185185213998786679965481397413850639430284276661222688697598586669082496111956502801562597771436676887968918798509179646581120534833381348292286795924221248879872665790656445545985916102501268667283276525056495636057788533972211286317920661148313087339412506804472916228229772852218464284522345433081566136130561225660283135529864833683814354650576563525154945396986581349666046368600523039098261279459721567555195096566321583591063353972252583204378225385807226224076969455796947261630653039273942382364170392703842823153425623178364126192354330266960679028432741808249650990933207769261752068459174964899968766581715273431747599544401279318456587166118768081919963537632689966955808189052854624233815445940389775172239658419976153309702962540937052563257991111947281135766732718406810661319451517931999438864954945214419332891302154937392876446860