77347455993588696752739350419452583291937119371348569693673363050523423855934448017765718565619609972681197741442579437221952706538935759849564491111882490670866655657184445017423207340402868497237539108786982979083565017984466495296293452550857084285781936506994203548806388227652798596587486432174042888904151632627304928842302905776275672918571624562931759150905454367623812346411582621855127730303268368381993647393370463835382604498851609154457732725796699760685362541122165561979506323418481910205700327331529823345011674865454766169261730217809557579406546717472292942328036730993259129322947331733194668167189337537524156356109145869083638551655741642138326988672486675733668761283182759657154601993468752835314370193882699754057929083404453053292956625658911462820820132346865978764646748559484861077606403852302717522238271903419195944093184369083930698414774432349271864769869788146537825948065574194286373171848465943084927528499913893152754276582109779742414304244577452469415389530821797933439582431686247427832041586710622502422858851632909685030105840407549763631415959703228400273167628566571610547774123917922919659930484541908490513252909523663913088794906548132696917552238544260439261694461136556232317249171826360656155042412832595983725880653287972069973818363051544272738426093491270161243219510044482434397028725168846374128430360616562219432935624597745173221073261169389492930538489268664529555398122668410661342314097240394505793328773236234506559669642544868392170595738147712383486812386291211498947163581631692242604998604554743652633915212640602426858966439750398714873613195334805116425260813842445061581788011313947489089661995388450663916577198912314476348367925986428581575972427362672287630469960482118476332805431600302146026467650553188433686099776544320853066442349469378378569139128436814655569537134129533957225823298208966153424257613756997201153679261387802675770779574149601338656757101699183420820258683015626452317821128325276059643894983934519919636054704287770364962635033395455292010548098819515517732986108842879770145686621554265694394869949163511529218384721051533831256848075003720685417855465274757594687956728651535911696410867238533715464736608911307552061593185345401996741998348732342566664567027536132973166873539015991473094637356403280082815615964632248604316116418828747226430133070429681058320530728745738652310548035545139931781122212302017419976396751922931944041020288611131583339480350891231830388269985378246968968791126435810047456659739267888970457691958068296635226390870489059366609739006085387420621392458355897863860262173412187979214047834341608874150930613007768763885313174913871171079361448938250413614978176102894954442148273460439792706528659906403450543640888584528732394622308259773426983375830320078291492209713840260733432771995146283119570329384858350178967286590314803536647050677263616406816397655507814149897160887855137309927859337614756982669041184892918997278892189287823865456183401571012821095919496417270113735893659762636639142998411985953760812859787274074939384624768876822933527967379672923762393657329072478698884585451382089332954336946584377350347123016266447062316869016109382376577053150863201673737897269538585310393712030194223714156861289731304943656117917798994086179388235199599615992796257764534066743792655449585690292778829497863063182002915595158995363581107179888258225514444835270549697310880297338234556427146115590876861728929718637314196450146579280310477851826749262774080303697956665978015915909911742791766267185517937194254993133206138710676517236197492027238358112429960197216537266766001013276272519016854350146017894371578551133424333355830156525583428403154414447714526044891463835832192303669569612547203966572603750383459936448898154953241026998085916176261334646723966047242193734443502233471460109717797220573298217184153365673901014762336536451761749553179098435716301266697726744929689724643184611013722782549196903410313848184341890983646806181048357635852595114051893982895813777577578194831137418034697104885574653714702415198432067788185148175658287114346520766429433724376616175506277079764341407354252072066526350888893328162449030863751443912348757488901146911330184368713323292123457594009674563959423609584556029149111820418514463666408158338677507518054149003835680845232947995578539955455939086885292066430520496371194072421476519398164946843407640938950151955453140561096848697670174295134335094808642825106155248287048802373530289243466748568639774156673098019414958659753511312941782879992689797956143794319851463755864099374771479224667092130267381876597178733585980201744164016680015346055670087664152674359953006218341535297023894374847065708903554762697560829103761308363064318847974483511884878539193060430865624739210402637614866168816920403229327422463082254530667057295516315184668718772422987858313366983456841813341467362245475062357317147935005334673683954577736634171219521972944646838883366697610829734332470573077196722978075556443701283877707692135493489818971220146375254478117602840288886645147258479786823951250398602658552729363776990576289850426127118704744307883487938172735251454888696935265667502975039216060922039114668493717526297262983440997426370357577326143306448854363781925653313135785440076258118629186914057377105378122156142340770325837231531173152640578185587194631583248917269155446796105980467477620851237285152831536020109916143301300812089477337473891213929490463436324555947304932729305558803261819546990517691349652029284902188161783591962532113729929920432154376908580391988365822497014367295465409759855810153589531736995198303963730488426409089123167421496765006428133762474237765777734084251864021179451365243474083837158767107774894143140361741101292362537245201127526270655872812199935912361819642322522202332011404057618850264275690036254919784