54985491292573106183251584959116533445178724326256579401820688224865576541885322328875553809406243014807094968630354010407978221250426495879599892451827086979990429771435966791686294295033371816577873059604199963854495224735633651272607869874480148045396411232233036058682416789252441955421775409160795927241687667596157861382240949544653622110769385280448019318834226895101943939016649185799672965443123591774552866791743718775140112398863309559435087897129647095017779969063135214480955105409185702135297183166127958595935123285276138197821872971923142980716093932130067674562331240978243782497733524405997211184158311045973935585832178809577237804111659601413403820471637705830549003529807116488080906246735394266260870391159294750391117701900174001575401536493341688958035410222898248053591243874423943491590259452390337426957642259596793533457906915156948284137579044198139138678818391017352664539031164750243077655729451031755312453754657919977488556706759647511546336853983393570602921577220477009959548267944723182411141330242416904132198117784927158312281266700278198408164682928896545621860651577542816963024377307834992186176844867966128061901689498936542549287364137058797627029756393151510183323863864979937503713145919064404919548406498627726258679221694249855164649292387200605767419494435860461461948762244047439467991797137929621566255472773049257910557534759878032515665296662141953729244571192634293755272717884448390292183861211807039392319540905946279903988888507216198987172105110653304862922505720360903865325377446295075934643762277532790041290375315979701508667218284109740838683459365469307592650816598605666995048683829819129878307364119297542232498281185794291316748638841175924832088580482882113826898987141514212805189362845287088931647383423320734438436776012699973445162976471790359829329701632904638709598649738226938841316131683161608828983050026500686453267048003946859948338273109636939581718481452550249487445535902926182175708767252969430385814523739484760493390373662938313124068077743268046436054335945562430153063531638873735612009028562693388119190488742353512909447554922412383077754191048558638180845589329408774028198656482261527343614334339386064047230266360425071712384306680607562107295226430879765989189216054339685060377945630139113905364561885193383583084202091700809635565072264652514630315351795780840710364705359726093328208517451480494487188117998450312169407011251099362591198151414853466743596972849103286544549905142987863656417641277489881520948915664137028465608369105596739250235922510989386638620877287605559557576098350066516795817963035222799935115117380558384152274669731016733512576442893369787249578602857574015354836948158518397916202577654246637209898436397452876821080631106437376345799622185608381052387581921411505985669364592527465026763224956097419088995568685350466253128543873993748087364409113844073830539645764161165616218892202214699552739687852625507623237804564380240906754785748917184216311479186574462871346281843156144688410952103934748266312145037418506662604957881105168238618972302327173071430224718870632755807649263811979146577697019696266767512748374325068896577067676259476501501872730619631351642180595742741380151989454880827203192833328195242481846859536863494457824465976383220660104256704390028937273722075371074873772264241526265681136505545417890540092766819181846198713131771238168983863332043157785125149034567266121622944061784226581635915350666666464211313062303714617059419416853066896774567560705836874817649846279113486636858951139350789312819117369659684181645102444894654660478422766955286455423862161923525911544745608491616775757388194383869622805335237320956433894878262907783309378950143560006702329438898478259455556006198686147292679857567658622187840647229642258567071337652795331385117847693865290718620703074317561285688262532587909555570052541843451637943871697560127841449770644781873823535414854594395117255663996157400570321665176699955271716311704629843591443634024919287034766642628407408775082326894851867901575034522979689136729204063406897873719492271208885523144724702590057478912894022076519812017520940571745783428885396874364286696727798324558065279484525639611096141717705056736085549193577079409948022890699321456526901943647678475934906567338544464269763485901580958352449525533922160691045633594553057861551343276879374263294774334224082666376301774079108362947187514142483484397579815675966453735629016223533825144418764679345669522798085720128211634467804046059594684369679768482594546585327747379584944941678170621806816783399960402327540274812894302548070977584804216631887913290783810860023851212498966199941106391222944345114100827611207355657020595466030236785654483372189974803482171782676345964594445243542995369259126304795682799034312543944280269595371399592349421337166452540968605118076216138441444182010615371938135004455547930075376277474924334129086893839239643713684215851990520591808880819506458558747348672407318617674116641818196869245938734883279108397691189960648418177950149726072901708498060239772320858824199306523939592317413571318047864658849441388163680046634610618613125781058208997057213632893346515547558632034349383193139531227368079182828190715956097170158116721391738946817165184986272282650081728019820790395046480921049508671859174351361014359629819693252001674618982297927925919579166956583228397401217178012205747070389156471285088081288097948327540393778108791722208205865368245949822821604812876155798689145587212948305785089154192336812691272551422491113553051904644405940828451298770908954286749447301213301851374525542228441140944838986824517800107014689421460438113272254594965905060496223754176959737754195887443372897963673067592787648513880726219708175416649626090795319612812776728297434081952943557557199963176174773843190367557945375