309246756047520153821968873139414026535921442025837420352763112129994239827847493319226085301669408514817882650278097808118735770210493398531768373317979856789715301317586658846005846198610756583094366413365545130255013885653145293156898977864282628581955322955528485396881151630005197726136942902177277149841464709554260311466994225160435706331688026837516355782947421390074187057650823176180149468588536550597767752138769251779593483716322885936759410381234705496366947927886238632908516457854369193918832539090744654366233665791733337530510886095101626313569384424255695417832101620316127919486957733803255483252086117563467878903330111236501349045588235923607962453520747347898492751740559501478306734075896624248279882971855446708801960856258873064687277042652454622024626620581940918971734451934127745153251323493082702357077837438179944144708419441182331759306605440788543778832840079066027536863369694281349646285491915056761132370564827168087042778690504081763418625771182943217516532605253298731695169562010029529284362952771573225694906076617040328831832491245730585345851936998444499538748265236544818911772854078985162697463637599450919171438685063827862844859531692756690165828513646620298961774952249022551236792517395375687960162207426364769048354580578237341256185885190132252403916432582663428662981975588551153816913807165854729005901033106833433165663018449964126806146207284709990254648092821973275006961872330076957569839684466286190624293260353997369182468941973258786612768519414835859143742729031913856656158805082194845894676107353348124850867890886618871005284935034662937104573681672340269113555199282773988975757473681416954564566976534978787497854162930536337324327233322756590608939563124251994644626396276946227620231787662957459560812038757728838189154993318026800682749001099619981723362997659892898986118382080147368584369596987871012906162411233625839528418963345775979175414926780199066108717471978600397783956874989547817060183519553969976064658463233225706181897032913645816385798876364633126823200413959661452010486529319347069945679581434817462939634170528453366215262605096885472100137643079703961939734194172193868468855203222389499198244114293516154390363969601438673340213178420640316746611795076780714631324454624407682083769660542884604676751361097505502324563071756108260496564749218143519851130591857956363426854263420423576289270370561613033112908375575665073615894687672858310519869138736264234174269431115691135435326308712072265131865322645274782458202713340883589951136238719216064376144159605099519758476075796871266311760761116602168685823278849930623240663199349335645351265813293963197304055988495167798403873545580575692472879351996776367119087514792023144102743698125354663543095704130931571695530810721077229441543061087327425598613371279724515285742669692302960068647690847666062875540790503034478191398234448246373687237833972210361110492868104059604772642936118819153374921180952082014409718319686063531496277149758292624243068817357295380650628267246707286361818549064033998389721377593226936982869826277715847642927048045217168294028144584038213128725111561373427036502221326796964526131472506896465542546587760860265209175213012162798315647690473292332053942032019408959365807545957973493811504566199725078763671350873068973358712214240634336961429826906715568168064247022922970678284420808684139718851755349065732654562796417875533385479993702164125902990685488543518242111444413937325629453667755993409295393594181296268963406647505636197996247584908223736691122325391136686227462362441859534113790677811833856033408465185664455937372157612445532299128429674594638702099659311023782395727466474764964296681443257767851331878876771628139796752473508247789674829924140971516181377894839438181176608525521115348431799335432350518118282889770568575277262442303179582647704124995032041826863011276507693160519235393976124085968833373263527665776843529156755118809413329356637466406844049477451162025592199547066324677039994824951548490020963978874588068896715819904397621855989506804490604325754822867596486095079398432171288634621574549986419371078886784470720995425352851882508273634497731816626929487943711409561980313736841027647996956373324882396047989509572589040501728112832850645209255445461411485948405088827224602679599551322738076472260869696142501786312834623907522612480697865944082263952222813997424254515736648184516918273419524424332263961518968182196154116100270122126806456485366828103151331239450799483830982230129417735295967277203867947423419997713659757938382595865250850937009568529805484124793940694928764089135303257333099787766157489089593280733438089592314997901307573356233549210147139789358179814086553472117753008957742876356331414553175137711723516460345113176414519265134941532963133759810768375633197548566981730796293665916785012442689313617740056981158431234108524074066307759870195177808600528134802308969331592598899524267119269243587736573397998089676076819267439835363033564834171453556891386339455348927273920718874645468216148871249486551863683410279514074454199245716531768794769127491514265149228601923922064951509290693424816683799202808253153998641266232070239080416821830226512563672562769532696350915657155272123099403723501376253735062416990447179713718066759074996943122265533459331667201533603813347166842623439551701414735778843943871239878932101172549316662616075696667327881018384112588477239641308697608704926164776333828586242912237817678197915501918618646617377218395366693160167920676154891232867123259723369587294597441541104662898553146696011144836196230423216313840356069673275276986580589158926618084596918435756996335713055317398984973209464151508531858862037832174519585962881412692056252811608477692967236001606549585450416587469857779335084829579344829739643843088070586836868675300023212956265616977958011236