31834082694682723443990465431256541034499554919432039262380209823670219523338580488941660565946831659219051545788468073320151768303591197648014891717916518568469752069499182339929263830267586551328671868427328791967446971486003766553241821479326256668450784015452949107979749652196962042788459454945758779397305685627626172486007741346941269467448565181986135371063535115879861837352341975556541794198575134569066569568526275050303246645638496484400945979953630628978915375046693262725489144731175497509506634398212855976173381209614412686486613893735157548400974519412535617834981011326139727917705390459558619782583739994634357683782209332564025739333294113135731477846263773840503463848370066347267757789070149560433186385596412986702803028938917204388003681693893951497669712878360715236011582231757635791360154553908167710513982219534581876979756936149918936587748697402161410173179653018468969897616577233593546286194623533807463913037418484372175372620293426057646501217531021709999174687412011612609207252566401382125135423265718320216051534686579857054308847417852323506374609974348738795945958150974198725319833480874650083037360417055244619923439778153369525123043602719899255890084447906891293838796608923253537225046363533363504929078422050103479661519747597171300308625242747398530678047575258211197303597728203263848585958562187725696971655384816118406057901658368059233813982348638114766490405449314324792581345029624251236183641463539986148662066966819755954370265851737970002554302659717659299955687889064384118792889865844839520887156238863612437521127372021280983543977414134020650009670376948663989978560587131146666944168508696383819340717402978329468402809672439029618556279218445446409337332675678200846611595454508926218502786252529817258814746983638960139126864703245281612598663300899023683514395946608242693511163339594714043198507772278963107577540916461877352158653281948298394957127334488075621827614417198585454785480145362075891347434699319453953533443195513763582969927105983128272246879547831820835461424779429419422018164686323491745630686363404190920427389865573262323041226600666725197256115886063490498254751819419824949158922930927737697736135422582496878341846576426747012924369396383298489071356519595060224519359878416575894678422203940993881135566434005322189792834674146552362172441520524046685992594094853333419842457130913901728451462585809854553929056961469972727788709141427374759665153235108398932145908479817143912947427856894686457437246947105884980617267442286348296450506988561291743120024904161622223261205868255907382896731493529495383886585959934057165745301442503221694925763570358565596035159792757980108337431356521865808337111432967171386636311163689800864262181578539471876512861104059689691796389818327634769670969989694212091859221925276282247897835938641974788216508022191292552387091017948310417665908285925273510319994605333736268237945335111284431259104840313855309673684386186566525279789234335867739526207425890021458193749540856597952725218259254971695780792250304481733142667208258898242260537495283136675794792734972227889947154810413404686877915672118415818285527434244583513889898584547923976482995714245616875498406936524164991119140116991275219714258912670696730921959395901851826311650145335268270705529832469302474588795400108623456611786420673370714785547290672482542235436690998171580936854699024889502229714034255478031038795496098684393947255124244722899905589258604789988256597720388468515028717664163904376161203349357107419426059949486738912049332744126745343225371475475199760090435827660388497811155634787450969368358940548383291091375884684782190223038964552141413891642674694595498461175846007935785065411571686898435057694990575505193430014363654721973079550160754249615442489265159156778039701621319728014532359975368970664273069858343735518293801667056918790523494306988629727458174159643713184339384099826495959525257332386191666937796199716079865861776962250160027927114294784157950453819274816596657492472646806279689985247633021868975223902867139629312629296377661040232672369128291753218835969674645132430696088249150149912770228503048488715048844149317048561463577090274200799833265533579537038455532390326449282749063395756520788307313256724941702611136665805216873276992883205406240694381219230314114980358046042582125976662901640361298542282097029094483765091938710334204142314915195828110581371627259713123559435427160228609895116326826515017414063731412350357673295863507847892137660624782734126818466783808397777637370813837698476024176128967025373232739240890912918330231497506982812952339391731174535263582662159866914537191546653483736286845864921356154455088713464497779664539917972289529024854270254879257787076711722668274182684601888294975279258911833547856726041352582117230979180371112658949431344609438715725565638137003618848284785109075419973777888585501473198919346108912227185475263621694785590884469214327798753231811999313858196299394814764570134311847789300953877001052322975612435676865965883475624132820129558948817483812966666293672546853699122937942488110948536871607835627030514793681590728126954728158339117812791291401725413395325625177013520747103982446696414133700729375706705339027248019539278775665838923028365849761924381646872957511135183359670046832856403543563052461483583430926979541195736689942128453067861532609083473338162347735029772624881544215474525296752757995767526398767617161167490788292164531267123416767019530138841544366237411836958257545680104802456237383408577135042536119083143252208723666476477821742236386536434703582707191004032222817024073243875495374984824764634397470546658339951599974863942383062280167765469692154170657928453623954346964729911253164094935098542711982473396549811807837934019515814257720289699740621882093127109313163899572471476297613994