894170194390991845349573787653672282887273239943960374964445827655229865442941049824457765050949435371360271364905132374394290446716431883181339096368369854611959330878848286660143299933886599049887497455043703612145847295786653334552402617922235253502836852233975797979610987666924650569736486770629312632683909417756657314437409570179068638603628716889243625858491585407382435227214449849253446931695207909788915318313393057179990225532168487142971545390734597200535415252603993567496014644050863297673765253555377286225714711624032165816739868997015832331331459439372247691358755975219061611675631303241656476618361003529298741227829091431043477282567419491095663484471863625744676639652275081278404576440485986924364954408770494531557499463198875218939593097001702152122755915975861088656601899192617956374176144612077198255845458547342277096025501712591731806527928174227812119643293159764809490483648895404690472453859967366576629254678468176839667719562637492853274919489689125614345586198181699563447783523293319737627774327560287583396105923728818962987872085085293423563122172600659910329263386771406032346089735017515440204283464775953994514249859772429489941755135538812098534815231293583907898018675706487310514857321967844908994227738296384927331028466556164297665476531890979832053862631056799382586942549394226291753523607943566815751037959966188727984933676595448259250732405576735480872191006915581793137606580946813685268276896364775863377366457882441685739067058601364460186858229673147949369049921526575743779432873507684408906652661333941572220147282355516224439540761189759491020986457331547957231771641779570297496929229264818613299333502727655934428149452361268250103829505429099584235894118911466632989212086729095785246262245104589486580068856126073747276392018144759823786863110018496534596681826599044638128475551951184981412396736449765881205022872327823881786990019993326343147177356829055339285726749664666386154954841939554297183361416874676652141690443274639941965153443173623838885224855078842855386047557167647332281814931653995862282183912679848711148992990765259179396391759442855612190083380926863686277323083523252517198901504783991414559290941715939557460724355724467027559137055672422097864510886669600291611109973922129367646893855371507359111268922142725566744621998055135893471515066685789899918652294651397238867855843826643267690789681264215243387149372998701301481188676987830894127563682951716627158484463698303380223918514742499648443325709391580946661743347208272615801191797949016874769645054129302790282641232997063396606173171202783163569604718685056616836603282816171865344319644764993135649126120552737430136851327777802156552532706978879443722573112328744922413735743298989976208432265836867881878548332415426419503099085888947541499626474950484468519178262144872165895862912302044785608238895524348227741179542218920268247499521046472629518551828846723797014493214299656776100412669536966941409183462282578693718655506032498918778993575068497441112413910779329248154137306602330892397931456315418271571446325713370978681549199877901325943525328669911393452626602397593669844173737710211293077703444592623682242726354127484982921721229511805811443805556277788588861266779205997051539765961194925166284845069126599285278134091240631538227167962390424080258292832745744301688310607589949821477937806463577328651545732362815042298598662308512099971490597894170746093276783582185054079990446114917620377103137406805838334217720411879995606733193844787251205173895665527016940958249399682657642637485122147459578525852065212796669344515247569308359532122564786391957417486774376345163377260934244441646457099333429051527570869441131330687058523843911376417896822759573190943250306287388072400916468114556266359959445672635521031665156726277380571636434233936127519518749266732083980474484354159353068650966380732774831150326659976448318015826407133704006468858549452317926220298434254693177675912561728367096404965666149412479178913645058990881680424618108127933015270744858675917892728874869348482694167224535646325649043056583677192841763308659697709951786415062691647539294250180866185929116475608199484626935288578274486760355416259421374717765383943760486902457765654601492119895043954780994925657815571446129205548125878574912532945444524511278073618292202829067419191961552854484916671276273493660266918159788552288349918582743480188696353890439139994806320716427084955711368844206490052464146146743263005840462119568753842981626472388394505781265555821221337527863373771100289121944408761383540282839393312358274001927349307079580220778544804495816901433561641004248413254008128249079623486793462345639582819836479841570251508181900507964817684214668528192483095689985272064879359496766582638873708331031438259319191397029897926755803560610108807471462452211623792775376441891795843169993762583438398566252796929053415120278518718875687525344343363254984877158595188074099006970345085719668872518809438714211686859168549378839998939467109357474941197704808375745267819671463590254404576985665618164650858626177281285795512332378304539487366719998134461452621589526241402607578794337888317819683018693171152941158742497414204685192465173365776226225515262589892390742854817410356289994757971701129238599403409723836433834542416859830295171313512537649293497840477735060547577987659192262410270922873886931669905760311067902682011706958567515324104932559072980325708252813029275487514668141920222209501188741213360202822878226794688626862828844567603105783235263948969274598468907541550246103335259162360972392288776070859007867314592516342799139323109724104238657582901518971352084819320201523757931220825124515901815777053213461019927267927430098856651875553282731902496105780912500978786899972609281945902475797342712394870254364841687138986646693618191338744057307772532