45881372191963544243449644036488386140536714178915223300652694743661811775666612413680422843074272206039685533517858747105399393075101313832192769618669727839379323774753945254834328467162832917878299146882269378998691782057829279315115458194617798712405667155557056226731387331088157014346014242189136490022586837512047853375055088553232764735895237617831099872683416925863342558819492124192711458578079932835166744437714699279649663829147261110963769211871635734554971696236622118273918625204497826792717084924453958725227808355385633774447823867760263133848062720939652961986442014808392051065247295853351110367686909962352950801821413840984378465289155748916973864128026985280149853133084656870505762555840045241442412048359333559477108298285567294426304086149737775653163021887752193922874270257542630735504550488663095893153738144479327528518121822232502481750256505079988489959568605900059555671401289436769685994277544865434637665508580923184609788667343576261373415747556573754135279285736594182523977405238081347992783430770837011580071182282243970539337513960183854362693247005250570891399788987827348306465313895245936149345626994684428392438945751784631419765906451649170658155885121564031336765390964137952564272317371937126659978871732185867428722971010334006184142368242380731540826537200691483192484552869166033305045956313915907454331935222661231614955596685539036548679932684234778148965364608970057581422820173134621201173883124487600858926387611332132397723967888137708200492011772330229906531261784539824069374285771486933674647879724118853538379869088943127183959894311379453877745712636646273796263692607135434261578358322863475958298190537759553862841533965978036572167365056037595559917682418570445029345498693683947946656573950771313654434264974719804994378314138089362589090553951602938011099612605182527621928718297699843320895444699110569426596870531685931766522115847754620854019432112833722263943438613319683705587453109549267897358250572954550928132432447787334678359915391002668326265315851843399489072804636740265411571443789882221397330032827212713502837082971678453349346908422126902551498018507771546960358295425782769855013842857096912600432392424470860081961396208261008206820510211561261302269703218657863921752865395839218480171741291563520341999654649651591142559790929063071516162772601311521561277816292923659754028148660979788141993687781154225177519178688007302348919239931972720462825658618575463166382763956192527478968106758492139275849629376452572419434597842182456904275831237228943578428605358658427512001101596634787307493042538929262136516226551276614509676513550675928201910832074487973421305312316733667476928158488385276151969230363503779686710867343735580369547377786451722829178476988144782970527274375985226441644549633831254663368491616556651207369928657047661262317523616366439063181520689196058669752106562720835914951803789933400181256463247586993294758599248930300342041079417443414651108853683922409911753843392798096465173910387017397309838599044049344677074306599899978091188872980119927794618804238149415516833682592786636998261127827168789795714402920235028285113633143129813169149452754688836855053666685143607766666516065130757578165596374933146340895495605246179016603136725943035145213426107524118235836315105733198574913244697593280746546684693372734125756066954861046701487468071819940231286556670642226889921121884077355159941549885478428233609807320089968357688599687497709003488654413669258982108957425962245447871499837180646465346251812614421138765945041075565386446846586268188912066373339130134775330614821857635126945458284444748037576638421884820992598887955992090867436628885526556766205572716589784230165488199945324831991642918009108689992351937863586068101880138268869504201476413482344262036105593459027652062361412998414854412696259414615372227987746769042604742062862312852434992327352533618000152015191995093385778532597967574127710352720570106385928053253158308589426572356772700573299201928955956378448379847416584236682671016171945107963945624065050251290227716183188885065380552513105348293208994344992201165495935289105374143164429192620527846578870674414546049191595804367081071265649233713379592355087155127711226246406584281979163923742741653367432355608280238027474719775560993082177625276800652292972949294089300428859428638199142191041308202120522849837882612949123754231155660719152649883466804621181676286611753969706215778438806765680838032920413861044798147615986917410937911442049415119661560518560293666921478741373211270166850848476465445687955056827652689853914995859443922319309323781595308849535646090348213853832247412296052917638812041906177829984831881221403373592050258069349099599879871956248252813697456649705491809166922724604654520982224769240651999091165940413161449719025546369467221716262937169168041524513181609462125808711454897648505209621343907455767919844148966239550394069288745251024654635457472994487655104194878034173599385981515869559196819548355439376246069868674723947846940881888025940734022324277982437172598321832179173553191836093343574734438107793686896913477984228921327533990340436683451819143179187310693025296818769870902448877937056400437488881747419824747231247669056254989483035746293700813334079978363244539495212938372962315397005612567211937544171098582292299624825763051798464732505416376613981421898151239337528836138488549047427529180092181342426066652992786323170763129619510551427565835464682123217132104575454631531472545674740860922569353533094816071555519983076266281422180259796898645933165558980247277807240362487458209593157975100159343134654778911011617230163645417194834531458672414756612325281182460794387446132984113797994464787279495089702436537956916498440888159451590070703871366893627239625518519242221685141038988428854151224764899445857496238968433884