707858494192751517912742965575022236169523662489920333942070209256429121141970117209750591302837618911596128999456057904810914888688935582790843656745320008786719856519394557710319101952261311290138151876920479926439204152870133027769623585112387193322239452669665966548184997345518057673722264881142705402446877087631168607193118995684466945761944790360149652762879290702929385165959721423496820221814513689127861329230372527747112174069201615335306197102238323517365805417355309367654827118344193249899982144996855705998151440543999939177731043980319682021904262384741979252307526223240862512952566238671188235806834519242927911433619694284959423178856077577660856674306624430299515987946982772779549971647626661021782244615790827455392450771926872240026691782111264293126627476859526835487206230786348084372800922865162527141355369682145973261675054768444856704426156096490783457135003768213227842130823033123052815371376177298391563583376997672655816395123288619622028566726913652574241194026688140963097059247206769930261299706775730074356357152301116206763546566876727975261730822733965574709051353018600312129769878254480199890557179336464396994243295952422143423552583928927441136683273520808017737781129561477633751631453372320123238615663407724571211969823094451261930424364288596826110689001837645299158582626217384297288754040132546094648789370153929594815151824308667938687704609555867464348018660915848510986729682007633343455892252085335495732510524756585421010699358966577304694676244944936470971452931326101240695923661785229043857653416254641705696998845686988937528763294174004163357241714575051047358287814641869377745250419873482471520933393981074107681792045127408717907342257548348183386357861204955716974519241526597391407594932837430879756141042632032074418512129054414965787676620741322373994509490738178542576782825834567014141499416895841146033322375303783825356168782446436562059489792101389997221742820444137619904538437258726596162613360288417480794901751895716927767684708914505585499107614867424562693952823619712914172249114232439434719548274959517858520379151462908786161056630228980221350470666146825109637352098988446045778075713556213775180277064114632255621675903633603086191186349646923259950536706830289282916493845217499686507416443859143903587721411144771376636769020223640424582804593698854752085934742345396925119978673082553740493187370396363727254282196134577144738863499490932431975227629659943929640316145719039086824546565189384901432781957001893373058436588355701357954964466346677525985390743875297633348632931953776704325328758403489958946949819080043657393579035547324253596342095243832156991056455675348203183253635732954745269116596786214957972594006764729483454262252994558450854359346288190205894989418953814425270155831148010427379996181746526477131770886814713563137097593782152354244165543085087430325776781780932646022837709420773257786437176207811816392133587081220522797569911970192797652809261552355239847580580507857692454472745121508672526854716511557772469419724860474344803847582770776385813963974582818315286353997143981337492782630485993488236340085569216401790951165024945157364589545271253632766999687987681436752557816165593287994414498496367460437969213498545292193757332139526714222156799539529872904852279012428967985644975866161012239775041863516469365875174173820485502553782681396370068202446370882017422560078313141520395647689356545217723739484703142055343627109234639585991935104718865522937033269966116524970455573429984357874858204559606889107557595091011520726043604574913359525359748922706923525648834031831048557254301024198964688172372364410594391741106243314911062981988274471486368590985072039701139364661412625467781063639405895979760214765846548954856199879688431304618932727261197809317532686059536610753465074677960324097991571824863802784469058519150973978067068190910325366835949886574888520656745341936179636813445908997324390782433627530991574396804419979102836276844179053913914574899661226522920532999432888759285337718142211813182719119246146963486638129156887701164644067427845818243997209743998974940373931104114468199982286521014875714837163182475152427796459896656492838581833301697853905588886789876712110066416944190818334549807682557336842965488986410612734268706735291932671798241293086428158527693444223158577645836724904724362648891235416846580359049581649541032025647176050985359564203964745414259282779784432675408925001973350684629560606019314337173356538476845255185835867561396115226813859397973310736458149124861783038398584769750038760791529678623592587107597233816628736913925872161519683459922517492764078980991825812519493069504571373373544585479279469512825552940114995696527333097841134495072171426839670413657100951814032182759943760362264614133525990105151635484838342073595274329373033570611324296617542717249705447567675233043648229883734090798794482180352036451535933853335909274507632606789611036331261188277621690296319562765485749759696625176343911619845917095135620514255214655813948851564160356989784941098320688485430532886079435743037930265380406418170061359578406716015013835762666347105430317947828908544488207591623838305761599576314328761335112397866674518779829807706168166238065932230592497160686820422489395364339215326159315165350546723901105578531320553826370879848578829476989915894018285774953020996538534414122806013843761695818780732006432423472127497953116182115295249154861508121664234656522472598767954525217107743767570536885892864979489215946682573227756723835564764366067654653766248939681106319688271791858904663768651873419314326525282706425771174279783688611519898276682862303075165394116192395087979391781347772634222141735415598626263451728918475276227828032988725896353603402036478912354932712675458992432766426756238353253051899723592618456391774537221