moduli = [25892739754667065467395795349908306049131626815004690765424490855596713896930090385937658558400755922937071887679354888778764932708889477170408748186807397775440529842217945495773627134361060226042529046422944272432802310939981063049000976598277816195423147959857737422140579864316815959494782048760303606023601366455526778542304004667500806593253836928970092022845210278264914764009964192560749597325460329229886740434229853786475814832078509107650284248986865267502074223403967240743248018371747858497754261551687193086718022291632352483148058428648051834487755406545289176557976398278601123968846227172580617998381, 23376074755677239684889840624587253938305496006648067291741491841768791312183579969010009839096923217255556677645237116421359987718771218652790629870047194776224984575862009060014427684429641138423418186093412035662330471733732132770558702393471707372714264328527101389818542030744072687365302723671422508872230678586231641051631131151247897145266339406981110686486343159253619149087892127775188289343456932431439184403180836277202930030730222589603013896939575753072568219063398103502215858582213109620398650509220342294859440579834446873876333695727785652116682133620617200529624556669274465890790124198145414608347, 23316019092190902714006031988992251977432009945856235736325922254331214451685268282723287315013629617369861685290585069714946482805933866937621269287313815354234136621065456184716987033187828898791257800487524658956890543941869877673462480313355539789908953750448048567680246436441225752820973639456060361883509805898742364107413413901071099321470914325595282137982515041042523142651221423479840775612421789518291336959001731482261427070249616067314975656721857044617476796742981307966475825624266220320590207805531463474935400328596855272596643934093676744344283289249018144100645002483049234971459198743337939727601, 19456678466996259650677528904007586360736958010186414703625771488438960910885896795664400470321480292792767441474922695891058203969169489988736644215633840263871357217436278633436287183461325416762164252349378520419270595033337178871460489604245489967026908647356629332043313207817226714299665455028333870428120699433342579304976475355855447684256550311678364851954885877875588353214307932906023478827977876442086334147435417481543126646500944960874201448281990111884222197722201449939859301404816544842700419873675077114380013637616989609401698643691983461415280651178392393638034705522839966353532054200143159203583, 26764215927969684145531476166023737609754790360849602070080149884099433321555936839989910641159363575573130522341315373859577870996139204771717412046302870373992196679703994531671058226844039009205093143507497455997800648711569739386638981981216674336305619060610970181215242881215356891198518627803661054038448890502496525180049539361816471249410087900652965225455965065778718305877324947762919049519574516676762571580539299478966048333140310808143749615540869496434427967743555215315931711828395168967244077695911759705932241941717242523878139324364379284223793737404132083434843707810724570671892340608665350346121, 28505726967775146869327137390191214375588075531520022319849037311033726969793937298084406382512290788667560301880895365573500465066534225763329728670596970886716933558308765083420117505640204238958939357232225939628110547872204608621503550661426337926315743365502511004604764662824724662111136300080436518795202085054554653662862170615699194360046140498124152727134725770558238148130919848235457761652430944311536940189560447147404814058492555647041539124432123176647054784366630460044225022040748620410271655729253717447289020724771929960891316208833982745356210038560333811280884709065993394101774977624213840593281] ciphers = [8291449451277675772473092524318700546193421404668585105681974145142348970339281772457901027155668830916500205457295573968041803578930890513722755178666335887317065387985432789200314027858630701069869857529377653067991203611257826093795728926439358156016530720764190119160875962165773054683663026286754061186649884592212121131597577931209249415825770344395229642696224373082792157204280730205323332003411360420892354884826295694626072585411906919966689019227509446215477010603805567139295916386044219646363190450726657564093728544697229665361931787697061956492313166647985167794239989615348404396350540667164770944596, 18745406202469826940786850586819647473604000482312496334543139440329404978394465199016103359216112142604907172432213907796371261158904795612780601989877418142952898544631573811576139993360898028044634153588694865850031480562018068962371004538685053820848320207296299832560459858763062344574740054554437975186047904129145906062473873742787604801197280721564189114343367111960800644427465606609787010054836923172062133573120343543359217400343197768647667757989168700670054909010812254090898449127711246322101328042428154939872616073116826640739532091143924797009213835382464741849252242103953619332681541389638672431661, 18460243780142126792516364608345468880003017598374408865679257894044987497801188184082831558235462256666574921681213858140085841970389828288871696037595746789488308582417082938603476627204587910661946869714407626835276092857545745562899805144726278224160471422668547547466972704682608592816912879202349321947191481760523356583963749790745164682313563397912204084139348473155265735990238485607033070015667959961332993004589857276996939132459793192722666791391308633159622368212434872689545932914765207721125231035778053025866423632116983335645091332023984717863209599256267569634199801267992509156601448548907849754917, 15579393520262484333346505031102179460129260045335532509488388665134609859173934616109838609054252095588719914706865648420541105975015538920051452800393437743741273132246825594098430876597218745808267846999107191676713460631388852209229519132821305131583243359628045857135182159833664773192308167737209459580203011533067582876268514134932515659264738403086509576982654280388509233288686217646689620750110521778583389805402110273326276699500130318511286972292582896073800232370280387523221744613359440355284396984350136806860139171533362314766371909185976309086509097743169347383525990192752964892737389890135681031755, 7723947669055813549547327912429787719924622038233265793606884967290722100251112229914723792235125631282714828210126830648429285879481286759276554320841363832572665056813724303093257087071949316756017862288114404490793018093923112227124552745141670217341188875881678032265902549273577073057673214396235559388919122535177820311505589318677441022947862555630335086830071024688789845957856155823916748430697223000027147704401845946964143889212563895844088939787975131123111782586897940684861574804267473456272412335519647857528270657029358925345302870578643183541400683489887723801216002886197950984002505032070361311692, 8947936055642633102775778723051790802692916258104874482357519341063477951894458135693748270713107949857117114868847737624295425821328358297359296980391297023680582953354257665132750346719293631869923620405938450827415874481539132657396289298758868527656636753023412539342839277793814563083657152288535114847658750915793203518553472800894404592994934070608758636510875355071871674275362552476685662771892909192951530401236495957582815778540843510977258299091315111984213302312804965021965721448778810276299450406295501791395049994398189380743822496359469841745675623544124299816457577783629070602116530429511287168508]