2099895255897895674061753375589851738353752852129126211974766093549416405136296496252780566077235129178036888665695835968177685832317177449720972477062450703858706841524453663471564390350533527981336538078261088886127901883986280366960239468258567431902279248792251305981055412073838710629591258289763154082442563815101447740021583079981326121658526775478506936857731381864226208355934589798760566895087254283494792380524314519213069972461540078967054139968246854537141813635494377134956640285808767340353776218115153338588563794642836325934049402751503528846705405817854854286955435850749137151891724384451673655168944862367513884614380890226224550717381235498652354347404330519258728754552169891802554382236759351519578226584088421612516621093346407487566352113912372490484110995941564208892375797253829454151127149815610289433364415178077263519970795104136418557186817804925621868598617246451122134811871360995288944377505653416399621475639488597902448919036644115503400673416879997269888779291219423887489115703131362726834758878802767473730692347248937613078999300261124028244230449441973315978426875868732540236451315160874062068766151372483138683999865212477167385523753562886086787523045595214858690155244068925783964068743262438246992192057635189226366506689583159541219346465711281713799697249801619558976231198982316582755743177188546927682498872187603242142933860730326708273874135461026235826781421556524770256428254708554921864940142392693642785246433285362887298859573645420235948474834272264811115270656981144755965668162919636929055759930542284860495118610087574747688068187636103980896421317565718602598242321732958022423144402284183572452795559998901866787641601844156887590550944843371919500190391655675917534228510906435337404317292608608548480139433170830998423953361295994637850753726105785374213779316787028207384591317920242931319717322582704793488990998609705720325545335307606140839379029463341187481170894230898436989432189879822586015172988479209772679788440439045916330634545878131177484088187691966184284111130674763437286734008413146368350450155013403746880749520554958696263989765409814712763977122301697409888948746532193447174995818035731479187411161407935392277131865789324558513105561789623746933043776184535452884488389853724297700351571575309231922226877215446557593385198055428217684412968062649263215723439287191530835788623222747837336912418214791856049756883866037416824161248738653025251951140467758874447602593370091127020800385971042188240772213189657952485710321103522319647393744824379330608774196685265134413293219578100702595332115203615554473372393755626897486938269270318770112705894222313324643296625105869576137462088786936813861556048209239689372890145177111551451865422959277585541463357352793135169716261549431731593633804463760226594435130145875104444129753376331092315456578355668587955213664576763804816571162078169162685555954549576024923051652554252092596208174662188880430039506507034364367594395797984685627066833217411757872287445596877898510676625094309667846873369297458388379479608416849945573573753859430881425125299183048233590982333082972899406944361671777180827135647159973211796812583895076469059904802512955607540312256069372483123475654628814063871907591293386117311794643355453434654775277436874578985375464278299470761688617023060463283892862257438930449846128175459692436897487280248411892419635983795913079571880535677513962687962845597365069160820141602299740635499196898497269253076869839256314573961056201473335583482602631478282476312718161284872829736116759374018417705258221259412445194020946397312029190822666876934830635941419749532164954048592197968497903985895775682401436109062148199561803760174683199988863915219441103851505308293461311550437387008948468501113412715250156499458171893443974247165572582894867869829014669765805884613390378528646960025872891183724707737559683245891220257166268077522651471483815715582484846259348395158874806564870062712568419697157309578562177096851562589662173199397847381883452287686652285056341891529724758312073944388319676376204325189008189927551473951100548688455362623089106376712726907359029807844279986327146650245183339494389534495370656432788516596538944569799905239664747218252733482335579383247113113971154845512395372640833332815665475991751314526532135527555919970536289526604416447366489280148844622936816244248679942477701062700259929008712286845034308517030943319744636180810297088558512752495161503529537074563232240401301903226232196953608314728487429596967302605637394731275799548861569698323738101572981982895869158981740804787050670773641332569427340073646465566893449569335807294328163383930336912073656477474637101073508211764667648427096933084855944938486600868180922869790752416472683770395755956283269507882132077077551131757186944542315924693280364717578360522256591935817465358106158090995444231176936430580195594813984380295940112982471037928875349195357320986852184935362164613465639345182065859531411249389920516824229503787784806258389553467014621531193095337920380633383785499943878742653247418825720490262324771780043434802751304288438766086891937732528112777117771062671429332767101712751544912543739942511876760162220691815283965043104202393381424629468477764011943442767002720930351337859213031736995951488262171491355590113247779945459448393125924673929298127313136372356674859915666345858546915829287304585685211665286595423551987146026339487968152062217816775949770645957239695502690022095851196918974788719464370676112925589835966913078581149919500126711297280378878429520792410475759422004185517622842363324358275115885565969265624272997771614138392000783037541614519461023375726211447447765017754484760654476508992050102472561374104807517147418077902037414744498987764580682234787151507942310019229364334789574273241727975813111227102996308613747977848847