31616046441862356128253994262377624184633708263293462604426439105692159721888620922632211509266025329869417857017772265790262138352987247926147444886882633883758354696053134736042112636871711753184203271485359949157930993143570526305878967336168822866972211264108941369048858688392780266342945956779953583256363481350420975016535929039847274795412205431275827445954880237632027382190622956933168045452104429062264046601730654662686916358484629400749636162466546220289703542113091931816640246508918865911994323137851471011547799283119760328154379378909276075793904589543089306889679281264668262840789513249932182838357482026812244474758124279335891291502677192945603256044616791164953251612195658721613315451214450692226288098998129161227346014282247874498188836318696184853477505641860433374965238876217103519254051480545752156555420655464846778307720750125324658634655300324676633209758425207772224693939917885175394579944847729329517586254760562486093824789108320929036594085899666073435695379462227922172949465746504669112119741597531083485163249249783502838004956245377216181463223173059988086374154236818666590535796842021267547785082520629115321928261844489819497037773490898747268496878665576550729383078179617639110326327376677217991339461580758422662219442717712839903725072906996940505133929297082286394339867201466189478429290373236206964649857557875414853758079696129583814874527772515463949707048104589716925249295910026864147872998352135358237358337707133946581162834034402640395429927260947787564107248746815676513203116223075616354215555944670812977156541172247877329531141643034964378296929628174786686131180940169006769798937916505414499000890243366822591065519950799963524123668346193548759824612951794388703167534173731169614731405823572636039565207465339635325260392166700844251698395696545345161385818472130114941703620452649846370995793872867585076964753382743025241542867080727432247131885732151947062248046298967489297445073574168388838679484312176377786290536295392901249943726548732732529514518451559443098124757873190250332512704626511131656113221291186437233959140320839976277982422320846090891023349124835301736345725702144384367275186538909712486487715952119844538719666329328785824650956161148526680217972782212935145789947947889524495822642746313042774063818557938154624028713721964684593548936943851415750745794464155633513508969261242858984429206661601760203456714297626953796621398054744962463738436492422143579566085098784243206848672797591528427862743856117949915930369412236780041752583176184351447930649408081674175985504849324703478852921778192193782695398633911835683726790019548713671790445252948988342434467073170777888083892647854969945315977106567185625409790375388251632048363342885221853644923853583111161759719157561950868528685374044653880807282624740616442329260421594669044084417413599327582819592228879507310037869368206905181059074887216898628443585708446041624116018158900215718615640770449967323808058893151643546025716592847298764709190969486358777632673051978176266901257838298781611295757509121747454700033281527839256811544956718476882538440181706339579797397348498578891630315971272319603794875438712742269607258792566005616961817119271174639549524260513389675233476112738029283264350613725060195580178851990364184519487981881028188979562123637699295841991743558828468798450673361367368531162516322093868799196646114406236065522299460110315302727978717643503656417969188047469460398547173128641365730359695226251853179130174625083919160570871678841615241027688856681668719491979975719791751049528085673220979658291668542817187760733384011699237016711366211185832814514362087440858443041722762585602605959923366778455335741984248046844751880319548188273562165329952506486459616933068291727824448844663627519573778544710725235342004702525753824018815753962342183566025758646133545314479694994535529239018736842723632034169471033783257196837014691123880901869601555965798257852187200274237367290876190252985841559999618047596892642598939807880635311883936862227269058617531511939339940484293772516645908394546299395215369945032021625274432513689858558643535591859292437183215974976168191176586683039009698412947124593336031188504928545544654345027053168518341872301677695720490662963266484741899835192049448134217959546596372833065241381440005276897541642222711198023687603173967405959610464121341700983318964915798716514823649191999456546569521946956960345702944812722174705048072653586310656900998028233104487833444868384542636206587685686372664912732346815164784944265944900303345674718515473383914623375554538638871778378138576551234017225410524128228662810570967573807475514673416279111369434448605668731650567261664772764297130512098624546667560381349218306017601889522177179039469472616629307919665674344782980919774513777882737283651056619776415336581739774478434671948793150967327190121656216156423879207990852891064966794108000374161284578903227526955099372190773729378983216831838840475084133409955392803477338213814861648716897089425298321085846387068045738387540686437326421381422841716434671474954796865573386274579641878819892469017234764956473445822839373784395525134165443184940435746293398286366130956973186229599201107170889057799376455319379353867928337646501684765881801257485440086917746143125168871843044516129787338121909938215552999683457519936723811161928624583471868767521814135092514207421577086561543142573279585854702570337080115669232936612840899714457582937876285631194310584989342793185891473468355369213648218272076409269498775477432362086623964285012992869484111595576638445881183195076242315130649021971859334631695571448599146316943618978615526946582719548449448377058457540742109229321027390596831873674892245758921416972853963230214881152388527358932281883078970415736472101782221542584573031568513566546609719896315072672031189356449990