202147067232655163648845916229813216527833946534980577945088136977036209443108569687965424320484156925218291420224304226659766604281897528475111287285922804128177029455876695975557269328540234874448886468999316912485147861311813156369811746834138395143962157311212379062397911790373283489502605468806433434321163710714999193402483416995875370992649601912911326840458013509940633742941450641936651996857177163865358439294568022962022809586299322306361465271137531546440796052413360265674829898765686496197326371447403964854280187287738226268763249110381168036929355590692672037778467834199628538365397399664808776479737191557297957568147197583041466981410623803458814593755773448697897955212948730783112990317793881237671781219768026925485276628895712319292306314102091639212565819162972040498640282017757693949145628554921159102858943544860543425515443222368288420461093321317761281265637352748994532523966733563746147818957489813895427932617632163259794340278276393149384153967383230147835344789588277466805437730169521813845524023828140051223447930879074410385189442793158971032702299353476856993348152857764846957734941811189200945285553888589050343175739430727963579515498571611865626575074546931878950433080962866999223265519651171732777815495684929962245951838860656997898265669002224277418761460324482127903753819949674366279854792538017197989590168331809748564511832267774181257395879439560666594066287362224531490664336188601569716334392614587596138657665610653117585415665476982995143892113666853365159447396761943642472603426369334811878694131300723899624131062541610949743982981153469452879436737006725256534334332691138025408377934872945857143828754867553394149316699632224915254475112750481191925478088072037214865495981828055818694391999718616557173211972512092119762821415771245815167495471981495087653965974659612345659092563667595050838087457539096092065627849728456701496298562158404286134755514569331933970545235907380341315980457937339520851068842898743779843037361645166693249889523035238549339893521162438299688372254443198868238587413826723881224205314034058781949010273800921956811680324264483253559717930373492523458449247125535776882945621465553601223177625129904372777083745067957879133507540408148885038948370744967737307527148274520899014692895344186926899390959641089423037315204625283568123125686894081285078145939500185525602702984928431243967305581594038696717636722799387747936370602538406861258660229728828512905846401290881027145897855591175259838718608070551255224726194027616822432261395366923977714032920232695916172860366493673506222836591262097752872662210971004255061501567341813696438783995690979291684677782825455563636793251600481272458785728671328746030375334743797464422587453428468064681944894894166221347998446292230510491686498958562026501976843235946234174202466752629147399388772083096355459515275716099842886127402307197081881874362510953072621701095482130095574095679059155938827225473719699731242245258485597863554217561196204437145324042944801812076175212869644431929391637433159393513184489772065241505977091345504330899501952970177519454230922818573197120637677861787072398499447874546121804711843479021277389451987920408813469175146565593514249946605567346442696258738530938356573824555278700363472966144968296307640153537077001493445161311442143684088343194834037353171912931456763614291178540602620676602813762474925144359954472102114326954449529752816306269951219084028299864981646887952324751458846059550580426565806944249456973681357979069619104190893763204571228778646688113804689820727575711371820865043904412182004212989634841131839480649235761039724755672003867758031189864878836035227837244235329148488999618988272342176216552740315255315718074187481309018639557957948818720032794108615794218012684077987548544964193387837484972653359164944762101178889770864061724260340414291192906771124208779116491334893738214822278027928878341371560344017416374819929578647757337718390643574944057849534213973755812444563429824930339559271121668658479906753459573856713405015457039620773796779591577727184335956119151788750543203987781362634225921183519058419432369428890192435807530912324197472468551442681971772571663318143597096106866969187486570855326849934842517154085844840886276565284353153048257881116948283477751603158343510605988846629059508136067185354391890580256891205046630363143810451362403910112493978076505469693461995203822517492025894756632147317126562974075696315639889528683359412852373752591323216597613438427957110937867503403529883326493506772324911532626485668541937664054939179261641257275557958206737174131452648591406226159694445414396832259681841993098791546807632285047814894265836793781214417105604577450965037562691388324105543504079703482008963694723663317434230656982916693624125245263230424211533738600278527751402234878970097224932613622389963534531793338275248377547264976033606886125214447867497512489634724057581466566494899678725468273549728751622446027949885167166574265869025527131176249084732980195287995483465829436036363951778344032279056024541064340893456474895372991397796837788374315394791935075009606837329871486731427675535719432812564563618899613442303218084418101221676782509534831937722363846979167266691587697829957632146649140995643389031272102120923355169030437095732317640368099300527392875099858901545684564219703532326545148026566155466036799049252834858108681436698431349329620895038085601124147921476895174614826968171228995351146174636588627198754831983872177909186813289974626020673737265840777697561116235732287562402083556731335410621220534663422283300869843687831390847675479510920261323626748375463179808345314454284170035101625693759941803967919141012563911904452941624601672374081844824295768314436280447151978462315923647806100747632706918944373953259138676052237200751567719883442183493139