HackTM CTF Quals 2020 write up
HackTM CTF Quals 2020に参加しました!
(team: score_gazer)
write up書きます
RSA is easy #1
c
というファイルにて、
e
およびn
の値と、大量の暗号文が与えられる
rsa.py
はRSA暗号のソースコード。
import random
from my_math import next_prime
from flag import flag
def egcd(a, b):
x, y, u, v = 0, 1, 1, 0
while a != 0:
q, r = b//a, b % a
m, n = x-u*q, y-v*q
b, a, x, y, u, v = a, r, u, v, m, n
gcd = b
return gcd, x, y
def gen_keys(p, q):
e = 65537
n = p * q
phi = (p - 1) * (q - 1)
gcd, d, b = egcd(e, phi)
# Keys:((pub), (priv))
return ((e, n), (d, n))
def enc(key, p):
e, n = key
cipher = [pow(ord(char), e, n) for char in p]
return cipher
def dec(pk, c):
key, n = pk
plain = [chr(pow(char, key, n)) for char in c]
return ''.join(plain)
p = next_prime(random.SystemRandom().getrandbits(512))
q = next_prime(random.SystemRandom().getrandbits(512))
flag_key=gen_keys(p, q)
print("Public key:")
print(flag_key[0])
flag_c=(enc(flag_key[0], flag))
print("Encrypted flag:")
print(flag_c)
enc
という関数を見てみる
def enc(key, p):
e, n = key
cipher = [pow(ord(char), e, n) for char in p]
return cipher
フラグ文字列全体ではなく、1文字ずつを暗号化していることが分かる。
平文の候補は0~9, a~z, A~Z +いくつかの記号
に限られるので、総当たりが可能
Python
であればstirng.printable()
で0123456789abc...
のような総当たりに使える文字列が得られる
総当たり攻撃を行うスクリプトを書く
enc_flag = [24603931406187071861602497345394097692989773194039735745762181586628499407802825983901643034231448504738113184470035863824128031443012073830520233613935485192804104698999763287388765215634314977991988580048221541560353418280294402691661980705832590960497587810514295642811714680627768268704899874164681718449, 11226318059664066669163529308725576208632153806776762372429671026861927737060205604020741904348343722215670471225630839065129589767356765848271000166982882271636977663052775953958080543340165408211633442938366994031562890034541604362383645601883118173819506187865617998294930587997187071040181458961091560176, 15645290594995180815865397749136800126080704684884296404807344870555186823350216705796063922278419585484662234210001661578549560411864952462380096494781766394542247609648743673312823946783517115542404474786395934886667795692210287283039316418126796934535150832709500306153601987121172178183970841498331059732, 24345863558959407738249127568820138362115734211146549194534219311913032290216606859385934708675962835857804566049600710875035366973110422262131331932310524891713319358676673958738776644229757625523955354996402750265022578843637525183704187498194489645838490640529841182709661371499013082259193633000753627261, 9620679224297488175028367924764722982789333194446063577221477359704180638294602848741035585656113543497776415635770748468725814916994577398023154224563920936523717884116880223345204061598438291740007518025998041449406726084042681798053863495542392481059281588020105313791046017356493739244555377217866496734, 1681724029430984846089508679185107538104072555994133932050319175633667369916570440070548756805254789524599169177371471218251246349461689959989338169394649813424706418737543924129213419625988100326558802566046751879531469160120914735332858786199496335523515150741728027296830843112416558460932541777024522279, 20629854768856798537062426042570334097651328955665698429979954410631113160492201197690192324881508105172595216229624523572595589920695165876501026993810936392510720968159305964832449680889041278532807173859579419197780294984519222830572413180237776797800176462492384318120546495539728732366110782215071262307, 7440918084186181327822271261394344901791253526257166181264874776746516620936925799031445704193589071453959493392065321806281801023425299535553522582376879027448581379760896052013060957519595664095702210758316558762834545655992756483227787274192094065257224706388623944855362716578806372564148647945479173348, 5097867843777034076271397095201528351784693372027998615436445410912131141882225577577253530396333413579756394884096318434100382509189974240357351425474190558456256750742731090012822064840481143528081027106843123030275420215136304130321013605031261372665636366377162666476737296028608455229357416005773064242, 10420107412794383499391199999666100864853724770814620968725971207705900061273163202891569477729023724554388008575891113425781557296798472693974759813058067631655217722786373465395279381307973425004404348124524059844749313287030234750535347511172780349725636807760402334957881556461382950021814486095167001394, 20895198446192697825002890636650624361863759520944494391240191454443921345578043873584884838772334163748883476104011030592329948454531053024873263786017045083052443924403769542324123323834338391361149767913830998218951574784777785739566046139742309557536025214334831372509789246522325522982945241815388133477, 11226318059664066669163529308725576208632153806776762372429671026861927737060205604020741904348343722215670471225630839065129589767356765848271000166982882271636977663052775953958080543340165408211633442938366994031562890034541604362383645601883118173819506187865617998294930587997187071040181458961091560176, 16657126895659048065404729920028465477385009450133540950695155983380795627778054526133891673615252510518969355629562948102050307259107355106086468465392660721567070464708776158039303608428552547481825035736610837329720474688421062759594907620576318249542577396722737724172954532394471909440668625218820801756, 11113777356910731413424023299582648618258376222028450254478672148119889617557563576704932635131420845868165014982665717620845578039880527701593963719893467068820107811384041511295664833904504511210342105242330522375476482706044695838957591685781703894244561607764476555630573446589408768780659378128082633769, 20895198446192697825002890636650624361863759520944494391240191454443921345578043873584884838772334163748883476104011030592329948454531053024873263786017045083052443924403769542324123323834338391361149767913830998218951574784777785739566046139742309557536025214334831372509789246522325522982945241815388133477, 1681724029430984846089508679185107538104072555994133932050319175633667369916570440070548756805254789524599169177371471218251246349461689959989338169394649813424706418737543924129213419625988100326558802566046751879531469160120914735332858786199496335523515150741728027296830843112416558460932541777024522279, 5237767970074646857079948735567615361735616179074197239639640947679550920349684166643572837235712904929824521258264241503059989875517915784117038966236672390569320206379357882906463342282254405974383459878863044723383164329146669331810709270455492110346838097216174137176255793792848357953314563364460847842, 20895198446192697825002890636650624361863759520944494391240191454443921345578043873584884838772334163748883476104011030592329948454531053024873263786017045083052443924403769542324123323834338391361149767913830998218951574784777785739566046139742309557536025214334831372509789246522325522982945241815388133477, 2141625583250052666579569568613448089970148215959031795439930595139028085767825695294403905882459409861220995951141855281841435481587946825079031782977651718402048988278639212978854590412709087674713750292922397103941195760574072700517109381299788645871729355745594573785064162048047595009933642068871994670, 278354276293884030290100330445865286604723740111170856624965259573282278044823323212960304154629174664076141280100412502135750130875356944835909175355370317285768658282746817782130476757714384697086179400629156643250500432197002583758692394681401772203578628635926749457621478296182304772136118691761841359, 6039667595601233082552071610487048398346324705021423176423484623705376133358539134558362499891954091431687578305623106726900655384011241742715735786166290331136153240702822544221903404870992713778423167867663948083662620087859096707381620051266745156545213726214080049764382107442159825610310695543673475542, 21353765873487781085375016306418205544750755310255410963646737671193146222650262290683259548572190880304009015662963424520575937651278866672082973874806201031606257157229306007587966460187818647603633973019548401357989358306250139692325474674826791149726161678649996852062656272851387461089863388359261125336, 11226318059664066669163529308725576208632153806776762372429671026861927737060205604020741904348343722215670471225630839065129589767356765848271000166982882271636977663052775953958080543340165408211633442938366994031562890034541604362383645601883118173819506187865617998294930587997187071040181458961091560176, 20576388598886140095325204584799302384454378372204683348252463729525849583734948105765087991438423260690623246579570440405616572326057536248148020737810766134083795050076636686776809469271643188562482921546497071402873405706504773345621716428511481598704631451463399778602486417840466985891815649711178813963, 17347447662661486040040289855519394974371562320877472776529836975445205017304164550202099250096382852783253959549113036367974281750823938616836362593312254792770954856762797438690474329666549947795964992533463700161635382925555835347885819042031312006167190561233042383984087765920275010577545908085026177611, 11788628214684738246695632901992250075758959059858474645166125685861157046466064692980236734739634298802473894878268029860203026238925142258303727438570051822763330338744774300757888262747314093511013562545738571326771345495509434761853742569509480619380000424215527153118231084573851377049921456961916278761, 20895198446192697825002890636650624361863759520944494391240191454443921345578043873584884838772334163748883476104011030592329948454531053024873263786017045083052443924403769542324123323834338391361149767913830998218951574784777785739566046139742309557536025214334831372509789246522325522982945241815388133477, 2141625583250052666579569568613448089970148215959031795439930595139028085767825695294403905882459409861220995951141855281841435481587946825079031782977651718402048988278639212978854590412709087674713750292922397103941195760574072700517109381299788645871729355745594573785064162048047595009933642068871994670, 2710029303357232932696197225263692040597986927359269224740812600224998707144266259851604978553286889767425982708691908438984279442981540971935737617354609856642312100797081348174935195638083002333058089328102430432526612805955273581245352312630845237670744276402867230550537275379675828467791243032108754996, 19981107233593350929447953514006501458466479260151660185153999799085657467921097940751860717309377498501638075002136637344148955811617399850718322497572421311807629329642551519284713638882025500074565475569618691516951449764680555447185364165687596161053684299589053909233984617244886185728811651967713024530, 3975884358027162862622932959187611984655247354547659825042810425039322096401899672988989768997134724085482147901304365437476311647149733392577446833370358728610677436154877051592307539990184750467273668379065865808900410057533079113476991204462719784464847498582643056503810805516315622314948257403761762299, 6039667595601233082552071610487048398346324705021423176423484623705376133358539134558362499891954091431687578305623106726900655384011241742715735786166290331136153240702822544221903404870992713778423167867663948083662620087859096707381620051266745156545213726214080049764382107442159825610310695543673475542, 14296542628093736444815382636071360035549021313467366701986569710120268508807886041986007828960248665683292143486565404978073122476968882030310174125355932205646388813061197657253533595700948593692407928813318978600474254105007396254987998953819782624738628334271910759242195864082910860797444993756044746481, 20895198446192697825002890636650624361863759520944494391240191454443921345578043873584884838772334163748883476104011030592329948454531053024873263786017045083052443924403769542324123323834338391361149767913830998218951574784777785739566046139742309557536025214334831372509789246522325522982945241815388133477, 7983594351048693624291138893287137601848867970873700373034058935656045095987011116108642350616654713531373295621458596238107660073931212524833777531450461876588350132328332972361857441613098452082271331281504722310376573085001395356078670960667878342134517577992585442881605030717788248137764480486762452442, 7983594351048693624291138893287137601848867970873700373034058935656045095987011116108642350616654713531373295621458596238107660073931212524833777531450461876588350132328332972361857441613098452082271331281504722310376573085001395356078670960667878342134517577992585442881605030717788248137764480486762452442, 23267174349531278768420819619439317179083929128083924515569762521057285892931325108327037262091624670335579302436476096123152288550738706103166820604983405317430467198343871458522070337902643863890959573514405066297449924638838605501211486861582957963752388608487593217237563529201436917108304692859773404548]
import string
key = ((65537, 28150970547901913019901824364390497053600856369839321617996700606130553862041378369018779003752433356889118526332329074054728613209407037089320809898343953157935211086135010436283805891893636870991411236307901650696221491790470635225076251966300189483160148297407974155121570252648252906976186499329924342873))
def enc(key, char):
e,c = key
cipher = pow(ord(char), e, c)
return cipher
for f in enc_flag:
for c in string.printable:
tmp = enc(key, c)
if tmp == f:
print(c, end="")
break
フラグゲット
HackTM{why_ar3_MY_pR1va7es_pu8l1C_??}
RSA is easy #2
RSA問第2弾
先ほどの問題とほぼ同じ設定だが、今度は公開鍵の値が分からない よって総当たり攻撃はできない
しばらくして暗号文が異様に多いことに気が付く
同じ鍵で暗号化されてるので、暗号文が同じであれば平文も同じであることを利用
暗号文をa-zA-Z
で置換するスクリプトを書いた
from Crypto.Util import number
enc_flag = [34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 22898825038689625715487339309684047496088088286379048682632329486928624317960893419908872575544541743109960984821146081005860923057711786824611353925189608095318119267730739890712604642525421504696090823029339278724706589872240410882755614978083387780278129076143536569517954666638462991000336176075614807880, 32673744615799712487218586784858666657615496658878295924699304141157435241805321678825497057203170526047413088723755930727839423037832480520297361079311603101279858983310265841651031957166707800564192379099456051456890378670008176632913201998572911894331423107676669652519124282681545581828946130363768378027, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 39071839511948638988080907036852746654085273366404837973213329692814484554408908523546999438831321352816110395822192272922701572846039352688552458816923896373772472819785936751685465282644216513301671688378689515602296293965301386883552780271126801778759956341143215735911106078099952795281272294184101222894, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1176875645989444228120683125555162464459775615749992327233861740655598304185200372099710632670669740275928889234588484578424676523579010677635946710527054032662591517295007580344076297705713808521731216834723911361610732077241004086348355880037625191238102086425263717843500661215346831687259608549125530807, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1176875645989444228120683125555162464459775615749992327233861740655598304185200372099710632670669740275928889234588484578424676523579010677635946710527054032662591517295007580344076297705713808521731216834723911361610732077241004086348355880037625191238102086425263717843500661215346831687259608549125530807, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 1176875645989444228120683125555162464459775615749992327233861740655598304185200372099710632670669740275928889234588484578424676523579010677635946710527054032662591517295007580344076297705713808521731216834723911361610732077241004086348355880037625191238102086425263717843500661215346831687259608549125530807, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 52840621689121797895256363389338274694450461789829175087736646052885972599541176587393339836186116798179639665528641843475425650830795547188378088601848535424795824136246287654182750346069524432086206082201048105736692531622222816403756012329174735009131234941877426201644907061786470186383501136594209222405, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 52840621689121797895256363389338274694450461789829175087736646052885972599541176587393339836186116798179639665528641843475425650830795547188378088601848535424795824136246287654182750346069524432086206082201048105736692531622222816403756012329174735009131234941877426201644907061786470186383501136594209222405, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 38802989341210530457378237385843973124921316122128304138276723482825938449328688522058677634210417960328667542939425659386994898427574509818766303473446802692515345332427976398389916234534200995301483992776549890379656184952685366723722458147873775598641647772939243953968981681779761004069962129149532525241, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 52840621689121797895256363389338274694450461789829175087736646052885972599541176587393339836186116798179639665528641843475425650830795547188378088601848535424795824136246287654182750346069524432086206082201048105736692531622222816403756012329174735009131234941877426201644907061786470186383501136594209222405, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 39071839511948638988080907036852746654085273366404837973213329692814484554408908523546999438831321352816110395822192272922701572846039352688552458816923896373772472819785936751685465282644216513301671688378689515602296293965301386883552780271126801778759956341143215735911106078099952795281272294184101222894, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1176875645989444228120683125555162464459775615749992327233861740655598304185200372099710632670669740275928889234588484578424676523579010677635946710527054032662591517295007580344076297705713808521731216834723911361610732077241004086348355880037625191238102086425263717843500661215346831687259608549125530807, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 50154500011327049415150110613714558756986965132059956858621967629544808661996323441483612798709196285670748400127394046198652122647065373883652074401488461140240807698457285933739509452128499026773680398001271333305476126787388797879767072284116978372707084228927669307533874093727830120482310649071798909223, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 1176875645989444228120683125555162464459775615749992327233861740655598304185200372099710632670669740275928889234588484578424676523579010677635946710527054032662591517295007580344076297705713808521731216834723911361610732077241004086348355880037625191238102086425263717843500661215346831687259608549125530807, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 1176875645989444228120683125555162464459775615749992327233861740655598304185200372099710632670669740275928889234588484578424676523579010677635946710527054032662591517295007580344076297705713808521731216834723911361610732077241004086348355880037625191238102086425263717843500661215346831687259608549125530807, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 39071839511948638988080907036852746654085273366404837973213329692814484554408908523546999438831321352816110395822192272922701572846039352688552458816923896373772472819785936751685465282644216513301671688378689515602296293965301386883552780271126801778759956341143215735911106078099952795281272294184101222894, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 52840621689121797895256363389338274694450461789829175087736646052885972599541176587393339836186116798179639665528641843475425650830795547188378088601848535424795824136246287654182750346069524432086206082201048105736692531622222816403756012329174735009131234941877426201644907061786470186383501136594209222405, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 39071839511948638988080907036852746654085273366404837973213329692814484554408908523546999438831321352816110395822192272922701572846039352688552458816923896373772472819785936751685465282644216513301671688378689515602296293965301386883552780271126801778759956341143215735911106078099952795281272294184101222894, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 50154500011327049415150110613714558756986965132059956858621967629544808661996323441483612798709196285670748400127394046198652122647065373883652074401488461140240807698457285933739509452128499026773680398001271333305476126787388797879767072284116978372707084228927669307533874093727830120482310649071798909223, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 38802989341210530457378237385843973124921316122128304138276723482825938449328688522058677634210417960328667542939425659386994898427574509818766303473446802692515345332427976398389916234534200995301483992776549890379656184952685366723722458147873775598641647772939243953968981681779761004069962129149532525241, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 50154500011327049415150110613714558756986965132059956858621967629544808661996323441483612798709196285670748400127394046198652122647065373883652074401488461140240807698457285933739509452128499026773680398001271333305476126787388797879767072284116978372707084228927669307533874093727830120482310649071798909223, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1176875645989444228120683125555162464459775615749992327233861740655598304185200372099710632670669740275928889234588484578424676523579010677635946710527054032662591517295007580344076297705713808521731216834723911361610732077241004086348355880037625191238102086425263717843500661215346831687259608549125530807, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 1176875645989444228120683125555162464459775615749992327233861740655598304185200372099710632670669740275928889234588484578424676523579010677635946710527054032662591517295007580344076297705713808521731216834723911361610732077241004086348355880037625191238102086425263717843500661215346831687259608549125530807, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 52840621689121797895256363389338274694450461789829175087736646052885972599541176587393339836186116798179639665528641843475425650830795547188378088601848535424795824136246287654182750346069524432086206082201048105736692531622222816403756012329174735009131234941877426201644907061786470186383501136594209222405, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 47570760099332538630074246588266937941307517820515142582135658748192399272005539496578959306267521195254022986091052760574620123103280649808061816984656151624030812710123783651478012545264847339309664114861788542619162083048255751820685971177031319072241032895991001430158963380558156843892347920250300986171, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 930044605345939201480478373277413008095802574786191190905074555539638928544692229073288242327962810058855318227403376039279203240132190223148619950893934472181209933145274613718642434124893448103578245304758494945314633484270441574356508120432815219715951750624307928142686494962369790708881847436477126536, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 19492166218065210361696686707896525268020417715191233863834594410819422493908382086802419877050654000223876689075138373828891333608984761550312273195513504605801530063487641725099161221148773827710266506625126250751074980206372410832787410270736779064975681240662166847411633904532223257736996555482185275717, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 50154500011327049415150110613714558756986965132059956858621967629544808661996323441483612798709196285670748400127394046198652122647065373883652074401488461140240807698457285933739509452128499026773680398001271333305476126787388797879767072284116978372707084228927669307533874093727830120482310649071798909223, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1176875645989444228120683125555162464459775615749992327233861740655598304185200372099710632670669740275928889234588484578424676523579010677635946710527054032662591517295007580344076297705713808521731216834723911361610732077241004086348355880037625191238102086425263717843500661215346831687259608549125530807, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 2491776416157094729247228546388058805100982106803126656760544775570831165844468695126053157622604400534191689984239642501431889749664796813015093832003828115405081489372948999096884256544945626310866557608968099061130574640407181237631369536699135922165700470873033015069995508536990789193832860645907343986, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 21825516420085786633620414923499927809866106375209997536887923519665612310710893091548347638116562999505810709467483467910561336083489137335015281764912210385860293937794761219080479166302700347936082258520119437027319181174057624695351433300415797052703957131305247757258587758932996789777812701543305273524, 12932315605361356260109350737202295649066381035837249252185795202913980480440863417983883037159810577739986004162343142150811156736478717833534910573828843843135123757197342268856313199793884733585941943828474996180460900240457279087457908434717560236156491751130556115885434115169341757101655831937772066303, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 12809420335059752622795672675980615147379433503921952871001570329869909602631152404784101902235852407354985529217839517914337978763562477704639713177361527151286904208185025322596545149058203315249298373136118690015234673764106807029822628760444420022929741931249845208516150129504338691005143546218303736485, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 1616691599456040168445566414573196426135242040353418621535727203361763119546110811202180542592381606989262060743706931509368561992575755611142039943697929675456007056209371231656367986288172877583606660982468769562130680078575424889216776816820937295397087401890122017587798820436843206222029244517132787091, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 40134547635227845599825339690894195012168718754712945141544421186023480430553150024357178615922032531442839979802093306933346913584778658886938008884216860952509344521015417521265603939411082620539473525127363853503284782317720170238435878533613693578512044166590440262304835466215502510526120232032001658845, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 29134244853493331789283603393275291749816044468350702102035506094598790040927938861054634777247830931517686010741339628812116985594232674807263027901600624507630247209184903517192048488176261028761389768656154493158817886581472185760507276853927467270445108103128473821519705668231154797667164681995129099167, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 3929570815133494377565674564390309833497202447403079059880445103091097112439963260471815756880162820614427515327977655020489262502104373204431222035394513353720509807520161739252076395126436615051937945259162514387773880075644161755707728744548141441713692993486773337542283702554850976267025978523835156103, 11754165346287637561545259343840422291909328839266777034181425212469224088636786285072037265988741867852390393052619139981204304725012657494805876058735252784205208373103211292641197325597338249663286939455864193037451288723183790294305055993067129506821935556455779063943868491706701650087037910887657226493, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 14576332930836336401134272222550882346965368092028955000954694875179130873398333216454729664378847576041041506775766783029984889520769135364408129680069043197669185727467506703395296323412031069601024043172225202033251709886245288125871615751041310682693335390022558588465347411736471596258937782467179701363, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 20615543970401106049899252800192288457964182639045355076454473284260002293725082025968310990122731962791617789632077170719345622736070264054367958868239517799808416688171918069309633316391105904609498475463756359094918228354423745819313393742987851160846772360092594149040683896814298190633249373326376461156, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 27576274928869221620126245883590920739381444228403264811604678585326136261919043025439432380393614033747213164606047970194501234144690982453937415512291833747115414764529517980671948859099514533322022692971474660454113892401294955396004739513550951184454650026652626364585678702730119565114784074733394949336, 18218008764547928666818612371880437638590536088955960541217152923316878781023941482176664233664036926858934241182299360237997946767992823894857524509996035969116730840866188239505740019205603874588738160712590494329532220987368292751238523333362017189147629358097781421283836794237708493190976028985458918909, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 22727001808817855311403725351156659724989158069800490466458013816315274831050097254851934829809436415084558805190061876535460171481477325886587862814504906096266519469387070277858969077815631009037077538503164118774110740593006218494447633084714757032153557681184383300445044005450878303829523921113090598503, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 35757511882733355483839947542352804611289303760086802899974215637660071779650145686478637770001786118916493988988448569553752725399372273917548305878712872685951566425456575300012758123702510007669248383698343577662182410702363875166254773789867158011011670420550839163044289826725125706067556429856779495564, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 15799025644615822656801740434122556637212995922559332084222280459000654656427689834064128147572871045216617743273426836990308480455737076816410648044480511949442083909138576214738788738048193643029632245738932831021072125057111936960522329562306867802898765387374026585757497606153328226325713384411664479472, 51096222195660998838214993398008975443334226469462987938620835940031595422906389948456714314184250584134675031854562918540111185432877967886125365843859202759838619358876321717841898972235167208334603406133491230325950874308071748186279415332768724277308777107769815375150668126847491101640368755019633726889, 20208833413145256771572368688664189468143545391164156105460199405734708819434076552216759462791005323959520084836115140504630769338040681414876273881508073569978297202819424741264124574247314460725471331318820764161255759739403546471531796892912689444815674366578876801858606344288032682809803593429599353582, 19987556196019746934559490493908126130478310916985676680825131675475834956269416368131390860400524736253193350877031424890618150894631360660555214791233380817082613242334649401913706349419529298111678642103008577869651397737137307296898997921920272507265954704602147279649946742171997814500423616836127877151, 34220770932871364013976724839545041417474666615300575941746695940071552482886462087439379719184240006479394129946558717984964307444237521284361087031583504037093765914149168694482266218524635203263596760639253965500892625668716519628460563860957678979373258071483670494006067028836185890388591731283716604832, 39385543283404473075185452058079832095584936856222212380734415975432643784664927411933026085735951287828134889813409092456274531550067215917681707367020221976856074609811863093935500364044953252851773508292484565675960979638799629224447070845682042579853348896232929185963231949966635800852425193221658914799]
import string
ary = []
ans = ""
for flag in enc_flag:
if flag not in ary:
ary.append(flag)
ans += string.ascii_letters[ary.index(flag)]
print(ans)
結果は以下の通り
abcdefeaghefdeijkkclcefdembcecgnkoepqhrefesctfhcseabgmefeuckfctcseaghegeunfkkfgdmecdinovmfjdehibcwcxegehfwvkcevhcysjngdsjwedywucnehmncgweaghegsscsemjembcevkgfdmczmehmncgwemjeincgmceifvbcnmczmxembfheajyksehccwfdlkoembagnmegdoeAncBycdioegdgkohfhejAembceifvbcnmczmregdseajykseuceydingiCgukcectcdemjembcewjhmenchjynicAykeljtcndwcdmefdmckkflcdiceglcdifchxefeAckmehjehwylegujymewoegibfctcwcdmxeocgnhekgmcnrefesfhijtcncsembfhehgwcehibcwcefdehctcngkefdmnjsyimjnoeinovmjlngvboemczmhegdsemymjnfgkevgvcnhxebjaedficxejmbcneinovmjlngvbcnhebgsembjylbmejAembcehgwcehibcwcxeydAjnmydgmckorembcehibcwceaghevnchcdmcseghegehfwvkcebjwcajnCeghhfldwcdmejdebjaemjeyhceckcwcdmgnoeinovmgdgkomfiemcibdfBychemjemnftfgkkoeingiCefmxehjewyibeAjnewoeunfkkfgdmehibcwcxeAnjwembfhebywukfdleczvcnfcdicefekcgndcsebjaecghoefmefhemjeAgkkefdmjegeAgkhcehcdhcejAehciynfmoeabcdesctfhfdlegdecdinovmfjdegkljnfmbwxewjhmevcjvkcesjdDmencgkfEcebjaeAfcdsfhbkoesfAAfiykmefmefhemjesctfhcegdecdinovmfjdegkljnfmbwembgmeigdeafmbhmgdsegevnjkjdlcsegdsescmcnwfdcsegmmgiCeuoegenchjynicAykejvvjdcdmxebcncefhembceAkglxeabcdefmeijwchemjeinovmjejneignvcmedctcnenjkkeojynejad
このままではaが元々のどの文字と対応するかが分からないが、 これだけ文字が多ければ、頻度分析を行うことが可能 参考
手作業で頻度分析を行うのは面倒くさいのでツールを使った ここ
復号結果は以下の通り
fhensisfamsinscollegesinsthesearlysqzmjsisdevimedsfhatsisbelievedsfamsasbrilliantsencryptionsmchekewsasmikplespmeudorandoksnukbersmtreaksfamsaddedstosthesplaintextsmtreakstoscreatesciphertextwsthimsfouldsmeekinglysthfartsanysFreHuencysanalymimsoFsthesciphertextjsandsfouldsbesuncracEablesevenstostheskomtsremourceFulsgovernkentsintelligencesagenciemwsisFeltsmosmkugsaboutskysachievekentwsyearmslaterjsisdimcoveredsthimsmakesmchekesinsmeveralsintroductoryscryptographystextmsandstutorialspapermwshofsnicewsotherscryptographermshadsthoughtsoFsthesmakesmchekewsunFortunatelyjsthesmchekesfamsprementedsamsasmikpleshokeforEsammignkentsonshofstosumeselekentaryscryptanalyticstechniHuemstostriviallyscracEsitwsmoskuchsForskysbrilliantsmchekewsFroksthimshukblingsexperiencesislearnedshofseamysitsimstosFallsintosasFalmesmenmesoFsmecuritysfhensdevimingsansencryptionsalgorithkwskomtspeoplesdonNtsrealiSeshofsFiendimhlysdiFFicultsitsimstosdevimesansencryptionsalgorithksthatscansfithmtandsasprolongedsandsdeterkinedsattacEsbysasremourceFulsopponentwsheresimsthesFlagwsfhensitscokemstoscryptosorscarpetsneversrollsyoursofn
最後の方に見える文章がそれっぽい
Flagwsfhensitscokemstoscryptosorscarpetsneversrollsyoursofn
Flag
, crypto
, carpet
, never
などの単語が確認できる
s
という文字が各単語の両端にある
CTFのフラグは単語間が_
で繋がれていることが多いので、_
に置換する
Flagw_fhen_it_cokem_to_crypto_or_carpet_never_roll_your_ofn
fhen_it_cokem_to
からwhen it comes to
というフレーズが連想できるので、f
をw
、k
をm
、m
をs
に置換
Flagw_when_it_comes_to_crypto_or_carpet_never_roll_your_own
フラグゲット
HackTM{when_it_comes_to_crypto_or_carpet_never_roll_your_own}
以上です