23045117854555647964377188453258795230278527404232789603952195181323476273235182383831361043808394444373534127770708061299419440866931912752836520935994661328377047842816671452651658295006230473253331106741347733657293379215566325588325421807855615513400998887149941743268424877454861455971644813492201443887870378315186438185537795440553021768101946433307789308046819047241580191251449030207364883338667680268243776800744277986114881745251854637924462354603598037299512945144181848694977901304285586187426449592568997707580763045457161858226830169199367371797417664265211095704343370869316798529018267819351967797221152579818853931545428259595003911988542079983927158732535707633868296687531593249814798332853266773933822457023512651323339375635446754482121973297209640746458762089874681899976269812858363317336207363534916592767531537215071856325378907819259754196907670524517216378269939614333897490938622456531221932975404276334269584347474795904163283428797712431098785784153622055735506189104202629653602946304493271529173561280464728061570736432401995166696555118439471549795266153707717650267333486924431955424600773228267092869347471024703342986152667296268446281406976662998057437762229492438362335720369599905219478198866682928418471156213119773526940020674743897862466620544333688584139513858581195888080868092391133254864234608567347945893307930363376833734150385045377784167739136975717475985265897868199905521972913542727960564143308417207213916861983413552094273079445963708265324995664573320847516589969531423780501456189948609483825024973628488973299119092536174183753417965815179655626573964154598001166593121946843238226393456899771226978787162209946118296796577508452200131128934404851058310541793538783935610127022512862875040501238499925350542179822561684657433965487626315376132208027273132690228501452552016643493320351887053764135709317520649393828928787916310574493315623326663897371705147285736376538888016205840823928421995967983647268799263654036362558625739963116314979912993842713927400777173638315262171072882440463136291214637814339229426577878510706956959790854145194131447108004305690286618215307495962363347507288063983831741425498715720809383911391383175292866119788889893823457723456034739347656816726087903278676160428158019482104354316021318993811222186632683876894242068207838965368597848159353305988999524888334845477156737925344585870442883739039639932327893407307893384292261595874592586027487389821161739555143151773379865741107003214435668472988246035239993846879251523949064381213974877275064096131987730054293733372593916428928828646767630490550064649794437182233175563155286314928082525920229268147962659710691253466327646356475639103516352968774401358256634501421088023205652051872494235562229363522053707548724105237206221405887118711655379971876540670649024890454558347194217326997302141790814317566270833248773757743282373429777523004965681391363166077977880403440369940789375718143976402769804964562922171681177448899183787762307598780690678257744519196587880774174105325837359568147623280457430629926655545151891565754556073219754663835391095431376982121740305037874949478420679188452479413920180011067295294294183111367446538954878952554904217891865226640328584836797674573051421287630329571224261474061351912136361343688571936782373262822316120902988925215017648314855140974263578764638828112678805228703877824557983293561089884493734667665552031342998262455968440970902379844843071835197526507450302723801026193081526219006950836222798168758795206768235169852131151897979678011492339884120531662401123103593649251829863419176723378983214775209580479355277368670769268460660349186418182966141617229874090799713958312189488483881315341719973515527590750196568740824816561119646942693857736341320426949425215104919388193715388246733917330402345160213341349460495790917503672732411437513138071677151331803573060867773181973476928320784071593453877081405388501740950232441076306398157657186751223231444294197495145395952137429798925103354537733758829778277060513331582727659871699069271186719787184778963255939363115722913599874028439852150379007760568487312691283416952741373851883711487154730985967486110958914903505236779072230440298565279418036877382717507892526967800226069140775955972778785916656972615507376154670414105569204406176075213759539944098498407476279951605688224501613291934824867139864711494634952355782498377034033187141484581224253361859415144358156258163672189107268693457643372049033732399923824715859652849416512092458895248368054753983930019507864869962448350529003878619951755546707451388114141665574513538836410384834475697696111734503316444897288965993541742489544175640076333956083653650188994109999747981279160671452645410210454679899667354858705053754083815340293070721897432437115641641900293707160545271249066724065215303241936452278295249413865688147591188368382877042496875588881265290932586808319475219108452658763524170735270935759735764158221876206886269828839407203917819055248459126991481412281155418586662640108022426726974910354877222615993431774042101089714925466894203078788405637319327066658819569649558406156092461098255659574468817596624268426895827987848012073213684447871401849546519698529779729759540139796754175367861374279953668141357454059433622820532697331585356315326870797038240410370871982690520421049752255428471835146227550761336535327272857179343277021836922384723335556314378275452752961663531360479904988139213995243147153053503670383966015451939146590149523258512867073674221571672753706849621672828062272663612100391584955918538734259944765172174447576972827719894962993432416057856453911258851992964673010373694950384570114453583427888242269319722315095997136366077044157399064602876288782725003365979517481175680339794730326272817997255432916438723725392979546295181053773683495511002637999085765056879026225249302141812710