638540336546919527523165816562636682792995568762863812719784580417254789486405397225873021277851662357991137393500616874241983868981680166322537120366506828771761660976997049000148439868574345490895726853297458615646075047183328297435027279373475642697724133783224354623128981896184961264065602355041846131060267453166680812237441494722649125166136815751775130303674710231343711227615145848184363887934846513497173576274712476470285938551049774728390211475933692690143644907788181646019346157413981771927837563543432860566249168828151277871324617941251910764016023162228269404227810427595911621985562182455115920597427741827452738392034633855336601161992536467137686923594915323154198816980624397478466320297272105771988936623799146533061261578483002519444999379876784974914667795976595300312118326787862941948381187999381490383484875059541739879228603364974395689819810794980140824347909369911611470638345498603994529032414510141225273654199087669791941485510889824224926957316271817702034855555955450732295746933218345498551226008802895960927552700960564158183748368285283791540238816841634212807003819091939912823381706690469284282865680505560143784010443432572982753410156857577329236630130024808723697053761538779828471602468276615462338699490132060852187505936684262362786879838265220285642465742469858938243837896532230062668944421675308601390869924512543465956312411799589436175837029535345085284826704778972385322271164090585794346243889340230081694701939836523001522245375667203615267637709992865632115965131287943843386949859288835999865983005902517328406797882390403582163792344597472635002443440372002316629216357569894109787853678330908378163955211598904094456777223412572775922779878013327157197448808838541180524380965439472951733886356072054343520362918846306219052427335519542804621990112816595612241625610803666683979681470127374986238601052447411902120366781193778654667309644138669037058271417476745359037823818222149156634840043242599287381626345254822036758301579622876639612795824745670562940257957836714067641541786359957000664812124163654285582247933084833538512405216662578572617229557817902130187409354872553016222909164426365615636965189285205678665892904154257537300525252295999659101023734767546372521425969722497890556162739558558865707790446776229435973902987683899814071562274363595472889403228270937519069301126635725675649198417769548795263333959254423741342349080903645373809499627003923716339542702591005905475003216746014773931884661576699466768285932431244934499242134932789842405675783457144423387009808230604962259812257068321431477973832560396452811287617826698983893775834937949705823782663765565963431022509229146802498271734019883317214134182318969358754567038188987933766448424307382405857582180823438633974793736698387368039447659955741154047931176262241940638280650820767910826739278445164354478871150982883841246682136148862826587627921356338296149564300097054814562949676620610278628618683856056630621817505053656578799128425394342384342126846930231716009379499254635981847621375473424224572776942770454231577412928260587296313405076374682833261955096723562488910601934350854428498925483289349011392702817840999374616046077607494654998862404453764691942194482199630511324551275708680496965582796195130252599903584364185938988377114531315234284051457959960298019140747122247431486630558964425312398247780150455577416835805270993044582753692610615555917704371188456329596004447719437544358993998225338833290333458271969086279786492061468159460196673251964551802634573692884262795546973701831351654419186587744621917434408588738081158613952380877235644804517039864623697795370455215738226503973553410651223406890850946349349100339764591198385284155662971036824322163466621602793277818946626719986748285861352824895497049267375363424904121089273344653256532184772067532565748372789093386272573190180139386307882465467492497779796135584818921067824891077334959291464008229465662149545978444874603861624154630872116435634121978123202376548286404571394254715319404554713694311739333341701716357647167214890453013506805553491945009889494333589980399132632825682145683313152590619773833505664689877903198806279102867235994438472875409528444837207464122623703236481731956262553819946827784618489448239588604662505347291523873763583203898549228162315861837677692654472174326339753197656866356754616799891513534253497874964825836269897845146521643712427169827222665100969223314769272998547878411191388164890275625161032784093564791967104575047606096611810565952476620349111763637436667415361519202181776725879964901151281804229146122093996549022005506598800858862423618078724713924029416613435466935395185938853696119899102328733340768208522398522993948446212570179696413987323615312097488839012455118610575178982291299267909276960509881124367585246553475038904120198955406847287541307440720822252227530959968691538899214052211766557465361560415549349186331824643346776174798981129672375377549631709628399343563639423802195426519807377595360441934629691396099009688762618512560746542123134913908468604604222678765350767374075325500712433779588611719880899799675378886163384048442092175656371686238053685597273330348367042072415381716547293050072507103398485268817092911113640519719076914881528632822364572539655076473815636328969025531613719369893195819276873292501534065142879991949073777827582666116728397994926035564614249523223805712252572083240993637703149857121103208399796271585350488242142348961191292952718958339880262795765584884573607180773414955847620408850241249389821650967854364127375926519680815893941760785560556689706068183530871124888507164282951646196352025022087725724259590303946388438789187388476030909998679042224626691787679673143464373382951921795489199430473353821148887979287434304325797551839370451584715790789043958520174303570583539234545050847556641372590036719373743224975202994